/* 
	//////////////////////////////////////////////////////////
	//                                                      //
	//                     Dec. 20, 2023                    //
	//                     Dongqing Ye                      //
	//                                                      //
	//////////////////////////////////////////////////////////
 
	*/




/* Font styles for headers and footer */
body, h1, h2, p, form, label, input, footer {
  font-family: "Poppins", Arial, Helvetica, sans-serif;
}


/* Body styles */
body{
  font-size: 16px;
  background-color: #666;
  margin: 0;
	padding: 0;
	color: #333;
}


/* Heading styles */
h1, h2{
	font-weight: 700;
}

h3{
	font-family: "Roboto", Arial;
	font-weight: 700;
}


/* Styles for wrapper */
#wrapper{
  width: 100%;
  background-color: #fff;
  position: relative;
  overflow-x: hidden;
}




/* ----------Styles for Header--------- */
header{
	width: 100%;
  height: 100px;
  background-color: #fff;
	display: block;
}

/* Sign-in icon styles */
#sign_in_icon{
  position: absolute;
  top: 40px;
	right: 60px;
	width: 33px;
}

#nav_bar{
	position: absolute;
	top: 43px;
	right: 15px;
}


#inner_header{
	background-color: #fff;
	width: 100%;
	max-width: 960px;
	height: 100px;
	position: fixed;
	z-index: 100;
}


/* Logo styles */
header #logo{
  background-color: #fff;
  padding: 8px;
  position: absolute;
  top: 15px;
  left: 15px;
}  

/* Navigation styles */
nav{
  position: absolute;
  top: 15px;
  right: 0px;
	z-index: 150;
}

nav a#nav_bar{
  display: block;
  background: #fff;
  width: 36px;
  height: 0px;
  position: absolute;
  top: 24px;
  right: 7px;
  border-radius: 5px;
}


nav a#nav_bar span{
  background-color: #000;
  display: block;
  height: 3px;
  margin: 6px;
	-webkit-transition: all .4s ease-in-out;
  transition: all .4s ease-in-out;
}


nav ul#navlist{
  margin-top: 20px;
  width: 180px;
  padding: 3px 0 0 3px;
  position: absolute;
  top:42px;
  right: 7px;
  background-color: #fff;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  visibility: hidden;
	-webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}


nav:hover ul#navlist{
  opacity: 1;
  visibility: visible;
	-webkit-transform: rotateX(0);
  transform: rotateX(0);
}

nav ul#navlist li{
  list-style-type: none;
  background-color: #fff;
	
}


nav ul#navlist li a{
  text-decoration: none;
  color: #666;
  display: block;
  padding: 12px 14px 12px 13px;
  font-size: 0.85em
}


nav ul#navlist li a:hover{
  text-decoration: none;
  color: #000;
	font-weight: 700;
}





/* ----------Styles for Homepage--------- */

/* Styles for content section */
#content{
	position: relative;
  width: 100%;
	display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}


/* Responsive image styles */
#responsive-image {
	width: 100%; 
	min-width: 768px;
	height: auto;
	display: block;
	z-index: 1;
}

/* Text overlay on the image */
.image-text {
  position: absolute;
  top: 1%;
  left: 28px;
  color: #fff;
  text-align: left;
  z-index: 2;
}

#content h1{
	font-size: 76px;
	margin-bottom: 0px;
}

#content p{
	font-size: 32px;
	text-shadow: 2px 2px 2px rgba(29, 43, 50, 0.7);
}


h2{
	font-size: 32px;
	margin-left: 15px;
	margin-bottom: 15px;
	margin-top: 0px;
	color: #000;
}


@media (max-width: 768px) {
	
  #content h1 {
    font-size: 50px;
  }
	
	#content p{
		font-size: 20px;
	}
}


#content-button {
	position: absolute;
  top: 80%;
  left: 30px;
	z-index: 3;
	-webkit-transition:all .4s ease;
	transition: all .4s ease;
	text-align: center;
	width:160px;
	height: 46px;
	color: #000;
	font-weight: 700;
	display: -webkit-box;
  display: -ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #fff;
}


/* Grid containers for layout */
#gridcontainer1,
#gridcontainer2
{ 
	display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 10px;
	margin-left: 15px;
	margin-right: 0px;
	padding-bottom: 120px;
  box-sizing: border-box;
	overflow-x: scroll;
	overflow-y:visible;
}


/* Grid box styles */
.gridbox1,
.gridbox2{
  width: 100%;
  max-width: 290px;
  min-width: 240px;
  height: 300px;
	color: #fff;
	text-align: center;
}

.gridbox1 img,
.gridbox2 img {
  width: 100%; /* Make the images fill the entire grid cell */
  height: auto; /* Maintain the aspect ratio of the images */
  z-index: 4;
}


/* Overlay styles within grid boxes */
.gridbox1 div,
.gridbox2 div{
	position: relative;
  top: 0%;
  left: 50%;
	color: #fff;
  -webkit-transform: translate(-50%, 0%);
  transform: translate(-50%, 0%);
	background: #111;
	width: 100%; /* Set width to 100% for responsiveness */
	max-width: 170px;
  height:42px;
	margin-top: -65px;
	z-index: 5;
}

.gridbox1 h3,
.gridbox2 h3{
	text-align: left;
	font-size: 22px;
	color: #000;
	margin-top: 8px;
	margin-bottom: 22px;
}

.gridbox1 p,
.gridbox2 p{
	text-align: left;
	font-size: 16px;
	color: #666;
	margin-top:-16px;
}






/* ----------Styles for News--------- */
#single_text{
	height: 100%;
	margin-left: 15px;
	margin-right: 15px;
	margin-bottom: 50px;
	font-size: 18px;
}

#news_responsive_img{
	max-width: 900px;
	width: 100%;
  height: auto;
	margin-bottom: 10px;
}

#single_text h3{
width: 100%;
font-size: 24px;
margin-top: 0px;
margin-left: -15px;
color: #000;
}

#single_text p{
	font-size: 16px;
	margin-top: -15px;
	margin-left: -15px;
	color: #666;
}

.NEWS_single_text{
  padding-left: 15px;
}


#gridcontainer3 {
	display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 30px;
  box-sizing: border-box;
	margin-left: 15px;
	margin-right: 15px;
	margin-bottom: 60px;
}

.gridbox3{
	display: -webkit-box;
  display: -ms-flexbox;
	display: flex;
}

.NEWS_text{
	margin-top: -20px;
	margin-left: 20px;
}


.gridbox3 p{
	font-size: 16px;
	color: #666;
	margin-top: -10px;
}

.gridbox3 h3{
	font-size: 22px;
}





/* ----------Styles for Destination--------- */


#destination_container{
	margin-top: 0px;
	margin-left: 15px;
	overflow-x: scroll;
	overflow-y:visible;
}


.destination_container_left{
	display: -webkit-box;
  display: -ms-flexbox;
	display: flex;
	margin-right: 15px;
	margin-left: 15px;
}


#destination_container_left img{
	width: 345px;
	height: auto;
}


.destination_container_left_text{
	margin-top: -10px;
	max-width: 345px;
}



.destination_container_left_text h3{
	font-size:22px;
}

.destination_container_left_text p{
	font-size:16px;
	color: #666;
	margin-top: -10px;
}


/* Table styles */
table{
	text-align: left;
	border: 1px solid #000;
	width: 100%;
	max-width: 570px;
	margin-top: 88px;
	margin-bottom: 30px;
	margin-right: 15px;
	border-collapse: collapse;
}


/* Table cell styles */
table td{
	border: 1px solid #dedede;
	color: #333;
	padding-left: 10px;
	border-spacing: 0px;
	font-size: 15px;
}

 
/* Table header styles */
table th{
	color: #fff;
	background: #333;
  padding: 10px 30px 10px 10px;
	border-spacing: 0px;
	border-left: 1px solid #555;
}








/* ----------Styles for Residence--------- */

#container_residence_top_view_big{
  margin-top: 20px;
	margin-bottom: 40px;
	margin-left: 15px;
}

#residence_best_choice{
	margin-right: 15px;
	margin-bottom: 30px
	
}

#residence_best_choice img{
	width: 100%;
	max-width: 500px;
	height: auto;
}


#residence_best_choice h3{
  font-size: 26px;
	margin-top: 20px;
	margin-bottom: 0px;
	color: #111;
}

#residence_best_choice p{
	margin-top: 5px;
	margin-bottom: 50px;
	color: #666; 
	font-size: 17px;
}

.residence_single_text{
	height: 136px;
	padding-right: 0px;
	margin-top: -10px;
}

#gridcontainer4 {
	margin-left: 0px;
	margin-right: 15px;
	background: #fff;
	padding-top: 12px; 
}

.gridbox4{
	display: -webkit-box;
  display: -ms-flexbox;
	display: flex;
	margin-bottom: 20px;
	padding-left: 15px;
	padding-top: 15px;
  padding-bottom: 15px;
	box-shadow: 1px 2px 8px rgba(0, 0, 0, 0.1)
}

.gridbox4 p{
	font-size: 15px;
	color: #666;
	margin-top: -10px;
}

.gridbox4 h3{
	font-size: 20px;
}

#residence_container{
	margin-left: 30px;
	margin-right: 30px;
}

.residence_box{
	display: -webkit-box;
  display: -ms-flexbox;
	display: flex;
	margin-bottom: 30px;
	margin-left: -15px;
}

.residence_box h3{
	font-size: 24px;
	margin-bottom: 0px;
}

.residence_box p{
	font-size: 16px;
	color: #666;
}






/* ----------Styles for About us--------- */

#container_about_us{
  box-sizing: border-box;
	margin-left: 15px;
	margin-right: 15px;
	margin-top: 30px;
}

#gridbox_about_us_text{
	width: 90%;
	min-width: 300px;
	margin-left: 15px;
}

#container_about_us h1{
	font-family: "Poppins", serif;
	font-size: 40px;
	margin-bottom: 0px;
}

#container_about_us p{
	font-size: 16px;
	color: #666;
}

#container_about_us img{
	margin-top: 30px;
	margin-bottom: 20px;
	margin-right: 15px;
	width: 80%;
	max-width: 470px;
	height: auto;
}


#container_about_us2{
	display: -webkit-box;
  display: -ms-flexbox;
	display: flex;	
}


form legend{
	font-size: 19px;
	font-weight: 700;
}

form fieldset{
	font-family: "Poppings", sans-serif;
	font-size: 16px;
	background-color: #fff;
	max-width: 900px;
	border: 1px solid #ccc;
	margin: 30px 15px;
}


/* Label styles within the form */
form label{
	width: 120px;
	display: block;
	clear: both;
	float: left;
	text-align: left;
}


/* Input + Label styles within the form */
input + label{
	float: none;
	display: inline;
	width: auto;
	margin-left: 0.3em;
	line-height: 1.5;
}


/* Input text/password styles within the form */
form input[type="text"],
form input[type="password"]{
	height: auto;
	width: 230px;
	background: #fff;
	font-size: 14px;
	font-weight: 400;
	padding: 0.6em;
	border: 1px solid #aaa;
}


#radio_buttons input[type="radio"]{
	margin-bottom: 16px;
}

form input[type="submit"],
form input[type="reset"],
form input[type="button"]{
	background-color: #20447f;
	font-size: 15px;
	color: #fff;
	border: none;
	padding: 12px 30px 12px 30px;
	margin-top: 30px;
	margin-right: 5px;
}

form input[type="submit"]:hover,
form input[type="reset"]:hover,
form input[type="button"]:hover{
	background-color: #333;
	color: #fff;
}


/* Long label styles within the form */
form label.longlabel{
	float: none;
	display: block;
	width: auto;
	text-align: left;
}


/* Comments styles within the form */
form #comments{
	margin-top: -14px;
}






/* ----------Styles for footer--------- */
footer{
  height: 290px;
  background: #222 url('../images/Faded_Logo_black.png') no-repeat left;
	background-size: 28%;
  color: #fff;
  padding: 0px 15px;
}


.footer-group {
	display: -webkit-box;
  display: -ms-flexbox;
	display: flex;/* Sets the display to flex for the footer group */
	justify-content: space-around;
}

.footer-section {
	margin: 10px; /* Margin around each section */
}

footer div img{
	width: auto;
	height: 24px;
	margin-right: 15px;
}

footer p{
	font-family: "Poppins",sans-serif;
	margin-bottom: 12px;
	margin-top: 5px;
	color: #999;
	font-size: 14px;
}

footer h3{
	font-family: "Poppins",sans-serif;
	font-weight: 400;
	font-size: 16px;
	margin-bottom: 15px;
}

#copyright{
	text-align: center;/* Aligns copyright text to the center */
	font-size: 13px;
	margin-bottom: 10px;
	color: #666;
}



.footer-section a {
  text-decoration: none;
  color: #999; 
}

.footer-section a:hover {
  color: #ddd; 
}


#last_modified{
	text-align: center;
	font-size: 13px;
	margin-top: 0px;
	color: #666;
}


