:root {
    --main-cl: rgba(22, 32, 53, 1);
    --sub-cl: #C2826B;
    --container-w: 94.271rem;
    --border-w: 77.083rem;
}

.container, .container-width, .full-width .ubermenu-nav, .row {
    max-width: var(--container-w);
}

.nav > li {
    margin: 9px;
}

#main, #wrapper {
    background-color: var(--main-cl);
}

body {
    font-size: 1.302rem;
    font-family: Montserrat;
    font-weight: unset;
}

body::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    background-color: #F5F5F5;
}

body::-webkit-scrollbar {
    width: 0.417rem;
    background-color: #cedbff;
}

body::-webkit-scrollbar-thumb {
    background-color: var(--main-cl);
}

input, optgroup, select, textarea {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-shadow: unset;
    -moz-box-shadow: unset;
    box-shadow: unset;
    outline: none !important;
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type=number] {
    -moz-appearance: textfield;
}

body {
    overflow-x: unset;
}


.grid-container {
    max-width: var(--container-w);
    margin-left: auto;
    margin-right: auto;
}

#search-lightbox {
    width: 37.5rem;
    max-width: 100%;
}

#search-lightbox .search-lightbox-title {
    margin-bottom: 1.667rem;
    font-size: 1.979rem;
    line-height: 1.2;
    font-weight: 700;
}

#search-lightbox .search-keywords {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 2.083rem;
    gap: 0.521rem;
}

#search-lightbox .search-keywords > a {
    -webkit-border-radius: 2.604rem;
    -moz-border-radius: 2.604rem;
    border-radius: 2.604rem;
    font-size: 0.833rem;
    line-height: 1.042rem;
    border: 1px solid rgba(255, 255, 255, 0.6);
    padding: 0.3125rem 0.833rem;
    display: flex;
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}

#search-lightbox .search-keywords > a:hover {
    background-color: #fff;
    color: #000
}

#search-lightbox .flex-row > div {
    display: flex;
}

#search-lightbox .flex-row {
    align-items: unset;
    display: flex;
    -webkit-border-radius: 2.604rem;
    -moz-border-radius: 2.604rem;
    border-radius: 2.604rem;
    overflow: hidden;
}

#search-lightbox input {
    height: 100%;
    border: none;
}

#search-lightbox .button.icon {
    line-height: normal;
    min-height: unset;
    height: 100%;
    border: none;
    min-width: unset;
    background-color: #FFF;
    display: flex;
    align-items: center;
}

#search-lightbox .button.icon i {
    font-size: 0.9375rem;
    line-height: 1.25rem;
    color: #000
}

#search-lightbox input {
    font-size: 1.042rem;
    line-height: 1.25rem;
    padding-left: 1.5625rem;
    box-shadow: unset;
    height: 2.604rem;
}

.mfp-bg.mfp-ready {
    opacity: 0.8;
}

.mfp-content #search-lightbox {
    transform: translateY(-70%);
}

.load_home_page svg {
    width: 20.833rem;
    max-width: 95%;
    height: auto;
    position: absolute;
    z-index: 99;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    -webkit-transition: all 0.8s ease-in-out;
    -moz-transition: all 0.8s ease-in-out;
    -ms-transition: all 0.8s ease-in-out;
    -o-transition: all 0.8s ease-in-out;
    transition: all 0.8s ease-in-out;
}

.load_home_page {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 999999999999;
    transition: 1s all;
    opacity: 1;
    background: transparent;
}

div.load_home_page .mask {
    /*background-color: #00BDFFFF;*/
    transition: 1s all ease-in-out;
    position: absolute;
    width: 100%;
    height: 100%;
}

div.load_home_page.complete .mask {
    background-color: transparent;
}

div.load_home_page .mask span {
    display: block;
    width: 100%;
    height: 20%;
    position: absolute;
    left: 0;
    transition: 1s all ease-in-out;
    background-color: var(--main-cl);
    /*backdrop-filter: blur(40px);*/
}

div.load_home_page .mask span:nth-child(even) {
    left: unset;
    right: 0;
}

div.load_home_page .mask span:nth-child(1) {
    top: 0;
}

div.load_home_page .mask span:nth-child(2) {
    top: 20%;
}

div.load_home_page .mask span:nth-child(3) {
    top: 40%;
}

div.load_home_page .mask span:nth-child(4) {
    top: 60%;
}

div.load_home_page .mask span:nth-child(5) {
    top: 80%;
}

.load_home_page.complete {
    visibility: hidden;
}

div.load_home_page.complete .mask span {
    width: 0;
    opacity: 0;
    transition-delay: .8s;
}

#respond input#wp-comment-cookies-consent {
    height: auto !important;
    margin: 0 10px 0 0 !important;
}

.load_home_page.complete svg {
    transition-delay: 0.8s;
    opacity: 0;
}

.load_home_page rect,
.load_home_page path {
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}

.path-1 {
    animation-name: Signature2;
    animation-duration: 10s;
    animation-fill-mode: forwards;
    animation-timing-function: cubic-bezier(2, .25, .43, .96);
    stroke: #FFF;
    stroke-width: 1px;
    stroke-dasharray: 2108;
    stroke-dashoffset: 2108;
    fill: transparent;
}

.path-2 {
    animation-name: Signature1;
    animation-duration: 20s;
    animation-fill-mode: forwards;
    animation-timing-function: cubic-bezier(2, .25, .43, .96);
    stroke: var(--sub-cl);
    stroke-width: 1px;
    stroke-dasharray: 2108;
    stroke-dashoffset: 2108;
    fill: transparent;
}

.load_home_page.complete .path-2 {
    fill: var(--sub-cl);
}

.load_home_page.complete .path-1 {
    fill: #FFF
}

@keyframes Signature1 {
    to {
        stroke: var(--sub-cl);
        stroke-dashoffset: 0;
    }
}

@keyframes Signature2 {
    to {
        stroke: #FFF;
        stroke-dashoffset: 0;
    }
}

.tile-reveal {
    overflow: hidden;
    width: 100vw;
    height: 100vh;
    display: flex;
    flex-flow: row wrap;
    align-self: flex-start;
    align-items: center;
    align-content: center;
    justify-content: center;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    pointer-events: none;
    z-index: 99;
    background: #fff;
}

.tile-reveal-square {
    flex: 1 1 auto;
    width: 75px;
    height: 75px;
    background-color: var(--main-cl);
    opacity: 1;
}

.load_home_page.complete img {
    transition-delay: 0.8s;
    opacity: 0;
}

.load_home_page img {
    width: 22rem;
    max-width: 95%;
    height: auto;
    position: absolute;
    z-index: 99;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    -webkit-transition: all 0.8s ease-in-out;
    -moz-transition: all 0.8s ease-in-out;
    -ms-transition: all 0.8s ease-in-out;
    -o-transition: all 0.8s ease-in-out;
    transition: all 0.8s ease-in-out;
}

.wrap-enter-site {
    position: fixed;
    width: 100%;
    height: auto;
    bottom: 3.125rem;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    animation-name: fadeIn;
    animation-duration: 1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
}

.search-page {
    padding: 5.208rem 0;
}

.search-page h1 {
    margin-bottom: 2.604rem;
}

.search-tabs .search-tabs-title {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 1.25rem;
    gap: 0.833rem;
}

.search-tabs .search-tabs-title .search-tab-title {
    padding: 0.625rem 1.25rem;
    border: 1px solid var(--fs-color-primary);
    font-size: 0.833rem;
    line-height: 1.042rem;
    color: var(--fs-color-primary);
    -webkit-border-radius: 0.521rem;
    -moz-border-radius: 0.521rem;
    border-radius: 0.521rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.4s;
}

.search-tabs .search-tab-title:hover,
.search-tabs .search-tab-title.active {
    background-color: var(--fs-color-primary);
    color: #FFF;
}

.search-tabs .search-tab-content {
    display: none;
}

.search-tabs .search-tab-content.active {
    display: block;
}

.search-tabs .search-empty {
    color: #333;
    font-size: 1.25rem;
    line-height: 2.083rem;
    padding: 0.521rem;
}

.search-tabs .search-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-gap: 1.667rem;
    margin-bottom: 1.5625rem;
}

.search-tabs .search-item h3 {
    margin: 0.521rem 0 0 0;
    font-size: 18px;
    line-height: 24px;
    font-weight: 600;
}

/*kusto css chung*/
section svg {
    width: 100%;
    height: 100%;
    transition: .7s all;
    display: block;
}

img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

h1 {
    font-family: 'BROLIMO 300';
    color: white;
    font-size: 3.646rem;
}

h2 {
    font-family: 'BROLIMO';
    color: var(--sub-cl);
    font-size: 2.604rem;
    line-height: 1.2;
    text-transform: uppercase;
    flex: 0 0 auto;
}

h1, h2, h3, h4, ul, li {
    margin: 0;
    font-weight: unset;
}

main#main {
    background-color: var(--main-cl);
    color: rgba(249, 247, 241, 1);
}


.home_1 {
    overflow: hidden;
}

.banner_wrap {
    height: 100vh;
}

.banner_wrap video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.banner {
    /*transform: scale(1.07);*/
}
section.home_2.relative {
    overflow: hidden;
}
section.home_1:before {
    position: absolute;
    content: '';
    left: 0;
    bottom: 0;
    width: 100%;
    height: 34.21875rem;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.7) 100%);
    pointer-events: none;
}

section.home_1:after {
    position: absolute;
    content: '';
    left: 0;
    top: 0;
    width: 100%;
    height: 12.708rem;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 100%);
    pointer-events: none;

}

.banner.active {
    /*transform: scale(1);*/
    /*animation: zoom-in-zoom-out 50s ease infinite;*/
    overflow: hidden;
    transition: 1s all;
}

.register_form_wrap {
    overflow: hidden;
}

.register_form_image {
    overflow: hidden;
}

.register_form_section .register_form_image img {
    /*animation: zoom-in-zoom-out 50s ease infinite;*/
    overflow: hidden;
}

.banner_full {
    overflow: hidden;
}

.banner_full img {
    /*animation: zoom-in-zoom-out 50s ease infinite;*/

}

.banner_content {
    bottom: 5%;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    row-gap: 2.292rem;
}

h1.banner_heading {
    color: white;
}

.banner:after {
    position: absolute;
    content: '';
    left: 0;
    top: 0;
    width: 100%;
    height: 12.708rem;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 100%);
}

.banner:before {
    position: absolute;
    content: '';
    left: 0;
    bottom: 0;
    width: 100%;
    height: 34.21875rem;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.7) 100%);
}

.banner_arrow {
    width: 3.698rem;
    height: 3.698rem;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

@keyframes arrow {
    0% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(25%);
    }
    100% {
        transform: translateY(0);
    }
}

@keyframes opacity {
    0% {
        transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1);
        opacity: 1;
    }
    100% {
        transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1.5);
        opacity: 0;
    }
}

.banner_arrow_svg {
    animation: arrow 1.5s infinite;
}

a.btn, button.btn {
    padding: 0.546875rem 1.615rem;
}

a.btn span.btn_svg, button.btn span.btn_svg {
    width: 0.625rem;
    height: 0.625rem;
    display: block;
}

.home_left_full {
    margin-left: calc(-1 * calc(calc(100vw - var(--container-w)) / 2) - 15px);
    z-index: 1;
}

.home_right_full {
    margin-right: calc(-1 * calc(calc(100vw - var(--container-w)) / 2) - 15px);
}

.home_left_full img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: relative;
    z-index: 1;
}

.v-s-content {
    font-size: 0.78125rem;
}

.s-content {
    font-size: 0.833rem;
}

.m-content {
    font-size: 0.9375rem;
}

.normal_content {
    font-size: 1.042rem;
}

.content {
    font-size: 1.042rem;
    color: rgba(249, 247, 241, 1);
    font-family: 'Montserrat';
}

.l-content {
    font-size: 1.667rem;
}

.xl-content {
    font-size: 2.083rem;
}

.xxl-content {
    font-size: 3.646rem;
}

.home_2 .group_content_2 {
    max-width: 100%;
    position: relative;
    z-index: 1;
    margin-left: 6.146rem;
    display: flex;
    flex-direction: column;
    align-items: start;
    row-gap: 0;
}

a.btn .btn_content,
button.btn .btn_content {
    color: var(--sub-cl);
    font-family: 'BROLIMO';
    font-size: 0.833rem;
}

a.btn,
button.btn {
    gap: 0.677rem;
    border: 1px solid var(--sub-cl);
    border-radius: 130px;
    position: relative;
    width: fit-content;
    flex: 0 0 auto;
    overflow: hidden;
}

.home_2 a.btn {
    margin-top: 1.302rem;
}

.home_position:before {
    position: absolute;
    content: '';
    left: 0;
    top: 0;
    width: 100%;
    height: 31.354rem;
    background: linear-gradient(180deg, #162035 0%, rgba(22, 32, 53, 0) 100%);
}

a.btn:before,
button.btn:before {
    position: absolute;
    content: '';
    left: 0;
    width: 0;
    height: 100%;
    border-radius: 130px;
    transition: .7s all;
    background: var(--sub-cl);
}

a.btn:hover:before,
button.btn:hover:before {
    width: 100%;
    transition: .7s all;
}

a.btn:hover .btn_content,
button.btn:hover .btn_content {
    color: white;
    transition: .7s all;
}

a.btn .btn_content,
button.btn .btn_content {
    transition: .7s all;
    line-height: normal;
    position: relative;
}

a.btn .btn_svg,
button.btn .btn_svg {
    position: relative;
}

a.btn:hover .btn_svg svg path,
button.btn:hover .btn_svg svg path {
    stroke: white;
    transition: .7s all;
}

a.btn .btn_svg svg path,
button.btn .btn_svg svg path {
    transition: .7s all;
}

button.btn {
    background: var(--sub-cl);
    text-transform: unset;
    font-weight: unset;
    margin: 0;
}

button.btn .btn_content {
    color: white;
    line-height: normal;
}

button.btn:hover .btn_content {
    color: var(--sub-cl);
    transition: .7s all;

}

/*button.btn:hover{*/
/*    border:1px solid white;*/
/*}*/

button.btn:hover .btn_svg svg path {
    stroke: var(--sub-cl);
    transition: .7s all;
}

button.btn:hover:before {
    background: white;
}

button.btn .btn_svg svg path {
    stroke: white;
}

.group_content {
    display: flex;
    flex-direction: column;
}

.home_2 .kusto_pattern {
    left: 0;
    top: -100%;
    width: 19.0625rem;
    height: 43.073rem;
    z-index: 0;
}

.home_3 .group_content {
    padding: 0 0.99rem 1.979rem;
    align-items: center
}

.home_3 .group_content .content {
    margin-top: 1.042rem;
    padding: 0 2.542rem;
}

.home_3 .group_content a.btn {
    margin-top: 1.5625rem;
}

section.home_3 {
    padding-top: 7.396rem;
}

.position_project {
    flex-direction: column;
    row-gap: 0.833rem;
}

.position_project_line {
    height: 1rem;
    background-image: linear-gradient(180deg, rgba(255, 252, 252, 0) 0%, #FFFCFC 100%);
    width: 0.1rem;
    transition: 1s all;
}

.position_project .position_project_logo img {
    transform: scale(0.75);
    transition: 1s all;
}

.position_project_logo {
    width: 8.59375rem;
    height: 6.771rem;
}

.position_project.active .position_project_line {
    height: 14.927rem;
    transition: 1s all;
}

.position_project.active .position_project_logo img {
    transform: scale(1);
    transition: 1s all;
}

.position_project_line {
    position: relative;
}

.position_project_line:before {
    position: absolute;
    content: '';
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 0.625rem;
    height: 0.625rem;
    border-radius: 100%;
    background: white;
    opacity: 0;
    transition: .7s all;
}

.position_project.active .position_project_line:before {
    opacity: 1;
    transition: 1s all;
}

.position_list .position_title {
    opacity: 0;
    transition: 1s all;
    text-align: center;
    font-family: 'Montserrat 600';
}

@keyframes textUpDown {
    0% {
        transform: translateY(5%);
    }
    50% {
        transform: translateY(-5%);
    }
    100% {
        transform: translateY(5%);
    }
}

.position_project.active .position_title {
    opacity: 1;
    transition: 1s all;
    animation: textUpDown 7s ease-in-out infinite;

}

.position_list {
    width: 100%;
    height: 35.9375rem;
    bottom: 0;
}

.position_list_wrap {
    width: 100%;
    height: 100%;
    top: 0
}

.position_wrap_container {
    width: 100%;
    height: 100%;
    top: 0;
}

.home_4 .group_content {
    margin-top: 23.021rem;
    margin-bottom: 10rem;
    max-width: 24.53125rem;
    margin-left: 6.771rem;
}

.home_4 .kusto_pattern {
    left: -10%;
    top: 0;
    width: 23.125rem;
    height: 52.396rem;
    z-index: 0;
}

.sticky {
    position: sticky;
    top: 1rem;
}

.home_4_list {
    padding-left: 3.542rem;
}

.home_4_image {
    width: 100%;
    height: 48.75rem;
}

.position_list .position_project.active:nth-child(1) .position_project_line {
    height: 10.625rem;
}

.position_list .position_project.active:nth-child(2) .position_project_line {
    height: 11.042rem
}

.position_list .position_project.active:nth-child(3) .position_project_line {
    height: 10.729rem;
}

.position_list .position_project.active:nth-child(4) .position_project_line {
    height: 9.948rem;
}

.position_list .position_project.active:nth-child(5) .position_project_line {
    height: 10.26rem;
}

.position_list .position_project.active:nth-child(6) .position_project_line {
    height: 9.479rem;
}

.position_list .position_project.active:nth-child(7) .position_project_line {
    height: 12.1875rem;
}

.position_list .position_project.active:nth-child(8) .position_project_line {
    height: 10.729rem;
}

.position_list .position_project.active:nth-child(9) .position_project_line {
    height: 14.167rem;
}

.position_list .position_project.active:nth-child(10) .position_project_line {
    height: 11.71875rem;
}

.position_list .position_project.active:nth-child(11) .position_project_line {
    height: 13.385rem;
}

.position_list .position_project.active:nth-child(12) .position_project_line {
    height: 12.083rem;
}

.position_list .position_project.active:nth-child(13) .position_project_line {
    height: 11.771rem;
}

.position_list .position_project.active:nth-child(14) .position_project_line {
    height: 14.375rem;
}

.home_zoom {
    right: 4.5%;
    bottom: 7.5%;
    z-index: 1;
}

.home_zoom_list {
    gap: 1.25rem;
}

.home_zoom_item {
    cursor: pointer;
    background: var(--sub-cl);
    width: 2.604rem;
    height: 2.604rem;
    border-radius: 100%;
    padding: 0.677rem;
    position: relative;
    z-index: 1;
}

.home_zoom_item svg {
    position: relative;
    transition: .7s all;

}

.home_zoom_item:before {
    position: absolute;
    content: '';
    left: 50%;
    top: 50%;
    width: calc(100% + .2rem);
    height: calc(100% + .2rem);
    background: var(--sub-cl);
    border-radius: 100%;
    z-index: 0;
    animation: opacity 1.5s ease-out infinite;
}

.home_zoom_item:hover svg {
    transform: rotate(360deg);
    transition: .7s all;
}

.home_position {
    overflow: hidden;
    position: relative;
}

.zoom_wrapper {
    width: 100%;
    height: 100%;
    transform-origin: center center;
}

.zoom_wrapper.can-drag {
    cursor: grab;
}

.zoom_wrapper.dragging {
    cursor: grabbing !important;
}

.zoom_wrapper.zooming {
    transition: transform 0.35s ease;
}

section.home_4 .col {
    padding-bottom: 0;
}

.banner_5_content {
    bottom: 5.365rem;
    width: 100%;
    z-index: 3;

}

.home_5 .banner_full:before {
    position: absolute;
    content: '';
    width: 52.865rem;
    height: 100%;
    left: 0;
    background: linear-gradient(240.71deg, rgba(0, 0, 0, 0) 40.95%, rgba(0, 0, 0, 0.61831) 66.47%, rgba(0, 0, 0, 0.721471) 88%, rgba(0, 0, 0, 0.8) 99.95%);
    z-index: 3;
}

.home_5 .banner_full:after {
    position: absolute;
    content: '';
    left: 0;
    bottom: 0;
    width: 100%;
    height: 18.021rem;
    background: linear-gradient(360deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 100%);
}

.banner_5_content h2 {
    width: fit-content;
}

.banner_5_content_wrap {
    gap: 1.146rem;
}

.banner_5_line {
    width: 100%;
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.home_6 .banner_full:before {
    position: absolute;
    content: '';
    left: 0;
    width: 100%;
    height: 35.573rem;
    background: linear-gradient(360deg, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0.751561) 33.97%, rgba(0, 0, 0, 0.587082) 58.5%, rgba(0, 0, 0, 0) 100%);
    z-index: 2;
    bottom: 0;
}

.banner_6_content {
    bottom: 3.333rem;
    width: 100%;
}

.banner_6_content .group_heading {
    flex-direction: column;
    row-gap: 1.302rem;
    max-width: 42.135rem;
}

.slide_arrow {
    width: 3.125rem;
    height: 3.125rem;
    /*border: 1px solid rgba(249, 247, 241, 1);*/
    cursor: pointer;
    padding: 0.534rem 1.042rem;
    transition: .7s all;
}

.slide_arrow:hover svg {
    transform: scale(1.15);
    transition: .7s all;
}

.home_6 .banner_full {
    height: 51.667rem;
}

.home_6 .slide_arrow_wrap {
    bottom: 50%;
    left: 50%;
    z-index: 1;
    transform: translate(-50%, -50%);
    width: var(--container-w);
    right: 0;
}

.home_6 .slide_arrow_wrap .slide_arrow.left {
    left: 0;
    position: absolute;
}

.home_6 .slide_arrow_wrap .slide_arrow.right {
    position: absolute;
    right: 0;
}

.home_7 {
    padding: 2.917rem 0 4.01rem;
}

.home_7 .group_content .content {
    margin-top: 1.042rem;
}

/*.home_7 .group_content {*/
/*    max-width: 39.583rem;*/
/*    text-align: right;*/
/*    padding-right: 2.396rem;*/
/*    border-right: 2px solid rgba(255, 255, 255, 0.2);*/
/*}*/

.home_7_wrap {
    gap: 3.125rem;
}

.home_count_container {
    flex-direction: column;
}

.number .inner.relative, .number {
    position: relative;
    display: flex;
    line-height: normal;
    gap: .3rem;
}

.counter_opacity {
    opacity: 0;
}

.home_count_wrap {
    gap: .5rem;
    font-family: 'Montserrat thin';
    font-size: 2.083rem;
}

.home_7 .kusto_pattern {
    top: -2.5%;
    left: -4%;
    width: 29.0625rem;
    height: 79.53125rem;
}

.home_7_position_title {
    text-transform: uppercase;
    color: var(--sub-cl);
    font-family: 'BROLIMO';
}

.home_7_position_content {
    flex-direction: column;
    line-height: 1;
}

.home_7_position_line {
    background-image: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, #FFFFFF 100%);
    width: 7.083rem;
    height: 0.052rem;
    position: relative;
    flex: 0 0 auto;
}

.home_7_position_line:before {
    position: absolute;
    content: '';
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 0.625rem;
    height: 0.625rem;
    border-radius: 100%;
    background: white;
    /*display: none   ;*/
}

.home_7_position_line.line_inverse {
    background-image: linear-gradient(140deg, #FFFFFF 0%, rgba(255, 255, 255, 0) 100%);
}

.home_7_position_line.line_inverse:before {
    left: 0;
}

.home_7_position_item {
    gap: 1.302rem;
    z-index: 20;
}

.home_7_project_image {
    width: 55.208rem;
    overflow: hidden;
    height: 50.9375rem;
    position: relative;
    z-index: 10;

}

.home_7_project_image img {
    clip-path: inset(50%);
    transition: clip-path 1.5s cubic-bezier(.4, 0, .2, 1);
    will-change: clip-path;
}

.home_7_project {
    margin-top: 4.53125rem;
    display: flex;
    justify-content: center;
    align-items: center;
}

.home_7_position_detail {
    line-height: 1.3;
}

.home_7_cta {
    margin-top: 2.448rem;
}

.home_7:before {
    position: absolute;
    content: '';
    left: 50%;
    bottom: 0;
    width: var(--border-w);
    border: 1px solid rgba(255, 255, 255, 0.17);
    transform: translateX(-50%);
}


section.home_8 {
    padding-top: 6.25rem;
}

.home_ex_cta {
    right: 0;
    bottom: 15%;
    z-index: 1;
}

.home_8 .home_left_full {
    margin-top: 2.34375rem;
}

.home_8 .col.list_ex {
    padding-bottom: 0;
}

.banner_full_content {
    bottom: 0;
    left: 50%;
    transform: translateX(-50%) translateY(50%);
    width: 61.458rem;
    text-align: center;
    padding: 3.646rem 5.99rem;
    backdrop-filter: blur(19px);
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.2) 21.74%, rgba(206, 206, 206, 0.2) 99.67%);
}

section.home_9 {
    padding-bottom: 19.896rem;
    position: relative;
}

section.home_9:before {
    position: absolute;
    content: '';
    left: 50%;
    width: var(--border-w);
    border: 1px solid rgba(255, 255, 255, 0.17);
    bottom: 0;
    transform: translateX(-50%);
}

.home_9 .group_content {
    row-gap: 0.833rem;
}

.home_9 .group_content h2 {
    color: white;
}

.home_10 .group_content {
    flex-direction: row;
    align-items: end;
}

section.home_10 {
    padding-top: 3.90625rem;
    padding-bottom: 3.333rem;
    position: relative;
    overflow: hidden;
}

.home_10:before {
    position: absolute;
    content: '';
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: var(--border-w);
    border: 1px solid rgba(255, 255, 255, 0.17)
}

.swiper.home_partner_slide {
    margin: 1.823rem -0.521rem 0;
}

.home_partner_slide_item {
    padding: 0 0.521rem;
}

.home_partner_slide_item_wrap {
    background: rgba(255, 255, 255, 5%);
    height: 11.354rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 2.135rem;
    row-gap: 1.875rem;
    transition: .7s all;
}

.home_partner_logo {
    width: 10.99rem;
    height: 4.583rem;
}

.home_partner_title {
    font-family: 'Montserrat 600';
}

.home_11 .group_content {
    row-gap: 1.042rem;
}

section.home_11 {
    margin-top: 6.667rem;
}

.home_11 .kusto_pattern {
    width: 19.792rem;
    height: 44.792rem;
    left: -2.5%;
    top: 0;
}

.post_home_detail {
    margin-top: 0.99rem;
    justify-content: space-between;
    color: rgba(102, 102, 102, 1);
}

.post_home_title {
    margin-top: 0.78125rem;
    font-family: 'BROLIMO 300';
    line-height: 1.2;
    font-size:1.146rem;
}

.post_home_item {
    padding: 0 0.521rem;
}

.home_post_slide {
    margin: 0 -0.521rem;
}

.swiper-scrollbar {
    position: unset !important;
    display: block;
    opacity: 1 !important;
    height: 1px;
}

.swiper-scrollbar .swiper-scrollbar-drag {
    background: white;
}

.home_11 .swiper-scrollbar {
    margin-top: 2.396rem;
}

.swiper-scrollbar {
    background: rgba(255, 255, 255, 0.2);
}

.post_home_avatar {
    overflow: hidden;
}

.post_home_item:hover img {
    transform: scale(1.1);
    transition: .7s all;
}

.post_home_item:hover .post_home_title {
    color: var(--sub-cl);
    transition: .7s all;
}

.post_home_item .post_home_title {
    transition: .7s all;
}

.post_home_item img {
    transition: .7s all;
}

.post_link {
    width: 100%;
    height: 100%;
    z-index: 1;
}

.home_11 .group_content {
    margin-top: 18.75rem;
}

section.register_form_section {
    padding-top: 7.396rem;
}

.register_form_image {
    width: 34.74rem;
    flex: 0 0 auto;
}


.register_form_detail_title.xxl-content {
    color: var(--main-cl);
    font-family: 'BROLIMO';
    line-height: 1;
}

.register_form_detail .content {
    color: rgba(102, 102, 102, 1);
    margin-top: 0.885rem;
    font-family: 'Montserrat normal';
}

.register_form {
    margin-top: 2.5em;
}

.register_form input, .register_form textarea {
    box-shadow: none;
    background: none;
    border: none;
    padding: 0 0 0.885rem 0;
    border-bottom: 1px solid rgba(17, 18, 28, 0.2);
    font-size: 1.042rem;
    margin: 0;
}

.register_form input:focus, .register_form textarea:focus {
    box-shadow: none;
    background: none;
}

.register_form .col {
    display: flex;
    flex-direction: column;
    row-gap: 2.34375rem;
}

.form_checkbox {
    display: flex;
    align-items: flex-start; /* QUAN TRỌNG: tránh rớt chữ */
    gap: 12px;
}

.form_checkbox input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    width: 1.302rem;
    height: 1.302rem;
    border: 1.5px solid rgb(255, 213, 108);
    border-radius: 5px;
    background: white;
    cursor: pointer;
    flex-shrink: 0;
    /*margin-top: 2px;*/
}

.form_checkbox input[type="checkbox"]:checked {
    background-color: white;
    position: relative;
}

.form_checkbox input[type="checkbox"]:checked::after {
    content: '✓';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 0.75rem;
    font-weight: 700;
    color: #000;
}

.form_checkbox span.wpcf7-list-item.first.last {
    margin: 0;
}

label.form_checkbox {
    display: flex !important;
    font-weight: unset;
    gap: 0.625rem;
    margin: 0;
}

.form_checkbox span.wpcf7-list-item.first.last label {
    margin: 0;
}

span.agree_content.m-content {
    color: rgba(102, 102, 102, 1);
}

span.agree_content.m-content {
    color: rgba(102, 102, 102, 1);
}

span.agree_content.m-content a {
    color: rgba(102, 102, 102, 1);
    position: relative;
}

span.agree_content.m-content a:hover:before {
    opacity: 1;
    transition: .7s all;
}

span.agree_content.m-content a:before {
    position: absolute;
    content: '';
    left: 0;
    width: 100%;
    border: 1px solid rgba(102, 102, 102, 1);
    bottom: 0;
    opacity: 0;
    transition: .7s all;
}

.wpcf7 .wpcf7-not-valid-tip {
    position: absolute;
    background: var(--main-cl);
    color: white;
    border-radius: 10px;
    padding: .2rem;
}

.wpcf7 .wpcf7-not-valid-tip:after {
    border-bottom-color: var(--main-cl);
}

.form_action input[type="checkbox"] {
    font-size: unset;
    padding: 0.6rem;
    display:block;
}

.wpcf7 .form_checkbox span.wpcf7-list-item {
    margin-right: 0;
}

footer#footer {
    background: rgba(18, 26, 42, 1);
    color: white;
    position: relative;
}

footer#footer:before {
    position: absolute;
    content: '';
    left: 0;
    bottom: 40%;
    width: 100%;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

footer p {
    margin: 0;
}

footer#footer .col {
    padding-bottom: 0;
}

.footer_top {
    display: flex;
    justify-content: space-between;
    padding-top: 3.385rem;
}

.footer_top_item {
    gap: 1.25rem;
}

.footer_top_title {
    color: rgba(255, 255, 255, 50%);
}

.footer_top_content.normal_content, .footer_top_content.normal_content a {
    font-family: 'Montserrat 600';
    color: white;
    transition: .7s all;
}

.footer_top_content.normal_content a:hover {
    color: var(--sub-cl);
    transition: .7s all;
}

.footer_bottom {
    margin-top: 3.125rem;
    padding: 1.042rem 0 1.5625rem;
}

.footer_bottom_content {
    font-size: 0.677rem;
}

.footer_bottom {
    justify-content: space-between;
}

a.social_item {
    width: 1.5625rem;
    height: 1.5625rem;
    border: 1px solid white;
    border-radius: 100%;
    /*padding: 0.365rem 0.521rem;*/
    display: flex;
    justify-content: center;
    align-items: center;
    transition: .7s all;

}

a.social_item:hover {
    background: var(--sub-cl);
    transition: .7s all;
    border: 1px solid var(--sub-cl);
}

.footer_bottom_social {
    gap: 1.823rem;
}

span.social_item_image {
    width: 0.729rem;
    height: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 0 0 auto;
}

a.s-content.footer_pages_item {
    color: white;
    font-family: 'Montserrat 600';
    transition: .7s all;

}

.footer_bottom_pages {
    gap: 0.833rem;
}

a.s-content.footer_pages_item:not(:first-child) {
    padding-left: 16px;
    border-left: 1px solid rgba(255, 255, 255, 0.2);
}

a.s-content.footer_pages_item:hover {
    color: var(--sub-cl);
    transition: .7s all;
}

ul.fixed_button.desktop_display {
    position: fixed;
    bottom: 0;
    right: 1rem;
    list-style: none;
    transform: translateY(-27%);
    z-index: 99;
}

ul.fixed_button > li:not(:last-child) {
    margin-bottom: 1rem;
}

ul.fixed_button > li > a {
    position: relative;
    width: 2.96875rem;
    height: 2.96875rem;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    backdrop-filter: blur(20px);
    background: var(--sub-cl);
    border: 1px solid var(--sub-cl);
    border-radius: 50%;
    z-index: 1;
    transition: .7s all;
}

div#popup_home {
    width: 56.198rem;
    /*border-radius: 30px;*/
    background: rgba(249, 247, 241, 1);
    color: white;
    padding: 0;
}

div#popup_home {
    color: black;
}

ul.fixed_button li a:before {
    display: block;
    position: absolute;
    content: '';
    left: 50%;
    top: 50%;
    width: 100%;
    height: 100%;
    animation: opacity 1.5s ease-out infinite;
    border-radius: 100%;
    transform: translate(-50%, -50%);
    z-index: 0;
    background: var(--sub-cl);
}

ul.fixed_button li.list_cta_button a:before {
    background-color: var(--sub-cl);
}

ul.fixed_button > li > a img {
    max-width: 1.823rem;
    max-height: 1.458rem;
    width: auto;
    height: auto;
    z-index: 1;
}

.page-template-home footer {
    margin-top: 6.198rem;
}

.register_form_detail {
    background: rgba(249, 247, 241, 1);
    padding: 3.958rem 3.802rem 4.896rem 3.28125rem;
}

.popup_home .register_form_detail {
    padding: 4rem 7.03125rem;
    cursor: auto;

}

.popup_home span.btn_content {
    line-height: 1;
}

.fancybox-container svg {
    width: 100%;
    height: 100%;
    display: block;
}

/*.popup_home button.btn span.btn_svg{*/
/*    height:1.833rem;*/
/*}*/
button.fancybox-button.fancybox-close-small {
    width: 2.604rem;
    height: 2.604rem;
    padding: .3rem;
    overflow: hidden;
}

.popup_home .fancybox-close-small {
    top: 1.458rem;
    right: 1.354rem;
}

.popup_home .fancybox-close-small svg {
    transition: .7s all;

}

.popup_home .fancybox-close-small:hover svg {
    transform: rotate(360deg);
    transition: .7s all;
}

header#header {
    background: transparent;
    position: fixed;
    z-index: 1001;
}

.header-bg-color {
    background-color: transparent !important;
}

.header-top {
    background: transparent;
}

ul.header-nav li a {
    font-size: 0.729rem;
    color: white;
    font-family: 'Montserrat normal';
    font-weight: unset;
}

header#header #logo img.header-logo {
    height: 6.771rem;
    max-height: 6.771rem;
    width: 8.59375rem;
    object-fit: cover;
    transform: translateY(-35%);
}

header#header #logo img.header-logo-dark {
    height: 2.083rem;
    max-width: 3.4375rem;
}

.header-wrapper.stuck #logo {
    width: 5.9375rem;
}

.header-wrapper.stuck ul.header-nav.header-nav-main.nav.nav-right.nav-uppercase {
    justify-content: end;
}

ul.header-nav.header-nav-main.nav.nav-right.nav-uppercase {
    justify-content: end;
    gap: 4.21875rem;
}

ul.header-nav.header-nav-main.nav.nav-left.nav-uppercase {
    gap: 3.49rem;
}

ul.header-nav.header-nav-main.nav.nav-right.nav-uppercase li,
ul.header-nav.header-nav-main.nav.nav-left.nav-uppercase li {
    margin-left: 0;
    margin-right: 0;
}


.header-wrapper.stuck .header-logo {
    display: none;
}

.header-wrapper.stuck {
    backdrop-filter: blur(20px);
}

.header-wrapper.stuck ul.header-nav.header-nav-main.nav.nav-right.nav-uppercase:before {
    content: unset;
}

.header-wrapper.stuck ul.header-nav.header-nav-main.nav.nav-left.nav-uppercase:before {
    content: unset;
}

.header-wrapper.stuck .header-logo-dark {
    display: block !important;
}

.logo-center .logo {
    margin: 0;
}

div#top-bar {
    padding-top: 0.885rem;
}

ul.header-nav li a:hover {
    color: white;
}

ul.header-nav li a:before {
    position: absolute;
    content: '';
    left: 0;
    bottom: -2%;
    width: 0;
    border: 1px solid white;
    opacity: 0;
    transition: .7s all;
}

ul.header-nav li a:hover:before {
    width: 100%;
    opacity: 1;
    transition: .7s all;
}

ul.header-nav.header-nav-main.nav.nav-left.nav-uppercase:before {
    position: absolute;
    content: '';
    right: 0;
    top: 0;
    background: rgba(255, 255, 255, 0.3);
    transition: .4s all;
    opacity: 1;
    width: calc(100% + calc(calc(100vw - var(--container-w)) / 2) + 15px);
    height: 1px;
}

ul.header-nav.header-nav-main.nav.nav-left.nav-uppercase, ul.header-nav.header-nav-main.nav.nav-right.nav-uppercase {
    padding-top: 0.417rem;
}

ul.header-nav.header-nav-main.nav.nav-right.nav-uppercase:before {
    position: absolute;
    content: '';
    left: 0;
    top: 0;
    background: rgba(255, 255, 255, 0.3);
    transition: .4s all;
    opacity: 1;
    width: calc(100% + calc(calc(100vw - var(--container-w)) / 2) + 15px);
    height: 1px;
}

li.header-search a.is-small {
    position: relative;
}

li.header-search a.is-small:before {
    position: absolute;
    content: attr(data-text);
    left: 100%;
    transform: translateX(10px);
    color: rgba(249, 247, 241, 1);
    font-family: 'Montserrat';
    font-weight: unset;
    font-size: 0.9375rem;
    white-space: nowrap;
}

li.header-search i.icon-search {
    color: white;
}

ul.language.m-content {
    list-style: none;
}

.language_wrap {
    gap: 0.365rem;
    color: white;
}

.header_2_wrap, .header_2_wrap a {
    color: white;
    transition: .7s all;
    gap: 1.953125rem;
}

.nav:hover > li.header-search:not(:hover) > a:before {
    opacity: 1;
}

.header_2_content {
    padding-left: 1.953125rem;
    border-left: 1px solid rgba(255, 255, 255, 0.2);
}

.header_2_content.m-content a:hover {
    color: var(--sub-cl);
    transition: .7s all;
}

.search-lightbox-title {
    display: none;
}

#search-lightbox input {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(30px);
    color: white;
    font-family: 'Montserrat normal';
    padding: 1.8rem 1.25rem 1.8rem 1.979rem;
}

.searchform-wrapper.ux-search-box.relative.is-large {
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 120px;
}

#search-lightbox .button.icon.secondary {
    backdrop-filter: blur(30px);
    background: rgba(255, 255, 255, 0.1);
}

#search-lightbox input::placeholder {
    color: white;
}

#search-lightbox .button.icon i {
    color: white;
}

#search-lightbox .search-keywords {
    justify-content: start;
    gap: 18px;
    margin-top: 11px;
}

#search-lightbox .search-keywords a {
    border: none;
    padding: 0 0 0 0.365rem;
    font-family: 'Montserrat normal';
    color: rgba(249, 247, 241, 50%);
}

.mfp-bg {
    opacity: 1 !important;
    background: rgba(0, 0, 0, 0.7);
}

#search-lightbox .search-keywords > a:hover {
    background: none;
    color: white !important;
}

.icon-search:before {
    content: '';
    background-image: url(../images/search_icon.png);
    width: 1.5625rem;
    height: 1.5625rem;
    display: block;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

li.header-search i.icon-search:before {
    width: 0.9375rem;
    height: 0.9375rem;
}

li.header-search i.icon-search {
    font-size: 0.9375rem !important;
}

li.header-search i.icon-search:before {
    background-image: url(../images/header_search.png);
}

.language_cta {
    width: 0.729rem;
    height: 0.729rem;
    display: flex;
    justify-content: center;
    align-items: center;
}

.mobile_pagi {
    display: none;
}

.position_project_dot.mobile_display {
    display: none;
}

ul.button_cta.mobile_display {
    display: none;
}

li.header-search.header-search-lightbox.has-icon {
    margin-bottom: 0;
}

.language_wrap .m-content {
    line-height: 1;
}

@keyframes Signature1 {
    100% {
        stroke: white;
        stroke-dashoffset: 0;
    }
}

.draw_svg_path_2 {
    fill: none;
    stroke-dasharray: 1;
    stroke-dashoffset: 1;
    animation: drawLoopSmooth 6s linear infinite;
}

@keyframes drawLoopSmooth {
    0% {
        stroke-dashoffset: 1;
        opacity: 1;
    }
    50% {
        stroke-dashoffset: 0; /* vẽ xong */
        opacity: 1;
    }
    70% {
        stroke-dashoffset: 0; /* giữ 1 nhịp */
        opacity: 1;
    }
    100% {
        stroke-dashoffset: -1; /* xoá dần */
        opacity: 0;
    }
}

@keyframes zoom-in-zoom-out {
    0% {
        transform: scale(1, 1);
    }
    50% {
        transform: scale(1.3, 1.3);
    }
    100% {
        transform: scale(1, 1);
    }
}

path.draw_svg_path {
    animation-name: Signature2;
    animation-duration: 15s;
    animation-fill-mode: forwards;
    animation-timing-function: cubic-bezier(2, .25, .43, .96);
    stroke: white;
    stroke-width: 0.2px;
    stroke-dasharray: 2108;
    stroke-dashoffset: 2108;
    fill: transparent;
}

.load_home_page.complete svg path {
    fill: white;
}

.kusto_pattern {
    pointer-events: none;
}

.mobile_display {
    display: none;
}

@keyframes fadeUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.ef-img-t {
    display: inline-block;
    opacity: 0;
    transform: translateY(50px);
    animation: none;
}

.is-visible .ef-img-t {
    animation: fadeUp 1s forwards;
    animation-delay: var(--delay);
}

.home_4_image {
    overflow: hidden;
}

.home_4_image:hover img {
    transform: scale(1.2);
    transition: 1s all;
}

.home_4_image img {
    transition: 1s all;
}


.home_left_full {
    overflow: hidden;
    position: relative;

}

.home_2 .home_left_full {
    aspect-ratio: 951 / 827;
}

.home_2 .home_left_full img {
    position: absolute;
    inset: 0;
    width: 100%;
    /*height: 130%;*/
    height: 130%;
    object-fit: cover;
    object-position: center;
    transform-origin: 100%;
    transform: translateY(-12%);
    will-change: transform;
}

.home_partner_slide_item:hover .home_partner_slide_item_wrap {
    background: var(--sub-cl);
    transition: .7s all;
}

.home_10 .slide_arrow_wrap.flex.items-center {
    position: relative;
    right: unset;
    bottom: unset;
}

.home_10 h2 {
    width: fit-content;

}

.parallax_wrap {
    position: relative;
    overflow: hidden;
}

.parallax_wrap img {
    will-change: transform;
    transform: translateY(0);
}

#search-lightbox .button.icon.secondary {
    pointer-events: none;
}

#search-lightbox input {
    pointer-events: none;
}

.home_2 .group_content_2 {
    row-gap: 0;
}

.home_2 .content_2_bold {
    font-size: 1.667rem;
    font-family: 'BROLIMO';
    margin-top: 0.26rem;
}

.home_2 .group_content_2 .content {
    margin-top: 1.302rem;
}

.home_position_location_item {
    position: absolute;
}

.home_position_location {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
}

.home_position_location {
    opacity: 0;
    transform: translateY(1%);
    transition: .7s all;
}

.home_3:hover .home_position_location {
    opacity: 1;
    transition: opacity .7s ease-in-out;
    transform: translateY(0);
}

.bridge_position .position_project_line {
    height: 1px !important;
    width: 0;
}

.position_project.bridge_position.active .position_project_line {
    height: 1rem;
}

.bridge_position.active .position_project_line {
    width: 10.417rem !important;
}

.bridge_position .position_project_line:before {
    content: unset;
}

.bridge_position {
    align-items: start;
}

.position_project.bridge_position .position_project_line:after {
    position: absolute;
    content: '';
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 0.625rem;
    height: 0.625rem;
    background: white;
    border-radius: 100%;
    opacity: 0;
    transition: .7s all;

}

.bridge_position.active .position_project_line:after {
    opacity: 1;
    transition: .7s all;
}

.bridge_position .position_title {
    font-family: 'BROLIMO';
    font-size: 1.042rem;
}

.bridge_position .position_project_line {
    height: 0.078125rem;
}

.svg_arrow {
    bottom: 3%;
    left: 45%;
    width: 5.9375rem;
    height: 5.208rem;
    animation: blink 2s infinite ease-in-out;
}

@keyframes blink {
    0% {
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}
section.home_4 {
    padding-top: 7.24rem;
}

.home_4 .content {
    margin-left: -1.042rem;
    text-align: justify;
}

.home_4 a.btn {
    margin-left: -1.042rem;
    margin-top: 0.78125rem;
}

.marquee_wrap {
    overflow: hidden;
    width: 100%;
}

.home_4_marquee {
    margin-top: 3.125rem;
    max-height: 50.729rem;
    overflow: hidden;
    gap: 0.417rem;
}

.marquee_inner {
    display: flex;
    flex-direction: column;
    will-change: transform;
}

.marquee_item {
    margin-bottom: 0.46875rem;
}

@keyframes marqueeTopToBot {
    from {
        transform: translateY(0);
    }
    to {
        transform: translateY(-50%);
    }
}


@keyframes marqueeBotToTop {
    from {
        transform: translateY(-50%);
    }
    to {
        transform: translateY(0);
    }
}

.home_4_marquee_1 .marquee_inner {
    animation: marqueeTopToBot 250s linear infinite;
}

.home_4_marquee_2 .marquee_inner {
    animation: marqueeBotToTop 475s linear infinite;
}

.home_4_marquee_3 .marquee_inner {
    animation: marqueeTopToBot 350s linear infinite;
}

.home_4_marquee_4 .marquee_inner {
    animation: marqueeBotToTop 200s linear infinite;
}

.home_4_marquee_5 .marquee_inner {
    animation: marqueeTopToBot 400s linear infinite;
}

section.home_5 {
    padding-top: 7.8125rem;
}

.home_5 .group_content {
    max-width: 36.823rem;
    display: flex;
    flex-direction: column;
    row-gap: 0.729rem;
}

section.home_5 .banner_full:after {
    position: absolute;
    content: '';
    left: 0;
    bottom: 0;
    width: 100%;
    height: 26.5625rem;
    background: linear-gradient(360deg, rgba(0, 0, 0, 0.8) 34.85%, rgba(0, 0, 0, 0) 100%);
    z-index: 1;
}

.banner_6_content_wrap {
    gap: 2.604rem;
}

.banner_6_content {
    z-index: 2;
}

.banner_6_content .group_content {
    max-width: 41.771rem;
}

.banner_6_content_wrap .content {
    text-align: justify;
}

.banner_5_content_wrap .content {
    text-align: justify;
}

.position_project_logo {
    opacity: 0;
    transition: .7s all;
}

.home_position_main .position_project.active .position_project_logo {
    opacity: 1;
    transition: .7s all;
}

.home_7_image_wrap {
    margin-left: -10.417rem;
    margin-right: calc(-1 * calc(calc(100vw - var(--container-w)) / 2) - 15px);
}

.home_7 .group_content {
    padding-top: 7.03125rem;
    padding-right: 2.917rem;
    z-index: 5;
    position: relative;
}

.home_7 .group_content .content {
    text-align: justify;
}

.home_7_detail_item_title {
    font-size: 0.9375rem;
}

.counter_hidden {
    opacity: 0;
}

.counter {
    position: absolute;
}

.home_7_detail_list {
    display: flex;
    flex-wrap: wrap;
    column-gap: 2.708rem;
    row-gap:1rem;
    margin-top: 1.615rem;
    position: relative;
    z-index: 5;
}

.home_7_detail_item {
    width: fit-content;
}

.home_7_detail_item_wrap.number.relative {
    font-size: 1.146rem;
    font-family: 'Montserrat 600';
    margin-top: 0.26rem;
}

.home_7_bottom {
    position: relative;
    z-index: 5;
    margin-top: 1.40625rem;
    padding-top: 1.40625rem;
    border-top: 1px solid #FFFFFF33;
}

.home_7_bottom_list {
    margin-top: 0.729rem;
    display: flex;
    flex-wrap: wrap;
    align-items: start;
    justify-content: start;
    column-gap: 2.083rem;
    row-gap: 0.78125rem;
}

.home_7_bottom_item {
    width: calc(100% / 2 - (2.083rem * 1 / 2));
}

.home_7_bottom_wrap {
    font-family: 'Montserrat 600';
}

.home_7_link {
    margin-top: 2.396rem;
}

.home_7_position_list {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
}

.home_7_position_item {
    display: flex;
    align-items: center;
    gap: 0.833rem;
}

.home_7_position_item_title {
    font-size: 2.083rem;
    font-family: 'BROLIMO';
}

.home_7_position_item_content {
    text-align: center;
    font-family: 'Montserrat 500';
    line-height: 1.5
}

.position_inverse .home_7_position_line {
    background-image: linear-gradient(
            270deg, rgba(255, 255, 255, 0) 0%, #FFFFFF 100%);
}

.position_inverse .home_7_position_line:before {
    left: 0;
}

.home_7_image_svg.svg_1 {
    width: 12.265625rem;
    height: 35.703125rem;
    left: 39.5%;
    top: 23%;
}
.home_7_image_svg.svg_2 {
    right: 13.5%;
    top: 5.8%;
    width: 27.214rem;
    height: 49.01rem;
}
.home_7_image_svg_title {
    position: absolute;
    top: 50%;
    z-index: 2;

    writing-mode: vertical-rl;
    transform: translate(-50%, -50%) rotate(180deg);

    font-family: 'BROLIMO';
    font-size: 2.083rem;
    opacity: 0;
    transition: .7s all;
}

.svg_1 .home_7_image_svg_title {
    right: 20%;
}
.home_7_image{
    z-index: 3;
}
.home_7_position_list{
    pointer-events: none;
}
.svg_2 .home_7_image_svg_title {
    right: 52%;
}

.home_7_image_svg img {
    mix-blend-mode: multiply;
}
.home_7_image_svg_fade {
    position: relative;
    transition: none;
    height:100%;
}

.home_7_image_svg_fade img {
    mix-blend-mode: multiply;
    opacity: 0;
    transition: opacity .6s ease;
    will-change: opacity;
    transform: translateZ(0);
}

.home_7_image_svg:hover .home_7_image_svg_fade img {
    opacity: 1;
}
.home_7_image_svg_title{
    opacity:0;
    transition: .7s all;
}
.home_7_image_svg:hover .home_7_image_svg_title{
    opacity: 1;
    transition: .7s all;
}
.home_8_list {
    margin-top: 0.99rem;
    gap: 2.083rem;
}

.home_8_item {
    width: calc(100% / 2 - (2.083rem * 1 / 2));
}

.home_8_image {
    width: 100%;
    height: 28.125rem;
    overflow: hidden;
}
.home_8_detail {
    margin-top: 1.354rem;
}
.home_8_title {
    font-size: 2.083rem;
    line-height: 1;
    font-family: 'BROLIMO';
    color: var(--sub-cl);
}
section.home_9 {
    padding-top: 5.78125rem;
}
.home_8_item:hover img {
    transform: scale(1.1);
    transition: .7s all;
}
img{
    transition:.7s all;
}
.home_9_wrap .logo {
    width: 17.083rem;
    height: 7.917rem;
    margin: 0 auto 1.354rem;
}
.register_form_detail_title{
    font-size:2.604rem;
}
button.btn span.btn_svg {
    width: 0.833rem;
    height: 0.833rem;
}
button.btn {
    padding: 0 1.146rem !important;
}
.footer_top_title {
    font-size: 0.729rem;
    line-height: 1;
}

.footer_top_content.normal_content, .footer_top_content.normal_content a {
    font-size: 1.042rem;
    line-height: 1;
}
ul.fixed_button li a:before {
    content: unset;
}
.footer_popup {
    max-width: 49.6875rem;
    background: #F9F7F1;
    text-align: start;
    padding: 3.854rem 4.115rem;
}

.footer_popup_title {
    font-size: 2.083rem;
    font-family: 'BROLIMO 500';
    color: #162035;
}

.footer_popup_content {
    margin-top: 0.78125rem;
    max-height: 22.771rem;
    overflow: auto;
    color: #333333;
}
.footer_popup_content p:last-child {
    margin-bottom: 0;
}
.footer_popup_content {
    padding-right: .5rem;
}

.footer_popup_content p, .footer_popup_content li {
    margin-bottom: .2rem;
    line-height: 1.2;
}

.footer_popup_content ol, .footer_popup_content ul {
    padding-left: 1rem;
    margin-bottom: .2rem;
}
.footer_popup_content::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    background-color: #F5F5F5;
}
.footer_popup_content strong{
    font-family: 'Montserrat bold';
}
.footer_popup_content::-webkit-scrollbar {
    width: 0.2rem;
    background-color: #cedbff;
}

.footer_popup_content::-webkit-scrollbar-thumb {
    background-color: var(--main-cl);
}
button.fancybox-button.fancybox-close-small:hover svg {
    transform: rotate(360deg);
    transition: .7s all;
}
button.fancybox-button.fancybox-close-small svg{
    transition: .7s all;
}
html.js.has-off-canvas-undefined {
    margin-right: 0.417rem !important;
}
body.compensate-for-scrollbar {
    margin-right: 0 !important;
}
.fancybox-button svg path {
    fill: var(--sub-cl) !important;
}
.home_position_location_item{
    height:3.646rem;
    width:16.458rem;
}
.home_position_location_item img {
    object-fit: contain;
}
.wpcf7 .wpcf7-not-valid-tip {
    font-size: 0.729rem;
}
.wpcf7 form .wpcf7-response-output {
    font-size: 0.729rem;
}
span.wpcf7-form-control.wpcf7-acceptance {
    display: flex;
    justify-content: center;
    align-items: center;
}


label.form_checkbox {
    gap: 0.2rem;
}

span.wpcf7-form-control-wrap {
    margin-right: 0.625rem;
}
a.agree_content.m-content {
    color: #666666;
    position: relative;
}

a.agree_content.m-content:before {
    position: absolute;
    content: '';
    left: 0;
    width: 0;
    border: 1px solid black;
    bottom: 0;
    opacity: 0;
    transition: .7s all;
}

a.agree_content.m-content:hover:before {
    opacity: 1;
    transition: .7s all;
    width: 100%;
}

span.agree_content.m-content a {
    color: #282828 !important;
}

.banner_full_image_desktop{
    display:block;
}
.banner_full_image_mobile{
    display:none;
}
@media (min-width: 1920px) {
    html {
        font-size: 1vw;
    }
}

@media only screen and (max-width: 1199px) {
    :root {
        --container-w: 1024px
    }
    .position_list .position_project.active:nth-child(10) .position_project_line {
        height: 10.5rem;
    }
    .load_home_page svg {
        width: 320px;
    }

    html {
        font-size: 1vw
    }

    #logo {
        width: 100px !important;
    }

    li.header-search.header-search-lightbox.has-icon {
        margin-top: 0;
    }
}
@media (max-width: 1600px) and (min-width: 1400px) {
    .position_list .position_project:nth-child(8) {
        left: 58.5% !important;
    }
    .content {
        font-size: .95rem;
    }
    .banner_6_content .group_content {
        max-width: 43.771rem;
    }
    h2 {
        font-size: 2.3rem;
    }
    .register_form_detail .content {
        font-size: .8rem;
    }

    .register_form {
        margin-top: 1.5rem;
    }

    .wpcf7 .wpcf7-not-valid-tip,
    .wpcf7 form .wpcf7-response-output{
        font-size: .9rem;
    }
    .home_2 .content_2_bold {
        font-size: 1.3rem;
    }
    .position_list .position_project.active:nth-child(10) .position_project_line {
        height: 10.71875rem;
    }
}
@media (max-width: 1600px) and (min-width: 1199px) {
    html {
        font-size: 1vw;
    }
    .banner_6_content .group_content {
        max-width: 47.771rem;
    }
    ul.header-nav li a {
        font-size: 0.75rem;
    }

    div#top-bar {
        padding-top: 1rem;
    }

    header#header #logo img.header-logo {
        transform: translateY(-10%);
    }

}

@media (max-width: 1023px) and (min-width: 850px) {
    :root {
        --container-w: 991px;

    }
    .home_position_location_item {
        height: 1.5rem;
    }
    html {
        font-size: 1.2vw;
    }

    header#header #logo img.header-logo {
        width: 6rem;
        height: auto;
        transform: translateY(-70%);
    }

    ul.header-nav li a {
        font-size: 0.68rem;
    }
    a.btn .btn_content, button.btn .btn_content {
        font-size: 1.1rem;
    }

    a.btn.flex.items-center {
        padding-top: .7rem;
    }
    .content {
        font-size: 1.2rem;
    }
    .banner_5_content_wrap.flex.items-end .content {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 4;
        overflow: hidden;
    }
    .home_7 .group_content {
        max-width: 100%;
    }

    .home_7_detail_list {
        justify-content: space-between;
    }

    .home_7_detail_item_title {
        font-size: 1.3rem;
    }

    .home_7 .group_content .content {
        font-size: 1.3rem;
    }

    li.button_cta_open:before {
        content: unset;
    }

    .home_4 .content {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 5;
        overflow: hidden;
    }

    .unit {}

    .home_7_detail_item_wrap.number.relative {
        font-size: 1.4rem;
    }

    .home_7_detail_item_content_bottom.s-content {
        font-size: 1.2rem;
    }

    .home_7_bottom_title.m-content {
        font-size: 1.3rem;
    }

    .m-content {
        font-size: 1.3rem;
    }

    .home_7_bottom_wrap.number {
        font-size: 1.4rem;
    }

    a.btn .btn_content, button.btn .btn_content {
        font-size: 1.2rem;
    }

    a.btn.flex.items-center {
        padding: 1rem 1.5rem;
    }
}


@media only screen and (max-width: 849px) {
    :root {
        --container-w: 720px;
        --border-w: 57rem;
    }


    .position_list .position_project.active:nth-child(9) .position_project_line {
        height: 13rem;
    }

    .position_list .position_project.active:nth-child(11) .position_project_line {
        height: 12.5rem;
    }

    .position_list .position_project.active:nth-child(14) .position_project_line {
        height: 13.5rem;
    }
    .home_7 .group_content {
        max-width: 100%;
    }
    .home_7_image_svg.svg_2 {
        right: 13.5%;
        top: 5.8%;
        width: 28.214rem;
        height: 51.01rem;
    }

    .home_7_detail_list {
        justify-content: space-between;
    }

    .home_7_detail_item_title {
        font-size: 1.3rem;
    }

    .home_7 .group_content .content {
        font-size: 1.3rem;
    }

    li.button_cta_open:before {
        content: unset;
    }

    .home_4 .content {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 5;
        overflow: hidden;
    }


    .home_7_detail_item_wrap.number.relative {
        font-size: 1.4rem;
    }

    .home_7_detail_item_content_bottom.s-content {
        font-size: 1.2rem;
    }

    .home_7_bottom_title.m-content {
        font-size: 1.3rem;
    }

    .m-content {
        font-size: 1.3rem;
    }

    .home_7_bottom_wrap.number {
        font-size: 1.4rem;
    }

    a.btn .btn_content, button.btn .btn_content {
        font-size: 1.2rem;
    }

    a.btn.flex.items-center {
        padding: 1rem 1.5rem;
    }
    ul.nav.nav-sidebar.nav-vertical.nav-uppercase li {
        border: 0;
    }

    .load_home_page svg {
        width: 320px;
    }

    .home_11 .group_content {
        margin-top: 0;
    }

    .search-tabs .search-grid {
        grid-template-columns: 1fr 1fr 1fr;
    }

    html {
        font-size: 1.4vw;
    }

    .register_form_image {
        width: 25rem;
    }

    .register_form_detail {
        padding: 4rem 2.5rem;
    }

    .home_4_image {
        width: auto;
        height: auto;
    }

    header#header #logo img.header-logo {
        transform: translateY(0);
        display: none;
    }

    .m-content {
        font-size: 1.2rem;
    }

    [data-open="#main-menu"] {
        display: block;
        width: 4rem;
        height: 4rem;
        background-image: url(../images/icon_menu_dark.svg) !important;
        background-size: contain !important;
        background-repeat: no-repeat !important;
        background-position: left center !important;
        background-color: unset !important;
        padding: 0 !important;
    }

    [data-open="#main-menu"] i {
        display: none;
    }

    [data-open="#search-lightbox"] {
        width: 2rem;
        height: 2rem !important;
    }

    header#header #logo img.header-logo-dark {
        height: 4rem;
        display: block !important;
    }

    li.nav-icon.has-icon {
        margin: 0;
    }

    .header-main {
        height: 80px !important;
    }

    .home_2 .kusto_pattern {
        height: 30rem;
        right: -50%;
    }

    ul.language.m-content {
        font-size: 1.5rem;
    }

    .language_cta {
        width: 1.2rem;
        height: 1.2rem;
    }

    .content {
        font-size: 1.15rem;
    }

    .home_3 .group_content .content {
        padding: 0 4rem;
    }

    .position_list {
        height: 24.9375rem;
    }

    .position_title.s-content {
        font-size: .55rem;
    }

    .bridge_position .position_title.s-content {
        font-size: 1.1rem;
    }

    .home_3.home_position_location {
        opacity: 1;
    }

    .home_3 .home_position_location {
        opacity: 1 !important;
    }


    .position_project.active .position_project_line {
        height: 10rem;
    }

    .home_4 .group_content {
        max-width: 30rem;
        margin-left: 3rem;
    }

    /*h2 {*/
    /*    font-size: 5rem;*/
    /*}*/
    a.btn span.btn_svg, button.btn span.btn_svg {
        width: 1.1rem;
        height: 1.1rem;
    }

    .slide_arrow {
        width: 3.5rem;
        height: 3.5rem;
    }

    .home_count_wrap {
        font-size: 1.8rem;
    }

    .home_7 .group_content {
        max-width: 33rem;
    }

    .home_7_project_image {
        width: 40rem;
        height: auto;
    }

    .home_7_project_image {
        width: 50rem;
        height: auto;
    }

    .home_7_position_line {
        width: 8rem;
        height: 0.1rem;
    }

    .home_ex_cta {
        bottom: 10%;
    }

    .v-s-content {
        font-size: 1rem;
    }

    .l-content {
        font-size: 1.8rem;
    }

    .footer_top_item {
        gap: .3rem;
    }

    span.social_item_image {
        width: 1.2rem;
        height: 1.2rem;
    }

    a.social_item {
        width: 2.2rem;
        height: 2.2rem;
    }

    .footer_bottom_content {
        font-size: 1rem;
    }

    .s-content {
        font-size: 1rem;
    }

    .banner_arrow {
        width: 4.3rem;
        height: 4.3rem;
    }

    section.home_3 {
        padding-top: 4rem;
    }

    .home_7 {
        padding: 4.09375rem 0 2.01rem;
    }

    section.home_8 {
        padding-top: 4.25rem;
    }

    section.home_9 {
        padding-bottom: 18rem;
    }

    section.home_11 {
        margin-top: 4.667rem;
    }

    section.register_form_section {
        padding-top: 3.396rem;
    }

    .page-template-home footer {
        margin-top: 4.198rem;
    }

    .mfp-bg.off-canvas.off-canvas-left {
        top: 70.03px;
        position: fixed !important;
    }

    .mfp-content {
        top: 70.03px !important;
    }

    .off-canvas .sidebar-menu {
        padding-top: 0;
    }

    .off-canvas-left .mfp-content, .off-canvas-right .mfp-content {
        background: var(--main-cl);
    }

    .off-canvas:not(.off-canvas-center) .nav-vertical li > a {
        color: white;
        font-size: 1.2rem;
    }

    ul.fixed_button > li > a {
        width: 4rem;
        height: 4rem;
    }

    ul.fixed_button > li > a img {
        max-width: 3rem;
        max-height: 2rem;
    }

    ul.fixed_button.desktop_display {
        display: none;
    }

    ul.button_cta.mobile_display {
        display: block;
        position: fixed;
        bottom: 0;
        right: 2rem;
        transform: translateY(-50%);
        list-style: none;
        margin: 0;
        z-index: 99;
    }

    li.button_cta_open {
        width: 4rem;
        height: 4rem;
        background: var(--sub-cl);
        position: relative;
        border-radius: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        margin-left: auto;
    }


    span.button_cta_fixed_menu {
        width: 2rem;
        height: 2rem;
        display: block;
        opacity: 1;
        transition: .7s all;
        position: relative;
    }
    .home_4 .content {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 5;
        overflow: hidden;
    }
    ul li .button_cta_fixed_menu_closed {
        width: 2rem;
        height: 2rem;
        display: block;
        opacity: 0;
        position: absolute;
        transition: .7s all;
    }

    ul.fixed_button {
        list-style: none;
        transform: translateY(-30%) scale(0);
        transition: .7s all;
    }

    ul.button_cta.active .fixed_button {
        transform: translateY(-110%) scale(1);
        transition: .7s all;
    }

    ul.button_cta.active .button_cta_fixed_menu {
        opacity: 0;
        transition: .7s all;
        transform: rotate(480deg);
    }

    ul.button_cta.active .button_cta_fixed_menu_closed {
        opacity: 1;
        transition: .7s all;
        transform: rotate(360deg);
    }

    .button_cta_open svg {
        width: 100%;
        height: 100%;
        display: block;
    }

    .mfp-content {
        box-shadow: none !important;
    }

    .home_2 .kusto_pattern {
        right: 20%;
    }
}

@media only screen and (max-width: 767px) {
    html {
        font-size: 2.5vw;
    }

    .position_project_dot.mobile_display {
        display: block;
    }

    .mobile_display {
        display: block;
    }

    :root {
        --border-w: 30rem;
    }

    .grid-container {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .load_home_page svg {
        width: 240px;
    }

    #search-lightbox {
        margin-left: -20px;
        margin-right: -20px;
        max-width: calc(100% + 40px);
    }

    #search-lightbox .search-lightbox-title {
        margin-bottom: 20px;
        font-size: 20px;
    }

    #search-lightbox .search-keywords {
        margin-top: 20px;
    }

    #search-lightbox .search-keywords > a {
        font-size: 14px;
    }

    .search-tabs .search-grid {
        grid-template-columns: 1fr 1fr;
        grid-gap: 1.5rem 1rem
    }

    .search-page {
        padding: 3rem 0;
    }

    .search-page h1 {
        margin-bottom: 2rem;
    }

    .search-tabs .search-tabs-title .search-tab-title {
        font-size: 0.75rem;
        padding: 0.5rem 1rem;
    }

    .register_form_wrap.flex {
        flex-wrap: wrap;
    }

    .register_form_image {
        width: 100%;
    }

    .footer_top {
        flex-direction: column;
        row-gap: 1rem;
    }

    .footer_bottom {
        flex-direction: column;
        justify-content: start;
        align-items: start;
        row-gap: 1rem;
    }

    .banner_full_content {
        width: 30rem;
    }

    .mobile_pagi {
        display: flex;
    }

    .home_left_full {
        margin-left: 0;
    }

    .home_right_full {
        margin-right: 0;
    }

    .home_2 .group_content_2 {
        max-width: 100%;
    }

    .home_4 .group_content {
        margin-top: 3rem;
        margin-bottom: 3rem;
        max-width: 100%;
        margin-left: 0;
    }

    .home_4_list {
        padding-left: 0;
    }

    .banner_full.relative {
        height: 25.208rem;
    }

    .home_7_wrap {
        flex-wrap: wrap;
    }

    .home_7 .group_content {
        max-width: 100%;
        text-align: center;
        padding-right: 0;
        border: 0;
    }

    .home_7 .kusto_pattern {
        height: 40rem;
        width: 20rem;
        top: 0;
    }

    .home_count_container.flex.items-start {
        align-items: center;
        width: 100%;
    }

    .home_count_wrap {
        font-size: 2.3rem;
    }

    .home_ex_cta.absolute {
        display: none;
    }

    .home_5 .banner_full:before {
        width: 25rem;
    }

    .home_2 .kusto_pattern {
        display: none;
    }

    .home_7_project_image {
        width: 100%;
    }

    .home_7_position_content {
        display: none;
    }

    .home_7_position_line:before {
        width: 1.2rem;
        height: 1.2rem;
    }

    .home_7_position_line {
        background-image: none;
    }

    .home_7_position_line.line_inverse {
        background-image: none;
    }

    .home_8 .group_content {
        padding: 0;
    }

    .banner_full_content.absolute {
        position: relative !important;
        padding: 1rem;
        transform: unset;
        left: 0;
        top: 0;
        width: 100%;
        background: none;
        margin-top: 3rem;
    }

    h2 {
        font-size: 4rem;
    }

    .banner_full_content.absolute h2 {
        color: var(--sub-cl);
    }

    .banner_full.relative {
        height: 35.208rem;
    }


    section.home_9 {
        padding-bottom: 3rem;
    }

    .home_ex_item {
        display: flex;
        flex-direction: column;
        row-gap: 3rem;
    }

    .home_left_full {
        display: flex;
        flex-direction: column;
        row-gap: 3rem;
    }

    section.home_9 {
        padding-top: 3rem;
    }

    .home_ex_cta.mobile_pagi {
        justify-content: center;
    }

    span.btn_content {
        font-size: 1.6rem;
    }

    a.btn span.btn_svg, button.btn span.btn_svg {
        width: 1.3rem;
        height: 1.3rem;
    }

    .home_9 .banner_full.relative {
        height: 100%;
    }

    .slide_arrow_wrap {
        display: none;
    }

    .swiper-pagination.mobile_pagi {
        position: unset;
        margin-top: 3rem;
        justify-content: center;
        align-items: center;
    }

    .swiper-pagination-bullet-active {
        background: var(--sub-cl) !important;
    }

    .swiper-pagination-bullet {
        background: rgb(213 213 213);
    }

    .banner_6_content .group_heading {
        max-width: 100%;
    }

    .banner_6_content {
        bottom: 1rem;
    }

    .m-content {
        font-size: 1.35rem;
    }

    .home_partner_slide_item_wrap {
        height: 15rem;
    }

    .home_partner_logo {
        width: 13rem;
        height: 6rem;
    }

    .home_11 .group_content {
        margin-top: 0;
    }

    .home_11 a.btn.flex.items-center.mobile_pagi {
        margin: 3rem auto 0;
    }

    section.register_form_section {
        padding-top: 0;
    }

    .form_action.flex.items-center {
        flex-wrap: wrap;
        row-gap: 3rem;
    }

    .form_checkbox input[type="checkbox"] {
        width: 1.5rem;
        height: 1.5rem;
        display: block
    }

    .form_checkbox span.wpcf7-list-item {
        width: 1.5rem;
        height: 1.5rem;
    }

    .normal_content {
        font-size: 1.3rem;
    }

    .footer_bottom_content {
        font-size: 1.2rem;
    }

    .banner {
        min-height: 35rem;
    }

    .footer_bottom {
        align-items: center;
    }

    span.social_item_image {
        width: 1.5rem;
        height: 1.5rem;
    }

    a.social_item {
        width: 3rem;
        height: 3rem;
    }

    .s-content {
        font-size: 1.2rem;
    }

    ul.fixed_button > li > a {
        width: 5rem;
        height: 5rem;
    }

    ul.fixed_button > li > a img {
        max-width: 3.5rem;
        max-height: 2.5rem;
    }

    ul.fixed_button > li:not(:last-child) {
        margin-bottom: 1.5rem;
    }

    footer#footer:before {
        bottom: 45%;
    }

    .footer_top_item {
        gap: 1rem;
    }

    .banner_arrow {
        width: 5rem;
        height: 5rem;
    }

    .position_list {
        height: 13.5rem;
    }

    /*.position_project_line {*/
    /*    background-image: none;*/
    /*}*/
    /*.position_title.s-content {*/
    /*    display: none;*/
    /*}*/
    .position_project_line:before {
        opacity: 1;
        width: .6rem;
        height: .6rem;
    }

    .position_title.s-content {
        font-size: .4rem;
    }

    .position_project {
        row-gap: .3rem;
    }

    .position_project_title_mobile {
        position: absolute;
        top: 0;
        left: 50%;
        transform: translateX(-50%) translateY(-130%);
        background: var(--main-cl);
        color: var(--sub-cl);
        border-radius: 5px;
        width: 7rem;
        text-align: center;
        padding: .2rem;
        opacity: 0;
        transition: .7s all;
        z-index: 1;
        font-family: 'Montserrat 600';
    }

    .position_project.absolute.flex.items-center.active .position_project_title_mobile {
        opacity: 1;
        transition: .7s all;
    }

    .position_list .position_project.active:nth-child(1) .position_project_line {
        height: 3rem;
    }

    .position_list .position_project.active:nth-child(2) .position_project_line {
        height: 2.3rem;
    }

    .position_list .position_project.active:nth-child(3) .position_project_line {
        height: 2.8rem;
    }

    .position_list .position_project.active:nth-child(4) .position_project_line {
        height: 8.5rem;
    }

    .position_list .position_project.active:nth-child(5) .position_project_line {
        height: 3.4rem;
    }

    .position_list .position_project.active:nth-child(6) .position_project_line {
        height: 3.6rem;
    }

    .position_list .position_project.active:nth-child(7) .position_project_line {
        height: 3rem;
    }

    .position_list .position_project.active:nth-child(8) .position_project_line {
        height: 3.75rem;
    }

    .position_list .position_project.active:nth-child(9) .position_project_line {
        height: 2.8rem;
    }

    .position_list .position_project.active:nth-child(10) .position_project_line {
        height: 3.8rem;
    }

    .home_position_main .position_project {
        transform: translateX(-20%);
    }

    .banner_arrow_svg {
        width: 1rem;
        height: 2rem;
    }

    .position_project_logo {
        width: 10.59375rem;
        height: auto;
    }

    .home_7_position_content.absolute.mobile_display {
        display: block;
        opacity: 0;
        background: var(--main-cl);
        padding: .5rem;
        border-radius: 5px;
        bottom: 0;
        transform: translateY(120%) translateX(-50%);
        z-index: 1;
        transition: .7s all;
        width: 15rem;
        left: 50%;
    }

    .home_7_position_detail.content {
        font-size: 1.45rem;
    }

    .home_7_position_dot,
    .position_project_dot {
        width: 1.5rem;
        height: 1.5rem;
        background: white;
        transition: .7s all;
        border-radius: 100%;
        z-index: 1;
        position: relative;
    }

    .position_project_dot {
        width: 1.1rem;
        height: 1.1rem;
    }

    /*.position_project_line:before{*/
    /*    display: none;*/
    /*}*/
    .home_7_position_dot:before,
    .position_project_dot:before {
        width: calc(100% + .2rem);
        height: calc(100% + .2rem);
        position: absolute;
        content: '';
        left: 50%;
        top: 50%;
        background-color: white;
        border-radius: 100%;
        animation: opacity 1.5s linear infinite;
    }

    .home_7_position_dot.active .home_7_position_content.mobile_display {
        opacity: 1;
        transition: .7s all;
    }

    /*.position_project_line {*/
    /*    background-image: none;*/
    /*}*/
    .register_form input, .register_form textarea {
        font-size: 16px;
    }

    li.button_cta_open {
        width: 5rem;
        height: 5rem;
    }

    ul.button_cta.active .fixed_button {
        transform: translateY(-108%) scale(1);
    }

    ul li .button_cta_fixed_menu_closed,
    span.button_cta_fixed_menu {
        width: 2.5rem;
        height: 2.5rem;
    }

    .popup_home .register_form_detail {
        padding: 2rem;
    }

    .post_home_detail.v-s-content.flex.items-center {
        font-size: 1.5rem;
    }

    .post_home_title.l-content {
        font-size: 2.2rem;
    }

    .desktop_display {
        display: none;
    }

    .home_7_position_title.xl-content {
        line-height: 1.2;
    }

    .xl-content {
        font-size: 2.35rem;
    }

    .content {
        font-size: 1.6rem;
    }

    .home_7_project {
        z-index: 10;
    }

    .home_7_position_line:before {
        display: none;
    }

    .header-bg-color {
        background-color: transparent !important;
    }

    .home_2 .home_left_full {
        aspect-ratio: 1100 / 936;
        width: auto;
        height: auto;
    }

    .home_2 .home_left_full img {
        width: 100%;
        height: 100%;
        transform-origin: unset;
        will-change: unset;
    }

    section.home_2.relative {
        padding-top: 3rem;
    }

    section.home_3 {
        padding-top: 1rem;
    }

    .home_3 .group_content {
        padding: 0;
    }

    section.home_5 {
        padding-top: 3rem;
    }

    .home_6 .swiper-pagination.mobile_pagi {
        margin-top: 1.5rem;
    }

    .home_7_wrap {
        gap: 1.5rem;
    }

    .home_7_project {
        margin-top: 0;
    }

    .home_7 {
        padding-bottom: 0;
    }

    section.home_8 {
        padding-top: 3rem;
    }

    .home_8 .home_left_full {
        margin-top: 0;
    }

    section.home_10 {
        padding-bottom: 0;
    }

    .page-template-home footer {
        margin-top: 3rem;
    }

    .home_7_position_title.xl-content {
        font-size: 1.8rem;
    }

    .position_project_dot.mobile_display {
        display: none;
    }

    .position_project_logo {
        width: 5rem;
        height: auto;
    }

    .home_position_main .position_project.active .position_project_line {
        height: 3rem;
    }

    span.wpcf7-list-item {
    }

    .form_checkbox span.wpcf7-form-control-wrap {
        width: 1.5rem;
        height: 1.5rem;
        flex: 0 0 auto;
    }

    span.agree_content.m-content {
        line-height: normal;
    }

    span.agree_content.m-content p {
        white-space: nowrap;
    }

    label.form_checkbox {
        flex-wrap: wrap;
    }

    .zoom_wrapper {
        touch-action: none;
    }
    .home_3 .group_content .content {
        padding: 0;
    }

    h2 {
        font-size: 3rem;
    }

    .home_2 .group_content_2 {
        margin-left: 0;
    }

    .home_2 .content_2_bold {
        font-size: 1.7rem;
    }
    .home_position_location_item {
        height: .8rem;
    }
    .position_project.bridge_position.absolute.flex.items-center.active {
        left: 18% !important;
    }

    .bridge_position.active .position_project_line {
        width: 7rem !important;
    }

    .bridge_position .position_title.s-content {
        font-size: .7rem;
    }

    .svg_arrow {
        width: 3rem;
        height: 3rem;
    }

    .position_list .position_project.active:nth-child(2) .position_project_line {
        height: 2.5rem;
    }

    .position_list .position_project.active:nth-child(1) .position_project_line {
        height: 2.5rem;
    }

    .position_title.s-content {
        font-size: .3rem;
    }

    .position_project_line:before {
        width: .45rem;
        height: .45rem;
    }

    .position_list .position_project.active:nth-child(3) .position_project_line {
        height: 2.5rem;
    }

    .position_project_line {}

    .position_list .position_project.active:nth-child(4) .position_project_line {
        height: 2.2rem;
    }

    .position_list .position_project.active:nth-child(5) .position_project_line {
        height: 2.5rem;
    }

    .position_list .position_project.active:nth-child(6) .position_project_line {
        height: 2.2rem;
    }

    .position_list .position_project.active:nth-child(8) .position_project_line {
        height: 2.5rem;
    }


    .position_list .position_project.active:nth-child(9) .position_project_line {
        height: 3.5rem;
    }

    .position_list .position_project.active:nth-child(10) .position_project_line {
        height: 2.5rem;
    }

    .position_list .position_project.active:nth-child(11) .position_project_line {
        height: 3rem;
    }

    .position_list .position_project.active:nth-child(12) .position_project_line {
        height: 2.7rem;
    }

    .position_list .position_project.active:nth-child(13) .position_project_line {
        height: 2.5rem;
    }

    .position_list .position_project.active:nth-child(14) .position_project_line {
        height: 3.5rem;
    }

    .home_4 .content {
        margin-left: 0;
    }

    a.btn .btn_content, button.btn .btn_content {
        font-size: 1.5rem;
    }
    .home_4_marquee {
        max-height: 50rem;
    }

    .marquee_wrap.marquee_bot_to_top.home_4_marquee_4 {
        display: none;
    }

    .marquee_wrap.marquee_top_to_bot.home_4_marquee_5 {
        display: none;
    }
    .banner_5_content_wrap .content, .banner_6_content_wrap .content {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        overflow: hidden;
        text-align: start;
    }

    .banner_5_content {
        bottom: 1rem;
    }

    .banner_5_content h2 {
        font-size: 2rem;
    }

    .banner_6_content h2 {
        font-size: 2rem;
    }

    .home_7 .group_content {
        padding-top: 0;
    }

    section.home_7.relative {
        padding-top: 1rem;
    }

    .home_7_bottom_wrap.number {
        font-size: 1.55rem;
    }

    .home_7_detail_item_wrap.number.relative {
        font-size: 1.55rem;
    }

    .home_7_detail_item_title {
        font-size: 1.4rem;
    }

    .home_7 .group_content .content {
        font-size: 1.35rem;
    }

    .home_8_item {
        width: 100%;
    }
    .home_7_image_svg.svg_1 {
        width: 6.265625rem;
        height: 17.703125rem;
    }
    .home_7_image_svg.svg_2 {
        width: 13.214rem;
        height: 24.01rem;
    }
    .svg_1 .home_7_image_svg_title {
        font-size: 1.5rem;
    }

    .home_7_image_svg_title {
        font-size: 1.5rem;
    }
    .footer_top_title {
        font-size: 1.4rem;
    }

    .footer_top_content.normal_content, .footer_top_content.normal_content a {
        font-size: 1.4rem;
    }
    .home_7_image_wrap.relative {
        margin: 0;
    }
    .home_7_position_detail.is-active {
        opacity: 1;
        transition: .7s all;
    }
    .home_7_position_detail {
        position: absolute;
        top: 50%;
        left: -100%;
        opacity: 0;
        transition: .7s all;
        transform: translate(-100%, -50%);
    }
    .home_7_positon_mobile_dot {
        width: 0.8rem;
        height: 0.8rem;
        background: white;
        border-radius: 100%;
    }
    /*.home_7_position_list.mobile_display {*/
    /*    z-index: 50;*/
    /*    pointer-events: auto;*/
    /*}*/
    /*.home_7_position_list.mobile_display {*/
    /*    z-index: 100;*/
    /*    pointer-events: auto;*/
    /*}*/

    .home_7_position_detail {
        padding: .5rem 1.5rem;
        width: auto;
        border-radius: 5px;
    }
    .home_7_position_item_content.s-content {
        white-space: nowrap;
    }
    .home_7_position_item_title {
        white-space: nowrap;
    }
    .home_7_position_item_title {
        font-size: 1.5rem;
    }

    .home_7_position_item_content.s-content {
        font-size: 1.15rem;
    }
    #logo .header_logo,
    #logo .header-logo-dark:not(.header-logo-dark-svg) {
        display: none !important;
    }
    #logo .header-logo-dark-svg {
        display: none !important;
    }
    img.header-logo-dark {
        filter: brightness(0) saturate(100%) invert(55%) sepia(20%) saturate(1000%) hue-rotate(335deg) brightness(95%) contrast(85%);
    }

    .post_home_title {
        font-size: 2rem;
    }

    .footer_popup {
        max-width: 40rem;
        border-radius: 10px;
    }

    .footer_popup_content.m-content {
        font-size: 1.4rem;
    }

    .footer_popup_title {
        font-size: 2.2rem;
    }
    ul.button_cta.mobile_display {
        right: 1.6rem;
    }
    button.fancybox-button.fancybox-close-small {
        width: 3.5rem;
        height: 3.5rem;
    }

    .home_position_location_item {
        height: .7rem;
    }
    .home_position_location_item img {

        object-fit: contain;
    }
    .wpcf7 .wpcf7-not-valid-tip {
        font-size: 1.2rem;
    }

    .register_form input, .register_form textarea {
        font-size: 14px;
    }

    .wpcf7 form .wpcf7-response-output {
        font-size: 1.2rem;
    }

    .footer_top_content.normal_content, .footer_top_content.normal_content a {
        font-size: 1.25rem;
    }
    .banner_5_content_wrap.flex.items-end {
        flex-wrap: wrap;
        gap: 1rem;
    }

    .banner_5_line {
        display: none;
    }

    .banner_5_content h2 {
        font-size: 2.2rem;
    }

    .banner_6_content_wrap {
        flex-wrap: wrap;
        gap: 1rem;
    }

    .home_5 .group_content {
        row-gap: 1rem;
    }

    .banner_6_content .group_content {
        row-gap: 1rem;
    }
    .home_6 .swiper-pagination.mobile_pagi {
        position: absolute;
        align-items: start;
        justify-content: start;
        left: 15px;
        bottom: 2rem;
        margin-top: 0;
    }
    .banner_5_content_wrap .content, .banner_6_content_wrap .content {
        font-size: 1.3rem;
    }

    .banner_5_content h2 {
        font-size: 2.6rem;
    }

    .banner_6_content h2 {
        font-size: 2.6rem;
    }

    .banner_full.relative {
        height: 45rem;
    }
    .home_position_location_item {
        height: 1.75rem;
        width: 7.458rem;
    }
    .banner_content.absolute {
        padding-left: 15px;
        padding-right: 15px;
    }

    h1.banner_heading {
        font-size: 3.4rem;
    }
    section.home_4 {
        padding-top: 3rem;
    }
    .position_project_line:before {
        width: 3px;
        height: 3px;
        border-radius: 100%;
        transform: translateX(-50%) translateZ(0);
    }
    .home_9_wrap .content {
        text-align: justify;
    }

    .home_3 .group_content .content {
        text-align: justify;
    }
    .home_7 h2 {
        font-size: 3.15rem;
    }
    .home_7_position_detail:before {
        position: absolute;
        content: '';
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        border-radius: 5px;
        background: white;
        opacity: 40%;
    }
    .home_7_position_item.home_7_inverse_mobile .home_7_position_detail {
        right: 100%;
        left: unset;
        transform: translate(110%,-50%);
    }

    .home_7_image_wrap.relative.aos-init.aos-animate {
        overflow: hidden;
    }
    .home_7_position_item_content.s-content {
        font-size: .9rem;
    }
    .home_7_position_detail{
        padding:.5rem;
    }
    .home_2 .content_2_bold {
        font-size: 1.65rem;
    }
    .home_7_image_svg.active .home_7_image_svg_fade img {
        opacity: 1;
    }
    .home_7_position_list {
        pointer-events: none;
    }
    .home_7_position_item,
    .home_7_positon_mobile_dot,
    .home_7_position_detail {
        pointer-events: auto;
    }
    div#popup_home {
        border-radius: 15px;
    }
    .banner_full_image_desktop{
        display:none;
    }
    .banner_full_image_mobile{
        display:block;
    }
    .home_7_image_svg:hover .home_7_image_svg_title{
        opacity:0;
    }
    .home_7_image_svg.active .home_7_image_svg_title {
        opacity: 1;
    }
}