/* ------- Minimal Reset ------- */
html, body, p, ol, ul, li, hr, h1, h2, h3, h4, h5, h6 { margin: 0; padding: 0; }
h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: 400; font-family: inherit; color: #353536; }
ol, ul { list-style: none; }
button, input, select, textarea { margin: 0; font: inherit; color: inherit; }
button { background: none; border: none; padding: 0; cursor: pointer; }
html { box-sizing: border-box; }
*, *::before, *::after { box-sizing: inherit; }
img, video { display: block; height: auto; max-width: 100%; }
table { border-collapse: collapse; }
td, th { padding: 0; text-align: left; font-weight: 400; }
a { color: inherit; text-decoration: none; }


/* ------------------------------ */
/*             Global             */
/* ------------------------------ */
html { scroll-behavior: smooth; }
body {
  font-family: 'Noto Sans TC', 'Century Gothic' , 'PingFang TC', 'Helvetica Neue', 'Microsoft YaHei', 'Roboto', system-ui, -apple-system, sans-serif;
  color: #353536;
  font-size: 1rem;
  position: relative;
  background: #fcfcfc;
  position: relative;
  -webkit-font-smoothing: antialiased;
}

a { transition: all .2s; }

a:hover {
  color: inherit;
  text-decoration: none;
}

main { display: block; }

.uk-container-small { width: 99%; }

.title-icon-left { transform: scale(1, -1); }
.title-icon-right { transform: scale(-1, -1); }

/* ------------------------------ */
/*             Header             */
/* ------------------------------ */
header {
  position: relative; 
  padding: 16px 16px; 
  /* margin-bottom: 24px; */
  box-shadow: 0 2px 24px rgba(42, 42, 43, .25);
  background: #fff;
}


/* ------------------------------ */
/*             Hero             */
/* ------------------------------ */
.hero-wrapper {
  max-height: 380px;
  overflow: hidden;
}

.hero-banner { width: 100%; }

/* ------------------------------ */
/*             Nav             */
/* ------------------------------ */
.section-nav { padding: 16px 6px; }

nav.uk-child-width-1-4 > * { padding: 6px; }

.nav-icon { 
  margin-right: 8px; 
  font-size: 24px;
  color: rgba(42, 42, 43, .5);
  color: #f68a22;
}

.nav-item, 
.nav-item2 {
  background: #fff;
  font-size: 1.2rem;
  font-weight: 500;
  padding: 8px 24px;
  border-radius: 7px;
  box-shadow: 0 0 1px rgba(42, 42, 43, .1), 0 1px 1px 2px rgba(42, 42, 43, .05);
}

.nav-item:hover {
  color: #e86c1e;
  transform: scale(.97);
}

/* ------------------------------ */
/*            Tholiday            */
/* ------------------------------ */
.section-tholiday {
  position: relative;
  padding: 48px 16px;
  /* background: linear-gradient(109deg, #f9dfe7 0%, #e8e4f2 105%); */
  background: linear-gradient(107deg, #E6F1F7 11%, #E7F2E4 97%);
  border-radius: 21px;
  margin: 0 56px 32px;
}

.tholiday-logo {
  position: absolute;
  top: -56px;
  left: 50%;
  transform: translateX(-50%);
  background-color: #fcfcfc;
  
  padding: 8px 24px 8px 48px;
  border-radius: 51px;
}

.promo-flash,
.promo-halfPrice { padding: 40px 24px 20px; }

.promo-title-1 { margin-bottom: 12px; }

.promo-title-1 span {
  font-size: 2.25rem;
  font-weight: 700;
  margin: 0 12px;
  letter-spacing: -1px;
}

.promo-meta-1 { margin-bottom: 24px; }
.promo-meta-1 span { font-size: 1rem; }
.promo-meta-1 .sale-dates { margin: 0px 10px; }
.promo-meta-1 .go-dates { margin: 0px 10px; }
.promo-card {
  background: #fff;
  position: relative;
  width: 90%;
}

.promo-card .promo-cover {
  position: relative;
  background-position: 50% 50%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  height: 100%;
  min-height: 160px;
}

/*.promo-cover.cover-flash { background-image: url(./img/tholiday4.jpg); }*/
.promo-cover.cover-flash { background-image: url("img/tCar.jpg");background-position: right;  }
.promo-cover.cover-halfPrice { background-image: url("img/tHotel.jpg");background-position: left; }
.promo-cover.cover-halfPrice2 { background-image: url("img/tMeal.jpg"); background-position: left; }

.promo-card .flash-badge,
.promo-card .flash-badge-extend {
  position: absolute;
  z-index: 99;
}

 .promo-card .flash-badge {
  top: -45px;
  left: -48px;
  width: 186px;
  
  /* TEMP: */
  /* display: none; */
}

.promo-card .flash-badge-extend {
  top: -70px;
  left: -40px;
  width: 220px;

  /* TEMP: */
  display: none;
}

.promo-content {     padding: 48px 16px 30px 16px;}

.promo-content .box { margin-bottom:0px; }

.promo-content .text-light { font-size: 1.5rem; letter-spacing: 2px; line-height: 120%; }
.promo-content .text-bold {font-size: 1.75rem; letter-spacing: 2px; font-weight: 700;}

.special-tgo { color: #c43d66; font-size: 1.125rem; }

.promo-content .special-title { 
  position: relative;
  border-top: 1px solid; 
  border-bottom: 1px solid; 
  padding: 5px 20px; 
  font-weight: 500;
	margin: 0px;
	word-break: keep-all;
}

/* ------- Buy Btn ------- */
.btn-buy,
.btn-more {
  color: #fff;
  padding: 12px 64px;
  background-image: linear-gradient(92.79deg, #e86c1e, #edae26, #edae26, #e86c1e);
  border-radius: 50px;
  font-size: 1.125rem;
  font-weight: 500;
  box-shadow: 0px 4px 16px  rgba(223, 113, 36, .5);
  margin-bottom: 18px;

  background-size:300% 100%;
  transition: all cubic-bezier(.4,0,.2,1) .3s;
}
.btn-buy:hover{
  color: #fff;
  background-position: 100% 0;
}
.btn-buy:hover,
.btn-more:hover {
  color: #fff;
  background-position: 100% 0;
}
.btn-buy .text-go {
  transform: skewX(-15deg);
  /* font-family: 'Lato', sans-serif; */
  display: block;
  font-size: 1.5rem;
  font-weight: 900;
}

.btn-viewNotice { font-size: .825rem;cursor: default;}

.btn-more,
.preview { margin-bottom: 0; }

/* ------- Flash Ended ------- */
.flash-ended {
  width: 90%;
  margin-top: 80px;
  padding-top: 15px;
  border-top: 1px solid rgba(42, 42, 43, .1);
}

.flash-ended .box {
  font-size: .93rem;
  line-height: 130%;
}

.flash-ended .btn-viewNotice {
  /* background: rgba(255, 255, 255, .35); */
  padding: 6px 12px;
  border-radius: 25px;
  font-size: .8rem;
  /* color: #5d5d5f; */
  color: #7F7F82;
}

/* ------- Modal ------- */
.uk-modal { background: rgba(0, 0, 0, .8);}

.uk-modal-header {
  border-bottom: none;
  background: #fff;
  color: #e86b1e;
  box-shadow: 0 1px 12px rgba(42, 42, 43, .1);
  border-top-right-radius: 7px;
  border-top-left-radius: 7px;
}

.uk-modal-container .uk-modal-dialog {
  border-radius: 7px;
  width: 960px;
}

.modal-heading {
  font-size: 1.35rem;
  font-weight: 700;
  margin-bottom: 48px;
  line-height: 130%;
}

.notice-modal .box { margin-bottom: 24px; }

.notice-modal .box-content { 
  color: #5d5d5f;
  font-size: .925rem;
}

.notice-modal .box-title {
  font-size: 1rem;
  font-weight: 500;
  border-bottom: 1px solid #d4d7d8;
  padding-bottom: 4px;
  margin-bottom: 8px;
}

.notice-modal ol { 
  list-style-type: decimal;
  padding-left: 20px;
}

.notice-modal ul {
  list-style-type: disc;
  padding-left: 20px;
}

.notice-modal ul  ul { list-style-type: circle; }

.notice-modal a {
  color: #e86c1e;
  font-weight: 500;
}

.notice-modal .highlight {
  font-weight: 700;
  border-bottom: 1px solid;
}

.notice-modal .btn-close {
  position: absolute;
  left: 50%;
  bottom: -40px;
  transform: translateX(-50%);
  color: #fff;
  line-height: 120%;
}

.btn-close .icon-close {
  margin-right: 8px;
  font-size: 1rem;
}

.notice-modal .btn-close:focus { outline: none; }

/* ------------------------------ */
/*         Section: Combo         */
/* ------------------------------ */
.section-combo {
  /*background: linear-gradient(109deg, #F2DDD8 0%, #FCF2E3 105%);*/

  padding: 60px 16px;
  margin: 0 56px 32px;
  border-radius: 21px;
}

.promo-title-2 { margin: 12px; }

.promo-title-2 span {
  font-size: 2rem;
  font-weight: 700;
  margin: 0 4px;
  letter-spacing: -1px;
}

.promo-title-2 .icon-diamond  {
  font-size: 1rem;
  transform: rotate(45deg);
}

.section-combo .promo-card,
.section-membership .promo-card {
  padding: 56px 64px;
  border-radius: 0;
  box-shadow: none;
}

.section-membership .promo-card { padding: 0; background: #fff; }

.section-membership .promo-card-inner { 
  padding: 48px 56px; 
  background: #fff;
}

.section-combo .promo-card { width: 860px;margin-bottom: 20px;}
.section-membership .promo-card { width: 800px;}

.section-combo .promo-content { padding: 0; }

.promo-card .description {
  font-size: 1.75rem;
  line-height: 130%;
  letter-spacing: 2px;
  margin-bottom: 12px;
}

.promo-card .description .highlight {
  font-weight: 700;
  color: #e86c1e;
}

.text-small {
  font-size: .93rem;
  letter-spacing: normal;
}

.text-small.xs { font-size: .825rem; color:#8e8e8f; }

.promo-meta-2 { 
  margin-bottom: 36px; 
  color: rgba(42, 42, 43, .8);
}

.promo-meta-2 .go-dates { margin-left: 16px; }

.bonus {
  /*color: #e86c1e;*/
color: #2c99c3;
  font-size: 1.125rem;
  font-weight: 500;
  border: 1px solid;
  padding: 8px 16px;
  margin:20px;
}

.section-combo .btn-buy { margin-bottom: 0; margin:0px auto;}
.section-combo .btn-viewNotice { margin-left: 16px; }
.section-tholiday .btn-viewNotice{color: #d8ac93;cursor: default;}

.section-combo .promo-thumbnail {
  position: relative;
  border-radius: 11px;
  box-shadow: 8px 12px 24px rgba(42, 42, 43, .15);
  width: 360px;
  height: 240px;
  overflow: hidden;
}

.section-combo .promo-thumbnail img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
/*
.promo-hotels,
.promo-ota,
.promo-trans { padding: 48px 0; }*/

/* ------------------------------ */
/*       Section: Membership      */
/* ------------------------------ */
.section-membership {
  /*background: #e7f0f3;*/
  /*background:  linear-gradient(253deg, #CBE6DE -2%, #EEF0E5 100%);;*/
  padding: 0px 16px;
  margin: 0 56px;
  border-radius: 21px;
}

.section-membership .promo-tgo {
  padding: 0;
}

.section-membership .promo-thumbnail img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.tgo-lable {
  /*line-height: 140%;*/
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0;
  background: #2c99c3;
  color: #fff;
  padding: 4.5px 64px;
  position: relative;
  vertical-align: text-bottom;
  margin-bottom: 16px;
}

.tgo-lable .lable-highlight {
  color: #fcf453;
  font-weight: 700;
  font-size: 1rem;
}

.tgo-lable:after {
  content: "";
  position: absolute;
  height: 0;
  width: 0;
  top: 0px;
  right: -17px;
  border-top: 18px solid #2c99c3;
  border-bottom: 18px solid #2c99c3;
  border-right: 17px solid transparent;
}

.tgo-lable:before {
  content: "";
  position: absolute;
  height: 0;
  width: 0;
  top: 0px;
  left: -17px;
  border-top: 18px solid #2c99c3;
  border-bottom: 18px solid #2c99c3;
  border-left: 17px solid transparent;
}

/* ------------------------------ */
/*       Section: Student      */
/* ------------------------------ */
.section-student { 
  padding: 32px 16px; 
  
  border-radius: 21px;
  /*background: linear-gradient(286deg, #FAF0F3 0%, #EDEBF2 100%);*/
}

.section-membership .promo-card,
.section-student .promo-card { 
  box-shadow: none; 
  padding: 0;
  width: auto;
  /*background: transparent;*/
  margin: 10px 0px 30px 0px;
  min-height: 350px;
  padding: 20px;box-shadow: 1px 1px 12px rgb(42 42 43 / 5%);
}
/*
.section-student .promo-student { padding: 0; }
*/
.section-membership .promo-thumbnail,
.section-student .promo-thumbnail {
  width: 480px;
  height: 300px;
  overflow: hidden;
  border-radius: 11px;
  margin: 0px 40px 0px 40px;
  /*box-shadow: 4px 8px 12px rgba(42, 42, 43, .1);*/
  position: relative;
}

.section-membership .promo-thumbnail { height: 280px; }

.promo-tgo img,
.promo-student img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.promo-tgo .description,
.promo-student .description { font-size: 1.75rem; }

.promo-student .promo-meta-2 { margin: 10px 0px 10px 0px; }

.promo-student .promo-content .special-tgo { width: 100%; }
.promo-student .promo-content .special-title { margin-bottom: 0; }

.promo-student .notice-text {
  font-size: .825rem;
  color: rgba(37, 54, 60, .7);
}
.promo-tgo .notice-text {
  font-size: .825rem;
  color: rgba(37, 54, 60, .7);
	margin-top: 16px;
}
.promo-student .btn-more { margin-bottom: 16px; }

.promo-tgo .promo-content,
.promo-student .promo-content { 
  width: 300px;
}


/* ------------------------------ */
/*         Section: Videos        */
/* ------------------------------ */
.section-videos { 
  background: linear-gradient(254deg, #DFDFE8 4%, #F2F5FA 100%);
  padding: 80px 24px 120px;
  margin: 32px 56px;
  border-radius: 21px;  
}

.section-videos .promo-title-2 { margin-bottom: 56px; }

.video-card {
  background: #fff;
  border-radius: 11px;
  overflow: hidden;
  max-width: 450px;
  box-shadow: 4px 12px 24px rgba(42, 42, 43, .15);
}

.video-card:nth-child(2) { margin-left: 32px; }

.video-cover { 
  position: relative; 
  width: 450px;

  /* TODO: */
  height: 260px;
  /* height: 195px; */

  overflow: hidden;
}

.video-cover img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.video-cover .img-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0,0,0,.35);
}

.video-cover .btn-play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: rgba(255, 255, 255, .8);
}

.video-cover .btn-play span { font-size: 5rem; }

.video-cover .btn-play:hover { color: rgba(255, 255, 255, .9); }

.video-content { padding: 12px 24px 16px; }

.video-title {
  font-size: 1.125rem;
  line-height: 140%;
  font-weight: 700;
  margin-bottom: 16px;
  min-height: 48px;
}

.video-description {
  position: relative;
  color: #e86c1e;
  font-weight: 500;
}

.video-description::before {
  position: absolute;
  display: block;
  content: "";
  width: 5px;
  height: 100%;
  background: #e86c1e;
  left: -24px;
  top: 50%;
  transform: translateY(-50%);
}

.video-card .btn-scroll {
  color: #e86c1e;
  border: 2px solid rgba(232, 108, 30, .4);
  border-radius: 25px;
  font-weight: 500;
  padding: 6px 24px;
  line-height: 120%;
  font-weight: 700;
  transition: all .2s;
}

.video-card .btn-scroll:hover { border-color: rgba(232, 108, 30, .6); }

/* ------------------------------ */
/*          To Top Btn            */
/* ------------------------------ */
.btn-toTop {
  position: fixed;
  display: none;
  bottom: 5%;
  right: 16px;
  background: rgba(0, 0, 0, .45);
  width: 65px;
  height: 65px;
  border-radius: 50%;
  color: #fff;
  box-shadow: 2px 12px 24px rgba(42, 42, 43, .25);
}

.icon-top { font-size: 2.25rem; }

.btn-toTop:hover {
  background: rgba(0, 0, 0, .75);
  color: #fff;
}

/* ------------------------------ */
/*             Footer             */
/* ------------------------------ */
footer { padding: 16px 10px;; font-size: .925rem; text-align: center;background-color: #605f5f;color: #FFF;}
footer>p{width: 100%;}
footer>p>a{color:#F7BA18; /*font-weight: 500;*/}
footer>p>a:hover{color: #F7BA18;}
/* ------------------------------ */
/*             RWD             */
/* ------------------------------ */
@media screen and (min-width: 1400px) {
  .section-tholiday,
  .section-combo,
  .section-membership,
  .section-student,
  .section-videos { width: 80%; }

  .section-tholiday{ margin: 0 auto 64px; }
  .section-combo { margin: 0 auto 64px; }
  .section-membership { margin: 0px auto; }
  .section-student { margin:0px auto; }
  .section-videos { margin: 64px auto 0;  }

  .hero-wrapper { max-height: none; }
  .section-nav { }
}


@media screen and (max-width: 1200px) {

  .promo-card .flash-badge {
    width: 156px;
    top: -35px;
  }

  .promo-card .flash-badge-extend {
    top: -50px;
    left: -50px;
    width: 180px;
  }

  .uk-container { 
    padding: 0 ; 
    box-sizing: border-box;
  }

  .section-nav {  }
  .nav-item { font-size: .925rem; padding: 8px 12px; flex-direction: column; }
  .nav-icon { font-size: 1.25rem; margin-right: 0; }
  nav.uk-child-width-1-4 > * { padding: 4px; }

  .section-tholiday,
  .section-combo { margin: 0 16px 16px; }
  
  .section-combo{ padding: 60px 64px; }

  .section-student { margin: 16px 16px; }
  
  .section-membership,
  .section-videos { margin: 16px 16px; }

  .promo-card .promo-cover { min-height: 320px; }
  
  .promo-cover.cover-flash {
    background-image: url(img/tCar.jpg);
    background-position: right;
  }

  .promo-cover.cover-halfPrice {
    background-image: url(img/tHotel.jpg);
    background-position: bottom;
  }
 /* .promo-cover.cover-halfPrice2 {
    background-image: url(img/tHotel.jpg);
    background-position: 50% 10%;
  }  */
  .section-combo .promo-card,
  .section-membership .promo-card { 
    flex-direction: column; 
    width: 100%;
  }
  
  .section-combo .promo-card,
  .section-membership .promo-card-inner { padding: 56px 24px; } 
  
  .promo-hotels,
  .promo-ota, 
  .promo-trans, 
  .promo-tgo { padding: 0px; }
  
  .promo-title-1 { margin-bottom: 8px; }
  .promo-title-1 span { font-size: 1.75rem; }
  .promo-meta-1 { margin-bottom: 16px; text-align: center;}
  .promo-meta-1 span { font-size: 1rem; }
  .promo-content { padding: 32px; }
  .promo-content .box { margin-bottom: 0px; }
  .promo-content .text-light { font-size: 1.25rem; }
  .promo-content .text-bold { font-size: 1.75rem; }
  .special-tgo { font-size: 1rem; }


  .promo-title-2 { margin-bottom: 0px; }
  .promo-title-2 span { font-size: 2rem; margin: 0 4px; }
  .promo-card .description { font-size: 1.75rem; line-height: 130%; }

  .bonus { font-size: 1rem; }

  .promo-tgo .text-small,
  .promo-hotels .text-small { display: block; }

  .video-group,
  .promo-student .promo-card,
  .section-membership .promo-card-inner { flex-direction: column; }

  .section-combo .promo-thumbnail,
  .section-membership .promo-thumbnail { margin-bottom: 32px; }
  
  .promo-student .promo-content { padding: 32px 0 0; }
  
  .section-combo .promo-thumbnail { width: 320px; height: 180px; }
  .section-combo .promo-thumbnail img { width: 100%;}
  
  .section-membership .promo-thumbnail { width: 180px; height: 180px; }

  .promo-tgo .promo-thumbnail,
  .promo-student .promo-thumbnail { margin-right: 0; width: 360px; height: 240px; border-radius: 11px; }

  .promo-tgo .promo-thumbnail { height: 220px; margin-bottom: 12px; }
  
  .section-combo .promo-content,
  .section-membership .promo-content { align-items: center; }

  .promo-card .description { text-align: center; }

  .promo-hotels .btn-wrapper { flex-direction: column; }
  .section-combo .btn-viewNotice { margin: 5px 0 0;}

  .video-card:nth-child(2) { margin: 32px 0 0; }

  .promo-tgo .promo-content, .promo-student .promo-content { width: auto; }
}

@media screen and (max-width: 640px) {

  .promo-card .flash-badge-extend {
    top: -30px;
    left: -35px;
  }

  .promo-card .promo-cover {  min-height: 280px; }
  
  .promo-cover.cover-flash,
  .promo-cover.cover-halfPrice { background-position: 100% 0%; }

  .uk-modal-header { padding: 12px 24px; }
  .modal-heading { font-size: 1.15rem; }
  .uk-modal-body { padding: 24px 16px; }
  .notice-modal .box-title { font-size: .925rem; padding-bottom: 2px; margin-bottom: 4px;}
  .notice-modal .box-content { font-size: .875rem; }
  .notice-modal .box { margin-bottom: 16px; }

  header { padding: 16px 16px; }
  header img { width: 120px; }

  .section-nav {  }
  .nav-item .text-2 { display: block;}
  .nav-item { font-size: .875rem; font-weight: 400; line-height: 130%; }
  .nav-icon { margin-right: 0; margin-bottom: 4px; }

  .promo-flash, .promo-halfPrice { padding: 32px 24px 16px; }

  .promo-card,
  .flash-ended { width: 100%; }

  .promo-meta-1 span { font-size: .925rem; }

  .promo-hotels, .promo-ota, .promo-trans, .promo-tgo { padding: 24px 0; }

  .flash-ended .box { 
    flex-direction: column; 
    width: 100%;
  }

  .flash-ended .btn-viewNotice { margin: 12px 0 0;}

  .promo-meta-2 { margin-bottom: 24px; }

  .promo-card .description { letter-spacing: 2px;  margin-bottom: 12px; }

  .section-membership,
  .section-combo { padding: 32px 24px; }

  .section-combo .promo-card, 
  .section-membership .promo-card-inner { padding: 32px 24px; }

  /* Hotels */
  .bonus { margin: 10px; }

  /* Student */
  .section-student .promo-card { width: 100%; }
  .promo-student .promo-content { padding: 24px 0 0;}
  .promo-student .promo-content .special-tgo { margin-bottom: 24px; }

  /* Video */
  .section-videos .promo-title-2 { margin-bottom: 32px; }
  
  .video-detail {
    flex-direction: column;
    align-items: start;
  }

  .video-title { margin-bottom: 8px; }
  .video-description { margin-bottom: 16px; }
  .video-description::before { display: none; }
  
  .video-card .btn-scroll { 
    width: calc(100% - 4px);
    padding: 8px 0;
  }
  
}

@media screen and (max-width: 480px) {

  .promo-card .flash-badge { 
    width: 130px;
    top: -26px; 
    left: -36px;
  }

  .promo-card .flash-badge-extend {
    top: -25px;
    left: -30px;
    width: 160px;
  }

  .promo-card .promo-cover { min-height: 240px; }

  nav.uk-child-width-1-4\@m > * { padding: 2px; }

  .nav-item {
    font-size: .825rem;
    font-weight: 400;
    padding: 8px 4px;
  }

  .section-tholiday { padding: 48px 12px; }
  
  .tholiday-wrapper { border-radius: 11px; }
  
  .tholiday-logo { 
    top: -2.5%;
    padding: 6px 16px 6px 32px;
  }

  .promo-flash, .promo-halfPrice { padding: 40px 16px 20px; }
  .promo-flash { padding-top: 32px; }

  .promo-title-1 span,
  .promo-title-2 span { font-size: 1.5rem; text-align: center;}

  .promo-card .description { 
    font-size: 1.35rem; 
    line-height: 140%; 
    letter-spacing: 1px; 
  }

  .promo-title-1 span { margin: 0 12px; }
  
  .promo-meta-1 span,
  .promo-meta-2 { font-size: .875rem; }

  .promo-meta-2 .sale-dates { margin-bottom: 2px; margin-right: 12px; }

  .btn-buy .text-go { font-size: 1.25rem; }

  .section-tholiday .title-icon-left, 
  .section-tholiday .title-icon-right { width: 22px; } 

  .promo-content .box { margin-bottom: 12px; }
  .promo-content .text-light { font-size: 1.15rem; }
  .promo-content .text-bold { font-size: 1.3rem; }

  .special-tgo { font-size: .925rem; }

  .promo-content { padding: 24px 0px; }

  .section-combo .promo-thumbnail,
  .section-membership .promo-thumbnail,
  .promo-student .promo-thumbnail { width: 280px; height: 140px; }
	.section-membership .promo-thumbnail, .section-student .promo-thumbnail {margin:20px;}
  .section-membership .promo-thumbnail { margin-bottom: 0; }
  
  .section-membership, .section-combo { padding: 32px 16px; }
  .section-membership, .section-combo { margin: 0 0 16px; }

  .tgo-lable { font-size: .925rem; /*padding: 4px 48px;*/}
  .tgo-lable .lable-highlight { font-size: 1.125rem; }

  .tgo-lable:before {
    left: -15px;
    border-top-width: 15px;
    border-bottom-width: 16px;
    border-left-width: 15px;
  }

  .tgo-lable:after {
    right: -15px;
    border-top-width: 15px;
    border-bottom-width: 16px;
    border-right-width: 15px;
  }

  .section-videos { margin: 0; }

  .bonus {
    font-size: .875rem;
    padding: 6px 12px;
  }

  .video-cover {
    width: auto;
    max-width: 450px;
    height: 180px;
  }

  .video-title { font-size: 1rem; font-weight: 500; }
  
  .video-description,
  .video-card .btn-scroll { font-size: .925rem; }

  .section-tholiday,
  .section-combo,
  .section-membership,
  .section-student,
  .section-videos { border-radius: 0; }
  
  .section-tholiday { margin: 0 0 16px; }
  .section-student { margin: 16px 0; }
  .section-videos { padding: 64px 24px; }

  .section-membership .promo-tgo,
/*  .section-student .promo-student { padding: 24px 0; }*/

  .video-cover .btn-play span { font-size: 4rem; }

}
