.w-80 {
    width: 80% !important;
}

.blue {
    color: #3c5777 !important;
}

.white {
    color: #fff;
}

.notes sup {
    margin-right: 5px;
}

.min450 {
    min-height: 450px;
}

.bg-green {
    background-color: #5aa8a2;
}

.bg-mud {
    background-color: #ccc49d;
}

.bg-orange {
    background-color: #f48d49;
}

section .content {
    padding: 1rem 2.5rem;
}
/* banner */
#banner .img-json {
    max-width: 1920px;
    top: 0;
}
section#banner .station {
    display: none;
    position: absolute;
    z-index: 2;
    transition: z-index 0s ease-in-out 0.5s;
}

section#banner .station.show {
    z-index: 3;
    transition: z-index 0s ease-in-out;
}

section#banner #kt-station.station {
    top: 47%;
    left: 63.2%;
}

#banner #kt-station2.station {
    bottom: 33.5%;
    left: 39.5%;
}

section#banner #kt-station3.station {
    bottom: 23.5%;
    left: 47.5%;
}

section#banner .station .desc-wrapper {
    position: absolute;
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.2s ease-in-out 0.2s;
}

section#banner .station.show .desc-wrapper {
    max-height: 1000px;
    transition: max-height 0.5s ease-in-out 0.2s;
}

section#banner #kt-station.station .desc-wrapper {
    top: 2rem;
    right: -6rem;
}

#banner #kt-station2.station .desc-wrapper {
    top: -3.5rem;
    left: 2rem;
}

section#banner #kt-station3.station .desc-wrapper {
    top: -5rem;
    left: 3rem;
}

@media screen and (min-width: 1200px) {
    .kwu-tung #banner #kt-station2.station .desc-wrapper:lang(en) {
        top: -6.5rem;
    }
    .kwu-tung section#banner #kt-station3.station .desc-wrapper:lang(en) {
        top: -23rem;
    }
    .kwu-tung #banner {
        min-height: 77rem;
    }
    .santin #banner {
        min-height: 73rem;
    }
    .ngautammei #banner {
        min-height: 69rem;
    }
    .autau #banner {
        min-height: 76.5rem;
    }
    .kamsheungroad #banner {
        min-height: 68rem;
    }
}

@media screen and (max-width: 1199px) {
    #banner {
        margin-bottom: 5rem;
    }

    .kwu-tung #banner {
        min-height: 76vw !important;
    }
    .santin #banner {
        min-height: 74vw !important;
    }
    .ngautammei #banner {
        min-height: 69vw !important;
    }
    .autau #banner {
        min-height: 76vw !important;
    }
    .kamsheungroad #banner {
        min-height: 63vw !important;
    }
    #banner .img-json {
        width: 100%;
        position: relative;
        left: auto;
        top: auto;
        transform: none;
        min-height: 55vw !important;
    }
    .kwu-tung #banner .img-json,
    .autau #banner .img-json {
        min-height: 45vw !important;
    }
    .santin #banner .img-json {
        min-height: 43vw !important;
    }
    .ngautammei #banner .img-json,
    .kamsheungroad #banner .img-json {
        min-height: 39vw !important;
    }
    #banner .container {
        max-width: none;
    }
    section#banner #kt-station.station {
        top: 47%;
        left: 68%;
    }
    section#banner #kt-station.station .desc-wrapper {
        top: 1rem;
    }
    section#stop .w-75 {
        width: 100% !important;
    }
    section#banner #kt-station3.station .desc-wrapper:lang(en) {
        top: 1.5rem;
        left: -6rem;
    }
}
@media screen and (max-width: 767px) {
    .kwu-tung #banner,
    .autau #banner,
    .santin #banner,
    .ngautammei #banner,
    .kamsheungroad #banner {
        min-height: auto !important;
        margin-bottom: 2rem;
    }
    .kwu-tung #banner .img-json {
        min-height: 82vw !important;
    }
    .santin #banner .img-json {
        min-height: 85vw !important;
    }
    .ngautammei #banner .img-json {
        min-height: 81vw !important;
    }
    .autau #banner .img-json {
        min-height: 86vw !important;
    }
    .kamsheungroad #banner .img-json {
        min-height: 79vw !important;
    }
    .kwu-tung #banner #kt-station2.station {
        bottom: 45.5%;
    }
    .kwu-tung #banner #kt-station.station {
        top: 37%;
        left: 75%;
    }
    .kwu-tung #banner #kt-station3.station {
        bottom: 21.5%;
        left: 37.5%;
    }
}
section#banner .station .desc-wrapper .desc-box {
    background-color: rgba(255, 255, 255, 0.5);
    backdrop-filter: blur(15px) brightness(105%) contrast(110%) saturate(0.85);
}

section#banner .station .desc-wrapper .desc-box {
    padding: 1.5rem;
    border: 3px solid #70b3ae;
    background-color: #fff;
    border-radius: 1.5rem;
    max-width: 542px;
    width: 50vw;
}

section#banner .station .bg-img {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 1rem;
    width: 100%;
    padding-bottom: 100%;
}

section#banner .station .btn-position {
    cursor: pointer;
    position: relative;
    z-index: 1;
}

section#banner .station .btn-position img {
    width: 4rem;
    height: 4rem;
}

section#banner .station {
    display: none;
    position: absolute;
    z-index: 2;
    transition: z-index 0s ease-in-out 0.5s;
}

section#banner .station.show {
    z-index: 3;
    transition: z-index 0s ease-in-out;
}

section#banner #kt-station.station {
    top: 47%;
    left: 63.2%;
}

section#banner #kt-station2.station {
    bottom: 33.5%;
    left: 39.5%;
}

section#banner #kt-station3.station {
    bottom: 23.5%;
    left: 47.5%;
}

.santin #banner #kt-station.station {
    top: 52%;
    left: 39.2%;
}

.santin #banner #kt-station2.station {
    bottom: 30.5%;
    left: 46.5%;
}

.santin #banner #kt-station.station .desc-wrapper {
    top: 2rem;
    right: -32rem;
}

.santin #banner #kt-station2.station .desc-wrapper {
    top: 2.5rem;
    left: 2rem;
    right: auto;
}

.autau section#banner #kt-station.station {
    left: 62.2%;
    top: 58%;
}

.ngautammei section#banner #kt-station.station {
    top: 68%;
    left: 74.2%;
}

.ngautammei section#banner #kt-station3.station {
    bottom: 13.5%;
    left: 33.5%;
}

.ngautammei section#banner #kt-station.station .desc-wrapper {
    top: -1rem;
    right: 2rem;
}

.ngautammei section#banner #kt-station3.station .desc-wrapper {
    top: -8rem;
    left: 3rem;
}

.kamsheungroad section#banner #kt-station.station {
    top: 15%;
    left: 29.2%;
}

.kamsheungroad section#banner #kt-station2.station {
    bottom: 26.5%;
    left: 30.2%;
}

.kamsheungroad section#banner #kt-station.station .desc-wrapper {
    top: 2rem;
    right: -14rem;
}

.kamsheungroad section#banner #kt-station2.station .desc-wrapper {
    top: -8.5rem;
    left: 2rem;
}

.kamsheungroad section#banner #kt-station3.station .desc-wrapper {
    top: -4rem;
    right: 3rem;
    left: auto;
}
section#banner .station .desc-wrapper {
    position: absolute;
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.2s ease-in-out 0.2s;
}

section#banner .station.show .desc-wrapper {
    max-height: 1000px;
    transition: max-height 0.5s ease-in-out 0.2s;
}

section#banner #kt-station.station .desc-wrapper {
    top: 2rem;
    right: -6rem;
}

section#banner #kt-station2.station .desc-wrapper {
    top: -3.5rem;
    left: 2rem;
}

section#banner #kt-station3.station .desc-wrapper {
    top: -5rem;
    left: 3rem;
}

@media screen and (min-width: 1200px) {
    .kwu-tung section#banner #kt-station2.station .desc-wrapper:lang(en) {
        top: -6.5rem;
    }
    .kwu-tung section#banner #kt-station3.station .desc-wrapper:lang(en) {
        top: -23rem;
    }
}

section#banner .station .desc-wrapper .desc-box {
    background-color: rgba(255, 255, 255, 0.5);
    backdrop-filter: blur(15px) brightness(105%) contrast(110%) saturate(0.85);
}

section#banner .station .desc-wrapper .desc-box {
    padding: 1.5rem;
    border: 3px solid #70b3ae;
    background-color: #fff;
    border-radius: 1.5rem;
    max-width: 542px;
    width: 50vw;
}

section#banner .station .bg-img {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 1rem;
    width: 100%;
    padding-bottom: 100%;
}

section#banner .station .btn-position {
    cursor: pointer;
    position: relative;
    z-index: 1;
}

section#banner .station .btn-position img {
    width: 4rem;
    height: 4rem;
}

section#intro {
    padding-top: 0;
}

section#intro .container {
    position: relative;
}

section#intro .container.line::after {
    display: none;
}

section#intro .container-fluid {
    max-width: 1920px;
}

section#intro .bg-location {
    position: relative;
    margin-bottom: 3rem;
}

section#intro .bg-location .bg-map {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
}

section#intro .bg-location .main {
    width: 100%;
    z-index: 1;
    position: relative;
}
section#intro .pin-wrapper.map1 .bg-location .bg-wrapper .main3d_bg.map1,
section#intro .pin-wrapper.map2 .bg-location .bg-wrapper .main3d_bg.map2 {
    z-index: 2;
}
section#intro .pin-wrapper .bg-location .bg-wrapper .main3d_bg {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
}
section#intro .bg-location .bg-wrapper {
    position: relative;
    /*max-width:1920px;*/
}
section#intro .pin-wrapper .bg-location .bg-wrapper .cube_btn {
    position: absolute;
    bottom: 10%;
    width: 31%;
    border: 5px solid #fff;
    background-color: rgba(255, 255, 255, 0.4);
    padding: 0.5rem 1rem;
    cursor: pointer;
    z-index: 5;
}
section#intro .pin-wrapper .bg-location .bg-wrapper .cube_btn:lang(tc) {
    width: 350px;
}

section#intro .pin-wrapper .bg-location .bg-wrapper .cube_btn h2 {
    margin-bottom: 0;
}
section#intro .pin-wrapper .bg-location .bg-wrapper .cube_btn.kwutung_eal {
    right: calc(50% + 2rem);
    border-top-left-radius: 5rem;
    border-bottom-left-radius: 5rem;
}
section#intro .pin-wrapper .bg-location .bg-wrapper .cube_btn.kwutung {
    left: calc(50% + 2rem);
    border-top-right-radius: 5rem;
    border-bottom-right-radius: 5rem;
}
section#intro .pin-wrapper.map2 .bg-location .bg-wrapper .cube_btn.kwutung {
    background-color: #88297c;
}
section#intro
    .pin-wrapper.map1
    .bg-location
    .bg-wrapper
    .cube_btn.cube_btn.kwutung_eal {
    background-color: #71b5e3;
}
section#intro
    .pin-wrapper.map1
    .bg-location
    .bg-wrapper
    .cube_btn.cube_btn.kwutung_eal
    h2,
section#intro .pin-wrapper.map2 .bg-location .bg-wrapper .cube_btn.kwutung h2 {
    color: #fff;
}
section#intro .pin-wrapper .bg-location .bg-wrapper .cube_btn.kwutung_eal h2 {
    text-align: right;
}
section#intro .container-fluid {
    max-width: none;
}
section#intro .bg-location .bg-wrapper img.full_image {
    width: 100%;
    max-width: none;
    z-index: 4;
}
section#intro .bg-location .bg-wrapper .d_img,
section#intro .bg-location .bg-wrapper .m_img {
    width: 100%;
    max-width: none;
}
section#intro .bg-location .bg-wrapper .cube_img,
section#intro .bg-location .bg-wrapper .cube-icon {
    height: 50%;
    max-height: 227px;
    transition: transform 0.3s ease-in-out;
}
section#intro .bg-location .bg-wrapper .cube-icon,
section#intro .bg-location .bg-wrapper .cube_img {
    max-height: 200px;
    top: 45%;
    z-index: 5;
}
section#intro .bg-location .bg-wrapper .cube-icon {
    max-height: 300px;
    height: 60%;
    max-width: none;
    width: auto;
}
section .absolute-center {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
}
section#intro .bg-location:hover .bg-wrapper .cube_img,
section#intro .bg-location:hover .bg-wrapper .cube-icon {
    transform: translateX(-50%) translateY(-50%) scale(1.05);
}
@media screen and (max-width: 1199.98px) {
    section#intro .pin-wrapper .bg-location .bg-wrapper .cube_btn {
        display: none;
    }
    section#intro .bg-location .bg-wrapper .cube_img,
    section#intro .bg-location .bg-wrapper .cube-icon {
        top: 50%;
        max-height: 250px;
        z-index: 5;
    }
    section#intro .bg-location .bg-wrapper .cube_img img,
    section#intro .bg-location .bg-wrapper .cube-icon img {
        max-width: none;
        width: auto;
        height: 100%;
    }
    section#intro .pin-wrapper .bg-location .bg-wrapper .main3d_bg.map1 {
        position: relative;
    }
}

#panorama-modal,
#threeD-model-modal {
    padding: 0rem !important;
}
#panorama-modal .modal-dialog,
#threeD-model-modal .modal-dialog {
    max-width: 100%;
    height: 100%;
    margin: 0;
}
#panorama-modal .modal-content .modal-header,
#threeD-model-modal .modal-content .modal-header {
    border: 0;
    box-shadow: 0 5px 10px -5px rgb(0 0 0 / 20%);
    cursor: default;
}
#threeD-model-modal .modal-content .modal-header .btns-bar,
#panorama-modal .modal-content .modal-header .btns-group {
    display: flex;
    align-items: center;
}
#panorama-modal .modal-content .modal-header #info-icons {
    display: flex;
    align-items: flex-end;
}
#panorama-modal .modal-content,
#threeD-model-modal .modal-content {
    height: 100%;
    overflow: hidden;
}
#panorama-modal .modal-content .modal-header .container::before,
#panorama-modal .modal-content .modal-header .container::after,
#threeD-model-modal .modal-content .modal-header .container::before,
#threeD-model-modal .modal-content .modal-header .container::after {
    display: none;
}

#panorama-modal .modal-content .modal-header .icon-text-btn,
#threeD-model-modal .modal-content .modal-header .icon-text-btn {
    padding: 0.5rem 1rem;
    font-size: 0.75rem;
    min-width: 70px;
}

#panorama-modal .modal-content .modal-header .title h4,
#threeD-model-modal .modal-content .modal-header .title h4 {
    display: none;
    margin-bottom: 0;
    color: #942080;
    text-align: left;
    padding-right: 3rem;
    max-width: 500px;
}

#panorama-modal .modal-content .modal-header .title {
    margin: 0 1rem;
}

#threeD-model-modal .modal-content .modal-header img {
    border-radius: unset;
    height: 36px;
    margin-bottom: 0.5rem;
}

#view-wrapper {
    position: fixed;
    z-index: 99999;
    left: 3rem;
    bottom: 3rem;
    width: 100%;
    /* pointer-events: none; */
}

/* #view-wrapper .btn {
    background: none;
    pointer-events: all;
}

#view-wrapper .btn img {
    height: 70px;
} */

#view-wrapper .map-view {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 40vw;
    max-width: 550px;
    display: none;
}

#view-wrapper .map-view .front-img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}

#view-wrapper .map-view .front-img img {
    opacity: 0;
    cursor: pointer;
}

#view-wrapper .map-view .front-img img:hover {
    opacity: 1 !important;
}

#view-wrapper .map-view #map-close-btn {
    position: absolute;
    top: 0;
    right: 0;
    margin: 0.5rem;
    width: 36px;
    height: 36px;
}

#panorama-info-modal .modal-dialog,
#mapmodal .modal-dialog {
    margin-top: 2.5rem;
}
#panorama-info-modal .modal-dialog .modal-content,
#mapmodal .modal-dialog .modal-content {
    height: 100%;
    /* overflow: hidden; */
}
#panorama-info-modal .modal-dialog .modal-content .swiper-slide img {
    width: 100%;
    max-width: none;
}
#panorama-info-modal .modal-dialog .modal-body,
#mapmodal .modal-dialog .modal-body {
    overflow: hidden;
    height: 80%;
    max-height: 800px;
    overflow: scroll !important;
}
.loading-backdrop {
    background-color: #fff;
    opacity: 0.2;
}

#panorama-info-modal2 .modal-body {
    position: relative;
}
#panorama-info-modal2 .icon-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: default;
}
#panorama-info-modal2 .icon-wrapper img {
    margin-top: -15%;
    cursor: pointer;
    height: 90px;
}

#panorama-container {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

section#intro .station_design {
    padding-top: 3rem;
}
#model-container {
    position: relative;
    z-index: 999;
    opacity: 0;
    transition: opacity 1s ease-in-out;
}
#model-container.active {
    opacity: 1;
}

section#intro .station-swiper {
    width: 100%;
    max-width: 700px;
    top: 0;
    position: absolute;
}

section#intro .swiper-overflow {
    padding-bottom: 85%;
    width: 100vw;
    position: relative;
    overflow: hidden;
    left: -15px;
}
.kwu-tung section#intro .swiper-overflow {
    padding-bottom: 110%;
}
section .swiper-slide {
    transition: 0.3s all;
}

section .swiper-slide img {
    width: 100%;
}
/* 
section#explained .swiper-slide-prev,
section#explained .swiper-slide {
  opacity: 0 !important;
}

section#explained .swiper-slide-active,
section#explained .swiper-slide-next {
  opacity: 1 !important;
} */

/* gallery_sustainable */
section #gallery_sustainable .swiper-control {
    padding: 2rem 0 0;
    position: relative;
    left: auto;
}

section#explained .swiper-slide-active p {
    opacity: 1;
    display: block;
}
section .swiper-box p {
    color: #fff !important;
}

section .swiper-control {
    padding-left: 1rem;
    padding-bottom: 2rem;
    padding-top: 2rem;
    position: absolute;
    right: 0;
}

.modal .swiper-control .button,
section .swiper-control .button {
    position: relative;
    display: flex;
    align-items: center;
}

.modal .swiper-control .button .swiper-button,
section .swiper-control .button .swiper-button {
    width: 102px;
    height: 46px;
    position: relative;
    top: 0;
    right: 0;
    border-radius: 4rem;
    background-color: #5ba8a2;
}

.modal .swiper-control .button .swiper-button {
    background-color: #000;
}

.modal .swiper-control .button .swiper-button::before,
section .swiper-control .button .swiper-button::before {
    content: "";
    position: absolute;
    background-color: #fff;
    left: 50%;
    top: 50%;
    width: 1px;
    height: 80%;
    transform: translate(-50%, -50%);
}

.modal .swiper-control .button .swiper-button-next::after,
section .swiper-control .button .swiper-button-next::after {
    transform: rotateZ(135deg);
}

.modal .swiper-control .button .swiper-button-prev:after,
section .swiper-control .button .swiper-button-prev:after {
    transform: rotateZ(315deg);
}

.modal .swiper-control .button .swiper-button-next::after,
.modal .swiper-control .button .swiper-button-prev::after,
section .swiper-control .button .swiper-button-next::after,
section .swiper-control .button .swiper-button-prev::after {
    content: "";
    width: 10px;
    height: 10px;
    border-top: 1px solid #fff;
    border-left: 1px solid #fff;
}

.modal .swiper-control .button .swiper-page,
section .swiper-control .button .swiper-page {
    margin-left: 30px;
    font-size: 20px;
}

.modal .swiper-control .button .swiper-page span.middle,
section .swiper-control .button .swiper-page span.middle {
    margin: 0 3px;
}

.modal .swiper-control .button .swiper-button-next:after,
section .swiper-control .button .swiper-button-next:after {
    transform: rotateZ(135deg);
}

section#stop .nol_line li {
    position: relative;
}

section#stop .nol_line li:last-child {
    margin-right: 0;
}

/*section#stop .nol_line li::before {
position:absolute;
content:'';
width:100%;
border-top:4px solid #a40184;
top:50%;
left:0;
z-index:-1;
}*/

section#stop {
    padding-top: 0;
    padding-bottom: 2rem;
}

section#stop .nol_line {
    justify-content: space-between;
}

section#stop .nol_line::before {
    content: "";
    position: absolute;
    width: 99%;
    border-top: 5px solid #a40184;
    left: 0%;
    top: 50%;
}

section#stop .nol_line li a {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    text-align: center;
    justify-content: center;
    height: 64px;
}

section#stop .nol_line li p {
    position: absolute;
    text-align: center;
    line-height: 1.2;
    margin-bottom: 0;
    margin-top: 0.5rem;
    white-space: nowrap;
    left: 50%;
    transform: translateX(-50%);
}

section#stop .nol_line li a:hover {
    text-decoration: none;
}

section#stop .nol_line li a.active {
    font-weight: 700;
}

section#stop .nol_line li a span.stop {
    display: block;
    width: 2.2rem;
    height: 2.2rem;
    border: 5px solid #a40184;
    border-radius: 50%;
    background-color: #fff;
    position: relative;
    transition: 0.3s all;
    margin-top: 0.5rem;
}

section#stop .nol_line li a span.stop::before {
    position: absolute;
    content: "";
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    background-color: #a40184;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
    transition: opacity 0.2s ease-in-out;
}

section#stop .nol_line li a.active span.stop::before,
section#stop .nol_line li a:hover span.stop::before {
    opacity: 1;
}

section#stop .nol_line li a span.stop.head,
section#stop .nol_line li a span.stop.end {
    height: 4rem;
    border-color: #626262;
    border-radius: 25px;
    margin-top: 0.2rem;
}

section#stop .nol_line li a.active span.stop.head::before,
section#stop .nol_line li a:hover span.stop.head::before,
section#stop .nol_line li a.active span.stop.head::after,
section#stop .nol_line li a:hover span.stop.head::after,
section#stop .nol_line li a.active span.stop.end::before,
section#stop .nol_line li a:hover span.stop.end::before,
section#stop .nol_line li a.active span.stop.end::after,
section#stop .nol_line li a:hover span.stop.end::after {
    position: absolute;
    height: 2.5rem;
    width: 0.5rem;
    border-radius: 0;
}

section#stop .nol_line li a.active span.stop.head::after,
section#stop .nol_line li a:hover span.stop.head::after,
section#stop .nol_line li a.active span.stop.end::after,
section#stop .nol_line li a:hover span.stop.end::after {
    height: 1.25em;
    background-color: #62a9d9;
    content: "";
    bottom: -0.25rem;
    left: 50%;
    transform: translate(-50%, -50%);
}

section#stop .nol_line li a.active span.stop.end::after,
section#stop .nol_line li a:hover span.stop.end::after {
    background-color: #772616;
}
section#intro {
    padding-top: 0;
    padding-bottom: 0;
}
section#intro .row .intro {
    padding: 3rem 3rem 3rem 0;
    /* font-size: 1.25rem;
    font-weight: 500; */
}
.kamsheungroad section#intro .row .intro {
    padding-right: 3.5rem;
}

section#intro .row .intro {
    color: #fff;
}
section#intro .row.station_design .col-lg-7 {
    position: relative;
}
section#intro .row.station_design .col-lg-7::before {
    content: "";
    position: absolute;
    top: -5rem;
    width: 25vw;
    left: 100%;
    height: calc(100% - 0.2rem);
    background: linear-gradient(
        to right,
        #489691 0%,
        #489691 20%,
        #cfc69e 70%,
        #cfc69e 100%
    );
}
section#intro .row.station_design {
    position: relative;
}
section#intro .row.station_design::before {
    content: "";
    position: absolute;
    top: 0;
    height: 100%;
    width: 12px;
    left: -2rem;
    background-color: #5aa8a2;
    z-index: -1;
}

section#intro .row.station_design::after {
    content: "";
    position: absolute;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background-color: #5aa8a2;
    bottom: -0.5rem;
    left: -2.6rem;
}

.station_design-line {
    display: flex;
    width: 85%;
    justify-content: space-between;
    align-items: center;
    position: relative;
    margin-bottom: 2rem;
    max-width: 550px;
    margin-top: 2rem;
}
.station_design-line::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 4px;
    background-color: #941e80;
}
.station_design-line .dot {
    width: 1.5rem;
    height: 1.5rem;
    border: 4px solid #941e80;
    background-color: #fff;
    border-radius: 50%;
    z-index: 1;
    position: relative;
}
.station_design-line .dot.fill {
    background-color: #941e80;
}
section#intro .row.station_design .remarks {
    /* padding-bottom: 7rem; */
    position: absolute;
    left: 0;
    top: calc(100% + 1rem);
}
section#intro .row.station_design .bg-img {
    position: relative;
    width: 115%;
    padding-bottom: 76%;
    background-size: contain;
    background-position: top left;
    background-repeat: no-repeat;
    background-image: url("../../images/pages/new-station/kwu-tung/map.jpg");
    top: 0;
    left: 30px;
    cursor: pointer;
}
section#intro .row.station_design {
    min-height: 36vw;
}
@media screen and (min-width: 1980px) {
    section#intro .row.station_design {
        min-height: 680px;
    }
}
section#intro .qna_infor {
    padding-top: 5rem;
    padding-bottom: 5rem;
}

section#intro .qna_infor .img-wrapper {
    width: 90%;
    margin: auto;
}
section#intro .qna_infor li {
    margin-bottom: 1rem;
    background-color: #5da89a;
    border-radius: 1rem;
    color: #fff;
    padding: 5%;
}
section#intro .qna_infor ul,
section#intro .qna_infor li:last-of-type {
    margin-bottom: 0;
}
section#intro .qna_infor li .arrow-line {
    width: 100%;
    height: 5px;
    background-color: #fff;
    position: relative;
    cursor: pointer;
}
section#intro .qna_infor li .arrow-line:before {
    content: "";
    position: absolute;
    right: 0%;
    top: 50%;
    width: 2rem;
    height: 2rem;
    transform: translateY(-50%) rotateZ(180deg);
    background-image: url(../../images/arrow_white_down.svg);
    background-size: 50%;
    background-position: center 45%;
    background-repeat: no-repeat;
    border: 5px solid #fff;
    border-radius: 50%;
    background-color: #5da89a;
}
section#intro .qna_infor li.active .arrow-line:before {
    transform: translateY(-50%);
}
section#intro .qna_infor li .box-top {
    padding-bottom: 1rem;
}
section#intro .qna_infor li .box-bottom .link_btn {
    margin-top: 2rem;
}
section#intro .qna_infor li .box-bottom p:first-child {
    padding-top: 1rem;
}
section#intro .station_inside .border-top {
    padding-top: 5rem;
    padding-bottom: 3rem;
}
section#intro .qna_infor li .box-bottom {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.5s ease-in-out;
}
section#intro .qna_infor li.active .box-bottom {
    max-height: 1000px;
    transition: max-height 1s ease-in-out;
}
.white-btn .btn-primary {
    border-color: #fff;
    color: #fff;
    background-color: #5da89a;
}
.white-btn .btn.arrow img {
    z-index: 1;
}
.white-btn .btn.btn-line::before {
    background-color: #fff;
}
.preview .bg-element {
    position: absolute;
    width: 50vw;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url("../../images/pages/new-station/kwu-tung/photo1.jpg");
    top: 0;
    left: 0;
}

section .row .bg-color {
    position: absolute;
    width: 120%;
    height: 100%;
    right: 0;
    top: 0;
    background: linear-gradient(
        to left,
        #489691 0%,
        #489691 48%,
        #cfc69e 80%,
        #cfc69e 100%
    );
    z-index: -1;
}
@media screen and (min-width: 1700px) {
    section .row .bg-color {
        width: 90vw;
    }
}

section .row .bg-color.bg2 {
    background: linear-gradient(
        to right,
        #489691 0%,
        #489691 65%,
        #cfc69e 105%,
        #cfc69e 100%
    );
    left: 100%;
}

section#intro .row .remarks p.r_no {
    font-weight: 700;
    margin-right: 0.5rem;
    padding: 0 0.5rem;
}

section#intro .row .remarks p.r_no img {
    padding-right: 5px;
}

section#intro .row .remarks p.prev_font {
    padding-left: 0.5rem;
    padding-bottom: 0.5rem;
    border-left: 1px solid #000;
}

section#intro .row.design {
    padding-top: 2rem;
    padding-bottom: 2rem;
}

section#intro .row.design .col-md-7 {
    border-left: 2px solid #000;
}

section#intro .row.design .content.desc .notes {
    margin-bottom: 0;
}

section#intro .feature {
    display: flex;
    width: 100%;
    justify-content: center;
    padding: 1rem 0;
}

section#intro .feature ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
    width: 100%;
}
section#intro .feature ul::before {
    content: "";
    position: absolute;
    width: 90%;
    border-top: 2px solid #fff;
    z-index: -1;
    left: 5%;
    top: calc(30% - 1px);
}
section#intro .sustainable div.remarks p.notes {
    color: #fff !important;
}
section#intro .feature ul li {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: start;
    align-items: center;
    max-width: 200px;
    text-align: center;
    width: 18%;
}
section#intro .feature .none {
    visibility: hidden;
}
section#intro .feature ul li p {
    margin-bottom: 0 !important;
    font-weight: 700;
    line-height: 1.3;
    text-align: center;
}
section#intro .feature ul li p:nth-child(3) {
    font-size: 0.75rem;
    font-weight: 400;
}
section#intro .feature ul:before {
    left: 9%;
    width: 80%;
    top: 45px;
}
section#intro .feature ul li img {
    margin-bottom: 1rem;
    width: 80%;
    width: 90px;
}
section#intro .feature_2 ul:before {
    width: 40%;
}
#explained .explained-wrapper {
    position: relative;
    display: flex;
    flex-wrap: nowrap;
    margin-top: 3rem;
}
#explained .img-wrapper {
    position: absolute;
    bottom: 0rem;
    left: 0;
    width: 30%;
    z-index: 2;
}
.border-break {
    position: relative;
    padding-top: 2rem !important;
    margin-top: 2rem;
}
.border-break:after {
    content: "";
    position: absolute;
    width: calc(100% + 8vw);
    height: 5px;
    background-color: #fff;
    top: 0;
    right: -2rem;
}
#explained .explained-wrapper .box-left {
    width: 20%;
    padding-top: 2rem;
    position: relative;
}
#explained .explained-wrapper .box-left li {
    text-align: right;
    position: relative;
}

#explained .explained-wrapper .box-left li h2 {
    padding: 1rem 5% 1rem 0;
    margin: 0;
    color: #d3d3d3;
    transition: color 0.3s ease-in-out;
    cursor: pointer;
}
#explained .explained-wrapper .box-left li.active h2 {
    color: #5da89a;
}
#explained .explained-wrapper .box-left li:before {
    content: "";
    display: block;
    position: absolute;
    width: 1.5rem;
    height: 1.5rem;
    background-color: #5da89a;
    border-radius: 50%;
    bottom: -0.7rem;
    left: 0;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}
#explained .explained-wrapper .box-left li:after {
    content: "";
    display: block;
    position: absolute;
    width: calc(100% - 0.75rem);
    height: 5px;
    background-color: #5da89a;
    bottom: 0;
    right: 0;
    opacity: 1;
}

#explained .explained-wrapper .box-left li.active:before {
    opacity: 1;
}
#explained .explained-wrapper .box-right {
    width: 80%;
    position: relative;
    padding-left: 3rem;
}
#explained .explained-wrapper .box-right .content-wrapper {
    display: none;
}
#explained .explained-wrapper .box-right .content-wrapper.active {
    display: block;
}
#explained .explained-wrapper .box-right > * {
    margin-top: -3rem;
}
#explained .explained-wrapper .box-right .swiper-box {
    padding-bottom: 0rem;
}
#explained .explained-wrapper .box-right .swiper-box .bg-img {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    padding-bottom: 56.25%;
}
#explained .explained-wrapper .box-right .swiper-box .desc {
    margin-top: 2rem;
    padding-top: 2rem;
    padding-bottom: 2rem;
    border-top: 5px solid #fff;
    color: #fff;
    padding-left: 15%;
    position: relative;
    z-index: 9;
    align-items: flex-start;
}
#explained .explained-wrapper .box-right .swiper-box .desc h3 {
    margin-bottom: 2rem;
}
#explained .explained-wrapper .box-right::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: #5aa8a2;
    width: 80vw;
    height: 100%;
    z-index: -1;
}
section#intro .sustainable.gallery-wrapper {
    flex-wrap: nowrap;
    margin-left: -1rem;
    margin-right: -1rem;
    display: flex;
}
section#intro .sustainable.gallery-wrapper .gallery-left,
section#intro .sustainable.gallery-wrapper .gallery-right {
    width: 50%;
    padding-left: 1rem;
    padding-right: 1rem;
}
section#intro .sustainable .content:first-child::before {
    content: "";
    display: block;
    position: absolute;
    width: 50vw;
    height: 100%;
    right: 0;
    top: 0;
    background: linear-gradient(
        to left,
        #489691 0%,
        #489691 60%,
        #cfc69e 100%,
        #cfc69e 110%
    );
    z-index: -1;
}
section#intro .sustainable .content {
    position: relative;
    padding: 3rem 2rem 3rem 0;
    color: #fff;
}
section#intro .sustainable .content p:last-of-type {
    margin-bottom: 1rem;
}
section#intro .sustainable .sustainable-photo-wrapper {
    min-width: 50vw;
    overflow: hidden;
}
/* section#intro .sustainable .sustainable-photo-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    min-width: 100vw;
    height: 100%;
    overflow: hidden;
} */
section#intro .sustainable .sustainable-photo-wrapper .sustainable-photo {
    position: relative;
    /* width: 100vw; */
    height: 100%;
    display: flex;
    flex-direction: column;
}
section#intro
    .sustainable
    .sustainable-photo-wrapper
    .sustainable-photo
    .img-wrapper {
    position: relative;
    margin-left: 2rem;
    margin-bottom: 1rem;
    cursor: pointer;
}
section#intro #gallery_sustainable .img-wrapper {
    position: relative;
}
section#intro
    .sustainable
    .sustainable-photo-wrapper
    .sustainable-photo
    .img-wrapper:before,
section#intro #gallery_sustainable .img-wrapper:before {
    content: "";
    position: absolute;
    top: 1rem;
    left: 1rem;
    width: 3rem;
    height: 3rem;
    background-image: url(../../images/pages/new-station/360.svg);
    background-position: top left;
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
}
section#intro .sustainable .sustainable-photo-wrapper .bg-img {
    width: 40vw;
    padding-bottom: 100%;
    height: 0;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}
section#intro .sustainable .sustainable-photo-wrapper img {
    padding-bottom: 0 !important;
    height: 100%;
    width: 40vw;
}

section#intro .sustainable .sustainable-photo-wrapper .bg-img,
section#intro .sustainable .sustainable-photo-wrapper .notes {
    margin-left: 2rem;
    margin-bottom: 1rem;
}
section#intro .sustainable .sustainable-photo-wrapper .notes {
    width: 40vw;
    margin-top: 1rem;
}
.sustainable .title_h4 {
    font-size: 1.25rem;
}
.sustainable .features_3 {
    width: calc(100% - 10rem);
}
.sustainable .caring_station_facilities h4 {
    width: calc(100% - 13rem);
}
.border-line {
    width: 95%;
    position: relative;
    min-height: 3.3rem;
    margin-bottom: 1rem;
}

.border-line::before {
    content: "";
    position: absolute;
    display: block;
    background-color: #fff;
    width: calc(100% - 5.2rem);
    height: 2px;
    top: 0;
    left: 0;
}
.border-line::after {
    content: "";
    position: absolute;
    display: block;
    top: -4.3rem;
    right: 0;
    background-image: url(../../images/pages/new-station/sustainable_features_1.svg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 5.2rem;
    height: 8rem;
}
.border-line.sustainable_features_2 {
    padding-top: 0.8rem;
}
.border-line.sustainable_features_2 span {
    display: block;
    font-size: 0.75rem;
}
.border-line.sustainable_features_2::after {
    background-image: url(../../images/pages/new-station/sustainable_features_2.svg);
    width: 6.5rem;
    height: 6.5rem;
    top: -3.7rem;
}

section .esg_icon {
    text-align: center;
    position: relative;
}

section .esg_icon img {
    width: 100%;
    max-width: 100px;
}

section .pink.title {
    color: #a40184;
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 0;
}

section .esg_icon:last-of-type {
    margin-top: 4rem;
    position: relative;
}

section .esg_icon:last-of-type p {
    margin-bottom: 0;
}

section .esg_icon:last-of-type::before {
    content: "";
    position: absolute;
    height: 1.5rem;
    border-right: 2px solid #000;
    left: calc(50% - 1px);
    top: -2.75rem;
}

section#intro .bg-element.bg2 {
    position: absolute;
    width: 50vw;
    height: 0;
    padding-bottom: 70%;
    background-image: url("../../images/pages/new-station/kwu-tung/kt_4.jpg");
    background-size: cover;
    background-position: center;
    bottom: 0;
    left: 0;
}

section .pt-8 {
    padding-top: 5rem;
}

section#value .value {
    position: absolute;
    width: 110%;
    right: 0;
    max-width: initial;
}

section#value .content {
    padding: 1rem 2rem;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    justify-content: center;
    align-content: center;
    height: 100%;
}

section#position .bg3 {
    position: absolute;
    width: 50vw;
    left: 0;
    /* background-image: url("../../images/pages/new-station/kwu-tung/Map.svg");
background-size: cover;
background-position: center center;
padding-bottom: 100%; */
    top: 0;
}

section#position .bg4 {
    background: linear-gradient(
        to left,
        #489691 0%,
        #489691 25%,
        #cfc69e 105%,
        #cfc69e 100%
    );
    left: 100%;
    height: 10%;
    left: 0;
    top: 100%;
}
section#future {
    padding-bottom: 0;
}
section#future .discover_more {
    display: none;
}

section#future .bg-element {
    position: absolute;
    width: 70%;
    height: 100%;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

section#future .bg-element.bg4 {
    background-image: url("../../images/pages/new-station/kwu-tung/kwutung.png");
}

section#future .bg-element.bg5 {
    background-image: url("../../images/pages/new-station/kwu-tung/photo4.jpg");
    background-size: cover;
    width: 50vw;
    left: 0;
    top: 0;
    transform: translate(0);
}

section#future .bg-element.bg6 {
    background-image: url("../../images/pages/new-station/kwu-tung/photo5.jpg");
    background-size: cover;
    width: 100%;
}

.santin section#future .bg-element.bg4 {
    background-image: url("../../images/pages/new-station/san-tin/santin.png");
}
.santin section#future .bg-element.bg5 {
    background-image: url("../../images/pages/new-station/san-tin/photo3.jpg");
    z-index: 1;
}

.santin section#future .bg-element.bg6 {
    background-image: url("../../images/pages/new-station/san-tin/temple.jpg");
}

.kamsheungroad section#future .bg-element.bg4 {
    background-image: url("../../images/pages/new-station/kam-sheung-road/kam-sheung-road.png");
}

.kamsheungroad section#future .bg-element.bg5 {
    background-image: url("../../images/pages/new-station/kam-sheung-road/guthangwai.jpg");
    z-index: 1;
}
.kamsheungroad section#future .bg-element.bg6 {
    background-image: url("../../images/pages/new-station/kam-sheung-road/twokingcollege.jpg");
}

.autau section#future .bg-element.bg4 {
    background-image: url("../../images/pages/new-station/au-tau/au-tau.png");
}

.autau section#future .bg-element.bg5 {
    background-image: url("../../images/pages/new-station/au-tau/photo4.jpg");
}

.autau section#future .bg-element.bg6 {
    background-image: url("../../images/pages/new-station/au-tau/govschool.jpg");
}

.ngautammei section#future .bg-element.bg4 {
    background-image: url("../../images/pages/new-station/ngau-tam-mei/ngau-tam-mei.png");
}
.ngautammei section#future .bg-element.bg5 {
    background-image: url("../../images/pages/new-station/ngau-tam-mei/village.jpg");
}

.ngautammei section#future .bg-element.bg6 {
    background-image: url("../../images/pages/new-station/ngau-tam-mei/bibleschool.jpg");
}

section#future .col-md-6 {
    min-height: 450px;
}

section#future .discover_more {
    margin-left: 2rem;
    font-weight: 700;
    cursor: pointer;
}

section#future .discover_more img {
    margin-right: 5px;
}

#station_KwuTung_icon_1 {
    width: 120%;
    margin-left: -10%;
}

#future .color-wrapper-right {
    right: auto;
    left: 100%;
    height: 100%;
    width: 55vw;
    min-width: 1000px;
}

#future .color-wrapper-right .bg-img {
    background: none;
    height: 100%;
    padding-bottom: 0;
}

#future .color-wrapper.circle-right svg,
#future .color-wrapper.circle-right img {
    top: -30%;
}

.modal-container {
    display: none;
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    color: #fff;
}

.modal-container .overlay {
    background-color: rgba(0, 0, 0, 0.8);
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.modal-container.active {
    display: block;
    z-index: 99999;
}

.modal-container .modal-wrapper {
    width: 80%;
    height: 80%;
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.modal-container .swiper .swiper-wrapper {
    align-items: center;
}

.modal-container .swiper {
    width: 100%;
    height: 100%;
}

.modal-container .closeBtn {
    position: absolute;
    top: -3.5rem;
    right: 0%;
    width: 40px;
    height: 40px;
    border: 5px solid #5aa8a2;
    border-radius: 50%;
    background-color: #fff;
    color: #000;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1;
    cursor: pointer;
}

.modal-container .closeBtn::before,
.modal-container .closeBtn::after {
    content: "";
    position: absolute;
    width: 20px;
    height: 2px;
    background-color: #000;
}

.modal-container .closeBtn::before {
    transform: rotateZ(45deg);
}

.modal-container .closeBtn::after {
    transform: rotateZ(135deg);
}

.modal-container .swiper .swiper-slide {
    height: 100%;
}

.modal-container .slide-container {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: auto;
    background-color: #f5f5f5;
}

/* width */

.modal-container .slide-container::-webkit-scrollbar {
    width: 10px;
}

/* Track */

.modal-container .slide-container::-webkit-scrollbar-track {
    background: #f1f1f1;
}

/* Handle */

.modal-container .slide-container::-webkit-scrollbar-thumb {
    background: #5aa8a2;
}

/* Handle on hover */

/* ====================== */

#panorama-info-modal #close-btn:hover,
#panorama-info-modal #close-btn:focus {
    opacity: 1;
}

#panorama-info-modal .modal-body p.notes {
    margin: 2rem auto 0;
}

#panorama-info-modal .modal-body .info-title {
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
}

#panorama-info-modal .modal-body .info-title img {
    width: 60px;
    height: 60px;
    margin-right: 1rem;
}

#panorama-info-modal .modal-body .info-title h3 {
    margin-bottom: 0;
}

#panorama-info-modal
    .swiper
    .swiper-slide
    .slide-container::-webkit-scrollbar-thumb:hover {
    background: #5aa8a2;
}

/* #panorama-info-modal .swiper-button-next,
#panorama-info-modal .swiper-rtl .swiper-button-prev {
    right: -6%;
    width: 2rem;
    color: #fff;
}

#panorama-info-modal .swiper-button-prev,
#panorama-info-modal .swiper-rtl .swiper-button-next {
    left: -6%;
    width: 2rem;
    color: #fff;
} */
/* ====================== */

.modal-container .slide-container::-webkit-scrollbar-thumb:hover {
    background: #5aa8a2;
}

/* .modal-container .swiper-button-next,
.modal-container .swiper-rtl .swiper-button-prev {
    right: -6%;
    width: 2rem;
    color: #fff;
}

.modal-container .swiper-button-prev,
.modal-container .swiper-rtl .swiper-button-next {
    left: -6%;
    width: 2rem;
    color: #fff;
} */
.facilities ul {
    list-style: disc;
}

.m_img {
    display: none;
}

/* popup */
#panorama-modal .intro_card,
#threeD-model-modal .intro_card {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 999;
}
#panorama-modal .intro_card .intro_card_wrapper,
#threeD-model-modal .intro_card .intro_card_wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
}
#panorama-modal .intro_card img,
#threeD-model-modal .intro_card img {
    /* width: 90%; */
    height: 90%;
    max-width: 1200px;
    display: none;
    object-fit: contain;
}
#panorama-modal .intro_card #intro-close-btn,
#threeD-model-modal .intro_card #intro-close-btn {
    position: absolute;
    right: 0;
    top: 0;
}
#panorama-modal .intro_card #intro-close-btn img,
#threeD-model-modal .intro_card #intro-close-btn img {
    width: 36px;
    height: 36px;
    display: block;
    margin: 1rem;
}

/* popup */

.modal-body {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: auto;
    background-color: #f5f5f5;
    color: #000;
    display: block;
}
.modal-container .modal-wrapper {
    width: 80vw;
    height: 80%;
    max-height: 600px;
    max-width: 1200px !important;
}
.modal-container .modal-wrapper .btn.arrow {
    margin-left: 1.2rem;
}
.slide-container {
    margin: auto;
}

#popup #close-btn {
    position: absolute;
    top: -0.5rem;
    right: 1rem;
    width: 40px;
    height: 40px;
    border: 5px solid #5aa8a2;
    border-radius: 50%;
    background-color: #fff;
    color: #000;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1;
    cursor: pointer;
}

#popup #close-btn::before,
#popup #close-btn::after {
    content: "";
    position: absolute;
    width: 20px;
    height: 2px;
    background-color: #000;
}

#popup #close-btn::before {
    transform: rotateZ(45deg);
}

#popup #close-btn::after {
    transform: rotateZ(135deg);
}
#popup .modal-dialog {
    width: 90vw;
    max-height: 800px;
}
.modal-dialog table th:first-child,
.modal-dialog table td:first-child {
    border-left: none;
}
.modal-dialog table th,
.modal-dialog table td {
    padding: 1.5rem 1rem 1.5rem;
    border-bottom: 3px solid #5ba8a2;
    border-left: 3px solid #5ba8a2;
}
.modal-dialog a.mb-0 {
    margin-bottom: 0.5rem !important;
}
.modal-dialog table th {
    padding-top: 0;
}
.modal-dialog table th h3 {
    margin-bottom: 0;
}
.modal-dialog table tr td:first-child {
    width: 175px;
}
.modal-dialog table tr td:last-child {
    width: calc(100% - 175px);
    vertical-align: middle;
}
.modal-backdrop {
    background-color: rgba(0, 0, 0, 0.8);
}
.modal-backdrop.show {
    opacity: 1;
}

@media screen and (min-width: 1200px) {
    #panorama-modal .intro_card .img1,
    #threeD-model-modal .intro_card .img1 {
        display: block;
    }
}

@media (min-width: 768px) and (max-width: 1200px) {
    #panorama-modal .intro_card .img2,
    #threeD-model-modal .intro_card .img2 {
        display: block;
    }
}

@media screen and (max-width: 767.98px) {
    #panorama-modal .intro_card .img3,
    #threeD-model-modal .intro_card .img3 {
        display: block;
    }
}

.modal-body .swiper-btns-wrapper,
.modal-body .info-content {
    width: 80%;
    margin: 3rem auto;
}
.modal-body .info-content li {
    /* width: 100%; */
    list-style: disc;
    margin-left: 18px;
}
@media screen and (min-width: 1200px) {
    .kwu-tung section#position {
        min-height: 750px;
    }
}

@media screen and (min-width: 1500px) {
    .kwu-tung section#position .content {
        min-height: 40vw;
    }
}
@media screen and (max-width: 1700px) {
    section#intro .row.station_design .bg-img {
        width: 100%;
        padding-bottom: 66%;
    }
}

@media screen and (max-width: 1299px) {
    section#intro .station-swiper {
        width: 50%;
    }
    section#intro .row.station_design .bg-img {
        width: 100%;
        padding-bottom: 66%;
    }
}

@media screen and (max-width: 1199.98px) {
    #panorama-modal .intro_card img,
    #threeD-model-modal .intro_card img {
        max-width: 90vw;
        max-height: calc((100vh - 150px) * 0.9);
    }

    #panorama-modal .modal-content .modal-header .title h4,
    #threeD-model-modal .modal-content .modal-header .title h4 {
        text-align: center;
        padding: 1rem 0;
        max-width: none;
    }

    #threeD-model-modal .modal-content .modal-header .icon-text-btn {
        padding: 0.5rem 0.5rem;
        font-size: 0.65rem;
        min-width: 45px;
    }

    #threeD-model-modal .modal-content .modal-header .icon-text-btn img,
    #panorama-modal .intro_card #intro-close-btn img,
    #threeD-model-modal .intro_card #intro-close-btn img,
    #view-wrapper .icon-text-btn img {
        width: 25px;
        height: 25px;
    }
    section#banner #kt-station.station {
        top: 48%;
        left: 65%;
    }
    section#banner #kt-station.station .desc-wrapper {
        top: 1rem;
    }
    section#stop .w-75 {
        width: 100% !important;
    }
    section#banner #kt-station3.station .desc-wrapper {
        top: -5rem;
        left: 1rem;
    }
    section#banner #kt-station3.station .desc-wrapper:lang(en) {
        top: 1.5rem;
        left: -6rem;
        right: auto;
    }
    section#banner .station .btn-position img {
        width: 2.5rem;
        height: 2.5rem;
    }
    section#stop .nol_line li p:lang(en) {
        width: 100px;
        white-space: normal;
    }

    section#stop {
        padding-bottom: 4rem;
    }

    #explained .explained-wrapper .box-left {
        width: 25%;
    }
    #explained .explained-wrapper .box-right {
        width: 75%;
    }
    #explained .explained-wrapper .box-right .swiper-box .desc {
        padding-left: 0;
    }
    section#intro .pin-wrapper .bg-location .bg-wrapper .main3d_bg {
        position: relative;
    }
}
@media screen and (max-width: 1199.98px) {
    .santin #banner #kt-station2.station {
        left: 50.5%;
    }
    .ngautammei section#banner #kt-station.station .desc-wrapper {
        top: -1rem;
        right: 1.25rem;
    }
    .ngautammei section#banner #kt-station3.station .desc-wrapper {
        top: -3rem;
        left: 1.25rem;
    }
    .autau section#banner #kt-station.station .desc-wrapper {
        top: 1.25rem;
    }
    .autau section#banner #kt-station2.station .desc-wrapper {
        left: 1.25rem;
    }
    .santin #banner #kt-station.station .desc-wrapper {
        top: 1rem;
        right: -18rem;
    }
    .santin #banner #kt-station2.station .desc-wrapper {
        top: 1.5rem;
        left: -12rem;
    }
    .kamsheungroad section#banner #kt-station3.station .desc-wrapper {
        top: 1rem;
        right: -15vw;
        left: auto;
    }
    .kamsheungroad section#banner #kt-station2.station .desc-wrapper {
        top: 1.5rem;
        left: -12vw;
    }
}
@media screen and (max-width: 991.98px) {
    .kwu-tung section#intro .swiper-overflow {
        padding-bottom: 85%;
    }
    section#banner .station .desc-wrapper .desc-box h1 {
        font-size: 1.5rem;
    }
    section .content {
        padding: 2rem 0 !important;
    }
    section#intro .bg-color,
    section#intro .row .preview .bg-element {
        width: 115vw;
        transform: translateX(11%);
    }
    section#intro .row .preview .bg-element {
        transform: translateX(-10%);
    }
    section#intro .row .intro {
        padding: 3rem 0 !important;
        min-height: auto;
    }
    section#intro .station_design {
        padding-top: 3rem;
    }
    section#intro .feature {
        width: 100% !important;
        padding-left: 0;
    }
    section#value .row {
        flex-direction: column-reverse;
    }
    section .esg {
        display: flex;
        justify-content: space-between;
        position: relative;
    }
    section .esg::before {
        position: absolute;
        content: "";
        width: 30%;
        border-top: 2px solid #000;
        top: 22%;
        left: 50%;
        transform: translateX(-50%);
    }
    section .esg_icon {
        display: inline-block;
        min-width: 308px;
    }
    section .esg_icon:last-of-type {
        margin-top: 0;
    }
    section .esg_icon:last-of-type::before {
        display: none;
    }
    section .esg_wrapper .col-lg-6:last-of-type {
        padding: 30%;
        margin-top: 3rem;
    }

    section#intro .esg_wrapper .col-lg-6:last-of-type .bg-element.bg2 {
        padding-bottom: 56.25%;
        width: 82vw;
        background-repeat: no-repeat;
        background-size: contain;
        left: 10vw;
    }
    section#intro .row .bg-color.bg2 {
        width: 70vw;
        background: linear-gradient(
            to left,
            #489691 0%,
            #489691 20%,
            #cfc69e 100%
        );
        left: 15vw;
    }

    .d_img {
        display: none;
    }
    .m_img {
        display: block;
    }
    section#intro .qna_infor .title-wrapper,
    section#explained .title-wrapper {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        margin-bottom: 1rem;
    }
    section#intro .qna_infor .title-wrapper .title-row,
    section#explained .title-wrapper .title-row {
        width: 55%;
    }
    section#intro .qna_infor .title-wrapper .img-wrapper {
        width: 45%;
        padding-left: 1rem;
    }
    section#intro .row.station_design .map-bg-img,
    section#intro .row.station_design .remarks {
        position: relative;
    }
    section#intro .row.station_design .remarks {
        padding-top: 1rem;
    }
    section#intro .row.station_design .map-bg-img div[data-toggle="modal"] {
        width: 100vw;
        left: 50%;
        transform: translateX(-50%);
        position: relative;
    }
    section#position .bg3 {
        width: 109vw;
        left: -12vw;
    }
    .svg_wrapper {
        margin-top: 3rem;
        padding-bottom: 100%;
    }
    section#position .bg4 {
        width: 109vw;
        background: linear-gradient(
            to left,
            #489691 0%,
            #489691 25%,
            #cfc69e 100%
        );
    }
    section#explained {
        padding-bottom: 5rem;
    }
    section#future {
        padding-top: 3rem;
    }
    .santin section#future,
    .autau section#future,
    .kamsheungroad section#future {
        padding-top: 0 !important;
    }
    section#future .col-md-6 {
        min-height: 300px;
    }
    section#intro .bg-element.bg2 {
        width: 63vw;
        left: 20%;
        position: relative;
        margin-top: 4rem;
    }
    section#banner .station .bg-img {
        margin-bottom: 1rem;
    }
    section#intro .station-swiper {
        width: 93%;
        position: relative;
        max-width: none;
        top: auto;
    }
    section#intro .sustainable.gallery-wrapper {
        flex-wrap: wrap;
    }
    #future .color-wrapper.circle-right svg,
    #future .color-wrapper.circle-right img {
        display: none;
    }
    section#intro .sustainable.gallery-wrapper .gallery-left,
    section#intro .sustainable.gallery-wrapper .gallery-right {
        width: 100%;
    }
    section#intro .sustainable .content:first-child::before {
        width: 112vw;
        right: -16vw;
    }
    section#intro .sustainable .sustainable-photo-wrapper img {
        width: 100vw;
    }
    .border-break:after {
        width: calc(100% + 26vw);
        right: auto;
        left: 50%;
        transform: translateX(-50%);
    }
    .station_design-line {
        width: 100%;
        max-width: 350px;
    }
    #explained .explained-wrapper .box-right > * {
        margin: 0;
    }
    #explained .explained-wrapper {
        flex-wrap: wrap;
        margin-top: 0rem;
    }
    #explained .explained-wrapper .box-left {
        width: 100%;
        padding-top: 0;
    }
    #explained .explained-wrapper .box-left li:before {
        right: calc(100% + 1rem);
        left: auto;
    }
    #explained .explained-wrapper .box-left li:after {
        left: -1rem;
        right: auto;
        width: 100vw;
    }
    #explained .explained-wrapper .box-left li {
        text-align: left;
    }
    #explained .explained-wrapper .box-right {
        width: 100%;
        padding-left: 0;
        margin-top: -1rem;
    }
    #explained .explained-wrapper .box-right .swiper-box {
        padding: 2rem;
    }
    #explained .explained-wrapper .box-right::before {
        width: 100vw;
    }
    #explained .explained-wrapper .box-right .swiper-box .desc {
        padding-left: 0;
    }
    #explained .explained-wrapper .box-right .swiper-control {
        right: 0;
        left: auto;
    }
    #explained .explained-wrapper .img-wrapper {
        display: none;
    }
    #explained .explained-img {
        width: 45%;
        position: relative;
        left: auto;
        margin-left: auto;
        padding-left: 1rem;
    }
    #gallery_sustainable {
        margin-top: 3rem;
    }
}

@media screen and (max-width: 825px) and (min-width: 800px) {
    section#position .bg3 {
        width: 102vw;
        left: -9.5vw;
    }
}
@media screen and (max-width: 800px) and (min-width: 768px) {
    section#future {
        padding-top: 5rem;
    }
}
@media screen and (max-width: 767.98px) {
    #panorama-modal .modal-content .modal-header .title,
    #threeD-model-modal .modal-content .modal-header .title {
        margin: 0;
        margin-bottom: 1rem;
    }

    #panorama-modal .modal-content .modal-header .title h4,
    #threeD-model-modal .modal-content .modal-header .title h4 {
        padding: 0;
        font-size: 1rem;
    }

    #panorama-modal .modal-content .modal-header .icon-text-btn,
    #threeD-model-modal .modal-content .modal-header .icon-text-btn {
        font-size: 10px;
        padding: 0;
        margin: 0;
    }

    #panorama-modal .modal-content .modal-header .info-icon.icon-text-btn,
    #threeD-model-modal .modal-content .modal-header .info-icon.icon-text-btn {
        margin: 0 !important;
        min-width: 70px !important;
    }

    #panorama-modal .modal-content .modal-header .icon-text-btn img,
    #threeD-model-modal .modal-content .modal-header .icon-text-btn img {
        width: 30px;
        height: 30px;
    }

    #panorama-modal .modal-content .modal-header .icon-text-btn span,
    #threeD-model-modal .modal-content .modal-header .icon-text-btn span {
        display: none;
    }

    #panorama-modal .modal-content .modal-header .info-icon.icon-text-btn img,
    #threeD-model-modal
        .modal-content
        .modal-header
        .info-icon.icon-text-btn
        img {
        width: 30px !important;
        height: 30px !important;
    }

    #panorama-modal .modal-content .modal-header .btns-group,
    #threeD-model-modal .modal-content .modal-header .btns-group {
        margin-bottom: 1rem;
    }

    /* #threeD-model-modal .intro_card img {
        height: calc((100vh - 125px) * 0.9);
    } */

    #panorama-info-modal .modal-body .info-title img {
        width: 45px;
        height: 45px;
    }

    .modal-body .swiper-btns-wrapper,
    .modal-body .info-content {
        width: 100%;
        margin: 0;
        padding: 3rem;
    }

    .modal-body .swiper-btns-wrapper {
        padding-bottom: 0;
    }

    .modal-body .info-content li {
        width: auto;
    }

    #view-wrapper {
        left: 1rem;
        bottom: 1rem;
    }

    #view-wrapper .map-view {
        width: calc(100vw - 2rem);
    }

    section#intro .bg-location .bg-wrapper .location p {
        font-size: 0.825rem;
    }
    section#intro .bg-location .bg-wrapper .location p::before {
        padding: 0 0.6rem;
    }
    section#intro .row.design .col-md-7 {
        border-left: 0;
    }
    #explained .explained-wrapper .box-left ul {
        display: flex;
        justify-content: center;
        height: 100%;
        margin-bottom: 0;
    }
    #explained .explained-wrapper .box-left li::after,
    #explained .explained-wrapper .box-left li::before {
        display: none;
    }
    #explained .explained-wrapper .box-left li {
        text-align: center;
        width: 50%;
        padding-left: 1rem;
        padding-right: 1rem;
    }
    #explained .explained-wrapper .box-left li.active h2 {
        background-color: #5a443e;
    }
    .santin #explained .explained-wrapper .box-left li.active h2 {
        background-color: #d39489;
    }
    .ngautammei #explained .explained-wrapper .box-left li.active h2 {
        background-color: #7ab47a;
    }
    .autau #explained .explained-wrapper .box-left li.active h2 {
        background-color: #42c1eb;
    }
    .kamsheungroad #explained .explained-wrapper .box-left li.active h2 {
        background-color: #aa6f2e;
    }
    #explained .explained-wrapper .box-left li h2,
    #explained .explained-wrapper .box-left li.active h2 {
        color: #fff !important;
    }
    #explained .explained-wrapper .box-left li h2 {
        height: 100%;
        background-color: #d5d5d5;
        border-top-left-radius: 1rem;
        border-top-right-radius: 1rem;
        padding: 1rem 0.5rem 1rem;
        display: flex;
        justify-content: center;
        align-items: center;
        transition: background 0.3s ease-in-out;
        font-size: 1.25rem;
    }
    #explained .explained-wrapper .box-right {
        margin-top: 0;
    }
    #explained .explained-wrapper .box-right::before {
        width: 100vw;
        left: 50%;
        transform: translateX(-50%);
    }
    #explained .explained-wrapper .box-right .swiper-box .bg-img {
        width: 100vw;
        left: 50%;
        transform: translateX(-50%);
        position: relative;
    }
    #explained .explained-wrapper .box-right .swiper-box {
        padding: 0;
    }
    #explained .explained-wrapper .box-right .swiper {
        overflow: visible;
    }
    section#future .col-md-6:nth-of-type(1) {
        order: 1;
    }
    section#future .col-md-6:nth-of-type(2) {
        order: 1;
    }
    section#future .col-md-6:nth-of-type(3) {
        order: 4;
    }
    section#future .col-md-6:nth-of-type(4) {
        order: 3;
    }
    section#future .col-md-6:nth-of-type(5) {
        order: 5;
    }
    section#future .col-md-6:nth-of-type(6) {
        order: 6;
    }
    section#future .col-md-6:nth-of-type(4) .bg-element.bg5 {
        width: 100%;
    }
    section#future .container.desc {
        max-width: inherit;
    }
    section#future .container.desc .bg_control {
        max-width: 540px;
        margin: 0 auto;
        padding: 0 15px;
    }
    section#intro .feature ul::before,
    section#intro .row.station_design::before,
    section#intro .row.station_design::after {
        display: none;
    }

    section#banner .station .desc-wrapper .desc-box:lang(en) {
        width: 75vw;
    }
    section#banner #kt-station3.station .desc-wrapper {
        top: 1rem;
        left: -34vw;
    }
    .kwu-tung section#banner #kt-station.station .desc-wrapper {
        top: 1rem;
        right: -8vw;
    }
    section#banner #kt-station2.station .desc-wrapper {
        top: 1rem;
        right: -27vw;
        left: auto;
    }
    .modal-container .modal-wrapper {
        width: 90vw;
        max-height: 800px;
    }
    section .esg {
        justify-content: center;
        flex-wrap: wrap;
    }
    section .esg::before {
        display: none;
    }
    section .esg_icon:last-of-type {
        margin-top: 4rem;
    }
    section .esg_icon:last-of-type::before {
        display: block;
    }
    section .esg {
        margin-bottom: 3rem;
    }
    section#banner #kt-station3.station .desc-wrapper {
        left: -27vw;
    }
    section#intro .feature ul {
        justify-content: center;
    }
    section#intro .feature ul li img {
        width: 70px;
    }
    section#intro .feature ul li {
        width: 50%;
        margin-bottom: 1rem;
    }

    section#intro .feature ul li:last-child,
    section#intro .feature ul li:nth-child(3) {
        margin-bottom: 0;
    }
    section#position .bg3 {
        width: 109vw;
        left: -15vw;
    }
    section#intro .qna_infor {
        padding-top: 3rem;
        padding-bottom: 3rem;
    }
    section#intro .station_inside .border-top {
        padding-top: 3rem;
    }
}

@media screen and (max-width: 767.98px) {
    .santin #banner #kt-station2.station .desc-wrapper {
        top: 1rem;
        left: -38vw;
    }
    .santin #banner #kt-station.station .desc-wrapper {
        top: 1rem;
        right: -52vw;
    }
    .santin #banner #kt-station.station {
        left: 30.2%;
        top: 45%;
    }
    .santin #banner #kt-station2.station {
        left: 47.5%;
        bottom: 34.5%;
    }
    section#banner #kt-station.station {
        top: 51%;
        left: 73%;
    }
    section#banner #kt-station.station .desc-wrapper {
        right: -4vw;
    }
    .ngautammei section#banner #kt-station.station {
        top: 67%;
        left: 82.2%;
    }
    .ngautammei section#banner #kt-station3.station {
        bottom: 11.5%;
        left: 29.5%;
    }
    .ngautammei section#banner #kt-station.station .desc-wrapper {
        top: 1rem;
        right: -1.75vw;
    }
    .ngautammei section#banner #kt-station3.station .desc-wrapper {
        top: 1rem;
        left: -17.75vw;
    }
    .autau section#banner #kt-station.station {
        left: 69.2%;
        top: 49%;
    }
    .autau section#banner #kt-station2.station {
        bottom: 41.5%;
        left: 36.5%;
    }
    .autau section#banner #kt-station2.station .desc-wrapper {
        left: -25.75vw;
        right: auto;
        top: 1rem;
    }
    .kamsheungroad section#banner #kt-station.station {
        top: auto;
        bottom: 71%;
        left: 17%;
    }
    .kamsheungroad section#banner #kt-station2.station {
        top: auto;
        left: 26%;
        bottom: 19%;
    }
    .kamsheungroad section#banner #kt-station3.station {
        bottom: 18.5%;
        left: 53.5%;
        top: auto;
    }
    .kamsheungroad section#banner #kt-station.station .desc-wrapper {
        top: 1rem;
        right: -42vw;
    }
    .kamsheungroad section#banner #kt-station2.station .desc-wrapper {
        top: 1.5rem;
        left: -11vw;
        right: auto;
    }
    .kamsheungroad section#banner #kt-station3.station .desc-wrapper {
        top: 1rem;
        right: -28vw;
        left: auto;
    }
    .kamsheungroad section#banner #kt-station.station .desc-wrapper:lang(en) {
        top: 1rem;
        right: -58vw;
    }
}

@media only screen and (max-width: 600.98px) {
    section#position .bg3 {
        left: -6vw;
    }
}

@media only screen and (max-width: 575.98px) {
    section#stop .nol_line {
        margin-bottom: 6rem;
    }
    section#stop .nol_line li p {
        font-size: 0.75rem;
        position: absolute;
        text-align: center;
        width: 100%;
        line-height: 1.2;
    }
    section#stop .nol_line li p:lang(tc) {
        white-space: nowrap;
    }
    section#stop .nol_line li p:lang(en) {
        font-size: 0.75rem;
        min-width: 50px;
        width: auto;
        left: 50%;
        transform: translateX(-50%);
    }
    section#intro .container {
        padding-left: 2rem;
        padding-right: 2rem;
    }
    section#intro .esg_wrapper .col-lg-6:last-of-type .bg-element.bg2 {
        padding-bottom: 62.25%;
        width: 105vw;
        background-size: cover;
        left: 0vw;
    }
    section#intro .feature ul {
        justify-content: center;
    }
    section#future .container.desc .bg_control {
        max-width: inherit;
        padding: 0;
    }
    section#future .discover_more {
        margin-left: 1rem;
    }
    section#stop {
        margin-top: 0;
        padding-bottom: 0rem;
    }
    section#intro .bg-element.bg2 {
        left: 0;
    }
    section#banner #kt-station.station {
        top: 53%;
        left: 71%;
    }
    section#banner #kt-station.station .desc-wrapper {
        top: 1rem;
        right: -10vw;
    }
    section#banner .station .desc-wrapper .desc-box {
        width: 60vw;
    }
    section#intro .station-swiper {
        width: 100%;
    }
    #explained .white-btn .btn-primary {
        max-width: 250px;
    }
    #explained .white-btn {
        align-items: center;
    }

    #explained .col-12,
    section#future .col-md-6,
    section#future .col-12 {
        padding-right: 2rem;
        padding-left: 2rem;
    }
    .modal-container .closeBtn {
        z-index: 3;
    }
    .modal-container .swiper .swiper-slide {
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .caption_wrapper .caption_list .caption_point {
        font-size: 0.875rem;
    }

    .point-remark .point {
        padding-right: 0.5rem;
        width: 35px;
    }
    .point-remark .remarks {
        width: calc(100% - 35px);
    }
    .sustainable .features_3 {
        width: 100%;
        margin-bottom: 4rem;
    }
    .sustainable .caring_station_facilities h4 {
        width: 100%;
        margin-bottom: 4rem;
    }
}
