/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/
/*@import url('https://fonts.googleapis.com/css2?family=Almarai:wght@100..900&display=swap');*/
/*@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@100..900&family=Noto+Sans+HK:wght@100..900&display=swap');*/
/*@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+HK:wght@300;400;500;700&family=Montserrat:wght@300;400;700;800&display=swap');*/
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@100..900&family=Noto+Sans+HK:wght@100..900&display=swap');

:root {
	--purple: #6d3a96;
	--red: #d63138;
	--animate-duration: 1s;
    --animate-delay: 1s;
    --animate-repeat: 10;
}
body {
    line-height: 1.5;
    color: #231f20;
    font-family: 'Montserrat', Helvetica, Arial, sans-serif, "Noto Sans HK", "Heiti TC", "LiHei Pro", "Microsoft JhengHei", "微軟正黑體";
    background-color: #ffcd67;
}
h1, h2, h3, h4, h5, h6 {
	color: #231f20;
	font-weight: 600;
	line-height: 1.5;
	margin: 0 0 0 0;
	font-family: 'Montserrat', Helvetica, Arial, sans-serif, "Noto Sans HK", "Heiti TC", "LiHei Pro", "Microsoft JhengHei", "微軟正黑體" !important;
}
#wrapper {}
.accessibility {
	height: 0px;
	width: 0px;
	display: inline-block;
	overflow: hidden;
	margin: 0;
	padding: 0;
	font-size: 0;
	text-indent: -9999px;
	position: absolute;
}
.black {color: #000000 !important;}
.text-s {text-shadow: 
	-6px -6px 10px rgba(255,255,255,1), 
	6px 0px 10px rgba(255,255,255,1),
	0px 6px 10px rgba(255,255,255,1), 
	6px 6px 10px rgba(255,255,255,1),
	-10px -10px 20px rgba(255,255,255,1), 
	10px 0px 20px rgba(255,255,255,1),
	0px 10px 20px rgba(255,255,255,1), 
	10px 10px 20px rgba(255,255,255,1)
}
img {
	pointer-events: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	overflow: hidden;
}
.delay-1 {animation-delay: .25s;}
.delay-2 {animation-delay: .5s;}
.delay-3 {animation-delay: .75s;}
.delay-4 {animation-delay: 1s;}

/* ----------------------------------------------------------------
	CUHK
-----------------------------------------------------------------*/
::selection {background: #6a6da980;}
.trans {transition: 0.5s;}
.nowrap {white-space: nowrap;}
body.zh {letter-spacing: 0.15rem;}
a {border-bottom: none !important;}
a:hover .icon-angle-down {color: #6A6DA9;}
#header {border-bottom: none; background-color: transparent;}
.header-row {min-height: 144px; align-items: flex-start;}
#header-wrap {background-color: transparent;}
#header-wrap .container {/*background-image: url('../images/header-bg.svg'); background-repeat: no-repeat; background-position: top left; background-size: 1300px 118px; border-top: 4px solid #fff;*/}
.menu-container .menu-link:last-child {padding-right: 0;}
#logo {margin-left: 2rem; margin-right: 1rem; width: 100%; max-width: 325px; padding-top: 30px; padding-bottom: 35px; display: block;}
#logo img {height: auto !important; width: 100%;}
#logo a.retina-logo {display: block;}
.tag-title {margin-top: 0; margin-left: auto; opacity: 1; visibility: visible; padding-right: 2rem; padding-top: 36px;}
.tag-title.visible {margin-top: 0; opacity: 1;}
.tag-title h1, .tag-title h2 {font-size: 1rem; font-weight: 500; line-height: 1.25; color: var(--purple);}
#header-wrap {background-image: url('../images/header-bg-full.svg'); background-repeat: no-repeat; background-position: bottom left; background-size: cover; /*border-top: 4px solid #fff;*/}
.sticky-header #header-wrap {position: fixed; top: 0; left: 0; border-bottom: none; background-color: transparent; box-shadow: none;}
#wrapper {min-height: calc(500px + 120px + 125px); background-color: transparent;}
#photo-slide {background-color: #ffffff; box-shadow: 0 0 10px rgba(0,0,0,0.1);}
#slider {min-height: calc(670px + 3vw); padding: 0 calc(2rem + 15px);}
@media (max-width: 1440px) {
    #slider {min-height: calc(610px + 3vw);}
}
@media (max-width: 1280px) {
    #slider {min-height: calc(530px + 3vw);}
}
@media (max-width: 1024px) {
    #slider {min-height: calc(430px + 3vw);}
}
@media (max-width: 991.98px) {
    #slider {display: block !important;}
}
#content {position: relative; background-color: transparent;}
#footer, #copyrights {background-color: transparent; /*position: fixed; bottom: 0;*/}
#section-sider.page-section {padding: 15vh 0;}
#section-download.page-section {padding: 0; padding: 0 15px; background-color: #ffe3ab;}
.container, .container-fluid, .container-sm, .container-md, .container-lg, .container-xl {padding-right: 15px; padding-left: 15px;}
@media (min-width: 576px) {.container, .container-sm {max-width: 100%;}}
@media (min-width: 768px) {.container, .container-sm, .container-md {max-width: 100%;}}
@media (min-width: 992px) {.container, .container-sm, .container-md, .container-lg {max-width: 100%;}}
@media (min-width: 1200px) {.container, .container-sm, .container-md, .container-lg, .container-xl {max-width: 1440px;}}
.container-max {max-width: 1500px; position: relative; height: 100%; background-color: transparent; padding: 101px 0 0; margin: 0 auto;}
.container-max .container {max-width:  ; background-color: transparent; background: transparent; padding: 0;}
.keyVisual {margin: auto; width: 100%; max-width: 1120px; min-width: auto; /*min-height: 46vw;*/ height: 45vw; max-height: 668px; overflow: hidden; position: absolute; top: 0rem; bottom: auto; right: 0; transition: 0.25s;}
.keyVisual.wrap {border: 0px solid blue; padding-bottom: 48%; margin-top: 1rem; z-index: 3; /*background-image: url('../images/kv-pos.png');*/ background-repeat: no-repeat; background-size: contain; background-position: bottom right; background-color: transparent; overflow: visible;}
.keyVisual.brain {border: 0px solid yellow; padding-bottom: 48%; max-width: 876px; /*min-height: 45vw;*/ height: 100%; left: 60%; top: 5%; transform: translate(-50%, -0%);}
.keyVisual {z-index: 1;}
.HYPE_scene {background-color: transparent !important;}
.title-row {padding-top: 9.5rem; padding-left: 5vw; padding-right: 0; padding-bottom: 3rem;}
.title {height: auto;}
.key-title {max-width: 420px; padding-right: 5%;}
#section-download {display: none;}
@media (max-width: 1440px) {
	.keyVisual.wrap {width: 78%;}
}
@media (max-width: 1280px) {
	.keyVisual {max-width: 100%;}
	.keyVisual.wrap {width: 76%;}
	.title-row {padding-top: 12.5%; padding-left: 7vw;}
	.title {padding-left: 0;}
	.key-title {padding-right: 13%;}
}
@media (max-width: 992.98px) {
	#slider {margin-top: -3%;}
	.keyVisual {max-width: 100%; height: 100%;}
	.keyVisual.wrap {width: 100%;}
	.keyVisual.brain {left: 56%; top: 4%; padding-bottom: 100%; transform: scale(1.125) translate(-50%, -7%);}
	.download-section {display: none !important;}
	#section-download {display: block;}
}
@media (max-width: 768px) {
	#slider {margin-top: -3%; padding: 0;}
}
@media (max-width: 576px) {
	#slider {margin-top: -7%; padding: 0;}
	.keyVisual.brain {padding-bottom: 100%; top: 9%;}
}
@media (max-width: 360px) {
	#slider {margin-top: -6%; padding: 0;}
	.keyVisual.brain {padding-bottom: 100%; top: 8%;}
}
.title-container {max-width: 1500px; padding: 0; z-index: 2;}
.content-wrap {padding: 0;}
.cover {width: auto; height: 100%; padding: 0rem;}
.cover img {border: 1px solid #231916;}

.download-section {width: auto; height: 6.75%; /*display: flex; align-items: center; justify-content: flex-start;*/ padding: 0; z-index: 3; transition: 0.5s;}
.download-section {/*left: 50%;*/ top: 0%; right: 50%; transform: translate(-50%, -0%);}
.download-section-button {min-width: 100%; width: auto; height: 100%; padding: 0; background-repeat: no-repeat; background-size: contain; background-color: transparent;}
.button-1 {background-image: url('../images/download-1.svg');}
.download-section a:hover .button-1 {background-image: url('../images/download-1-hover.svg');}
.button-2 {background-image: url('../images/download-2.svg');}
.download-section a:hover .button-2 {background-image: url('../images/download-2-hover.svg');}
.button-3 {background-image: url('../images/download-3.svg');}
.download-section a:hover .button-3 {background-image: url('../images/download-3-hover.svg');}
.button-4 {background-image: url('../images/download-4.svg');}
.download-section a:hover .button-4 {background-image: url('../images/download-4-hover.svg');}
.button-5 {background-image: url('../images/download-5.svg');}
.download-section a:hover .button-5 {background-image: url('../images/download-5-hover.svg');}
.button-6 {background-image: url('../images/download-6.svg');}
.download-section a:hover .button-6 {background-image: url('../images/download-6-hover.svg');}
.button-7 {background-image: url('../images/download-7.svg');}
.download-section a:hover .button-7 {background-image: url('../images/download-7-hover.svg');}
.button-8 {background-image: url('../images/download-8.svg');}
.download-section a:hover .button-8 {background-image: url('../images/download-8-hover.svg');}
.button-9 {background-image: url('../images/download-9.svg');}
.download-section a:hover .button-9 {background-image: url('../images/download-9-hover.svg');}
.button-10 {background-image: url('../images/download-10.svg');}
.download-section a:hover .button-10 {background-image: url('../images/download-10-hover.svg');}
.button-11 {background-image: url('../images/download-11.svg');}
.download-section a:hover .button-11 {background-image: url('../images/download-11-hover.svg');}
.button-12 {background-image: url('../images/download-12.svg');}
.download-section a:hover .button-12 {background-image: url('../images/download-12-hover.svg');}
.button-13 {background-image: url('../images/download-13.svg');}
.download-section a:hover .button-13 {background-image: url('../images/download-13-hover.svg');}
.download-section a {font-weight: 500; color: var(--purple); transform: translateY(0px); display: inline-block; height: 100%; transition: all 0.5s;}
.download-section a:hover {color: var(--red); transform: translateY(-8px);}
#download-full-section {padding: 0; /*padding-top: 30px;*/ background-color: transparent; overflow: visible;}
.download-full-section {padding: 0 calc(2rem + 15px); transition: 0.5s;}
.download-full-section a {display: block; max-width: 300px; padding-top: 8px; transition: 0.5s;}
.download-full-button {min-width: 100%; width: 100%; max-width: 300px; height: 100%; padding: 0; background-image: url('../images/download-full-section.svg'); background-repeat: no-repeat; background-size: cover; background-color: transparent;}
.download-full-section a:hover .download-full-button {background-image: url('../images/download-full-section-hover.svg');}
.download-full-section a:hover {transform: translateY(-8px);}
.download {width: 100%;}
.download-section .row {align-content: center;}
.download-section .row.text-right .upper {padding-left: 7px;}
.download-section .row.text-left .upper {padding-right: 7px;}
.download-section .row.text-right .cross {padding-right: 5px;}
.download-section .row.text-left .cross {padding-left: 5px;}
.download-section .cross {display: flex; align-items: center;}
.download-section .cross img {width: 13px; height: auto; background-image: url('../images/cross.svg'); background-repeat: no-repeat; background-size: cover; background-color: transparent; transition: 0.5s;}
.download-section .dl-title {display: flex; flex-direction: column; line-height: 1.35;}
.download-section .upper {font-size: 15px;}
.download-section .lower {font-size: 13px; font-weight: 600; padding-top: 3px;}
.download-section .upper, .download-section .lower div {display: inline-block; border-bottom: 1px solid var(--purple); transition: 0.5s;}
.download-section a:hover .upper, .download-section a:hover .lower div {border-bottom: 1px solid var(--red);}
.download-section a:hover .cross img {background-image: url('../images/cross-hover.svg');}

@media (max-width: 992px) {
	.key-title {max-width: 420px; padding-right: 0;}
	#download-full-section {
	height: 25vw; min-height: 6rem; padding: 0; display: flex; align-items: center;
	background-image: url('../images/download-full-section-bg.svg'); background-repeat: no-repeat; background-size: cover; background-color: transparent;
	}
	#section-download .container, #copyrights .container {width: 80%;}
	.download-full-section {padding: 0 calc(15px); text-align: right; margin-left: auto;}
	.download-full-section a {text-align: right; margin-left: auto;}
	.copyright-links {padding: 0;}
}
@media (max-width: 576px) {
	#section-download .container, #copyrights .container {width: 100%;}
}
.feature-block {
	padding-top: 10rem; padding-bottom: 1rem;
	width: 100%; max-width: 100%; padding-top: 1rem; padding-bottom: 2rem;
	display: flex; flex-wrap: wrap; justify-content: space-between;
}
.feature-box {background-color: transparent; margin: 0; padding: 0.5rem; position: relative; display: flex; align-items: flex-start;}
.feature-box:first-child { }
.feature-box.download-full {flex-direction: column;}
.feature-box .underline {border-bottom: 1px solid #6A6DA9;}
.fbox-content {padding: 0; padding-top: 0.125rem;}
.fbox-content h2 {font-size: 1.25rem; line-height: 1.25; color: var(--purple); text-transform: inherit;}
.fbox-content h2:before {content: ""; display: block; border-top: 1px solid #000000; width: 28px; padding-bottom: 0.75rem;}
.fbox-content h3, .fbox-content h4 {font-size: 1.25rem; line-height: 1.25; color: #ad7c60; text-transform: inherit;}
.fbox-content h4 {font-size: 1rem; line-height: 1.25; color: #000000; text-transform: inherit; margin-bottom: 0;}
.fbox-content p {font-size: 0.85rem; line-height: 1.25; color: #231916; margin-top: 0.25rem;}
.fbox-number h1 {font-size: 4.25rem; line-height: 1; color: #ad7c60; text-transform: inherit; margin: 0;}
.fbox-number {font-family: Helvetica, Arial, sans-serif; font-size: 3.3125rem; font-weight: 300; line-height: 1; color: #ADAFD0; min-width: 3rem; padding: 0;}

.download-head {font-size: 0.85rem; font-weight: 600; line-height: 1.5;}
.download-column {display: flex; flex-wrap: wrap;}
.download-title {font-size: 0.85rem; font-weight: 600; line-height: 1.5; color: var(--purple); padding-left: 14px; transition: 0.5s;}
.download-title:hover {color: var(--red);}
.download-title:before {
	content: ""; display: block; position: absolute; top: 6px; left: 0; width: 9px; height: 9px;
	background-image: url('../images/plus.svg'); background-repeat: no-repeat; background-size: 9px; transition: 0.5s;
}
.download-title:hover:before {background-image: url('../images/plus-hover.svg'); /*transform: rotate(90deg); transform-origin: center;*/}
.download-image {background: url('../images/key-download.jpg') right bottom / cover no-repeat /*fixed*/ transparent; background-size: cover; /*background-attachment: fixed;*/}
.download .feature-box:hover .cover img {border: 1px solid #6A6DA9;}
.download .feature-box:hover h2 {color: #6A6DA9;}
.download .feature-box:hover h4, .video .feature-box h4:hover {color: #6A6DA9;}
.download .feature-box:hover p {color: #6A6DA9;}

.download-block {border: 2px solid transparent; border-radius: 20px;}
.download-block:hover {border: 2px solid #aaa;}
.download-block a {height: 100%; display: block;}
.download-block p {line-height: 1.5 !important;}

#video_container {display: none;}
.video-block {cursor: pointer;}
.video-block:hover h3, .video-block:hover .video-arrow {color: #6A6DA9;}

.slider-caption h2,
.slider-element .slider-caption p {color: #fff !important; text-shadow: 2px 2px 8px #787878;}
#copyrights {line-height: 1.5; width: 100%; padding-top: 1rem;}
.copyright-links {font-size: 10px; text-align: right; margin: 0 2rem;}
.copyright-links a {margin: 0; margin-left: 0;}
a:hover, .copyright-links a:hover {color: var(--red);}
.primary-menu .menu-link:hover > a:after {background-color: #6A6DA9;}

#gotoTop:hover {background-color: var(--red) !important;}

@media (max-width: 1200px) {
	.feature-block {}
	.owl-carousel .slide-title {font-size: 5vw;}
}
@media (max-width: 1024px) {
	.feature-block { }
	.download-column-wrap {width: 50%}
}
@media (max-width: 992px) {
	#logo {/*margin-top: 34px; margin-right: 2rem; margin-bottom: 34px;*/}
	.stretched #gotoTop {bottom: 50px;}
	.header-row {min-height: 118px;}

	.keyVisual {top: 1vw; left: 0;}

	#photo-slide .container {max-width: 100%; padding: 0;}
	.title-row {display: flex; flex-wrap: wrap; justify-content: center; padding-top: 3rem; padding: calc(2rem + 15px);}
	.title {padding-top: 63vw; padding-left: 0px; padding-right: 0;}
	.copyright-links {text-align: left;}
	footer, #copyrights {background-color: #ffe3ab;}
}
@media (max-width: 968px) {
	.title {padding-top: 68vw;}
}
@media (max-width: 930px) {
	.title {padding-top: 72vw;}
}
@media (max-width: 768px) {
	.header-row {min-height: 70px;}
	#logo {margin-left: 3rem;}
	.title-row {padding-top: 4rem;}
	.title {padding-top: 70vw;}
	.container-max {padding-top: 78px;}
	#copyrights {padding: 1rem 0;}

	.feature-box {padding-left: 0; padding-right: 0;}
	.feature-block {max-width: 100%; padding-top: 1rem; padding-bottom: 2rem; display: flex; flex-wrap: wrap; justify-content: space-between;}
	.download-column {flex-direction: column;}
	.download-image {max-width: 100%; min-height: 100vw;}
	.download {}
}
@media (max-width: 767.9px) {
	.download {}
}
@media (max-width: 576px) {
	#logo {max-width: 250px; margin-left: 1rem; padding-top: 25px; padding-bottom: 30px;}
	.tag-title h1, .tag-title h2 {font-size: 0.875rem; padding-right: 0;}

	.keyVisual {/*height: 90vh !important; margin-top: 10vh !important;*/}

	.scroll-arrow {margin-left: 0;}
	.zh .scroll-arrow {margin-left: 0;}
	#content {/*background: none; background-color: #fff;*/}
	.page-section {padding-top: 0; padding-bottom: 0;}
	.download-column-wrap {width: 50%}
	.download-block, .download-block:hover {border: none;}
	.copyright, .copyright-links {text-align: left;}
}
@media (max-width: 575.9px) {
	.download {padding: 0px;}
	.download-column-wrap {width: 50%}
}
@media (max-width: 460px) {
	.download-column-wrap {width: 100%}
}
@media (max-width: 360px) {
	#logo {/*margin-right: 1rem; max-width: 120px;*/}
	.tag-title h1, .tag-title h2 {font-size: 0.7125rem;}

	.feature-block {}
	.fbox-content {padding-top: 0%;}
}

/** preloader **/
.loader_bg{
    position: fixed;
    z-index: 999999;
    background: #ffcd67;
    width: 100%;
    height: 100%;
}
.loader{
    border: 0 soild transparent;
    border-radius: 50%;
    width: 150px;
    height: 80px;
    position: absolute;
    top: calc(50vh - 40px);
    left: calc(50vw - 75px);
}
.loader:before, .loader:after{
    content: '';
    border: 0.25rem solid var(--purple);
    border-radius: 50%;
    width: inherit;
    height: inherit;
    position: absolute;
    top: 0;
    left: 0;
    animation: loader 2s linear infinite;
    opacity: 0;
}
.loader:before{
    animation-delay: .5s;
}
@keyframes loader{
    0%{
        transform: scale(0);
        opacity: 0;
    }
    50%{
        opacity: 1;
    }
    100%{
        transform: scale(1);
        opacity: 0;
    }
}
