

/* 
	//////////////////////////////////////////////////////////
	//                                                      //
	//                     Dec. 20, 2023                    //
	//                     Dongqing Ye                      //
	//                                                      //
	//////////////////////////////////////////////////////////
 
	*/


*{
  box-sizing: border-box;
}


/* Font styles for headers and footer */
h1, h2, footer {
  font-family: "Poppins", Arial, Helvetica, sans-serif;
}

p{
	color: #666;
	line-height: 1.3em;
}

/* Body styles */
body{
	font-family: sans-serif;
  font-size: 16px;
  background-color: #999;
  margin: 0;
	padding: 0;
	color: #333;
}


h1,
h2{
	font-weight: 700;
}


h1{
	margin-left: 30px;
}

h2{
	font-size: 36px;
	margin-left: 30px;
	margin-bottom: 15px;
	margin-top: 20px;
	color: #000;
}

h3{
	font-family: "Roboto",Arial;
	font-weight: 700;
}


/* Styles for wrapper */
#wrapper{
  background-color: #fff;
  max-width: 960px;
  margin: 0 auto;
  position: relative;
}




/* Header styles */
header{
	width: 100%;
  height: 100px;
  background-color: #fff;
	display: block;
}


/* Inner header styles */
#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;
}  


/* Sign-in icon styles */
#sign_in_icon{
  position: absolute;
  top: 48px;
	right: 18px;
	width: 24px;
}


/* Navigation styles */
nav{
	position: absolute;
	top: 40px;
	left: 240px;
  height: 50px;
}


nav > ul{
  margin: 0;
  padding: 0;
}

/* Navigation list styles */
nav ul li{
  list-style-type: none;
  display: inline-block;
	vertical-align: middle;
	margin-top: 12px;
}


nav ul li a{
  text-decoration: none;
	font-size: 15px;
  color: #666;
  padding: 8px 15px 8px 10px;
}


nav ul li a:hover{
  color: #000;
  border-bottom: 2px solid #000;
}


nav ul li a.active{
	color: #000;
	font-weight: 700;
}







/* ----------Styles for Homepage--------- */

/* Styles for the 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-left: 0px;
	margin-bottom: 0px;
}

#content p{
	color: #fff;
	font-size: 32px;
	text-shadow: 2px 2px 2px rgba(29, 43, 50, 0.7);
}


@media (max-width: 768px) {
	
  #content h1 {
    font-size: 50px;
  }
	
	#content p{
		font-size: 20px;
	}
}


#3d_container{
	-webkit-perspective: 500px;
	perspective: 500px;
}


/* Content button styles */
#content-button {
	position: absolute;
  top: 80%;
  left: 30px;
	z-index: 3;
	-webkit-transition: all .3s ease;
	transition: all .3s 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;
}


/* Hover effect for content button */
#content-button:hover{
	width:180px;
	height: 46px;
	color: #0085ff;
}


/* Grid containers for layout */
#gridcontainer1,
#gridcontainer2
{
	display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 10px;
	margin-left: 30px;
	margin-right: 30px;
	margin-bottom: 160px;
  box-sizing: border-box;
}


/* Grid box styles */
.gridbox1,
.gridbox2{
  width: 100%;
  max-width: 290px;
  min-width: 240px;
  height: 300px;
	color: #fff;
	text-align: center;
}


/* Image styles within grid boxes */
.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: 15px;
	color: #666;
	margin-top:-16px;
}








/* ----------Styles for News--------- */

#single_text{
	color: white;
	margin-left: 30px;
	margin-right: 30px;
	margin-bottom: 50px;
}

/* Responsive image styles for News */
#news_responsive_img{
	width: 100%;
}

#single_text h3{
	font-size: 36px;
	margin-top: 15px;
	margin-bottom: 10px;
	color: #000;
	font-size: 30px;
}

#single_text p{
	margin-top: 5px;
	color: #666;
	font-size: 20px;
}


#gridcontainer3 {
	display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
  box-sizing: border-box;
	margin-left: 30px;
	margin-right: 30px;
	margin-bottom: 60px;
}

.gridbox3{
	display: -webkit-box;
  display: -ms-flexbox;
	display: flex;
}

.NEWS_text{
	margin-top: -20px;
	margin-left: 15px;
}


.gridbox3 p{
	font-size: 15px;
	color: #666;
	margin-top: -10px;
}

.gridbox3 h3{
	font-size: 20px;
}








/* ----------Styles for Destination--------- */


#destination_container{
	display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
	margin-top: 30px;
}


#destination_container_left{
	margin-right: 30px;
	margin-left: 30px;
}


#destination_container_left img{
	width: 300px;
	height: auto;
}


.destination_container_left_text{
	margin-top: -10px;
	max-width: 300px;
}


.destination_container_left_text h3{
	font-size:22px;
}


.destination_container_left_text p{
	font-size:16px;
	color: #666;
	margin-top: -10px;
}


/* Styles for the table container */
#table_container{
	width: 100%;
	max-width: 570px;
	margin-bottom: 30px;
	margin-right: 10px;
}


/* Table styles */
#table_container table{
	text-align: left;
	border: 1px solid #000;
	width: 100%;
	border-collapse: collapse;
}


/* Table cell styles */
table td{
	border: 1px solid #dedede;
	color: #333;
	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: 30px;
	display: -webkit-box;
  display: -ms-flexbox;
	display: flex;
}

#residence_best_choice{
	margin-right: 15px;
}

#residence_best_choice h3{
  font-size: 28px;
	margin-top: 20px;
	margin-bottom: 0px;
}

#residence_best_choice p{
	margin-top: 5px;
	margin-bottom: 20px;
	color: #fff;
}

.residence_single_text{
	position: absolute;
	color: white;
	top: 597px;
  width: 100%;
	max-width: 500px;
	height: 136px;
  background-color: rgba(6, 80, 68, 0.15); /* Adjust the last value for transparency (0 is fully transparent, 1 is fully opaque) */
  padding-left: 20px;
	padding-right: 20px;
}


#gridcontainer4 {
  width: 100%;
}

.gridbox4{
	display: -webkit-box;
  display: -ms-flexbox;
	display: flex;
	padding-bottom: 35px;
	margin-right: 0px;
}

.gridbox4 p{
	font-size: 14px;
	color: #666;
	margin-top: -15px;
	margin-left: -5px;
}

.gridbox4 h3{
	font-size: 16px;
	margin-left: -5px;
}

#residence_container{
	margin-left: 30px;
	margin-right: 30px;
}

.residence_box{
	display: -webkit-box;
  display: -ms-flexbox;
	display: flex;
	margin-bottom: 30px;
}

.residence_box h3{
	font-size: 24px;
	margin-bottom: 0px;
}

.residence_box p{
	font-size: 16px;
	color: #666;
}





/* ----------Styles for About us--------- */

#container_about_us{
	display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
	gap: 30px;
  box-sizing: border-box;
	margin-left: 30px;
	margin-top: 100px;
}

#gridbox_about_us_text{
	width: 90%;
	min-width: 300px;
	margin: 20px 10px 100px 30px;
}

#container_about_us h1{
	font-family: "Poppins", serif;
	font-size: 68px;
	margin-top: 0px;
	margin-left: 0px;
}

#container_about_us img{
	display: -webkit-box;
  display: -ms-flexbox;
	display: flex;
	margin-top: 120px;
  width: 100%;
}


#container_about_us2{
	display: -webkit-box;
  display: -ms-flexbox;
	display: flex;	
}


legend h2{
	font-size: 24px;
	margin-left: 0px;
}


/* Legend styles within the form */
form legend{
	font-size: 19px;
	font-weight: 700;
}


/* Fieldset styles within the form */
form fieldset{
	font-family: "Poppings", sans-serif;
	font-size: 16px;
	background-color: #fff;
	max-width: 900px;
	border: 1px solid #dedede;
	margin: 30px;
}


/* 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 #ccc;
}


form input[type="submit"],
form input[type="reset"],
form input[type="button"]{
	background-color: #333e7f;
	font-size: 15px;
	color: #fff;
	border: none;
	padding: 12px 30px 12px 30px;
	margin-top: 30px;
	margin-right: 5px;
}


/* Hover effect styles */
form input[type="submit"]:hover,
form input[type="reset"]:hover,
form input[type="button"]:hover{
	background-color: #333;
	color: #fff;
}


form label.longlabel{
	float: none;
	display: block;
	width: auto;
	text-align: left;
}


form #comments{
	margin-top: -14px;
}


/* Placeholder styles for various input fields */
#last_name::placeholder,
#first_name::placeholder,
#phone_number::placeholder,
#email::placeholder,
#address::placeholder,
#comments::placeholder{
  color: #888;
}

label, input{
	color: #333;
}

#radio_buttons p{
	color: #333;
}







/* ----------Styles for footer--------- */

footer{
  height: 240px;
  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: 5px;
	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;
}



