/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html, button, input, select, textarea {
  color: #222;
  scroll-behavior: smooth;
}

html {
  font-size: 1em;
  line-height: 1.4;
}

/*
     * Remove text-shadow in selection highlight: h5bp.com/i
     * These selection rule sets have to be separate.
     * Customize the background color to match your design.
     */

::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}

/*
     * A better looking default horizontal rule
     */

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

/*
     * Remove the gap between images, videos, audio and canvas and the bottom of
     * their containers: h5bp.com/i/440
     */

audio, canvas, img, video {
  vertical-align: middle;
}

/*
     * Remove default fieldset styles.
     */

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

/*
     * Allow only vertical resizing of textareas.
     */

textarea {
  resize: vertical;
}

/* ==========================================================================
       Browse Happy prompt
       ========================================================================== */

.notsupport {
  background: #ccc;
  color: #000;
  margin: .2em 0;
  padding: .2em 0;
}

/* ==========================================================================
       Author's custom styles
       ========================================================================== */

html, body {
  height: 100%;
  font-family: 'Barlow', sans-serif;
  color: #000;
}

.text-small {
  font-weight: normal
}

.text-link {
  color: #00aeef;
  font-weight: normal;
  display: block;
}

.text-link::hover {
  color: #5dd3ff;
}

.fitImg img {
  width: 100%;
  height: auto;
}

.ignorePadding {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

a {
  text-decoration: none;
  color: #fff;
}

.active a {
  color: #fff;
}

.button {
  border-radius: 25px;
  padding: 8px 20px;
  background: #1DAEEC;
  font-family: 'Barlow', sans-serif;
  font-size: 15px;
  line-height: 20px;
  font-weight: 500;
  color: #FFF;
  width: 200px;
  text-align: center;
  cursor: pointer;
  transition: .2s;
}

.button:hover {
  background: #63D4FD;
}

.buttonBlack {
  border-radius: 25px;
  border: solid 2px#3E3E3E;
  padding: 8px 20px;
  font-family: 'Barlow', sans-serif;
  font-size: 15px;
  line-height: 20px;
  font-weight: 500;
  width: 200px;
  text-align: center;
  cursor: pointer;
  transition: .2s;
}

.buttonWhite {
  border-radius: 25px;
  padding: 8px 20px;
  background: none;
  font-family: 'Barlow', sans-serif;
  font-size: 15px;
  line-height: 20px;
  font-weight: 500;
  color: #FFF;
  width: 200px;
  text-align: center;
  cursor: pointer;
  transition: .2s;
  border: #fff solid 1px;
}

.buttonWhite:hover {
  border: #ccc solid 1px;
}

.buttonLink {
  text-decoration: none;
}

.alignButtonCentre {
  margin: auto;
}

.roundButton {
  position: relative;
  background: #FFF;
  padding: 20px 55px;
  border-radius: 100px;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, .1);
  text-align: left;
  cursor: pointer;
}

.roundButton img {
  position: absolute;
  right: 30px;
  width: 28px;
}

#main {
  padding-top: 123px;
}

#wrapper {
  background: #fff;
  position: relative;
}

section {
  width: 100%;
  max-width: 1440px;
  margin: auto;
}

section a {
  color: #000;
  text-decoration: underline;
}

section a:hover {
  color: #000;
}

.sectionTitle {
  padding: 30px 0 30px;
}

.spaceBetween {
  margin: 50px auto;
}

.sectionGrey {
  background: #f9f9f9;
}

.sectionContent {
  text-align: center;
  padding: 50px 125px;
}

.sectionForm {}

.alignContentLeft {
  text-align: left;
}

.alignContentCenter {
  text-align: center;
}

.extraTop {
  padding-top: 60px;
}

.mainBanner {
  position: relative;
}

.mainBanner .content {
  position: absolute;
  top: 20%;
  left: 10%;
  text-align: left;
}

.digiBanner {
  position: relative;
}

.digiBanner .content {
  position: absolute;
  top: 25%;
  left: 10%;
  text-align: left;
  color: #fff;
}

.digiBanner .subHeader {
  margin: 5% 0;
}

.sabahBanner {
  position: relative;
  color: #fff;
}

.sabahBanner .content {
  position: absolute;
  top: 20%;
  left: 5%;
  text-align: left;
}

.sabahBanner .desc {
  margin: 5% 0;
}

.sabahBanner a {
  text-decoration: none;
}

.sectionMap {
  position: relative;
  width: 100%;
  background: url(../images/map.jpg) no-repeat;
  background-size: cover;
}

.sectionMap:before {
  content: "";
  display: block;
  padding-top: 40%;
}

.sectionMap .content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
}

.sectionMap .inner {
  position: relative;
  width: 800px;
  margin: 7% auto;
  background: #FFF;
  padding: 70px 70px 50px;
}

.sectionMap .contentSearch input {
  padding: 10px 20px;
  width: 100%;
}

.sectionMap .contentSearch .search {
  padding: 13px 20px;
  width: 20%;
  background: #0071da;
  border: none;
  color: white;
  text-decoration: none;
  display: inline-block;
  margin-left: -5px;
}

.sectionMap .error {
  color: #D90000;
  margin-top: 10px;
}

.addressLists {
  padding: 30px 0;
}

.addressLists ul {
  list-style: none;
  padding: 0;
  margin: 0;
  overflow: hidden;
}

.addressLists li {
  padding: 20px 0px;
  position: relative;
  border-bottom: 0.5px solid #ccc;
}

.addressLists li .text {
  width: 70%;
  text-align: left;
}

.addressLists .button {
  position: absolute;
  top: 20%;
  right: 30px;
}

.slider {
  position: relative;
  width: 100%;
}

.slider .btn {
  border-radius: 200px;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, .3);
  background: #fff;
  cursor: pointer;
}

.slider .sliderPrev {
  position: absolute;
  width: 50px;
  top: 100px;
  transform: scaleX(-1);
}

.slider .sliderNext {
  position: absolute;
  width: 50px;
  right: 0;
  top: 100px;
}

ul.slider {
  width: max-content;
}

.planLists {
  position: relative;
  margin: 30px auto 30px;
  width: 85%;
  overflow: hidden;
}

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

.planLists li {
  float: left;
  width: 320px;
  margin: 0 10px;
  text-align: left;
}

.whiteWrap {
  padding: 30px 12px;
  background: #FFF;
  border-radius: 10px;
}

.plan-additional-offers {
  background: #8BF2BE;
  padding: 5px 5px;
  border-radius: 0 0 10px 10px;
  text-align: center;
  width: 90%;
  margin: auto;
}

.planLists .planTable {
  position: relative;
  width: 100%;
  margin-top: 20px;
}

.planLists .planTable .left {
  width: 40%;
  text-align: left;
}

.planLists .planTable .right {
  width: 50%;
  text-align: right;
}

.planLists .planTable tbody, .planLists .planTable tr, .planLists .planTable td {
  border: none;
  padding: 10px 0;
  background: none;
}

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

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

.iconPlus {
  width: 60px;
  margin: 30px auto 0;
}

.planTerms li {
  display: inline-block;
  margin-right: 30px;
}

.viewPlan {
  cursor: pointer;
  color: #1CAFEC;
}

.planListsDesc ul {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-top: 20px;
}

.planListsDesc li {
  float: none;
  width: 100%;
  margin: 10px 0;
  padding: 0;
  background: none;
  border-radius: 0;
  box-shadow: none;
  text-align: left;
}

.formPlanLists {
  position: relative;
  margin: 30px auto 50px;
  width: 85%;
  overflow: hidden;
}

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

.formPlanLists li {
  position: relative;
  float: left;
  width: 320px;
  margin: 10px 10px;
  padding: 20px 12px;
  background: #FFF;
  border-radius: 10px;
  border: #333 solid 1px;
  text-align: left;
  cursor: pointer;
}

.formPlanLists .planTable {
  position: relative;
  width: 100%;
}

.formPlanLists .planTable .left {
  width: 40%;
  text-align: left;
  float: left;
}

.formPlanLists .planTable .right {
  width: 50%;
  text-align: right;
  float: right;
}

.formPlanLists .planTable tbody, .formPlanLists .planTable tr, .formPlanLists .planTable td {
  border: none;
  padding: 5px 0;
  background: none;
}

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

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

.formDigizenPlanLists {
  position: relative;
  margin: 30px auto 50px;
  width: 85%;
  overflow: hidden;
}

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

.formDigizenPlanLists li {
  position: relative;
  float: left;
  width: 430px;
  margin: 30px 10px;
  padding: 20px 12px;
  background: #FFF;
  border-radius: 10px;
  border: #333 solid 1px;
  text-align: left;
  cursor: pointer;
  min-height: 230px;
}

.formDigizenPlanLists .planTable {
  position: relative;
  width: 100%;
}

.formDigizenPlanLists .planTable .left {
  width: 40%;
  text-align: left;
  float: left;
}

.formDigizenPlanLists .planTable .right {
  width: 50%;
  text-align: right;
  float: right;
}

.formDigizenPlanLists .planTable tbody, .formDigizenPlanLists .planTable tr, .formDigizenPlanLists .planTable td {
  border: none;
  padding: 5px 0;
  background: none;
}

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

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

.yellow-label-for-plans {
  background-color: #ffe600;
  font-family: Barlow-Bold;
  padding: 7px 15px;
  text-align: right;
  border: 1px solid transparent;
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
  margin-right: 0px;
  font-size: 14px;
  line-height: 1.14;
  float: right;
  width: 200px;
  position: relative;
  top: -50px;
  right: 0;
}

.formPlanSelected {
  border: #1EAFED solid 1px !important;
}

.formPlanUnSelected {
  border: #1EAFED solid 1px !important;
}

.bluetick {
  position: absolute;
  top: 20px;
  right: 10px;
}

.formPlanUnSelected .bluetick {
  display: none;
}

/* plan promo img */
.promoImg {
  width: auto;
  height: auto;
}

@media (hover:hover) {
  .formPlanLists li:hover {
    border: #1EAFED solid 1px !important;
    opacity: 1;
  }
  .formPlanLists li:hover .bluetick {
    display: block;
  }

  .formDigizenPlanLists li:hover {
    border: #1EAFED solid 1px !important;
    opacity: 1;
  }
  .formDigizenPlanLists li:hover .bluetick {
    display: block;
  }
}

.sectionAllLists {
  position: relative;
  width: 100%;
  margin: 50px auto;
}

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

.sectionAllLists li {
  width: 23%;
  margin: 0 1%;
  float: left;
}

.sectionAllLists .icon {
  width: 90%;
  margin: auto;
  background: #ffe600;
  border-radius: 300px;
}

.sectionAllLists .title {
  margin: 50px 0 20px;
}

.sectionAllLists .desc {
  width: 80%;
  margin: auto;
}

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

.footerContent {
  position: relative;
  width: 90%;
  padding: 20px 0;
  margin: auto;
}

.footerContent .column {
  width: 48%;
  margin: 1%;
  float: left;
}

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

.fontGeneral {
  font-size: 15px;
}

.fontSectionTitle {
  font-size: 46px;
  font-weight: 800;
}

.fontSectionTY {
  font-size: 65px;
  line-height: 65px;
  font-weight: 800;
}

.fontSectionTYDesc {
  font-size: 20px;
  line-height: 35px;
}

.fontBannerHeader {
  font-size: 80px;
  line-height: 90px;
  font-weight: 800;
}

.fontBannerSubHeader {
  font-size: 16px;
}

.fontSabahBannerHeader {
  font-size: 80px;
  font-weight: 800;
}

.fontSabahBannerDesc {
  font-size: 15px;
  line-height: 25px;
}

.fontPlanName {
  font-size: 20px;
}

.fontPlanPrice {
  font-size: 30px;
  font-weight: 800;
}

.fontPlanPriceStrike {
  font-size: 20px;
  font-weight: 800;
}

.fontPlanLeft {
  font-size: 16px;
  font-weight: 800;
}

.fontPlanBlue {
  font-size: 15px;
  font-weight: 800;
  color: #1DAFEC;
}

.fontPlanRight {
  font-size: 18px;
}

.fontPlanDesc {
  font-size: 13px;
}

.fontAllListTitle {
  font-size: 25px;
  line-height: 35px;
  font-weight: 900;
  text-transform: uppercase;
}

.fontAllListDesc {
  font-size: 18px;
  line-height: 28px;
}

.fontRoundButton {
  font-size: 21px;
  font-weight: 500;
}

.fontAddressList {
  font-size: 20px;
}

.fontInput {
  font-size: 15px;
  font-family: 'Barlow', sans-serif;
}

.fontError {
  font-weight: 800;
}

/*form*/
.addressWrapper {
  max-width: 600px;
}

.addressWrapper .formRow {
  margin-top: 0;
}

.placeholder {
  color: #999;
}

.formRow {
  margin: 25px 0;
  clear: both;
  width: 100%;
}

.formRowLimit {
  max-width: 600px;
}

.formRow .labelName {
  display: block;
  margin: 5px 0;
}

.formRow input[type="text"], .formRow textarea, .formRow select {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 0 none;
  box-shadow: none;
  outline: 0 none;
  padding: 8px 20px;
  resize: none;
  border: #C8C8C8 solid 1px;
  border-radius: 25px;
  width: 100%;
  margin: 5px 0;
  width: 100%;
}

.formError .styledSelect, .formError textarea, .formError input[type="text"], .formError input[type="password"], .formError input[type="datetime"], .formError input[type="datetime-local"], .formError input[type="date"], .formError input[type="month"], .formError input[type="time"], .formError input[type="week"], .formError input[type="number"], .formError input[type="email"], .formError input[type="url"], .formError input[type="search"], .formError input[type="tel"], .formError input[type="color"], .formError .cbContainer .checkmark, .formError select, .formError .slider {
  border: #EF7576 solid 1px;
}

.formErrorMsg {
  color: #EF7576;
  display: none;
}

.formErrorMsg.formErrorMsg--topMargin {
  margin-top: 1em;
}

select {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: url(../images/arrow.svg) #fff no-repeat right;
  border: #C8C8C8 solid 1px;
  padding: 8px 20px;
  border-radius: 25px;
  width: 100%;
  margin: 5px 0;
}

.columnShort {
  width: 120px !important;
  margin-right: 0.5%;
  display: inline-block;
}

.columnShort-addr {
  width: 30% !important;
  margin-right: 2%;
  display: inline-block;
}

.columnLong {
  width: 100% !important;
  display: inline-block;
}

/* The container */

.cbContainer {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 12px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide the browser's default checkbox */

.cbContainer input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom checkbox */

.cbContainer .checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 25px;
  width: 25px;
  background-color: #fff;
  border-radius: 25px;
  border: #ccc solid 1px;
  transition: .2s;
}

/* When the checkbox is checked, add a blue background */

.cbContainer input:checked~.checkmark {
  background-color: #1DAFED;
  border: #1DAFED solid 1px;
}

/* Create the checkmark/indicator (hidden when not checked) */

.cbContainer .checkmark:after {
  content: "";
  position: absolute;
  display: block;
}

/* Show the checkmark when checked */

.cbContainer input:checked~.checkmark:after {
  display: block;
}

/* Style the checkmark/indicator */

.cbContainer .checkmark:after {
  left: 9px;
  top: 5px;
  width: 5px;
  height: 10px;
  border: solid #E2E2E2;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.cbContainer input:checked~.checkmark:after {
  border: solid #fff;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg) .4s;
}

/* Pop Out */

.popOutBg {
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1000;
}

.popOutBox {
  background: white;
  margin: 0 auto;
  width: 95%;
  max-width: 700px;
  padding: 100px 80px;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}

input:required, textarea:required {
  box-shadow: none;
}

input:invalid, textarea:required {
  box-shadow: none;
}

.forDesktop {
  display: block;
}

.forMobile {
  display: none;
}

/* PENANG KV CSS */

.whiteCircle {
  width: 10%;
  height: 10%;
  padding: 10px;
  margin: 10px;
  background: #FFF;
  border-radius: 5%;
  box-shadow: 5px 5px 5px #F2F2F2;
}

.Rectangle {
  width: 100%;
  height: 100%;
  background-image: linear-gradient(307deg, #00bfdb 62%, rgba(52, 34, 187, 0.9));
}

.img-mibos {
  width: 100%;
  height: auto;
  padding-bottom: 60px;
}

.penangContent {
  text-align: left;
  padding: 20px;
}

.mainRow {
  position: relative;
  width: 100%;
  background-image: url('../images/yellowline.png');
  background-position: bottom;
  background-repeat: no-repeat;
}

.mainRow .column30 {
  width: 30%;
  float: left;
}

.mainRow .column30 #desktop {
  margin: 5px 0px 0px 0px;
}

.mainRow .column30 #mobile {
  margin: 0px 5px 0px 5px;
  display: none;
}

.mainRow .column50 {
  width: 50%;
  float: left;
}

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

.specialofferList {
  font-size: 16px;
  line-height: 1.5;
  margin-top: 10px;
  margin-bottom: 10px;
  margin-left: 5px;
  margin-right: 5px;
}

.penangAllLists {
  position: relative;
  width: 100%;
  margin: 50px auto;
}

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

.penangAllLists li {
  width: 23%;
  margin: 0 1%;
  float: left;
}

.penangAllLists .icon {
  width: 100%;
  margin: auto;
  position: relative;
}

.penangAllLists .featuresIcon {
  width: 50%;
  margin: auto;
  position: relative;
  align-items: center;
}

.penangAllLists .title {
  margin: 10px 0 20px;
}

.penangAllLists .icon .content {
  position: absolute;
  width: 100%;
  height: auto;
  bottom: 0px;
  left: 0px;
  border-radius: 5px;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0), #000000 97%);
}

.penangAllListTitle {
  font-size: 25px;
  font-weight: bold;
  line-height: 1.5;
  color: #fff;
  margin: 8px;
}

.freeBox {
  background-color: aquamarine;
  font-size: 16px;
  border-radius: 5px;
  font-weight: bold;
  width: fit-content;
  padding: 0px 5px 0px 5px;
}

.penangBanner img {
  width: 100%;
  margin: auto;
}

.plusIcon {
  width: fit-content;
  align-items: center;
  margin: auto;
}

.milkWrap {
  padding: 30px 12px;
  background: #FFF;
  border-radius: 5px;
  box-shadow: 5px 5px 5px #F2F2F2;
}

.penangAllLists .desc {
  width: 100%;
  margin: auto;
  margin-top: 20px;
  font-size: 16px;
}

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

.penangPlanLists {
  position: relative;
  width: 100%;
}

.penangPlanLists .plan {
  width: 320px;
}

.penangPlanLists .mibox {
  width: 400px;
}

.penangPlanLists ul {
  margin: auto;
  display: inline-flex;
  align-items: center;
  ;
}

.penangPlanLists ul li {
  float: left;
  margin: 0 10px;
  text-align: left;
}

.penangPlanLists .planTable {
  position: relative;
  width: 100%;
  margin-top: 20px;
}

.penangPlanLists .planTable .left {
  width: 40%;
  text-align: left;
}

.penangPlanLists .planTable .right {
  width: 50%;
  text-align: right;
}

.penangPlanLists .planTable tbody, .penangPlanLists .planTable tr, .penangPlanLists .planTable td {
  border: none;
  padding: 10px 0;
  background: none;
}

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

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

.miboxdesc {
  padding: 0px 20px 0px 20px;
}

/* .miboxdesc ul {list-style-image: url('images/icon-check.png');} */

.miboxdesc li {
  margin: 10px 0px 10px 0px;
  font-size: 16px;
}

.yellowLine {
  background-image: url('images/yellowline.svg');
}

.searchSection {
  width: 50%;
  margin: 0 auto;
  margin-top: 20px;
}

.searchSection .error {
  color: #D90000;
}

.searchAddr {
  margin: 25px 0;
  clear: both;
  width: 100%;
  border-radius: 25px;
  border: #C8C8C8 solid 1px;
  margin: 0 auto;
}

.formRowLimit {
  max-width: 600px;
}

.searchAddr .labelName {
  display: block;
  margin: 5px 0;
}

.searchAddr input[type="text"], .searchAddr textarea {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 0 none;
  border-radius: 25px;
  box-shadow: none;
  outline: 0 none;
  padding: 8px 20px;
  resize: none;
  margin: 5px 0;
  width: 90%;
}

.searchIcon {
  float: right;
  width: 25px;
  padding: 10px;
}

#tyWrapper {
  background-image: url(../images/top-banner-thankyou.jpg);
  background-repeat: no-repeat;
  background-position: center center;
  height: 400px;
}
.positioned-row {
  position: relative;
}
.positioned-row .formErrorMsg {
  position: absolute;
  top: 80px;
}

#digi-logo {
  cursor: pointer;
  width: 250px;
}

@media only screen and (max-width: 1300px) {
  .fontPlanName {
    font-size: 19px;
  }
  .fontPlanPrice {
    font-size: 28px;
    font-weight: 800;
  }
  .fontPlanPriceStrike {
    font-size: 18px;
  }
  .fontPlanLeft {
    font-size: 16px;
    font-weight: 800;
  }
  .fontPlanRight {
    font-size: 15px;
  }
  .sectionContent {
    padding: 0 50px;
  }
  .penangBanner img {
    width: 70%;
    margin: auto;
  }
}

@media only screen and (max-width: 1200px) {
  .sectionMap .inner {
    margin: 5% auto;
  }
  .penangPlanLists ul {
    margin: auto;
    display: block;
    align-items: center;
  }
  .penangPlanLists li {
    width: 100%;
    margin: 10px 0;
  }
  .penangPlanLists .plan {
    width: 100%;
    margin: 10px 0;
  }
}

@media only screen and (max-width: 1000px) {
  #tyWrapper {
    background-image: url(../images/digi-home-fibre-thankyou_1024x768.png);
    background-repeat: no-repeat;
    background-position: center center;
    height: 768px;
  }
  .fontRoundButton {
    font-size: 18px;
  }
  .fontBannerHeader {
    font-size: 70px;
    line-height: 80px;
    font-weight: 70px;
  }
  .fontBannerSubHeader {
    font-size: 14px;
  }
  .fontSabahBannerHeader {
    font-size: 70px;
  }
  .fontSabahBannerDesc {
    font-size: 14px;
    line-height: 24px;
  }
  .sabahBanner .content {
    top: 15%;
  }
  .sabahBanner .desc {
    margin: 3% 0;
  }
  .sectionMap:before {
    content: "";
    display: block;
    padding-top: 54%;
  }
  .sectionMap .inner {
    margin: 5% auto;
  }
  .mainRow .column50 {
    width: 100%;
    float: left;
  }
  .mainRow .column50 {
    width: 100%;
    float: left;
  }
  .penangBanner img {
    width: 100%;
    margin: auto;
  }
  .penangPlanLists li {
    width: 100%;
    margin: 10px 0;
  }
  .penangPlanLists .plan {
    width: 100%;
    margin: 10px 0;
  }
}

@media only screen and (max-width: 800px) {
  #tyWrapper {
    background-image: url(../images/digi-home-fibre-thankyou_823x411.png);
    background-repeat: no-repeat;
    background-position: center center;
    height: 411px;
  }
  .fontGeneral {
    font-size: 15px;
  }
  .fontSectionTitle {
    font-size: 42px;
  }
  .fontSectionTY {
    font-size: 57px;
    line-height: 57px;
  }
  .fontSectionTYDesc {
    font-size: 20px;
    line-height: 30px;
  }
  .fontPlanName {
    font-size: 20px;
  }
  .fontPlanPrice {
    font-size: 30px;
    font-weight: 800;
  }
  .fontPlanPriceStrike {
    font-size: 20px;
  }
  .fontPlanLeft {
    font-size: 16px;
    font-weight: 800;
  }
  .fontPlanRight {
    font-size: 18px;
  }
  .fontAllListTitle {
    font-size: 23px;
    line-height: 33px;
  }
  .fontRoundButton {
    font-size: 18px;
  }
  .fontAddressList {
    font-size: 18px;
  }
  .sectionContent {
    padding: 0 20px;
  }
  .planLists {
    margin: 20px auto 20px;
  }
  .planListsDesc li {
    float: none;
    width: 100%;
    margin: 10px 0;
    padding: 0;
    background: none;
    border-radius: 0;
    box-shadow: none;
    text-align: left;
  }
  .formPlanLists {
    margin: 20px auto 20px;
  }
  .formDigizenPlanLists {
    margin: 20px auto 20px;
  }
  .addressLists li .text {
    width: 60%;
  }
  .formRow {
    margin: 15px 0;
  }
  .sectionMap:before {
    padding-top: 54%;
  }
  .sectionMap .inner {
    width: 100%;
    margin: 7% auto;
    background: #FFF;
    padding: 50px 50px 30px;
  }
  .footerContent .column {
    width: 100%;
    margin: 10px 0;
    float: none;
  }
  .mainRow .column50 {
    width: 100%;
    float: none;
  }
  .mainRow .column30 {
    width: 60%;
    display: inline-flex;
    align-items: center;
  }
  .mainRow .column30 #desktop {
    margin: 5px 0px 0px 0px;
    display: none;
  }
  .mainRow .column30 #mobile {
    margin: 0px 5px 0px 5px;
    display: inline-block;
    align-items: center;
  }
  .penangAllLists {
    margin: 20px auto 20px;
  }
  .penangAllListTitle {
    font-size: 23px;
    line-height: 33px;
  }
  /* .penangBanner img {width: 70%; margin: auto;} */
  .penangPlanLists li {
    width: 100%;
    margin: 10px 0;
  }
  .searchSection {
    width: 100%;
  }
  .searchAddr {
    margin: 15px 0;
  }
  .searchAddr input[type="text"], .searchAddr textarea {
    width: 80%;
  }
}

@media only screen and (max-width: 770px) {
  #tyWrapper {
    background-image: url(../images/digi-home-fibre-thankyou_768x1024.png);
    background-repeat: no-repeat;
    background-position: center center;
    height: 800px;
  }
  .forDesktop {
    display: none;
  }
  .forMobile {
    display: block;
  }
  #main {
    padding-top: 80px;
  }
  .mainBanner .content {
    top: 60%;
    color: #fff;
  }
  .sabahBanner .content {
    top: 25%;
    left: 10%;
    right: 10%;
    text-align: center;
    align-items: center;
  }
  .penangPlanLists li {
    width: 100%;
    margin: 10px 0;
  }
  .mainRow {
    position: relative;
    width: 100%;
    background-image: none;
    background-position: bottom;
    background-repeat: no-repeat;
  }
}

@media only screen and (max-width: 600px) {
  .fontGeneral {
    font-size: 15px;
  }
  .fontSectionTitle {
    font-size: 38px;
  }
  .fontSectionTY {
    font-size: 49px;
    line-height: 49px;
  }
  .fontSectionTYDesc {
    font-size: 18px;
    line-height: 28px;
  }
  .fontPlanName {
    font-size: 18px;
  }
  .fontPlanPrice {
    font-size: 28px;
    font-weight: 800;
  }
  .fontPlanLeft {
    font-size: 16px;
    font-weight: 800;
  }
  .fontPlanRight {
    font-size: 16px;
  }
  .fontAllListTitle {
    font-size: 23px;
    line-height: 33px;
  }
  .fontRoundButton {
    font-size: 18px;
  }
  .fontAddressList {
    font-size: 18px;
  }
  .sectionAllLists li {
    width: 46%;
    margin: 20px 2%;
  }
  .sectionAllLists li.fixedHeight {
    width: 46%;
    margin: 20px 2%;
    height: 450px;
  }
  .sectionAllLists .title {
    margin: 30px 0 10px;
  }
  .addressLists li .text {
    width: 100%;
    text-align: center;
  }
  .addressLists .button {
    position: relative;
    margin-top: 10px;
    top: 0;
    right: 0;
  }
  .sectionMap:before {
    padding-top: 74%;
  }
  .sectionMap .inner {
    margin: 15% auto;
  }
  .penangAllListTitle {
    font-size: 23px;
    line-height: 33px;
  }
  .penangPlanLists li {
    width: 100%;
    margin: 10px 0;
  }
  .mainRow {
    position: relative;
    width: 100%;
    background-image: none;
    background-position: bottom;
    background-repeat: no-repeat;
  }
}

@media only screen and (max-width: 580px) {
  .fontBannerHeader {
    font-size: 50px;
    font-weight: 50px;
  }
  .fontBannerSubHeader {
    font-size: 14px;
  }
  .fontSabahBannerHeader {
    font-size: 50px;
  }
  .fontSabahBannerDesc {
    font-size: 13px;
    line-height: 23px;
  }
  .mainBanner .content {
    top: 50%;
  }
  .sabahBanner .content {
    top: 20%;
    left: 10%;
  }
  .planTerms li {
    display: block;
    margin-right: 0;
  }
  .penangPlanLists li {
    width: 100%;
    margin: 10px 0;
  }
  .penangAllLists li {
    width: 100%;
    margin: 10px 0;
  }
  .mainRow {
    position: relative;
    width: 100%;
    background-image: none;
    background-position: bottom;
    background-repeat: no-repeat;
  }
}

@media only screen and (max-width: 500px) {
  .slider .btn {
    display: none;
  }
  ul.slider {
    width: auto;
  }
  .planLists {
    width: 100%;
  }
  .planLists li {
    width: 100%;
    margin: 10px 0;
  }
  .planListsDesc li {
    float: none;
    width: 100%;
    margin: 10px 0;
    padding: 0;
    background: none;
    border-radius: 0;
    box-shadow: none;
    text-align: left;
  }
  .penangAllLists {
    width: 100%;
  }
  .formPlanLists {
    width: 100%;
  }
  .formPlanLists li {
    width: 100%;
    margin: 10px 0;
    min-height: auto;
  }
  .formDigizenPlanLists {
    width: 100%;
  }
  .formDigizenPlanLists li {
    width: 100%;
    margin: 10px 0;
    min-height: auto;
  }
  .sabahBanner .content {
    top: 10%;
    left: 10%;
  }
  .penangPlanLists li {
    width: 100%;
    margin: 10px 0;
  }
  .mainRow {
    position: relative;
    width: 100%;
    background-image: none;
    background-position: bottom;
    background-repeat: no-repeat;
  }
}

@media only screen and (max-width: 400px) {
  #tyWrapper {
    background-image: url(../images/digi-home-fibre-thankyou_411x823.png);
    background-repeat: no-repeat;
    background-position: center center;
    height: 600px;
  }
  .fontGeneral {
    font-size: 13px;
  }
  .fontSectionTitle {
    font-size: 33px;
  }
  .fontSectionTY {
    font-size: 41px;
    line-height: 41px;
  }
  .fontSectionTYDesc {
    font-size: 15px;
    line-height: 25px;
  }
  .fontBannerHeader {
    font-size: 45px;
    line-height: 55px;
    font-weight: 45px;
  }
  .fontBannerSubHeader {
    font-size: 14px;
  }
  .fontPlanName {
    font-size: 18px;
  }
  .fontPlanPrice {
    font-size: 28px;
    font-weight: 800;
  }
  .fontPlanPriceStrike {
    font-size: 18px;
  }
  .fontPlanLeft {
    font-size: 16px;
    font-weight: 800;
  }
  .fontPlanRight {
    font-size: 16px;
  }
  .fontAllListTitle {
    font-size: 20px;
    line-height: 30px;
  }
  .fontRoundButton {
    font-size: 13px;
  }
  .fontAddressList {
    font-size: 15px;
  }
  .fontInput {
    font-size: 13px;
  }
  .fontSabahBannerHeader {
    font-size: 40px;
  }
  .fontSabahBannerDesc {
    font-size: 11px;
    line-height: 21px;
  }
  .sabahBanner .content {
    top: 10%;
    left: 10%;
  }
  .sectionAllLists li {
    width: 80%;
    margin: 20px 10%;
  }
  .sectionAllLists li.fixedHeight {
    width: 80%;
    margin: 20px 10%;
  }
  .sectionAllLists .title {
    margin: 10px 0 10px;
  }
  .sectionMap:before {
    padding-top: 84%;
  }
  .sectionMap .inner {
    width: 100%;
    margin: 15% auto;
    background: #FFF;
    padding: 30px 10px 20px;
  }
  .roundButton {
    padding: 15px 30px;
  }
  .roundButton img {
    width: 20px;
    right: 20px;
  }
  .penangAllListTitle {
    font-size: 20px;
    line-height: 30px;
  }
  .mainRow {
    position: relative;
    width: 100%;
    background-image: none;
    background-position: bottom;
    background-repeat: no-repeat;
  }
}

@-webkit-viewport {
  width: device-width
}

@-moz-viewport {
  width: device-width
}

@-ms-viewport {
  width: device-width
}

@-o-viewport {
  width: device-width
}

@viewport {
  width: device-width
}

/* ==========================================================================
       Helper classes
       ========================================================================== */

/*
     * Image replacement
     */

.ir {
  background-color: transparent;
  border: 0;
  overflow: hidden;
  /* IE 6/7 fallback */
  *text-indent: -9999px;
}

.ir:before {
  content: "";
  display: block;
  width: 0;
  height: 150%;
}

/*
     * Hide from both screenreaders and browsers: h5bp.com/u
     */

.hidden {
  display: none !important;
  visibility: hidden;
}

/*
     * Hide only visually, but have it available for screenreaders: h5bp.com/v
     */

.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

/*
     * Extends the .visuallyhidden class to allow the element to be focusable
     * when navigated to via the keyboard: h5bp.com/p
     */

.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}

/*
     * Hide visually and from screenreaders, but maintain layout
     */

.invisible {
  visibility: hidden;
}

/*
     * Clearfix: contain floats
     *
     * For modern browsers
     * 1. The space content is one way to avoid an Opera bug when the
     *    `contenteditable` attribute is included anywhere else in the document.
     *    Otherwise it causes space to appear at the top and bottom of elements
     *    that receive the `clearfix` class.
     * 2. The use of `table` rather than `block` is only necessary if using
     *    `:before` to contain the top-margins of child elements.
     */

.clearfix:before, .clearfix:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}

.clearfix:after {
  clear: both;
}

/*
     * For IE 6/7 only
     * Include this rule to trigger hasLayout and contain floats.
     */

.clearfix {
  *zoom: 1;
}

/* ==========================================================================
       EXAMPLE Media Queries for Responsive Design.
       These examples override the primary ('mobile first') styles.
       Modify as content requires.
       ========================================================================== */

@media only screen and (min-width: 35em) {
  /* Style adjustments for viewports that meet the condition */
}

@media print, (-o-min-device-pixel-ratio: 5/4), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */
}

/* ==========================================================================
       Print styles.
       Inlined to avoid required HTTP connection: h5bp.com/r
       ========================================================================== */

@media print {
  * {
    background: transparent!important;
    color: #000!important;
    box-shadow: none!important;
    text-shadow: none!important;
  }
  a, a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after {
    content: "";
  }
  pre, blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr, img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100%!important;
  }
  @page {
    margin: .5cm;
  }
  p, h2, h3 {
    orphans: 3;
    widows: 3;
  }
  h2, h3 {
    page-break-after: avoid;
  }
}