@charset "utf-8";



/* -------------------- top logo bar, nav, cover video-------------------------- */
#topLogoBar { 
	/*position:fixed; */
	width:100%;
	height: 70px; 
	top:0; 
	left:0; 
	padding:0px; 
	background:#fff; 
	z-index:2;
	transition: top 0.5s;
} 

.topLogoBlock{
	width: 505px;
	position: relative;
	margin-left: auto;
	margin-right: auto;
}

.topLogoLeftDeco {
	position: absolute;
	left:0%;
}

.topLogoMid {
	position: absolute;
	left:30%;
}

.topLogoRightDeco {
	position: absolute;
	left:90%;
}

.coverVideo {
  position: relative;
  /*overflow: hidden;*/
  height: 0;
  padding-bottom: 56.25%; /*calculate by aspect ratio (h / w * 100%) */
}

.cloudPattern{
	display:block;
	width:100%;
	height:21px;
	background-image: url("../images/index_cloudPattern.gif");
  	background-repeat: repeat;
}





/* ------------------- nav  --------------------- */
nav {
  	width: 801px;
  	height: 64px;
  	margin-left: auto;
	margin-right: auto;
	margin-top:40px;
	margin-bottom:60px;
  	padding-left: 33px;
  	padding-right: 0px;
  	background-image: url('../images/navBarBg.gif');
  	background-repeat:no-repeat; 
}

nav a {
  display: inline-block;
  width: 130px;
  height: 30px;
  margin-top: 13px;
  margin-left: 20px;
  margin-right: 0px;
  padding-top: 5px;
  border-radius: 4px;
  background-color: rgb(154,49,45);
  color: rgb(250,222,222);
  text-align: center;
  font-size: 21px;
  line-height: 23px;
  transition: 0.3s;
  text-decoration: none;
}

nav a:hover {
  background-color: rgb(246,219,195);
  color: rgb(56,48,48);	
}

nav .this {
  display: inline-block;
  width: 130px;
  height: 30px;
  margin-top: 13px;
  margin-left: 0px;
  margin-right: 0px;
  padding-top: 5px;
  border-radius: 4px;
  background-color: rgb(192,147,50);
  color: rgb(250,222,222);
  text-align: center;
  font-size: 21px;
  line-height: 23px;
  transition: 0.3s;
  text-decoration: none;
}





/* ---------------- layout and general setting --------------------- */
.mainArea {
	width: 801px;
}

.majorText {
  	/*display: block;
  	margin: 20px auto 30px;*/
  	font-size: 23px;
	/*text-align: left;*/
}

.minorText {
  	display: block;
  	width: 610px;
  	margin: 10px auto 10px;
  	font-size: 16px;
}

.listAwards {
  display: block;
  width: 700px;
  font-size: 23px;
}

.listMainFeatures {
  display: block;
  width: 300px;
  font-size: 18px; 
}

ol {
  display: block;
  width: 300px;
  font-size: 18px;
}

.titleImg {
	display: inline-block;
	position: relative;
	left: 100px;
	vertical-align: middle;
}

.titleImgWide {
	display: inline-block;
	position: relative;
	left: 56px;
	vertical-align: middle;
}

h1 {
	font-size: 40px;
	display: inline-block;
	position: relative;
	left: 100px;
	vertical-align: middle;
	margin-top:60px;
}

.titleBlock {
	display: block;
	margin: auto;
	text-align: center;
	background-color:#F00;
	background-image: url("../images/index_cloudPattern.gif");
  	background-repeat: repeat;
}

h2 {
	font-size: 40px;
	display: inline-block;
	position: relative;
	left:0px;
	vertical-align: middle;
	margin-top:25px;
}

h3 {
	font-size: 18px;
	color: rgb(64,34,32);
}





/* ---------------------- content (intro) ----------------------- */
.intro {
  width: 801px;
  margin: 0px auto 0px;
  background-color:white;
  background: url('../images/intro_bgTree.jpg') no-repeat;
  background-position: left 95% bottom 95%;
}


.infoBlockArea {
      display: block;
      width: 801px;
      margin: 0 auto;
}

.infoBlockMainFeatures {
      padding-left: 10px;
      padding-top: 100px;
      width: 352px;
      height: 558px; /* spans the full table height via rowspan=3 */
      background-color: rgb(230, 221, 201);
      background: url('../images/index_infoBlockMainFeatures.gif') no-repeat;
      box-sizing: border-box;
}

    /* Make these anchors block-level so width/height are respected */
.infoBlockIntroVideo,
.infoBlockLantingVideo,
.infoBlockKFVideo,
.infoBlockFollowUs {
      display: block;
      width: 100%;      /* fill the cell width (matches your col sums) */
      text-decoration: none;
      color: inherit;
}

.infoBlockIntroVideo {
      height: 211px; /* row 1 content height */
      background: url('../images/index_infoBlockIntroVideo.jpg') no-repeat;
      background-size: cover;
}

.infoBlockLantingVideo {
      height: 246px; /* row 2 left content height */
      background: url('../images/index_infoBlockLantingVideo.jpg') no-repeat;
      background-size: cover;
}

.infoBlockKFVideo {
      height: 246px; /* row 2 right content height */
      background: url('../images/index_infoBlockKFVideo.jpg') no-repeat;
      background-size: cover;
}

.infoBlockFollowUs {
      height: 81px; /* row 3 content height */
      background: url('../images/index_infoBlockFollowUs.jpg') no-repeat;
      background-size: cover;
}

    /* Cross-fade container (use a class, not repeated IDs) */
.cf {
      position: relative;
      width: 100%;
      height: 100%;
      margin: 0;
}
.cf img {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: opacity 0.1s ease-in-out;
}
.cf img.top { opacity: 1; }
.cf:hover img.top { opacity: 0; }

/* Utility from your snippet */
.fixFloatProblem {
      clear: both;
      height: 1px;
}




/*----------------- content (intro) NEW ---------------------------- */
/* Styles are fully scoped to this specific table via its unique IDs */
.shell{
	display:block; 
	height:600px; 
	padding-top:30px; 
	background-image: url('../images/index_infoBlockBg.jpg'); 
	background-repeat: no-repeat; /* Prevents the image from repeating */
  	background-position: center center; /* Centers the image */
  	background-size: cover;
}

#t801-wrap {
      width: 801px;
      height: 558px;
      margin: 0 auto 80px;
      max-width: 100%;
      max-height: 100%;
      overflow-x: hidden;
      overflow-y: hidden;
      -webkit-overflow-scrolling: touch;
}

#t801-table {
      /* Scoped custom properties */
      --table-width: 801px;
      --table-height: 558px;

      /* columns sum to 801px */
      --col-1: 352px;
      --col-2: 11px;
      --col-3: 212px;
      --col-4: 16px;
      --col-5: 210px;

      /* desired row heights (sum to 558px) */
      --row-1: 221px;
      --row-2: 256px;
      --row-3: 81px;

      width: var(--table-width);
      height: var(--table-height); /* was mistakenly set via width in your code */
      table-layout: fixed;
      border-collapse: collapse;
      border-spacing: 0;
      margin: 0;
      background: transparent; 
/*background-color:rgb(142,129,57);	*/
      color: #222;
      font: 14px/1.3 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

    /* Exact column widths via colgroup */
    #t801-table col:nth-child(1) { width: var(--col-1); }
    #t801-table col:nth-child(2) { width: var(--col-2); }
    #t801-table col:nth-child(3) { width: var(--col-3); }
    #t801-table col:nth-child(4) { width: var(--col-4); }
    #t801-table col:nth-child(5) { width: var(--col-5); }

    /* Apply row heights to TRs (use tr, not row) */
    #t801-table tr:nth-child(1) { height: var(--row-1); }
    #t801-table tr:nth-child(2) { height: var(--row-2); }
    #t801-table tr:nth-child(3) { height: var(--row-3); }

    /* Cells: keep content at the top so extra row height becomes bottom gap */
#t801-table td {
      padding: 0;
      vertical-align: top;
      overflow-wrap: anywhere;
}

    /* Optional: if you want to guarantee the 10px gap purely via padding
       (even if a browser treats tr height as min-height), you can add: */
#t801-table tr:nth-child(1) > td[colspan="3"] { padding-bottom: 10px; }
#t801-table tr:nth-child(2) > td:nth-child(3),
#t801-table tr:nth-child(2) > td:nth-child(5) { padding-bottom: 10px; }






/*------------------- complex grid (Pure ink nature)----------------------*/
/* Wrapper to center the container */
        /*.wrapper {
            display: flex;
            justify-content: center;
            align-items: center;
            min-height: calc(100vh - 100px);
            box-sizing: border-box;
        }*/
        .complexGrid {
            position: relative;
            width: 100%;
            max-width: 100vw;
            aspect-ratio: 4 / 3; /* Maintain a 4:3 aspect ratio */
            display: grid;
            grid-template-columns: 2fr 1fr 1fr;
            grid-template-rows: 1fr 1fr 1fr;
            gap: 10px;
            box-sizing: border-box;
        }
        .item-a {
            grid-column: 1 / 2;
            grid-row: 1 / 3;
        }
        .item-b {
            grid-column: 1 / 2;
            grid-row: 3 / 4;
        }
        .item-c {
            grid-column: 2 / 4;
            grid-row: 1 / 2;
        }
        .item-d {
            grid-column: 2 / 3;
            grid-row: 2 / 4;
        }
        .item-e {
            grid-column: 3 / 4;
            grid-row: 2 / 4;
        }
        /* Modified CSS for image swapping, text overlay, and corner image */
        .item {
            position: relative;
            overflow: hidden;
        }
        /* Updated selector to only target .img1 and .img2 */
        .item .img1,
        .item .img2 {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: opacity 3s;
        }
        .img1 {
            opacity: 1;
        }
        .img2 {
            opacity: 0;
        }
        /* Text overlay styling */
        .text-overlay {
            position: absolute;
            bottom: 1px; /* Slightly above the bottom edge */
            left: 4px;
            color: white;
            font-size: clamp(20px, 4vw, 50px); /* Responsive font size */
            text-shadow: 2px 2px 4px rgba(0, 0, 0, 1); /* Dark shadow with full opacity */
            z-index: 2; /* Ensure text is above images but below corner overlay */
            line-height: 1;
            margin: 0;
            padding: 0;
            white-space: nowrap; /* Prevent text from wrapping */
        }
        /* Corner overlay styling */
        .corner-overlay {
            position: absolute;
            top: 0;
            right: 0;
            z-index: 3; /* Ensure corner image is on top */
            width: auto; /* Allow image to display at its natural size */
            height: auto;
        }
        .corner-overlay img {
            display: block; /* Remove inline spacing */
            width: auto; /* Use natural size */
            height: auto;
        }
        /* Optional: Adjust the gap between grid items on smaller screens */
        @media (max-width: 600px) {
            .complexGrid {
                gap: 5px;
            }
        }








/*---------------------- content (activity)-------------------------------*/
.wrapper {
	background: url('../images/indexDetails/indexDetails_areaBg.gif');
	background-repeat: repeat;
}

.activities {
  	width: 801px;
  	margin: 0px auto -6px;
	background-position: center bottom;
	
}

.activityButton {
	display: block;
	position: relative;
	border: 1px solid rgb(183, 183, 183);
  	margin-top: 100px;
	margin-bottom: 0px;
	margin-left: auto;
	margin-right:auto;
  	width: 780px;
  	height: 150px;
	background-color: rgb(236,222,222);
	text-decoration: none;
	transition: 0.3s;
}

#cf2 {
  position:relative;
  height:150px;
  width:342px;
  float: left;
}

#cf2 img {
  position:absolute;
  left:0;
  -webkit-transition: opacity 0.4s ease-in-out;
  -moz-transition: opacity 0.4s ease-in-out;
  -o-transition: opacity 0.4s ease-in-out;
  transition: opacity 0.4s ease-in-out;
}

#cf2 img.top:hover {
  opacity:0;
}

.activityButtonContent1 {
	float: right;
	width: 438px;
	height: 150px;
	background: url('../images/indexDetails/indexDetails_bg1.jpg') no-repeat;
	color: rgb(197,77,24);
}

.activityButtonContent2 {
	float: right;
	width: 438px;
	height: 150px;
	background: url('../images/indexDetails/indexDetails_bg2.jpg') no-repeat;
	color: rgb(197,77,24);
}

.activityButtonContent3 {
	float: right;
	width: 438px;
	height: 150px;
	background: url('../images/indexDetails/indexDetails_bg3.jpg') no-repeat;
	color: rgb(197,77,24);
}

.activityTitle {
	font-size: 48px;
	margin: -3px 15px 0px;
}

.activitySubTitle {
	width: 300px;
	font-size: 24px;
	font-style: italic;
	color: rgb(206,140,122);
	margin: -5px 15px 0px;
}

.activityArtistName {
	font-size: 16px;
	color: rgb(0,0,0);
	position: absolute;
  	bottom: 1%;
	margin: 0px 15px 0px;
}

.activityReadMore {
	font-size: 14px;
	color: rgb(0,0,0);
	position: absolute;
  	bottom: 1%;
	right: 10%;
}

.collapsible {
  background-color: rgba(255,255,255,0);
  font-size: 14px;
  color: rgb(0,0,0);
  cursor: pointer;
  border: none;
  outline: none;
  position:relative;
  left:700px;
}
.active, .collapsible:hover {
  color: rgb(200,0,0);
}
.content {
  display: none;
  overflow: hidden;
  background-color: #f1f1f1;
  margin-top:-15px;
  margin-left: auto;
  margin-right:auto;
  width: 780px;
  
  border-bottom: 3px solid rgb(133, 133, 133);
  background-color: rgb(236,222,222);
}
.hiddenLeft {
	float: left;
	width: 100px;
}
.hiddenRight {
	float: right;
	width: 438px;
}
.hiddenText {
	font-size: 16px;
	color: rgb(0,0,0);
	margin: 0px 15px 10px;
}
.hiddenTextLighter {
	font-size: 16px;
	color: rgb(118,118,118);
	margin: 0px 15px 10px;
}







.mainAreaActivity {
	display: inline-block;
	width: 801px;
	text-align: left;
}

.tab {
  overflow: hidden;
  margin: 0px auto 0px; 
  width:801px;
  /*border: 1px solid #ccc;*/
  /*background-color: #f1f1f1;*/
}

/* Style the buttons inside the tab */
.tab button {
  background-color: #f1f1f1;
  border-radius: 10px 10px 0px 0px; 
  width: 400px;
  float: left;
  border: none;
  outline: none;
  cursor: pointer;
  padding: 14px 16px;
  transition: 0.3s;
  font-size: 17px;
}

/* Change background color of buttons on hover */
.tab button:hover {
  background-color: rgb(246,219,195);
}

/* Create an active/current tablink class */
.tab button.active {
  background-color: rgb(154,49,45);
  color: rgb(250,222,222);
}

/* Style the tab content */
.tabcontent {
  display: none;
  /*padding: 6px 12px;*/
  background-color: rgb(154,49,45);
  width: 801px;
  margin: 0px auto 0px;
  box-shadow: 10px 10px 6px rgba(128, 128, 128, 0.5);
  /*border: 1px solid #ccc;
  border-top: none;*/
  -webkit-animation: fadeEffect 1s;
  animation: fadeEffect 1s;
}

/* Fade in tabs */
@-webkit-keyframes fadeEffect {
  from {opacity: 0;}
  to {opacity: 1;}
}

@keyframes fadeEffect {
  from {opacity: 0;}
  to {opacity: 1;}
}








/*-------------------------information-----------------------------*/
.information {
	/*display:block;*/
	width: 801px;
	margin: 50px auto 0px;
}

.informationLeftCol {
	float:left;
	width: 300px;
	height: 290px;
	border-left: 4px solid rgb(200,200,200);
}

.informationRightCol {
	float:right;
	width: 490px;
	height: 290px;
	border-left: 4px solid rgb(200,200,200);
}

.informationTitle {
	font-size: 16px;
	font-weight: bold;
	color: rgb(103,103,103);
	margin: 0px 10px 5px;
}

.informationTextHighlight {
	font-size: 21px;
	font-weight: bold;
	color: rgb(204,102,0);
	margin: -6px 10px 5px;
}

.informationText {
	font-size: 14px;
	color: rgb(153,153,153);
	margin: 0px 10px 5px;
}

.informationTextLighter {
	font-size: 14px;
	color: rgb(176,176,176);
	margin: 0px 10px 5px;
}

.fixFloatProblem {
  clear: both;
  height: 1px;
}






/*-------------------------footer-----------------------------*/
.footer {
	display: block;
	width: 100%;
	height: 200px;
	margin: 0px auto 0px;
	padding-top:10px;
	background-color: rgba(122,78,78,0.8);
}

.footerText {
  font-size: 14px;
  text-align: center;
  color: #cccccc;
  margin-bottom: 3px;
}

.footerExtended {
	display: block;
    float: left;
	width:801px;
	margin:0px auto 0px;
	background-color: rgba(122,78,78,0.01);
	height:300px;
}




/*-------------------------popup window-----------------------------*/
.popUpWindow {
  position: fixed;
		font-family: Arial, Helvetica, sans-serif;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: rgba(0,0,0,0.66);
		z-index: 99999;
		opacity:0;
		-webkit-transition: opacity 400ms ease-in;
		-moz-transition: opacity 400ms ease-in;
		transition: opacity 400ms ease-in;
		pointer-events: none;
}

.popUpWindow:target {
  opacity:1;
  pointer-events: auto;
}

.popUpWindow > div {
  width: 800px;
  height: 70%;					/* assume the screen is mobile at first, allow popUp window to be taller */
  position: relative;
  margin: 10% auto;
  padding: 10px 10px 13px 10px;
  border-radius: 10px;
  background: rgba(200,200,200,1);
  background: -moz-linear-gradient(#fff, #999);
  background: -webkit-linear-gradient(#fff, #999);
  background: -o-linear-gradient(#fff, #999);		
}

/*  this screen is most likely PC moniter, to shorten height of popUp window for PC */
@media only screen and (max-height: 1100px) {
  .popUpWindow > div {height:90%; margin: 2.5% auto;}
}

.popUpWindow #popUpContent {
	width: 800px; 
    height: 100%;
	border-width: 0px;  
}

.close {
  background: #606061;
		color: #FFFFFF;
		line-height: 48px;
		position: absolute;
		right: -12px;
		text-align: center;
		top: -10px;
		width: 48px;
		text-decoration: none;
		font-size: 24px;		
		-webkit-border-radius: 24px;
		-moz-border-radius: 24px;
		border-radius: 24px;		
		-moz-box-shadow: 3px 3px 6px #000;
		-webkit-box-shadow: 3px 3px 6px #000;
		box-shadow: 3px 3px 6px #000;
}

.close:hover { 
  background: rgb(177,79,26); 
}





