body{
  font-family: 'Montserrat', sans-serif!important;
  color:#212121;
  font-size: 18px;
}
@media (max-width:767px){
  body{
    font-size: 16px;
  }
}
a{
  color:red;
}
a:hover,a:focus{
  color:red;
}
button:focus{
  outline: none;
}
input{
  border:0px;
  border-radius:0px;
  -webkit-border-radius:0px;
  -moz-border-radius:0px;
  margin:0 1px;
}
/* EDIT MODAL */
body.modal-open-noscroll
{
  margin-right: 0!important;
  overflow: hidden;
}
.modal {
 overflow-y: auto!important;
}
.modal-open {
 overflow: auto!important;
}
.modal-backdrop{
  opacity:0.7!important;
}
.modal-content{
  border-radius: 0px;
  border:none!important;
}
@media(max-width:767px){
  .modal{
    padding-left:0px!important;
  }
}
.close-modal{
  border:0px;
  background: none;
  padding:0px;
}
.close-modal img{
  width: 20px;
}
/*@media (min-width: 1200px){
  .modal-lg{
    width:1080px;
  }
}*/
.col-sm-6,.col-sm-12,.col-sm-3,.col-sm-4{
  padding-top:30px;
  padding-bottom:30px;
}
@media(max-width:767px){
  .col-sm-3-npt,.col-sm-4-npt,.col-sm-6-npt,.col-sm-12-npt{
    padding-top:0px;
  }
}
.col-nopadding-bt{
  padding-top:0px;
  padding-bottom:0px;
}
.vertical-alignment-helper {
  display:table;
  height: 100%;
  width: 100%;
  pointer-events:none; /* This makes sure that we can still click outside of the modal to close it */
}
.vertical-align-center {
  /* To center vertically */
  display: table-cell;
  vertical-align: middle;
  pointer-events:none;
}
.modal-content {
  /* Bootstrap sets the size of the modal in the modal-dialog class, we need to inherit it */
  width:inherit;
  height:inherit;
  /* To center horizontally */
  margin: 0 auto;
  pointer-events: all;
}
/* END EDIT MODAL */
.regular{
  font-weight: 400;
}
.medium{
  font-weight: 500;
}
.bold{
  font-weight: 700;
}
.font-14{
  font-size: 14px;
}
.font-medium{
  font-size: 30px;
}
.font-large{
  font-size: 40px;
}
.font-xlarge{
  font-size: 50px;
}
@media (max-width:767px){
  .font-xlarge{
    font-size: 34px;
  }
}
.text-muted{
  margin-top:14px;
}
.text-muted.small{
  margin-top:5px;
  font-size: 14px;
}
.container00{
  max-width: 1200px;
  margin:0 auto;
  position: relative;
  padding-right: 40px;
  padding-left: 40px;
}
@media(max-width:1120px){
  .container00{
    padding-right: 40px;
    padding-left: 40px;
  }
}
@media(max-width:767px){
  .container00{
    padding-right: 20px;
    padding-left: 20px;
  }
}
.normalize-ul{
  margin:0px;
  padding:0px;
}
.normalize-ul li{
  list-style: none;
}
.normalize-ul.horizontal li{
  display: inline-block;
}
.w100{
  width: 100%;
  position: relative;
}
.text-right{
  text-align: right;
}
.text-center{
  text-align: center;
}
.section-hero{
  padding-top:150px!important;
}
@media(max-width:767px){
  .section-hero{
    padding-top:100px!important;
    padding-bottom:20px!important
  }
}
.section-padding{
  padding-top:60px;
  padding-bottom:60px;
}
.section-padding-xl{
  padding-top:90px;
  padding-bottom:90px;
}
.section-padding-xxl{
  padding-top:150px;
  padding-bottom:150px;
}
.section-padding-hero{
  padding-top:400px;
}
@media (max-width:767px){
  .section-padding{
    padding-top:20px;
    padding-bottom:20px;
  }
  .section-padding-xl{
    padding-top:50px;
    padding-bottom:50px;
  }
  .section-padding-xxl{
    padding-top:100px;
    padding-bottom:100px;
  }
}
blockquote{
  margin:0px;
  padding:0px;
  border:0px;
  font-size: 27px;
  font-weight: 500;
  position: relative;
  display: inline-block;
  padding-bottom: 30px;
}
blockquote:after{
  content: '';
  background: red;
  height: 2px;
  width: 20%;
  position: absolute;
  bottom:0px;
  left:0px;
}
.cta-button{
  font-size: 15px;
  padding: 14px 34px;
  transition: .2s ease-in-out;
  display: inline-block;
  position: relative;
  font-weight: 500;
  transition: .2 ease-in-out;
}
.cta-button img{
  height: 18px;
  margin-left:28px;
  transform: translatey(-1px);
  /*position: absolute;
  top:14px;
  right:34px;*/
}
.cta-button:before{
  content: '';
  width: 0%;
  height: 4px;
  background: #960000;
  position: absolute;
  bottom: 0px;
  opacity: 0;
  left:0px;
  transition: .2s ease-in-out;
}
.cta-button:hover:before{
  width: 100%;
  opacity: 1;
}
.cta-button:hover{
  transform: translateY(-2px);
  text-decoration: none;
  -webkit-box-shadow: 0px 8px 12px 0px rgba(0,0,0,0.19);
  -moz-box-shadow: 0px 8px 12px 0px rgba(0,0,0,0.19);
  box-shadow: 0px 8px 12px 0px rgba(0,0,0,0.19);
}
.cta-btn-full{
  padding:24px 34px;
  font-size: 17px;
  position: relative;
}
.cta-btn-full img{
  height: 24px;
  position: absolute;
  top:24px;
  right:44px;
}
.cta-btn-full:hover > img{
  right: 34px;
}
.cta-btn-full:before{
  content: '';
  width: 50%;
  height: 4px;
  background: red;
  position: absolute;
  bottom: 0px;
  opacity: 1;
  left:0px;
  transition: .2s ease-in-out;
}
.button-box{
  width: 100%;
  padding:22px 54px;
  padding-left:44px;
  position: absolute;
  bottom:0;
  left:0;
  right:0;
}
@media(max-width:767px){
  .button-box-modal{
    padding:20px 20px!important;
  }
}
@media (max-width:448px){
  .button-box{
    padding:22px 34px;
    padding-left:24px;
  }
}
.button-box:before{
  background: red;
}
.button-box.redline:before{
  background: #960000;
}
.button-box:hover{
  transform: none;
  box-shadow: none;
}
.button-box img, .cta-btn-full img{
  transition: .2s ease-in-out;
  -webkit-transition: .2s ease-in-out;
  -moz-transition: .2s ease-in-out;
}
.button-box:hover > img{
  margin-left: 40px;
}
.button-red,.button-red:hover{
  background: red;
  color: #fff;
}
.button-black{
  background: #212121;
  color:#fff;
}
.button-black:hover{
  background: #000;
  color:#fff;
}
.button-light-grey, .button-light-grey:hover{
  background: #eee;
  color:#212121;
}
.button-grey, .button-grey:hover{
  background: #444;
  color:#fff;
}
.text-kern{
  letter-spacing: 2px;
  font-size: 14px;
  text-transform: uppercase;
  padding-bottom:10px;
}
.m-b-5{
  margin-bottom: 5px;
}
.m-b-10{
  margin-bottom: 10px;
}
.m-b-20{
  margin-bottom: 20px;
}
.m-b-30{
  margin-bottom: 30px;
}
.block{
  display: block;
}
.bg-white{
  background-color: #fff;
  color:#212121!important;
}
.bg-grey{
  background-color: #f5f5f5;
}
.bg-dark{
  background-color: #212121;
}
.bg-grey.child1{
  margin-left:-18px;
  margin-right: -18px;
}
.bg-grey .child2{
  padding-left: 18px;
  padding-right:18px;
  padding-top:38px;
  padding-bottom:38px;
}
.bg-dot{
  background: linear-gradient(#f5f5f5 18px, transparent 18px) 0 -2px, linear-gradient(90deg, #f5f5f5 18px, transparent 0px) -2px 0;
  background-color: #bbbbbb;
  background-size: 20px 20px;
  border-top:1px solid #eee;
  border-bottom:1px solid #eee;
}
.bg-dot-o{
  background: linear-gradient(#fff 18px, transparent 18px) 0 -2px, linear-gradient(90deg, #fff 18px, transparent 0px) -2px 0;
  background-color: #bbbbbb;
  background-size: 20px 20px;
}
.bg-image{
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
/* Parallax Footer */
.content {
  position: relative;
  z-index: 2;
  background: white;
  -webkit-box-shadow: 0px 12px 22px 0px rgba(0,0,0,0.3);
  -moz-box-shadow: 0px 12px 22px 0px rgba(0,0,0,0.3);
  box-shadow: 0px 12px 22px 0px rgba(0,0,0,0.3);
}
.wrapper-parallax {
  margin-bottom: 680px;
}
@media(max-width:767px){
  .wrapper-parallax{
    margin-bottom:0px;
  }
  .content {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
  }
}
/* Header */
header{
  width: 100%;
  background: #fff;
  padding-top: 23px;
  padding-bottom: 25px;
  border-bottom:1px solid #eee;
  -webkit-box-shadow: 0px 1px 7px 0px rgba(0,0,0,0.1);
  -moz-box-shadow: 0px 1px 7px 0px rgba(0,0,0,0.1);
  box-shadow: 0px 1px 7px 0px rgba(0,0,0,0.1);
}
.headroom--fixed{
  position: fixed;
  z-index: 10;
  right: 0;
  left:0;
  top:0;
}
.brand-logo, .nav-logo{
  position: relative;
  width: 100%;
}
.brand-logo img, .nav-logo img{
  width: 158px;
}
.nav-list, .nav-mobile{
  margin: 0px;
  margin-top:4px;
  padding: 0px;
}
.nav-list li{
  list-style: none;
  display: inline-block;
  margin-left: 24px;
  font-weight: 500;
  font-size: 14px;
}
@media (max-width:870px){
  .nav-list li{
    margin-left: 10px;
    font-size: 13px;
  }
}
@media (max-width:767px){
  .nav-list{
    display: none;
  }
}
.nav-list li>a, .nav-mobile li>a{
  padding :10px 0px;
  color: #212121;
  position: relative;
}
.nav-list li.active>a:before, .nav-mobile li.active>a:before{
  content: '';
  width: 100%;
  height: 3px;
  background: #212121;
  position: absolute;
  bottom: 0px;
  opacity: 1;
  transition: .2s ease-in-out;
}
.nav-list li>a:before, .nav-mobile li>a:before{
  content: '';
  width: 0%;
  height: 3px;
  background: #212121;
  position: absolute;
  bottom: 0px;
  /*opacity: 0;*/
  transition: .2s ease-in-out;
}
.nav-list li>a:hover:before, .nav-mobile li>a:hover:before{
  width: 100%;
  /*opacity: 1;*/
}
.nav-list li>a:hover, .nav-mobile li>a:hover{
  text-decoration: none;
}
.nav-list .cta-nav, .nav-mobile .cta-nav{
  padding: 10px 34px;
  background: red;
  color: #fff;
  margin-left:4px;
  transition: .2s ease-in-out;
}
.nav-list .cta-nav:hover, .nav-mobile .cta-nav:hover{
  background: #E20000;
}
.nav-list .cta-nav:before, .nav-mobile .cta-nav:before{
  left:0px;
  background: #960000;
}
/* Burger Button */
.hamburger-button {
  position: relative;
  display: inline-block;
  z-index: 9999; /*so it never gets lost under something*/
  padding-top:2px;
  height:15px;
  width:20px;
}
@media (min-width:768px){
  .hamburger-button{
    display: none;
  }
}
.hamburger-button:hover {
  cursor: pointer;
  /* changes the cursor to pointer */
}
.hamburger-button > span {
  display: block;
  height: 3px;
  margin-bottom: 3px;
  width: 20px;
  background-color:#212121;
 -webkit-transition-timing-function: linear; /* Safari and Chrome */
transition-timing-function: linear;
transition-duration:.2s;
}
.hamburger-button.open > span:first-child {
-webkit-transform: translateY(6px) rotate(45deg); /* Chrome, Safari, Opera */
transform:translateY(6px) rotate(45deg);
}
.hamburger-button.open > span:nth-child(2) {
   -webkit-transform: rotateY(90deg); /* Safari */
    transform: rotateY(90deg);
  /* rotates the second child on the Y AXIS ONLY 90 degrees so it disappears into a point */
}
.hamburger-button.open > span:last-child {
 -webkit-transform: translateY(-6px) rotate(-45deg); /* Chrome, Safari, Opera */
    transform: translateY(-6px) rotate(-45deg);
}
.navbar{
  position:fixed;
  z-index:2; /*so its above the content but below the burger button*/
  height:100%;
  width: 100%;
  right:0;
  left:-100%;
  bottom:0;
  top:0;
  transition:.5s;
  background-color:#212121;
  padding:30px;
  padding-top:100px;
}
.navbar.open{
  left:0;
}
.navbar .nav-mobile li{
  display:block;
  margin-bottom:20px;
  font-size: 16px;
  font-weight: 500;
}
.nav-mobile li>a{
  display: block;
  color:#fff;
}
.nav-mobile li.active>a:before{
  background: #fff;
}
.nav-mobile li>a:before{
  background: #fff;
}
.nav-mobile .cta-nav{
  padding: 16px 34px;
  text-align: center;
  margin-top:40px;
  margin-left: 0px;
}
/* Hero Section */
.hero-title{
  margin:0px;
  font-size: 50px;
  font-weight: 500;
}
.cta-title{
  font-size: 50px;
}
.hero-subtitle{
  font-size: 18px;
  line-height:1.4em;
}
@media (max-width:767px){
  .hero-title{
    font-size:55px;
  }
  .cta-title{
    font-size: 38px;
  }
}
@media (max-width:400px){
  .hero-title{
    font-size: 45px;
  }
}
.brand-image{
  position: relative;
  width: 100%;
}
.brand-image img{
  width: 100%;
  position: relative;
}
.element-1, .element-2, .element-3{
  position: absolute!important;
}
.element-1{
  bottom:-28px;
  left: -28px;
  width: 250px!important;
}
.element-2{
  bottom:-28px;
  left: 158px;
  width: 128px!important;
}
.element-3{
  width: 128px!important;
  top:28px;
  right: -28px;
}
@media (max-width:767px){
  .element-1{
    bottom:0px;
    left: 0px;
  }
  .element-2{
    bottom:0px;
    left: 158px;
  }
  .element-3{
    top:0px;
    right: 0px;
  }
}
@media (max-width:500px){
  .element-1{
    width: 180px!important;
  }
  .element-2{
    width: 58px!important;
  }
  .element-3{
    width: 58px!important;
  }
}
/* Column Block */
.column-block .icon, .column-block .context{
  display: inline-block;
  list-style: none;
  vertical-align: top;
}
.column-block .icon{
  width: 10%;
}
.column-block .icon img{
  height: 40px;
}
.context{
  width: 90%;
  padding-left: 28px;
  padding-right: 38px;
}
.logo-partner{
  margin:0;
  padding:0;
}
.logo-partner li{
  text-decoration: none;
  display: inline-block;
  width: 120px;
  height: 120px;
  margin-right: 20px;
  margin-bottom: 20px;
  border-radius: 100%;
  background-color: #fff;
}
.logo-partner li img{
  width:100px;
  position: absolute;
  vertical-align: middle;
  margin-left: -50px;
  margin-top: 10px;
}
.pp{
  width: 100%;
  height:300px;
  background-color: #eee;
  position: relative;
}
.pricing-box{
  width: 100%;
  padding:30px;
  background: #fff;
  position: relative;
  -webkit-box-shadow: 0px 2px 6px 0px rgba(0,0,0,0.15);
  -moz-box-shadow: 0px 2px 6px 0px rgba(0,0,0,0.15);
  box-shadow: 0px 2px 6px 0px rgba(0,0,0,0.15);
}
.pricing-box.star{
  border:3px solid red;
}
.price-head{
  font-size: 30px;
  margin-bottom:5px;
}
.price-head.star .fa{
  position: absolute;
  top:35px;
  right:30px;
  color:red;
}
.price-head.star .bold{
  padding-right: 60px;
}
.price-head .price-text{
  font-size: 25px;
  margin-top:10px;
}
.price-desc li{
  list-style: none;
  display: block;
  padding:14px 0px;
  border-bottom:1px solid #ddd;
}
.price-desc li:last-child{
  border-bottom:0px;
}
footer{
  background-color: #212121;
  padding:60px 0px;
  border-bottom:6px solid red;
  position: fixed;
  width: 100%;
  bottom: 0;
  right: 0;
  left:0;
  /*z-index: -1;*/
}
@media(max-width:767px){
  footer{
    position: relative;
    /*z-index: 1;*/
  }
  .tagline-footer{
    text-align: left!important;
  }
}
.sosmed-list li{
  display: inline-block;
  list-style: none;
  font-size: 14px;
}
.sosmed-list li, .sosmed-list li>a{
  color:#fff;
  margin-right:15px;
}
.nav-footer{
  border-top: 1px solid #555;
  border-bottom: 1px solid #555;
}
.list-footernav li{
  font-size: 14px;
  margin-bottom:10px;
  color:#fff;
  list-style: none;
}
.list-footernav li>a{
  color:#ddd;
}
.list-footernav .medium{
  font-size: 16px;
  margin-bottom:20px;
}
.footer-media{
  border-bottom: 1px solid #555;
}
@media(max-width:767px){
  .footer-media{
    padding-bottom: 30px;
  }
}
.input-footer input, .input-footer button{
  padding:10px;
  font-size: 14px;
  border:0px;
  border-radius:0px;
  -webkit-border-radius:0px;
  -moz-border-radius:0px;
  margin:0px;
  display: inline-block;
  text-align: left;
}
.input-footer button{
  padding:10px 22px;
  /*margin-left:-5px;*/
  background: #444;
  color:#fff;
  position: relative;
}
.input-footer button img{
  height: 10px;
  margin-left: 10px;
}
.input-footer button:hover{
  background:#444;
}
.input-footer button:before{
  content: '';
  width: 0%;
  height: 4px;
  background: red;
  position: absolute;
  bottom: 0px;
  opacity: 0;
  left:0px;
  transition: .2s ease-in-out;
}
.input-footer button:hover:before{
  width: 100%;
  opacity: 1;
}
.copyright{
  padding:40px 0px 0px 0px;
  color:#555;
  font-size: 14px;
}
/* End Footer */
.col-box{
  background: #fff;
  padding:54px;
  -webkit-box-shadow: 0px 4px 10px 0px rgba(0,0,0,0.15);
  -moz-box-shadow: 0px 4px 10px 0px rgba(0,0,0,0.15);
  box-shadow: 0px 4px 10px 0px rgba(0,0,0,0.15);
}
@media(max-width:767px){
  .col-box{
    padding:34px;
  }
}
.col-box.hero{
  box-shadow: none;
  /*border-bottom: 5px solid red;*/
}
.col-box.hero{
  margin-left:-15px;
  margin-right:-15px;
}
@media (max-width:767px){
  .col-box.hero{
    margin-left:0px;
    margin-right:0px;
  }
}
.col-box.hero:before{
  content: '';
  background: #ccc;
  height: 2px;
  width: 60%;
  position: absolute;
  bottom:0;
  left:20%;
}
.col-box.hero:after{
  content: '';
  background: #ccc;
  height: 20px;
  width: 20px;
  border:5px solid #fff;
  border-radius: 100%;
  position: absolute;
  bottom:-8px;
  left:49%;
}
.col-box.hero img{
  height: 30px;
  margin-bottom: 50px;
}
.twobox-wrap{
  position:relative;
  width: 100%;
}
.twobox-child{
  position: relative;
  width: 50%;
  padding:54px;
  padding-left:44px;
  padding-bottom:180px!important;
  color:#fff;
}
.twobox-child-normal{
  padding-bottom:54px!important;
}
@media(max-width:960px){
  .twobox-child{
    width: 65%;
  }
}
@media(max-width:767px){
  .twobox-wrap{
    padding-top:100px;
  }
  .twobox-wrap-normal{
    padding-top:0px;
  }
  .twobox-child{
    width: 100%;
    display: block;
  }
}
@media(max-width:448px){
  .twobox-child{
    padding:34px;
    padding-left:24px;
  }
}
/* ALUMNI */
.alumni-wrap{
  position: relative;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
.bottom-caption{
  position: absolute;
  bottom:0px;
  left:0px;
  width: 100%;
  background: #eee;
  padding:20px;
  opacity: 1;
  transition: .2s ease-in-out;
  -moz-transition: .2s ease-in-out;
  -webkit-transition: .2s ease-in-out;
  z-index: 2;
}
.alumni-wrap:hover > .bottom-caption{
  opacity: 1;
  padding-bottom:60px;
}
.link-detail{
  font-size: 14px;
  position: absolute;
  bottom:15px;
  opacity: 0;
  transition: .2s ease-in-out;
  -moz-transition: .2s ease-in-out;
  -webkit-transition: .2s ease-in-out;
}
.alumni-wrap:hover > .bottom-caption .link-detail{
  opacity: 1;
}
.contents{
  padding:40px;
  padding-bottom:120px;
  width: 60%;
  display: inline-block;
  /*min-height: 450px;*/
  position: relative;
}
.photos-modal{
  width: 40%;
  position: absolute;
  top:0;
  right:0;
  bottom:0;
  background-color: #eee;
}
@media(max-width:767px){
  .contents{
    padding:20px;
    width: 50%;
    padding-bottom:120px;
  }
  .photos-modal{
    width: 50%;
  }
}
@media(max-width:467px){
  .contents{
    width: 100%;
  }
  .photos-modal{
    display: none;
  }
}
.inputForm{
  padding:13px 15px;
  border:1px solid #ddd;
  margin-bottom:20px;
}
.inputForm:focus{
  border:1px solid #212121;
  outline: none;
}
.partner-list{
    vertical-align: middle;
}
.grayscale{
  -webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
  filter: grayscale(100%);
}

/* FAQ */
.faq-wrap, .thin-section{
  padding:50px 0px;
  max-width: 800px;
  margin:0 auto;
}
.faq-wrap .group{
  margin-bottom:20px;
}
.panel-question, .panel-answer{
  display: block;
  width: 100%;
  padding:25px;
  border:1px solid #ccc;
  color:#212121;
  position: relative;
}
.panel-answer{
  border-top:0px;
  font-size: 16px;
}
.panel-question:after{
  content: '';
  width: 0%;
  height: 3px;
  background: #dedede;
  position: absolute;
  bottom:0;
  left:0;
  opacity: 0%;
  transition: .3s ease-in-out;
}
.panel-question:hover:after{
  width: 100%;
  opacity: 100%;
}
@media(max-width:767px){
  .panel-answer{
    font-size: 14px;
  }
}
.panel-question:hover, .panel-question:focus{
  text-decoration: none;
}
