html,
body {
    font-size: 1rem;
    font-family: 'Noto Sans','JhengHei','SimHei', sans-serif;
}

html.font-md {
    font-size: 16px;
}

html.font-sm {
    font-size: 13px;
}

html.font-lg {
    font-size: 23px;
}

a {
    cursor: pointer !important;
}

a,
button,
[role="button"],
input,
label,
select,
textarea {
    touch-action: manipulation;
}

a:not([disabled]):hover i,
a:focus i {
    left: 5px;
}

svg:not(:root) {
    overflow: hidden;
}

a i {
    transition: left 0.15s ease-in-out;
    position: relative;
    margin-right: 10px;
    left: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 700;
}

h1 {
    margin-bottom: 3rem;
}

h1:after,
#others-section h1:after {
    content: "";
    border-bottom: 5px solid #164418;
    display: block;
    height: 1rem;
    width: 4rem;
    padding: 0;
}

h1.text-center:after {
    margin: 0 auto;
}

h2 {
    margin-bottom: 3rem;
}

h3 {
    margin-bottom: 1rem;
}

p,
a {
    word-wrap: break-word;
    word-break: break-word;
}

.btn-svg {
    position: relative;
    display: inline-block;
    text-align: center;
    background-color: transparent;
    cursor: pointer;
    text-decoration: none;
    font-size: .8125rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    width: 270px;
    height: 54px;
    line-height: 54px;
    margin-top: 1rem;

}

.btn-svg svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.btn-svg svg rect {
    stroke: #621558;
    stroke-width: 2;
    stroke-dasharray: 300px, 16px;
    stroke-dashoffset: 70px;
    -webkit-transition: all 400ms ease;
    transition: all 400ms ease;
}

.btn-svg:hover svg rect {
    stroke-dashoffset: 284px;
}

.btn-svg span {
    color: #621558;
}

a:hover,
a:focus {
    text-decoration: none;
}

.text-hidden {
    text-indent:-99999px;
}

/*
 * boardered text added for Robin's Nest Trail special effect - 20241015
 */
 
.bordered-text {
    display: inline-block;
    border: 2px solid #2e4c1b; /* Dark green border */
    /* background-color: #3a6623; */ /* Slightly lighter green background */
    /* color: white; */
    /* padding: 5px 10px; */
    /* font-family: Arial, sans-serif; */
    font-weight: bold; 
    /* margin: auto; */
}


/*
 * popup box in index page - 20240722
 */

    .popup {	  
      position: fixed;
      top: 20%;
      left: 50%;
      transform: translate(-50%, 0);
      background-color: rgba(0, 0, 0, 0.5);
      display: flex;
      justify-content: center;
      align-items: center;
      visibility: hidden;
	  outline: none;
	  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
	  z-index: 1000;	  
	
    }

    .popup-content {
      background-color: #FFF;
      padding: 17px;
      border-radius: 5px;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
      text-align: center;
      max-width: 600px;
      width: 100%;
      position: relative;
      border: 5px solid #3e610f;
    }
	
    .popup-content h4 {
      margin-top: 0;
	  color: #8c591c;
	  font-family: Helvetica, 'Microsoft JhengHei', 微軟正黑體, SimHei, Arial, sans-serif;
	  font-size: 1.5rem;
    }	

    .popup-content h5 {
      margin-top: 0;
	  color: #8c591c;
	  font-family: Helvetica, 'Microsoft JhengHei', 微軟正黑體, SimHei, Arial, sans-serif;
	  font-size: 1.5rem;
    }
	
    .popup-content h2 {
      margin-top: 0;
	  color: #3e610f;
	  font-family: Helvetica, 'Microsoft JhengHei', 微軟正黑體, SimHei, Arial, sans-serif;
    }	

    .close-icon {
      position: absolute;
      top: -50px;
      right: -10px;
      background: none;
      border: none;
      font-size: 30px;
      cursor: pointer;
      color: #fff;
    }

    .close-icon span {
      background-color: #3e610f;
      padding: 5px 15px;
      /* border-radius: 50%; */
    }


/*
 * header navigation
 */
body.home header {
    background: none;
}

.navbar {
    -webkit-transition: background-color 0.5s ease-out;
    -moz-transition: background-color 0.5s ease-out;
    -o-transition: background-color 0.5s ease-out;
    transition: background-color 0.5s ease-out;
}

.navbar .container {
    max-width: 1920px !important;
}

.navbar-brand {
    padding-top: 0;
}

.navbar-brand img {
    height: 30px;
    width: auto;
}

.abs-top {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    z-index: 1030;
}

.hiking-logo {
    width: 190px;
    height: 40px;
    display: inline-block;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url(../img/common/enjoy-hiking-logo-02.png);
}

.fixed-top .hiking-logo {
/*    background-image: url(../img/common/enjoy-hiking-logo-w-02.png);*/
}

.nav-toolbar ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.nav-core a,
.nav-core a:visited,
.sub-nav a,
.sub-nav a:visited {
    font-weight: 700;
}

.nav-toolbar ul li {
    display: inline-block;
    margin: 0 0 0 1rem;
}

.nav-toolbar ul.language-list li {
    margin: 0 0.2rem 0 0;
}

.nav-toolbar ul.language-list li:after {
    content: "";
    display: none;
    margin-left: 0;
    color: #fff;
}

.nav-toolbar ul.language-list li:last-child:after {
    display: none;
}

.nav-toolbar ul.language-list li,
.nav-toolbar ul.fontsize-list li {
    cursor: pointer;
    display: inline-block;
    margin: 0 0.5rem 0 0;
    width: 3.5rem;
    height: 3.5rem;
    line-height: 3.5rem;
    border: 1px solid #fff;
    position: relative;
}

.nav-toolbar ul.fontsize-list li.small-font {
    font-size: 0.8rem;
}

.nav-toolbar ul.fontsize-list li.normal-font {
    font-size: 1rem;
}

.nav-toolbar ul.fontsize-list li.large-font {
    font-size: 1.4rem;
}

.nav-toolbar ul.fontsize-list li:after {
    background: none repeat scroll 0 0 transparent;
    bottom: 0%;
    content: "";
    display: block;
    height: 2px;
    left: 50%;
    position: absolute;
    background: #fff;
    transition: width 0.3s ease 0s, left 0.3s ease 0s;
    width: 0;
}

.nav-toolbar ul.fontsize-list li:hover:after {
    width: 100%;
    left: 0%;
}

.nav-core ul {
    margin: 0 auto;
    padding: 0;
    list-style: none;
}

.nav-core ul li {
    display: inline-block;
    margin: 0 1rem;
    padding: 1rem;
    transition: .5s ease-in-out;
}

.nav-core.sticky {
    position: fixed;
    width: 100%;
    left: 0;
    z-index: 1010;
}

header .hamburger {
    text-align: center;
    display: inline-block;
    width: 32px;
    height: 32px;
    vertical-align: middle;
    cursor: pointer;
}

header .hamburger.open .menu-toggle span {
    background: #fff;
}

header .menu-toggle {
    margin: -10px auto 0;
    width: 20px;
    height: 20px;
    position: relative;
    top: 53%;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    cursor: pointer;
}

header .menu-toggle span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #fff;
    opacity: 1;
    left: 0;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}

header .menu-toggle span:first-child {
    transform-origin: 0% 0%;
}

header .menu-toggle span:nth-child(1) {
    top: 0px;
    -webkit-transform-origin: left center;
    -moz-transform-origin: left center;
    -o-transform-origin: left center;
    transform-origin: left center;
}

header .menu-toggle span:nth-child(2) {
    display: none;
    top: 5px;
    -webkit-transform-origin: left center;
    -moz-transform-origin: left center;
    -o-transform-origin: left center;
    transform-origin: left center;
}

header .menu-toggle span:nth-child(3) {
    top: 10px;
    -webkit-transform-origin: left center;
    -moz-transform-origin: left center;
    -o-transform-origin: left center;
    transform-origin: left center;
}

header .hamburger.open .menu-toggle span:nth-child(1) {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    top: 0px;
    left: 3px;
}

header .hamburger.open .menu-toggle span:nth-child(2) {
    width: 0%;
    opacity: 0;
}

header .hamburger.open .menu-toggle span:nth-child(3) {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 14px;
    left: 3px;
}

.navmobile {
    position: fixed;
    height: 100vh;
    width: 100%;
    overflow: scroll-y;
    z-index: 1011;
    display: none;
}

.mobile-nav-list {
    list-style: none;
    margin: 6rem 0 0;
    padding: 0;
}

.mobile-nav-list li {
    padding: 1.2rem 1rem;
    text-align: center;
    font-size: 1.4rem;
}

.navbar-options li a {
    font-size: 0.8rem;
}

.weather p {
    display: inline-block;
    margin-bottom: 0;
}

.weather .humidity:before {
    content: '';
    display: inline-block;
    position: relative;
    background-image: url(../img/common/humidity.png);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    width: 20px;
    height: 20px;
    top: 2px;
}

.weather li {
    margin: 0 0.5rem 0 0 !important;
}

.weather span {
    font-size: 1rem;
    display: block;
    float: right;
    font-weight: normal;
    margin-top: 0px;
}

.weather_img {
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    padding-bottom: 20px;
    width: 20px;
    margin-bottom: -2px;
    display: inline-block;
}

.weather_icon_50 {
    background-image: url(../img/common/icons/weather/50.png);
}

.weather_icon_51 {
    background-image: url(../img/common/icons/weather/51.png);
}

.weather_icon_52 {
    background-image: url(../img/common/icons/weather/52.png);
}

.weather_icon_53 {
    background-image: url(../img/common/icons/weather/53.png);
}

.weather_icon_54 {
    background-image: url(../img/common/icons/weather/54.png);
}

.weather_icon_60 {
    background-image: url(../img/common/icons/weather/60.png);
}

.weather_icon_61 {
    background-image: url(../img/common/icons/weather/61.png);
}

.weather_icon_62 {
    background-image: url(../img/common/icons/weather/62.png);
}

.weather_icon_63 {
    background-image: url(../img/common/icons/weather/63.png);
}

.weather_icon_64 {
    background-image: url(../img/common/icons/weather/64.png);
}

.weather_icon_65 {
    background-image: url(../img/common/icons/weather/65.png);
}

.weather_icon_70 {
    background-image: url(../img/common/icons/weather/70.png);
}

.weather_icon_71 {
    background-image: url(../img/common/icons/weather/71.png);
}

.weather_icon_72 {
    background-image: url(../img/common/icons/weather/72.png);
}

.weather_icon_73 {
    background-image: url(../img/common/icons/weather/73.png);
}

.weather_icon_74 {
    background-image: url(../img/common/icons/weather/74.png);
}

.weather_icon_75 {
    background-image: url(../img/common/icons/weather/75.png);
}

.weather_icon_76 {
    background-image: url(../img/common/icons/weather/76.png);
}

.weather_icon_77 {
    background-image: url(../img/common/icons/weather/77.png);
}

.weather_icon_80 {
    background-image: url(../img/common/icons/weather/80.png);
}

.weather_icon_81 {
    background-image: url(../img/common/icons/weather/81.png);
}

.weather_icon_82 {
    background-image: url(../img/common/icons/weather/82.png);
}

.weather_icon_83 {
    background-image: url(../img/common/icons/weather/83.png);
}

.weather_icon_84 {
    background-image: url(../img/common/icons/weather/84.png);
}

.weather_icon_85 {
    background-image: url(../img/common/icons/weather/85.png);
}

.weather_icon_90 {
    background-image: url(../img/common/icons/weather/90.png);
}

.weather_icon_91 {
    background-image: url(../img/common/icons/weather/91.png);
}

.weather_icon_92 {
    background-image: url(../img/common/icons/weather/92.png);
}

.weather_icon_93 {
    background-image: url(../img/common/icons/weather/93.png);
}

.warning_icon_wts {
    background-image: url(../img/common/icons/weather_warning_icon/wts.png);
}

.warning_icon_wcold {
    background-image: url(../img/common/icons/weather_warning_icon/wcold.png);
}

.warning_icon_wfirer {
    background-image: url(../img/common/icons/weather_warning_icon/wfirer.png);
}

.warning_icon_wfirey {
    background-image: url(../img/common/icons/weather_warning_icon/wfirey.png);
}

.warning_icon_whot {
    background-image: url(../img/common/icons/weather_warning_icon/whot.png);
}

.warning_icon_wfrost {
    background-image: url(../img/common/icons/weather_warning_icon/wfrost.png);
}

.warning_icon_wmsgnl {
    background-image: url(../img/common/icons/weather_warning_icon/wmsgnl.png);
}

.warning_icon_wl {
    background-image: url(../img/common/icons/weather_warning_icon/wl.png);
}

.warning_icon_wfntsa {
    background-image: url(../img/common/icons/weather_warning_icon/wfntsa.png);
}

.warning_icon_wtmw {
    background-image: url(../img/common/icons/weather_warning_icon/wtmw.png);
}

.warning_icon_wraina {
    background-image: url(../img/common/icons/weather_warning_icon/wraina.png);
}

.warning_icon_wrainr {
    background-image: url(../img/common/icons/weather_warning_icon/wrainr.png);
}

.warning_icon_wrainb {
    background-image: url(../img/common/icons/weather_warning_icon/wrainb.png);
}

.warning_icon_tc1 {
    background-image: url(../img/common/icons/weather_warning_icon/tc1.png);
}

.warning_icon_tc3 {
    background-image: url(../img/common/icons/weather_warning_icon/tc3.png);
}

.warning_icon_tc8ne {
    background-image: url(../img/common/icons/weather_warning_icon/tc8ne.png);
}

.warning_icon_tc8se {
    background-image: url(../img/common/icons/weather_warning_icon/tc8se.png);
}

.warning_icon_tc8sw {
    background-image: url(../img/common/icons/weather_warning_icon/tc8sw.png);
}

.warning_icon_tc8nw {
    background-image: url(../img/common/icons/weather_warning_icon/tc8nw.png);
}

.warning_icon_tc9 {
    background-image: url(../img/common/icons/weather_warning_icon/tc9.png);
}

.warning_icon_tc10 {
    background-image: url(../img/common/icons/weather_warning_icon/tc10.png);
}

/*
 * hero banner
 */

#hero-banner:before {
    content: ' ';
    width: 100%;
    height: 100%;
    z-index: 1;
    position: absolute;
    background: #000000;
    background: -moz-linear-gradient(top, rgba(31, 31, 31, 0.8) 1%, rgba(255, 255, 255, 0) 40%);
    background: -webkit-linear-gradient(top, rgba(31, 31, 31, 0.8) 1%, rgba(255, 255, 255, 0) 40%);
    background: linear-gradient(to bottom, rgba(31, 31, 31, 0.8) 1%, rgba(255, 255, 255, 0) 40%);

}

#hero-banner .carousel-item, #hero-banner .swiper-slide{
    /* height: 75vw; */
    /*padding-bottom:75%;*/
    /*4:3*/
    /*padding-bottom:56.25%;*/
    /*16:9*/
    /*padding-bottom:42.85%;*/
    /*21:9*/
    padding-bottom: 40.9%;
    /*22:9*/
    /* min-height: 500px; */
}

/* html.hide-hero #hero-banner .carousel-item {
    height: 30vh;
    min-height: 200px;
} */
/*
#hero-banner .carousel-inner::after {
    -webkit-transition: all .25s ease-in-out;
    -o-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out;
    -webkit-backface-visibility: hidden;
    content: '';
    position: absolute;
    z-index: 5;
    bottom: -1px;
    left: 0;
    right: 0;
    height: 5rem;
    width: 100%;
    background-image: url(../img/common/hero-bottom.png);
    background-repeat: repeat-x;
    background-position: bottom center;
    background-size: cover;

}
*/

html.hide-hero #hero-banner .carousel-control {
    display: none;
}

.carousel-control {
    background-repeat: no-repeat;
    background-size: auto 60px;
    background-position: center center;
}

.carousel-control-next,
.carousel-control-prev {
    opacity: 0.8;
    width: 8%;
}

.carousel-control-prev {
    background: -moz-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
    background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#a6000000', endColorstr='#00000000', GradientType=1);
}

.carousel-control-next {
    background: -moz-linear-gradient(right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
    background: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(to left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#a6000000', endColorstr='#00000000', GradientType=1);

}

.carousel-caption {
    right: auto;
    bottom: auto;
    left: 15%;
    padding: 3rem;
    color: #fff;
    text-align: left;
    /* background: rgba(22, 99, 52, .85); */
    width: 30%;
    top: 30%;
}

.fill-bg {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
.swiper-button-next,
.swiper-button-prev{
    background-position: center center;
    background-size: 30px auto;
    background-repeat: no-repeat;
    width: 60px;
    padding-bottom: 30px;
    top: 0;
    height: 100%;
    margin-top:0;
}
.swiper-button-next{
    background-image: url(../img/common/arrow-right.svg);
}
.swiper-button-prev{
    background-image: url(../img/common/arrow-left.svg);
}
.swiper-pagination-bullet-active{
    background-color: #e0d1a6;
}
#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span{
    background-size: 44px 152px;
}
/*
 * search section
 */

#search-srcoll {
    cursor: pointer;
}

#search-open {
    display: none;
    position: fixed;
    top: 0;
    width: 100%;
    box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.15);
    z-index: 999999;
}

#search-open .hv-60 {
    height: 60vh;
}

.key-words {
    min-width: 200px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: white;
}

/*
 * about section
 */

.about-section {
    padding: 8rem 0;
}

.intro {
    position: relative;
    margin-top: 5rem;
}
.content-section ul{
    list-style-type: none;
}
.content-section table ul{
    margin-bottom: 0;
}
#whatishiking p {
    text-align: justify;
}
#whatishiking table tbody th{
    background-color: #c53c00;
}
#whatishiking table thead{
    text-align: center;
}
#whatishiking ol {
    list-style-type: none;
    padding-left: 0;
}
#hiking-gear ul, #hiking-about ul{
    list-style-type: disc;
}

.personal-clothing-table .col-md-3 {
    padding: 2rem 1rem 0;
}

.personal-clothing-table .col-md-3:after {
    content: ' ';
    width: 4px;
    height: 100%;
    background: #f1a51c;
    display: block;
    position: absolute;
    top: 60%;
    left: 50%;
    z-index: -1;
    transform: translate(-50%, -50%);
    display: none;
}

.personal-clothing-table .row:after {
    content: ' ';
    width: 100%;
    height: 1px;
    background: #f1a51c;
    display: block;
    position: relative;
}

.personal-clothing-table .row:last-child .col-md-3:after,
.personal-clothing-table .row:last-child:after {
    display: none;
}

.personal-clothing-table .col-md-9 h3 {
    text-align: center;
    padding-top: 1rem;
}

.personal-clothing-table .col-md-9 {
    padding: 0 1rem 1rem;
}

.personal-clothing-img {
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    width: 25%;
    padding-bottom: 25%;
    margin: 0 auto;
}
.icon-skills{
    position: absolute;
    background-image: url(../img/common/icons/skills/basics.png);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    width: 3rem;
    padding-bottom: 3rem;
    top: 1rem;
    left: 2rem;
}
.col-6:nth-child(2) .icon-skills{
    background-image: url(../img/common/icons/skills/uphill.png);
}
/*
 * video section
 */
.video-section {
    margin: 0 auto;
}

.video-poster {
    width: 100%;
    padding-bottom: 70%;
    /* 16:9 */
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    position: relative;
}

.video-poster:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#video-play:hover .icon {
    transform: scale(.8);
    transform-origin: 50% 50%;
    transition: transform 200ms ease-out;
}

#video-play {
    cursor: pointer;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20%;
    transform: translateY(-50%) translateX(-50%);
    z-index: 5;
}

.video-wrapper {
    position: relative;
    padding-bottom: 56.25%;
    /* 16:9 */
    padding-top: 25px;
    height: 0;
}

.video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/*
 * feature section
 */
.feature-section figure {
    height: auto;
    width: 100%;
}

#feature-captions .caption {
    display: none;
}

#feature-captions .caption.active {
    display: block;
}

#feature-carousel .carousel-item {
    min-height: 550px;
}

.caption h2 {
    line-height: 1.2;
    font-size: 1.75rem;
}

/*
 * promotion section
 */
.promotion-section ul {
    margin: 0;
    padding-left: 2rem;
    list-style: none;
}

.promotion-section .promotion-text {
    padding: 3rem;
    font-size: 90%
}

.sub-nav ul li {
    display: inline-block;
    margin: 0 1rem;
    padding: 1rem;
}

.floating-scrollspy {
    display: block;
    position: fixed;
    top: 50%;
    right: 10px;
    z-index: 999;
    transform: translateY(-50%);
}

.floating-scrollspy .titlehover {
    display: none;
    font-size: 0.8rem;
    white-space: nowrap;
    padding: 0.2rem 1rem;
    right: 100%;
    bottom: 8%;
    transition: 0.1s all ease-in-out;
    z-index: -1;
}

.floating-scrollspy li:hover .titlehover {
    display: block;
}

.floating-scrollspy .nav {
    display: block;
}

.floating-scrollspy .nav-item {
    background-color: #607134;
    margin-bottom: 0.5rem;
    box-shadow: 0px 0px #c53c00;
    transition: 0.1s all ease-in-out;
    position: relative;
}

.floating-scrollspy .nav-item:hover,
.floating-scrollspy .nav-item:active {
    background-color: #f3cb04;
}

.floating-scrollspy .nav-link {
    display: block;
    padding: 2px;
    line-height: 0;
    font-size: 0;
    box-shadow: 0px 0px 4px 2px rgb(255, 255, 255);
    border-radius: 5px;
}

.scroll-icon {
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    width: 27px;
    padding-bottom: 27px;

}

.i-content {
    background-image: url(../img/common/icons/scroll/content.png);
}

.i-transportation {
    background-image: url(../img/common/icons/scroll/transport.png);
}

.i-map {
    background-image: url(../img/common/icons/scroll/map.png);
}

.i-review {
    background-image: url(../img/common/icons/scroll/review.png);
}

.i-gallery {
    background-image: url(../img/common/icons/scroll/gallery.png);
}


/*
 * trail section
 */

#promote-map {
    width: 100%;
    display: none;
}
.promote-rating-h2 {
    font-size:1.25rem;
}
.no_map_item{
    z-index: 999;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    position: fixed;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.map-img {
    background-image: url(../img/common/map/trail-map-bg.png);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    padding-bottom: 75%;
    background-color: #c8dffc;
}

.map-img:before {
    content: " ";
    background-image: url(../img/common/map/trail-map.png);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    padding-bottom: 75%;
    display: block;
    width: 100%;
    position: absolute;
}

.map-img a {
    display: block;
}

#promote-map a h2 {
    text-transform: uppercase;
    letter-spacing: -2px;
    z-index: 0;
}

.stroke-single:before {
    content: attr(title);
    position: absolute;
    -webkit-text-stroke: 0.2em #fff;
    left: 0;
    top: 0;
    width: 100%;
    z-index: -1;
}

.piont {
    width: 100%;
    height: 100%;
}

.piont-icon {
    background-image: url(../img/common/map/piont.png);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    width: 30px;
    height: 30px;
}

#close-map-btn,
.previous-map {
    font-size: 2rem;
    cursor: pointer;
}
#map-modal h2{
    font-size: 1.5rem;
}

.north {
    top: 5%;
    left: 36%;
    width: 34%;
    height: 27%;
}

.north h2 {
    margin-top: 28%;
}

.west {
    top: 32%;
    left: 6%;
    width: 34%;
    height: 23%;
}

.west h2 {
    margin-top: 13%;
}

.central {
    top: 32%;
    left: 40%;
    width: 30%;
    height: 37%;
}

.central h2 {
    margin-top: 32%;
}

.saikung {
    top: 24%;
    left: 70%;
    width: 25%;
    height: 38%;
}

.saikung h2 {
    margin-top: 47%;
}

.lantau {
    top: 62%;
    left: 1%;
    width: 39%;
    height: 36%;
}

.lantau h2 {
    margin-top: 34%;
}

.hkisland {
    top: 69%;
    left: 44%;
    width: 26%;
    height: 29%;
}

.hkisland h2 {
    width: 80%;
    margin: 11% auto 0;
}

.hkisland h2.stroke-single:before {
    left: 0
}

.trail-section ul,
.promotion-filter-section ul,
#search-trail ul,
#search-promote ul {
    margin: 0;
    list-style: none;	
}

#trail-review .sticky-c2 {
    padding: 2rem 0 2rem 2rem;
}

.transport-table .col-sm-4 {
    padding: 1rem 1rem 0;
}

.transport-table .col-sm-8 {
    padding: 0 1rem 1rem;
}

#feature-captions .caption.active {
    display: block;
}

#feature-carousel .carousel-item {
    min-height: 550px;
}

.criterion,
.sub-criterion {
    padding: 0 1rem;
    margin: 0 5px;
    position: relative;
    height: 2.5rem;
    font-size: 1rem;
    line-height: 2.5rem;
    background: #fff;
    cursor: pointer;
}

.criterion {
    width: 38%;
    width: 38%;
    margin: 0px;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;

}

.criteria-item {
    border: 0px;
}

.sub-criterion.dropdown,
.criterion.dropdown {
    padding: 0;
}

.sub-criterion span,
.criterion span,
.sub-criterion legend,
.criterion legend {
    width: 100%;
    display: block;
    padding: 0 1rem;
    font-size: 1rem;
    margin-bottom: 0;
}

.show.sub-criterion span,
.sub-criterion .show legend {
    color: #fff;
    background: #013f34;
}

.sub-criterion {
    width: 7rem;
    border-radius: 5px;
    box-shadow: 0px 0px 0 1px rgba(0, 0, 0, 0.2);
}

.summary p {
    margin-bottom: 0;
}

.dropdown-menu {
    width: 100%;
    margin: 0;
    padding: 1rem 0.5rem;
    line-height: 1.5rem;
}

.sub-criterion .dropdown-menu {
    width: auto;
    line-height: 1rem;
}

.dropdown-menu li {
    padding: 0.2rem 0.5rem;
    white-space: nowrap;
}

.dropdown-menu .rating li {
    padding: 0rem;
}

.dropdown-toggle::after {
    position: absolute;
    right: 0.6rem;
    top: 50%;
    border-top: .4em solid;
    border-right: .4em solid transparent;
    border-left: .4em solid transparent;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.core-search-criteria input[type="text"] {
    height: 2.5rem;
    line-height: 2.5rem;
    border: 0;
    border-radius: 0;
}

.keyword-wrapper div,
.keyword-wrapper .form-control {
    display: inline-block;
}

.form-control:focus {
    box-shadow: none;
    background-color: transparent;
}

.keyword-wrapper .form-control {
    width: calc(100% - 2rem);
    border: 0
}

.trail-search-btn .btn,
.search-btn .btn {
    width: 100px;
    height: 2.5rem;
    white-space: nowrap;
}

.clear-btn .btn {
    background: #fff;
    color: #013f34;
    height: 2.5rem;
    margin: 0 5px;
    transition: 0.1s all ease-in-out;
}

.clear-btn .btn:hover {
    color: #ffffff;
    background-color: #013f34;
    border-color: #013f34;
}

.rating.filter {
    margin: 0;
}

.rating.filter li {
    font-size: 0.6rem;
    margin: 0;
}

.review:after,
.result-link:after {
    content: " ";
    width: calc(100% - 2rem);
    height: 1px;
    background-color: rgba(1, 63, 52, 0.39);
    display: block;
    bottom: 0.5rem;
    position: absolute;
}

.review:last-child:after,
.result-link:last-child:after,
.review:nth-last-child(2):after,
.result-link:nth-last-child(2):after {
    display: none
}

.selected-tag {
    display: inline-block;
    background: #028C7E;
    color: #fff;
    text-align: center;
    width: 1.4rem;
    height: 1.4rem;
    border-radius: 100%;
    line-height: 1.4rem;
    font-size: 0.8rem;
}

.grid-view-opt {
    display: inline-block;
    width: 1.4rem;
    height: 1.4rem;
    line-height: 1.4rem;
    font-size: 1.4rem;
    margin-right: 0.2rem;
    color: #f1f1f1;
}

.grid-view-opt.active {
    color: #F2A71D;
}

.trail-info-content .far,
.trail-info-content .fad {
    font-size: 1.2rem;
}

#filterbar {
    z-index: 7;
}

#filterbar.sticky {
    position: fixed;
    left: 0;
    width: 100%;
    height: auto;
}

#fp-filter {
    position: fixed;
    overflow: scroll;
    width: 100%;
    height: 0;
    top: 0;
    left: 0;
    /*    transition: all 0.5s;*/
    -webkit-transition: all 1s cubic-bezier(0.8, 0, 0.2, 1);
    -o-transition: all 1s cubic-bezier(0.8, 0, 0.2, 1);
    transition: all 1s cubic-bezier(0.8, 0, 0.2, 1);
    -webkit-backface-visibility: hidden;
    z-index: 9999;
}

#fp-filter:before {
    -webkit-transition: all 1.5s cubic-bezier(0.8, 0, 0.2, 1);
    -o-transition: all 1.5s cubic-bezier(0.8, 0, 0.2, 1);
    transition: all 1.5s cubic-bezier(0.8, 0, 0.2, 1);
    -webkit-backface-visibility: hidden;
    position: absolute;
    z-index: 2;
    content: '';
    bottom: 0;
    right: 0;
    left: 0;
    height: 100%;
}

.sub-filter-header {
    z-index: 10;
}

.sub-filter-header.active,
.sub-filter-bottom.active {
    display: flex !important;
}

#fp-filter.active:before {
    height: 0%;
}

#fp-filter.active {

    height: 100vh;
}

.sub-filter {
    margin-top: 3.5rem;
    overflow: scroll;
}

#fp-filter ul {
    list-style: none;
    margin: 0;
    padding: 0 1rem;
}

.close-img {
    background-image: url(../img/common/error.svg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    padding-bottom: 100%;
}

#close-btn {
    font-size: 2rem;
    line-height: 0;
    cursor: pointer;
}

#fp-filter .sub-filter h3,
#fp-filter .sub-filter legend{
    margin-bottom: 1rem;
    line-height: 2;
    border-bottom: 5px solid #dee2e6;
}

.sub-filter-d:last-child {
    margin-bottom: 6rem !important;
}

.comment btn {
    width: 125px;
    position: relative;
}


.grid {
    height: 75%;
    width: 100%;
}

.grid-item {
    float: left;
    width: 25%;
    position: relative
}

.grid:after {
    content: '';
    display: block;
    clear: both;
}



#gallery .fill-bg,
#trail-transportation .fill-bg {
    cursor: zoom-in;
    -webkit-transition: all 300ms ease-out;
    -moz-transition: all 300ms ease-out;
    -o-transition: all 300ms ease-out;
    -ms-transition: all 300ms ease-out;
    transition: all 300ms ease-out;
}

#trail-transportation .carousel .fill-bg {
    padding-bottom: 18%
}

#gallery .grid-item h5,
#trail-transportation h5,
#gallery .grid-item p,
#transportation-swiper p {
    /* position: absolute;
    bottom: 0;
    left: 5%; */
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    text-align: left;
    display: block;
    background: rgba(0,0,0,0.8);
    padding: 3%;
    margin: 0;
}

#trail-transportation .grid .fapp {
    margin-bottom: 1rem;
}

#trail-transportation .grid .fapp:last-child {
    margin-bottom: 0;
}

.fancybox-title{
    background: #013F34;
    color: #fff;
    padding: 0.5rem 1rem;
    line-height: 2;
}

.fancybox-skin {
    background:transparent;
    padding: 0!important;
    border-top: 1px solid #dee2e6;
}

.fancybox-overlay {
    z-index: 8000;
}

.fancybox-nav span {
    background-size: 125%;
    background-repeat: no-repeat;
}
.fancybox-close{
    opacity: 1;
    text-shadow: none;
    top: -39px;
    right: 15px;
    width: 55px;
    height: 55px;
    background-color: rgba(1, 63, 52, 1);
    border-color: rgba(1, 63, 52, 1);
    color: #fff;
    padding: 1rem 1rem;
    margin: -1rem -1rem -1rem auto;
    background-image: none;
}

.fancybox-close:before, #map-modal #close-map-btn:before{
    content: "";
    background-image: url(../img/common/close.png);
    background-size: contain;
    background-position: center;
    width: 20px;
    height: 20px;
    display: block;
    position: absolute;
    top: 30%;
    left: 30%;
}



.map-bg {
    width: 100px;
    height: 40px;
    padding: 5px;
    border: 1px solid #607134;
}

.map-icons {
    background-image: url(/public/static/assets/img/common/icons/map.png);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    width: 30px;
    padding-bottom: 30px;
    display: inline-block;
    border-bottom: 1px solid #dee2e6;
}

.table-hover tbody tr:hover .map-icons {
    background-image: url(/public/static/assets/img/common/icons/map-white.png);
}

.map-bg:hover {
    box-shadow: 5px 5px 0px #fff;
    transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
}

/*


 /*
.others-section { padding:0; }
 .others-list { margin:0; padding:0; list-style: none; }
 .others-list .others-item { 
   height: 180px; 
   display: none;
   -ms-flex-direction: row;
   flex-direction: row;
   -ms-flex-pack: center;
   justify-content: center;
   -ms-flex-align: center;
   align-items: center;
 }
 .others-list .others-item.active { display:flex; }
 .others-list img { width:auto; height:50px; margin:1rem; border:0; }
#others-carousel .carousel-indicators { bottom:-3rem; }
*/

/*
 * others section
 */
#list-view h1, #grid-view h1{
    font-size: 1.75rem;
}
#list-view h1:after, #grid-view h1:after{
    display: none;
}
#list-view p.region, #grid-view p.region,
.trail-section .trail-rating h2 {
    font-size: 1.25rem;
    font-weight: 700;
}
.others-list {
    display: inline-block;
    white-space: nowrap;
}

.others-list img,
.footer-list img {
    display: inline-block;
    margin: 0rem;
    height: 60px;
}

#fatal-detail ol{
    list-style: none;
    padding-left: 0;
}
#fatal-detail .fatal-detail-img{
    background-position: center;
    background-repeat: no-repeat;
    background-size:cover;
    width: 100%;
    padding-bottom: 100%;
}
#fatal-detail .fatal_map_pin{
    position:absolute;
    width:30px;
    height:30px;
    /* border: 2px solid #164417; */
    border-radius: 50%;
    display: block;
}

/*
 * notice
 */

.notice-content img { width:100%!important; height:auto!important; max-width: 600px!important;}
#qr #audioplayer{
    width: 100%;
    max-width: 500px;
    height: 4rem;
    background-color: #f2ecdc;
}

#qr #pButton{
    height: 60px;
    width: 60px;
    border: none;
    background-size: 50% 50%;
    background-repeat: no-repeat;
    background-position: center;
    outline: none;
    padding: 0;
}

#qr .play{background: url('../img/common/play.png') ;}
#qr .pause{background: url('../img/common/pause.png') ;}

#qr #timeline{
    width: 80%;
    height: 1.2rem;
    margin-right: 1rem;
    border-radius: 1rem;
    background: rgb(216, 205, 173);

}
#qr playhead{
    width: 18px;
    height: 18px;
    border-radius: 50%;
    margin-top: 1px;
    background: rgb(197, 60, 0);

}


/*
 * footer
 */
footer {
    /*    padding: 80px 0 0px;*/
    margin: 0;
}

.app {
    width: 23%;
    height: 60px;
    min-width: 5rem;
    display: flex;
}

.appstore,
.huaweiappgallery ,
.app-icon,
.googleplay {
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    padding-bottom: 39%;
    width: 100%;
    display: inline-block;

}

.googleplay {
    background-image: url(../img/common/google_play.png);
}

.app-icon {
    /*    background-image: url(../img/common/app-icon.jpg);*/
    width: 60px;
    padding-bottom: 0;
}

.appstore {
    background-image: url(../img/common/app_store.png);
}

.huaweiappgallery {
    background-image: url(../img/common/huawei_appgallery.png);
}

.social-item {
    display: inline-block;
    margin: 0.2rem;
    width: 24px;
    height: 24px;
    border: 0;
    cursor: pointer;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
    cursor: pointer;
    transition: 0.5s;
    -webkit-transition: 0.5s;
}

.social-item:hover {
    opacity: 0.8;
}

.social-item img {
    height: 100%;
    width: auto;
}

.social-youtube {
    background-image: url(../img/common/icons/social-youtube.png);
}

.social-youtube.white {
    background-image: url(../img/common/icons/social-youtube-w.png);
}

.social-facebook {
    background-image: url(../img/common/icons/social-fb.png);
}

.social-facebook.white {
    background-image: url(../img/common/icons/social-fb-w.png);
}
#others-section h1{
    font-size: 1.75rem;
}

footer h1 {
    /*    font-size: 1.4rem;*/
}

footer p {
    font-size: 0.8rem;
}

footer ul li,
footer ol li,
footer a {
    /*    font-size: 0.8rem;*/
    display: inline-block;
}

.footer-list,
.related-list {
    list-style: none;
    padding: 0;
}

.footer-list li {
    padding: .2rem 0;
    margin: 0 0.2rem;
    display: inline-block;
}

.footer-bottom-list {
    flex-grow: 1;
    flex-basis: 0;
    margin: 0.2rem;
}

.credits {
    font-size: 0.8rem;
    line-height: 1.2rem;
}

.footer-bg {
    width: 100%;
    padding-bottom: 36%;
    background: url(../img/common/footer-bg-02.jpg) no-repeat center bottom / cover;
}

.footer-bottom-icon a {
    border: 0;
    margin: 0 0.5rem;
}

.footer-bottom-icon a img {
    height: 30px;
    width: auto;
}

.social-area {
    justify-content: flex-end;
}

#return-to-top {
    position: fixed;
    bottom: 2rem;
    right: 1.5rem;
    width: 2.5rem;
    height: 2.5rem;
    display: block;
    text-decoration: none;
    display: none;
    -webkit-transition: all 0.3s linear;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    z-index: 99;
}

#return-to-top i {
    color: #fff;
    top: 0;
    margin: 0;
    position: relative;
    font-size: 2rem;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#return-to-top:hover i {
    color: #fff;
    top: -5px;
    left: 0px;
}



ul#buttons li {
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    box-sizing: border-box;
    color: #fff;
    border-radius: 12px;
    position: relative;
    overflow: hidden;
    transition: .5s;
    box-shadow: 0px 8px 16px -6px,
        0px 0px 16px -6px;
    display: inline-block;
}

ul#buttons li a {
    display: block;
    widows: 100%;
    height: 100%;
    font-size: 1.25em;
    background: transparent;
    transition: .5s;
    animation: icon-out .5s forwards;
    animation-timing-function: cubic-bezier(0.5, -0.6, 1, 1);
}

ul#buttons i {
    margin: 0;
    left: 0px;
}

ul#buttons li:before {
    content: "";
    width: 90px;
    height: 90px;
    display: block;
    position: absolute;
    transform: rotate(-45deg) translate(-110%, -23px);
    z-index: -2;
    animation: back-out .5s forwards;
    animation-timing-function: cubic-bezier(0.5, -0.6, 1, 1);
}

ul#buttons li:hover a {
    animation: icon-in .5s forwards;
    animation-timing-function: cubic-bezier(0, 0, 0.4, 1.6);
}

ul#buttons li:hover:before {
    animation: back-in .5s forwards;
    animation-timing-function: cubic-bezier(0, 0, 0.4, 1.6);
}

@keyframes back-in {
    0% {
        transform: rotate(-45deg) translate(-110%, -23px);
    }

    80% {
        transform: rotate(-45deg) translate(5%, -23px);
    }

    100% {
        transform: rotate(-45deg) translate(0%, -23px);
    }
}

@keyframes back-out {
    0% {
        transform: rotate(-45deg) translate(0%, -23px);
    }

    20% {
        transform: rotate(-45deg) translate(5%, -23px);
    }

    100% {
        transform: rotate(-45deg) translate(-110%, -23px);
    }
}

@keyframes icon-in {
    0% {
        font-size: 1.25em;
    }

    80% {
        color: #fff;
        font-size: 1.5em;
    }

    100% {
        color: #fff;
        font-size: 1.35em;
    }
}

@keyframes icon-out {
    0% {
        color: #fff;
        font-size: 1.35em;
    }

    20% {
        color: #fff;
        font-size: 1.5em;
    }

    100% {
        font-size: 1.25em;
    }
}

/*
  * element styles
  */
.btn {
    border-radius: 0;
}

hr {
    border: 0;
    border-bottom: 1px solid #cecdc9;
    margin: 70px auto;
    padding: 0;
}

.modal {
    z-index: 9999;
}

.modal-content {
    border: 0;
    border-radius: 0;
}
#map-modal #close-map-btn{
    width: 55px;
    height: 55px;
    background-color: rgba(1, 63, 52, 1);
    border-color: rgba(1, 63, 52, 1);
    position: relative;
}

a.view-more {
    text-transform: uppercase;
    font-weight: 600;
}

a.view-more:hover {
    text-decoration: none;
}

.header-no {
    font-size: 200%;
    display: inline-block;
    margin-right: 2rem;
    font-weight: 700;
}

.ratio4-3 {
    width: 100%;
    padding-bottom: 75%;
}

.ratio16-9 {
    width: 100%;
    padding-bottom: 56.25%;
}

.checkbox-ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.checkbox-ul li {
    /*
    flex-basis: 25%;
    flex-grow: 1;
    */
}

.checkbox-ul li:before {
    content: "";
    display: inline-block;
    width: 1rem;
    height: 1rem;
    margin-right: 0.5rem;
    border: 1px solid #000;
}

.rating {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    align-items: center;
    align-self: center;
    margin-bottom: 0.5rem;
    padding: 0;
}

.ratingstar {
    /*    width: 20%;*/
}

.rating ul,
.ratingstar ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    align-items: center;
    align-self: center;
}

.star li,
.star p,
.display small{
    font-size: 0.7rem;
}

.rating li,
.trail-section .ratingstar li,
.heart .display {
    display: inline-block;
    margin-right: 0.5rem;
    font-size: 1rem;
}

.rating.lg li {
    font-size: 1.3rem;
}

.rating.sm li {
    font-size: 0.8rem;
}

.rating-icon.bg {
    padding: 1.5rem;
    border-radius: 100%;
    background-position: center center;
    background-size: contain;
    background-repeat: no-repeat;
    background-size: contain;
    width: 100%;
}

.rating-icon.difficulty {
    background-image: url(../img/common/icons/rating/difficulty.png)
}

.rating-icon.duration {
    background-image: url(../img/common/icons/rating/duration.png)
}

.rating-icon.length {
    background-image: url(../img/common/icons/rating/length.png)
}

.rating-icon.surface {
    background-image: url(../img/common/icons/rating/surface.png)
}

.rating-icon.gradient {
    background-image: url(../img/common/icons/rating/gradient.png)
}

.rating-icon.comment {
    background-image: url(../img/common/icons/rating/comment.png)
}

.z-3 {
    z-index: 3 !important;
}

.mh-300 {
    min-height: 300px;
}

.mh-400 {
    min-height: 400px;
}

.sticky-c1,
.sticky-c2 {
    margin: 3rem 0;
    padding: 2rem;
}

.view-info {
    cursor: pointer;
}

.access {
    position: absolute; left:0; top:-9999px; width:1px; height:1px; overflow: hidden;
}