/*
	store all page related styles. used on both frontend & backend
*/
/* ----- general ----- */
img{
	max-width:100%;
}
.clickable{
	cursor:pointer;
}
/* ----- element related ----- */
.cms-element-bg{
	background-size:cover;
	background-position:center;
	background-repeat:no-repeat;
}
.cms-anchor{
	position:relative;
	top:-100px;
}
/* ----- container related ----- */
.cms-container{
	
}
.cms-container>.cms-container-inside{
	display:flex;
	flex-wrap: nowrap;
	max-width:1100px;
	margin:0 auto;
	padding-top:50px;
	padding-bottom:50px;
	width:100%;
}
.cms-container-item{
	width:100%;
}
/* ----- block related ----- */
.cms-block{
	max-width:1100px;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:30px;
}
.cms-block .cms-block-inside{
	/* margin:0 10px; */
}
.cms-block .block-title{
	font-size: 1.2em;
	font-weight:bold;
}
.cms-image{
	text-align:center;
}
.cms-image img{
	max-width:100%;
}
.cms-yt-player{
	position:relative;
	padding-bottom: 60%;
	height: 0;
	background-color: #000;
}
.cms-yt-player>iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.cms-video>video{
	width:100%;
}
/* ----- block 3 related ----- */
.cms-block[data-block-type="3"] .text-item{
	padding-right:15px;
}
.cms-block[data-block-type="3"] .image-item{
	float:right;
}
/* ----- block 4 related ----- */
.cms-block[data-block-type="4"] .text-item{
	padding-left:15px;
}
/* ----- block 5 related ----- */
.cms-block[data-block-type="5"] .text-item{
	margin-top: 15px;
}
/* ----- block 6 related ----- */
.cms-block[data-block-type="6"] .swiper-wrapper{
	align-items: center;
}
/* ----- form related ----- */
.cms-form{
	padding:20px 0;
}
.cms-form-item{
	padding:20px;
}
.cms-form-item .item-title{
	float:left;
	width:30%;
}
.cms-form-item .item-title .require-mark{
	margin-left: 5px;
	color: red;
}
.cms-form-item .item-input{
	float:right;
	width:70%;
}
.cms-form-item .item-input .form-control{
	border-radius:0;
}
.cms-form-item .item-input textarea{
	height:100px;
	min-height:40px;
	resize:vertical;
}
.cms-form-item .item-input .input-options{
	margin-bottom:10px;
}
.cms-form-item .item-input .input-options input[type="radio"]{
	vertical-align: middle;
	margin: 0;
}
.cms-form-item .item-input .input-options .option-text{
	display: inline-block;
	margin-left: 5px;
}
.cms-form-submit{
	display: block;
	margin: 20px auto 0 auto;
	padding: 10px 40px;
	border: 1px solid #AAA;
	background: none;
}
.cms-form-item .captcha .captcha-img{
	margin-top: 10px;
	margin-right: 10px;
}
.cms-form-item .captcha a{
	outline:none;
}
/* ----- element layout related ---------------------------------------------------------------------- */
/* container - full width */
.cms-container.full-width .cms-container-inside{
	width:100%;
	max-width:none;
}
.cms-container.full-width .cms-container-inside .cms-block{
	max-width:none;
	margin-bottom:0;
}
/* ----- custom style ---------------------------------------------------------------------- */
.flyer{
	background-position:bottom;
	height:100%;
}
.cms-container.flyer > .cms-container-inside{
	padding:100px 0 !important;
	padding-bottom:200px !important;
}
.flyer .cms-block[data-block-type="5"],
.cms-container.full-width .flyer .cms-block[data-block-type="5"]{
	margin-bottom:80px;
}
.flyer .cms-block[data-block-type="5"] .cms-image{
	display:flex;
	align-items: center;
    justify-content: center;
    height: 300px;
}
.flyer.orange-style .cms-block[data-block-type="5"] .cms-image img{max-width:350px;width:75%;}
.flyer.black-style .cms-block[data-block-type="5"] .cms-image img{max-width:400px;width:75%;}
.flyer a.enjoy-btn{
	text-decoration: none;
    margin-top: 100px;
    display: inline-block;
    padding-left: 15px;
	position:relative;
}
.flyer a.enjoy-btn:before{
	content:'';
	position:absolute;
	left:0;
	bottom:0;
	width:1.5px;
	height:calc(100px + 1em);
}
.flyer.orange-style a.enjoy-btn:before{
	background-color:#40247d;
}
.flyer.black-style a.enjoy-btn:before{
	background-color:#f25c2a;
}
.flyer a.enjoy-btn:after{
	content:'';
	position:absolute;
	left:calc(100% + 10px);
	bottom:0.45em;
	height: 12px;
    width: 40px;
    background-size: cover;
	transition:left 0.5s;
}
.flyer a.enjoy-btn:hover:after{
	left:calc(100% + 25px);
}
.flyer.orange-style a.enjoy-btn:after{
	background-image:url(../images/common/purpleR_arrow.png);
}
.flyer.black-style a.enjoy-btn:after{
	background-image:url(../images/common/orangeR_arrow.png);
}
.flyer .block-title{
	font-weight:300;
	font-size:1.75em;
}
html[lang="tc"] .flyer .block-title,
html[lang="sc"] .flyer .block-title{
	font-weight:bold;
}
.flyer .block-content{
	font-size:1.2em;
	line-height:1.5em;
}
.flyer .cms-block[data-block-type="1"],
.cms-container.flyer .cms-container-inside .cms-block[data-block-type="1"]{
	max-width: 700px;
    width: 90%;
}
hr{
	margin:10px 0;
	border-color:#000;
}
.archive .cms-block[data-block-type="5"]{
	width:calc(100% / 5);
	float:left;
	position:relative;
	overflow:hidden;
}
.archive .cms-block[data-block-type="5"] .text-item{
	position:absolute;
	top:40%;
	left:50%;
	transform:translate(-50%,-50%);
	opacity:0;
	transition: all 0.5s;
	z-index:2;
}
.archive .cms-block[data-block-type="5"] .text-item p {
	color:#fff;
	font-size:1.8em;
}
.archive .cms-block[data-block-type="5"]:not(.no-mask):after{
	content:'';
	position:absolute;
	left:0;
	top:0;
	height:100%;
	width:100%;
	background-color: rgba(0,0,0,0);
	transition:all 0.5s;
}
.archive .cms-block[data-block-type="5"] .cms-image img{transition:all 0.5s;}
.archive .cms-block[data-block-type="5"]:hover:after{background-color: rgba(0,0,0,.4);}
.archive .cms-block[data-block-type="5"]:hover .text-item{opacity:1;top:50%;}
.archive .cms-block[data-block-type="5"]:hover .cms-image img{transform-origin:center;transform:scale(1.03);}

@media (max-width: 1140px) {
	.flyer .cms-block[data-block-type="5"] .cms-image{height:200px;}
	.flyer.orange-style .cms-block[data-block-type="5"] .cms-image img{max-width:200px;width:75%;}
	.flyer.black-style .cms-block[data-block-type="5"] .cms-image img{max-width:250px;width:75%;}
	.flyer .cms-block[data-block-type="5"], .cms-container.full-width .flyer .cms-block[data-block-type="5"]{margin-bottom:40px;}
	.cms-container.flyer > .cms-container-inside{padding:50px 0 !important;}
	.cms-container.flyer{font-size:0.8em;}
	.flyer a.enjoy-btn:after{bottom: 0.6em;height: 6px;width: 22px;}
	.archive .cms-block[data-block-type="5"]{width:calc(100% / 2);}
	.archive .cms-container-inside > .cms-container-item{display: flex;flex-wrap: wrap;}
}

/* ==========================================================================
   Enquiries
   ========================================================================== */
.enquiries,.enquiries.cms-element .block-content{display:flex;flex-wrap:wrap;min-height:350px;background-image:url(../images/common/footer_bg.jpg);background-size:cover;background-repeat:no-repeat;margin-bottom:50px;padding:40px;}
.enquiries > p:first-child,.enquiries.cms-element .block-content > p:first-child{width:100%;font-size:1.7em;font-weight:600;margin-bottom:40px;}
.enquiries .footer-item > p:first-child,.enquiries .sub-title{font-size:1.3em;font-weight:600;}
.enquiries .footer-item{width:calc((100% / 3) - 10px);margin-right:10px;margin-bottom:30px;}
.enquiries .footer-item p{line-height:1.5em;}
.enquiries .footer-item .icon-with-text{}
.enquiries .footer-item .icon-with-text img{display:inline-block;vertical-align:middle;width:25px;margin-right:10px}
.enquiries .footer-item .icon-with-text p{display:inline-block;vertical-align:middle;width:calc(100% - 40px);margin-bottom:0;}
.enquiries .notes{font-size:0.8em;}

@media (max-width: 1140px) {
	.enquiries{padding:20px;}
	.enquiries > p:first-child,.enquiries.cms-element .block-content > p:first-child{font-size:1.4em;}
	.enquiries .footer-item > p:first-child,.enquiries .sub-title{font-size:1.1em;}
	.enquiries .footer-item{width:calc((100% / 2) - 10px);}
}
/* ===== responsive =============================================================================================== */
@media screen and (max-width: 991px) {
	.cms-container>.cms-container-inside{
		display:block;
	}
	.cms-container-item{
		width:100% !important;
	}
	/* ----- block 3 related ----- */
	.cms-block[data-block-type="3"] .text-item{
		padding-right:0;
		margin-top: 15px;
	}
	/* ----- block 4 related ----- */
	.cms-block[data-block-type="4"] .text-item{
		padding-left:0;
		margin-top: 15px;
	}
	/* ----- form related ----- */
	.cms-form-item .item-title,
	.cms-form-item .item-input{
		float:none;
		width:100%;
	}
}