@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
:root {
  --cmain: #a82f73;
  --csec: #f08c4d;
  --cter: #552e6a;
  --light1: #f7f8f7;
  --light2: #e7e7e7;
  --dark1: #333;
  --dark2: #333;
}
.bgmain{
  background-color: var(--cmain)!important;
}
.bgsec{
  background-color: var(--csec)!important;
}
.bgter{
  background-color: var(--cter)!important;
}
.tmain{
  color: var(--cmain)!important;
}
.tsec{
  color: var(--csec)!important;
}
.tter{
  color: var(--cter)!important;
}
@font-face {
  font-family: 'harabara';
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/Harabara.eot); /* For IE6-8 */
  src: local('Harabara'),
       url(../fonts/Harabara.woff2) format('woff2'),
       url(../fonts/Harabara.woff) format('woff'),
       url(../fonts/Harabara.ttf) format('truetype');
}
@font-face {
  font-family: 'Material Icons';
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/MaterialIcons-Regular.eot); /* For IE6-8 */
  src: local('Material Icons'),
       local('MaterialIcons-Regular'),
       url(../fonts/MaterialIcons-Medium.woff2) format('woff2'),
       url(../fonts/MaterialIcons-Regular.woff) format('woff'),
       url(../fonts/MaterialIcons-Regular.ttf) format('truetype');
}
.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px; 
  display: inline-block;
  width: 1em;
  height: 1em;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;

  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;

  -moz-osx-font-smoothing: grayscale;

  font-feature-settings: 'liga';
}
.poppins-thin {
  font-family: "Poppins", sans-serif;
  font-weight: 100;
  font-style: normal;
}

.poppins-extralight {
  font-family: "Poppins", sans-serif;
  font-weight: 200;
  font-style: normal;
}

.poppins-light {
  font-family: "Poppins", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.poppins-regular {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.poppins-medium {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.poppins-semibold {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-style: normal;
}

.poppins-bold {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.poppins-extrabold {
  font-family: "Poppins", sans-serif;
  font-weight: 800;
  font-style: normal;
}

.poppins-black {
  font-family: "Poppins", sans-serif;
  font-weight: 900;
  font-style: normal;
}

.poppins-thin-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 100;
  font-style: italic;
}

.poppins-extralight-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 200;
  font-style: italic;
}

.poppins-light-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 300;
  font-style: italic;
}

.poppins-regular-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: italic;
}

.poppins-medium-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: italic;
}

.poppins-semibold-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-style: italic;
}

.poppins-bold-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: italic;
}

.poppins-extrabold-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 800;
  font-style: italic;
}

.poppins-black-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 900;
  font-style: italic;
}
.mh100{min-height: 100%;}
.pl0{padding-left: 0!important;}
.pr0{padding-right: 0!important;}
.pt0{padding-top: 0!important;}
.pb0{padding-bottom: 0!important;}
.ml0{margin-left: 0!important;}
.mr0{margin-right: 0!important;}
.mt0{margin-top: 0!important;}
.mb0{margin-bottom: 0!important;}
.mt10{margin-top:10px;}
.small-text{
  font-size:.8rem;
  line-height: 24px;
}
.italic{
  font-style: italic;
}
.no-margin{
  margin: 0 !important;
}
.no-padding{
  padding: 0 !important;
}
.mt10{
  margin-top:10px;
}
.mt50{
  margin-top:50px;
}
.mt100{
  margin-top:100px;
}
.pt10{
  padding-top:10px;
}
.pt50{
  padding-top:50px;
}
.pt100{
  padding-top:100px;
}
html {
  scroll-behavior: smooth;
}
html, body {
  width: 100%;
  height: 100%;
  min-height: 100%;
}
.bodybg {
  background-color:#fff;
  background-image: url('../img/p01.png'), url('../img/p02.png'), url('../img/p03.png'), url('../img/p04.png');
  background-repeat: no-repeat;
  background-position: left top, right top, left bottom, right bottom;
  background-attachment: fixed;
}
@media only screen and (max-width : 599px) {
  body{
    background-size: 100px;
  }
}
html, body, input{
  font-family: "Poppins", sans-serif;
  font-style: normal;
  font-size: 1rem;
  font-weight: 400;  
}
.container{
  width: 90%;
}
.section{
  overflow: hidden;
}
@media only screen and (max-width : 599px) {
  .section .valign-wrapper{
    display: block;
  }
}
.overlay{
  position: absolute;
  top:0;
  left:0;
  width: 95%;
  height:95%;
  background-color: rgba(255, 255, 255, .75);
  border-radius: 20px;
  padding: 10px;
  margin: 20px;
  overflow: hidden;  
}
a, nav ul a, nav a{
  font-family: "Poppins", sans-serif;
  font-style: normal;
  font-size: 1rem;
  font-weight: 600;  
  color: var(--cmain);
}
h1, h2, h3, h4, h5, h6, .card-title{
  font-family: 'harabara', serif;
  letter-spacing: 2px;
  text-transform: capitalize;
  color: var(--cmain);
}
.garis {
  display: block;
  text-align: center;
  overflow: hidden;
  white-space: nowrap; 
}
.garis > span {
  position: relative;
  display: inline-block;
}
.garis > span:before,
.garis > span:after {
  content: "";
  position: absolute;
  top: 50%;
  width: 9999px;
  height: 1px;
  background: #aaa;
}
.garis > span:before {
  right: 100%;
  margin-right: 5px;
}
.garis > span:after {
  left: 100%;
  margin-left: 5px;
}
.garis .gtext{
  padding: 0 5px;
  font-size: .75rem;
}
.parallax img{
  filter: blur(5px);
}
.parallax:after{
  content: '';
  position: absolute;
  background-image: linear-gradient(to left, rgba(245, 246, 252, 0), rgba(204, 204, 204, 0.73)),
  linear-gradient(to right, rgba(245, 246, 252, 0), rgba(204, 204, 204, 0.73));
  width: 100vw;
  height: 100vh;
  background-size: cover;
}
.progress .indeterminate{
  background-color: var(--cmain);
}
.progress{
  background-color: var(--light1);
}
/*
===================================================================================
NAV
===================================================================================
*/
nav{
  z-index:1;
/*  background-color: rgba(204, 204, 204,.9);*/
  background-color: #fff;
  box-shadow: none;
  top:60px;
  transition: ease 0.4s;
}
.nav-scroll{
  top:0;
  background-color: #fff;  
  transition: ease 0.4s;
}
.dropdown-content{
/*  background-color: #ccc;*/
  box-shadow: none;
  min-width: 240px;
}
.dropdown-content li>a, .dropdown-content li>span{
  color: var(--cmain);
}
.dropdown-content .divider{
  background-color: #eee;
}
.dropdown-trigger > i{
  color: var(--cmain);
}
.dropdown-trigger:hover > i{
  color: var(--cter);
  transform: scale(2);
  animation: wave 0.8s linear forwards;
}
#ddApps.dropdown-content, #ddSimulation.dropdown-content, #ddTemplate.dropdown-content{
  min-width: 500px!important;
}
/*
===================================================================================
Card
===================================================================================
*/
.card-image{
  border-radius: 20px 20px 0 0;
  overflow: hidden;
}
.card{
border-radius: 20px;
/*background: #eee;*/
/*box-shadow:  
  inset 5px 5px 20px #fff,
  inset -5px -5px 30px #aaa,
  15px 15px 30px #bbb,
  -15px -15px 30px #fff,
  -15px 15px 30px #bbb,
  15px -15px 30px #bbb;*/
/*box-shadow: 5px 5px 20px rgba(0,0,0,0.1);*/
}
.card .card-title{
  font-weight: 800;
}
.card .card-action:last-child{
  border-radius: 0 0 20px 20px;  
}
/*
===================================================================================
Logo
===================================================================================
*/
.logo-wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  max-width: 380px;
  height: auto;
}
#logo-bs{
  overflow: visible;
}
#logo-bs .word, #b1{
  fill: var(--cmain);
  opacity: 0;
}
#b2{
  fill: var(--csec);
  opacity: 0;
}
#logo-bs #dp, .logo-wrapper #logo-bs #dotid {
  fill: var(--cter);
  opacity: 0;
}
#logo-bs #mask #alpha, .logo-wrapper #logo-bs2 #mask #alpha {
  fill: var(--cmain);
}
#iso {
  fill: var(--cmain);
  opacity: 0;
  -webkit-mask: url(#mask);
          mask: url(#mask);
}
.control {
  margin: 2em 0;
  position: fixed;
  left: 40%;
  bottom: 50px;
  width: 100%;
}
.control ul {
  display: block;
  margin: 0;
}
.control ul li {
  display: inline-block;
  margin: 1em 0.5em;
}
.control ul li a {
  border-bottom: 1px solid var(--csec);
  color: var(--cmain);
  text-decoration: none;
  padding: 0.7em 2.5em 0.5em;
  font-size: 0.9em;
  transition: color 500ms ease, border 500ms ease;
}
.control ul li a:hover {
  color: var(--csec);
  border-bottom: 2px solid var(--cmain);
}
.cf:before,
.cf:after {
  content: " ";
  display: table;
}
.cf:after {
  clear: both;
}
.cf {
  *zoom: 1;
}   
/*
===================================================================================
Login
===================================================================================
*/
.fcenter-container{
  display: flex;
  justify-content: center; /* center horizontally */
  align-items: center; /* center vertically */  
/*  height: 100vh;*/
}
#flogin{
  width: 30vw;
}
#flogin .card-content{
  width: 100%;
}
#flogin img{
  height:20vh;
  display:block;
  margin: 0 auto;
}
@media only screen and (max-width : 599px) {
  #flogin{
    width: 90vw;
  }
}
/*
===================================================================================
input
===================================================================================
*/
input:not([type]), input[type=text]:not(.browser-default), input[type=password]:not(.browser-default), input[type=email]:not(.browser-default), input[type=url]:not(.browser-default), input[type=time]:not(.browser-default), input[type=date]:not(.browser-default), input[type=datetime]:not(.browser-default), input[type=datetime-local]:not(.browser-default), input[type=tel]:not(.browser-default), input[type=number]:not(.browser-default), input[type=search]:not(.browser-default), textarea.materialize-textarea{
  border-bottom:1px solid #9e9e9e;
}
input:not([type]):focus:not([readonly]), input[type=text]:not(.browser-default):focus:not([readonly]), input[type=password]:not(.browser-default):focus:not([readonly]), input[type=email]:not(.browser-default):focus:not([readonly]), input[type=url]:not(.browser-default):focus:not([readonly]), input[type=time]:not(.browser-default):focus:not([readonly]), input[type=date]:not(.browser-default):focus:not([readonly]), input[type=datetime]:not(.browser-default):focus:not([readonly]), input[type=datetime-local]:not(.browser-default):focus:not([readonly]), input[type=tel]:not(.browser-default):focus:not([readonly]), input[type=number]:not(.browser-default):focus:not([readonly]), input[type=search]:not(.browser-default):focus:not([readonly]), textarea.materialize-textarea:focus:not([readonly]){
  border-bottom: 1px solid var(--cmain);
  -webkit-box-shadow: 0 2px 0 0 var(--cmain);
  box-shadow: 0 2px 0 0 var(--cmain);  
}
input:not([type]):focus:not([readonly])+label, input[type=text]:not(.browser-default):focus:not([readonly])+label, input[type=password]:not(.browser-default):focus:not([readonly])+label, input[type=email]:not(.browser-default):focus:not([readonly])+label, input[type=url]:not(.browser-default):focus:not([readonly])+label, input[type=time]:not(.browser-default):focus:not([readonly])+label, input[type=date]:not(.browser-default):focus:not([readonly])+label, input[type=datetime]:not(.browser-default):focus:not([readonly])+label, input[type=datetime-local]:not(.browser-default):focus:not([readonly])+label, input[type=tel]:not(.browser-default):focus:not([readonly])+label, input[type=number]:not(.browser-default):focus:not([readonly])+label, input[type=search]:not(.browser-default):focus:not([readonly])+label, textarea.materialize-textarea:focus:not([readonly])+label{
  color: var(--cmain);
}
.input-field>label:not(.label-icon).active {
  -webkit-transform: translateY(-20px) scale(0.8);
  transform: translateY(-20px) scale(0.8);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
}
.input-field>label{
/*  top:6px;*/
}
.input-field .prefix{
  top:.8rem;
  color:#9e9e9e;
}
.input-field .prefix.active {
  color: var(--cmain);
}
.input-field{
  border-radius: 10px;
  border: 2.5px solid transparent;
  box-shadow: inset 5px 5px 5px #ccc,
              inset -5px -5px 5px #ffffff;
  margin:.5rem 0;
}
.input-field:hover{
  box-shadow: inset 5px 5px 5px #aaa,
              inset -5px -5px 5px #ffffff;  
}
.input-field:hover > * {
  color:var(--dark1);  
}
.input-field:hover > input {
  border-bottom: 1px solid var(--dark1);  
}
.input-field:hover > i {
  animation: wave 0.8s linear forwards;
}
.input-field.btn-container{
  padding:0.2rem!important;
}
.toggle-password {
  float: right;
  position: absolute;
  right: 10px;
  top: 17px;
  cursor: pointer;
  z-index: 2;
  color: #aaa;
}

/*
===================================================================================
button
===================================================================================
*/
.btn-socmed {
  background: #FFFFFF;
  color: #777777;
  border: 1px solid #C7C7C7;
  font-family: Montserrat;
  font-style: normal;
  font-weight: 500;
  font-size: 14px;
  line-height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding:5px 0!important;
}
.btn-socmed:focus, .btn-socmed:hover{
  background-color: var(--light1);
}
.btn, .btn-large, .btn-small{
  background-color: var(--cmain);
  color:var(--light1);
  border-radius: 10px;
  margin:0 2px;
  box-shadow:none;
}
.btn:hover, .btn-large:hover, .btn-small:hover{
  color:var(--light1);
  background-color: var(--cmain);
  transform: scale(1.02);
  box-shadow:none;
}
.btn:hover>i, .btn-large:hover>i, .btn-flat:hover>i {
  animation: wave 0.8s linear forwards infinite;
}
.btn:hover>img{
  animation: gedein 1s linear forwards infinite;
}
.button {
  --radius: 10px;
  cursor: pointer;
  border-radius: var(--radius);
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.3);
  border: none;
  box-shadow: 0 0.5px 0.5px 1px rgba(255, 255, 255, 0.2),
              inset 10px 10px 10px #bbb,
              inset -10px -10px 10px #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  transition: all 0.3s ease;
  min-width: 200px;
  padding: 20px;
  height: 60px;
  font-family: "harabara", "Poppins", sans-serif;
  letter-spacing: 2px;
  font-style: normal;
  font-size: 1rem;
  font-weight: 600;
}
.button:hover {
  transform: scale(1.01);
  background-color: var(--light2);
  box-shadow: 0 0 1px 2px rgba(255, 255, 255, 0.3),
    0 5px 5px rgba(0, 0, 0, 0.2), 0 5px 3px -3px rgba(0, 0, 0, 0.04);
}
.button:active {
  transform: scale(1);
  box-shadow: 0 0 1px 2px rgba(255, 255, 255, 0.3),
    0 10px 3px -3px rgba(0, 0, 0, 0.2);
}
.button:after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: var(--radius);
  border: 2.5px solid transparent;
  background: linear-gradient(var(--light1), var(--light2)) padding-box,
    linear-gradient(to bottom, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.45))
      border-box;
  z-index: 0;
  transition: all 0.4s ease;
}
.button:hover::after {
  transform: scale(1.01, 1.02);
  box-shadow: inset 0 -1px 3px 0 rgba(255, 255, 255, 1);
}
.button::before {
  content: "";
  inset: 7px 6px 6px 6px;
  position: absolute;
  background: linear-gradient(to top, var(--light1), var(--light2));
  border-radius: 30px;
  filter: blur(0.5px);
  z-index: 2;
}
.state p {
  display: flex;
  align-items: center;
  justify-content: center;
}
.state .icon {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  transform: scale(1.25);
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}
.state .icon svg,  .state .material-icons {
  overflow: visible;
}

/* Outline */
.outline {
  position: absolute;
  border-radius: inherit;
  overflow: hidden;
  z-index: 1;
  opacity: 0;
  transition: opacity 0.4s ease;
  inset: -2px -3.5px;
}
.outline::before {
  content: "";
  position: absolute;
  inset: -100%;
  background: conic-gradient(
    from 180deg,
    transparent 60%,
    var(--cmain) 80%,
    transparent 100%
  );
  animation: spin  2s linear infinite;
  animation-play-state: paused;
}
@keyframes gedein {
  30% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1.0);
  }
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.button:hover .outline {
  opacity: 1;
}
.button:hover .outline::before {
  animation-play-state: running;
}
.state p span {
  display: block;
  opacity: 0;
  animation: wave 0.8s ease forwards calc(var(--i) * 0.03s);
}
.button:hover p span {
  opacity: 1;
  animation: wave 0.5s ease forwards calc(var(--i) * 0.02s);
}
.button:focus p span {
  opacity: 1;
  animation: disapear 0.6s ease forwards calc(var(--i) * 0.03s);
}
@keyframes wave {
  30% {
    opacity: 1;
    transform: translateY(4px) translateX(0) rotate(0);
  }
  50% {
    opacity: 1;
    transform: translateY(-3px) translateX(0) rotate(0);
    color: var(--cmain);
  }
  100% {
    opacity: 1;
    transform: translateY(0) translateX(0) rotate(0);
  }
}
@keyframes slideDown {
  0% {
    opacity: 0;
    transform: translateY(-20px) translateX(5px) rotate(-90deg);
    color: var(--cmain);
    filter: blur(5px);
  }
  30% {
    opacity: 1;
    transform: translateY(4px) translateX(0) rotate(0);
    filter: blur(0);
  }
  50% {
    opacity: 1;
    transform: translateY(-3px) translateX(0) rotate(0);
  }
  100% {
    opacity: 1;
    transform: translateY(0) translateX(0) rotate(0);
  }
}
@keyframes disapear {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translateX(5px) translateY(20px);
    color: var(--cmain);
    filter: blur(5px);
  }
}

/* Plane */
.state--default .icon svg {
  animation: land 0.6s ease forwards;
}
.button:hover .state--default .icon {
  transform: rotate(45deg) scale(1.25);
}
.button:focus .state--default svg {
  animation: takeOff 0.8s linear forwards;
}
.button:focus .state--default .icon {
  transform: rotate(0) scale(1.25);
}
@keyframes takeOff {
  0% {
    opacity: 1;
  }
  60% {
    opacity: 1;
    transform: translateX(70px) rotate(45deg) scale(2);
  }
  100% {
    opacity: 0;
    transform: translateX(160px) rotate(45deg) scale(0);
  }
}
@keyframes land {
  0% {
    transform: translateX(-60px) translateY(30px) rotate(-50deg) scale(2);
    opacity: 0;
    filter: blur(3px);
  }
  100% {
    transform: translateX(0) translateY(0) rotate(0);
    opacity: 1;
    filter: blur(0);
  }
}

/* Contrail */
.state--default .icon:before {
  content: "";
  position: absolute;
  top: 50%;
  height: 2px;
  width: 0;
  left: -5px;
  background: linear-gradient(to right, transparent, rgba(0, 0, 0, 0.5));
}
.button:focus .state--default .icon:before {
  animation: contrail 0.8s linear forwards;
}
@keyframes contrail {
  0% {
    width: 0;
    opacity: 1;
  }
  8% {
    width: 15px;
  }
  60% {
    opacity: 0.7;
    width: 80px;
  }
  100% {
    opacity: 0;
    width: 160px;
  }
}

/* States */
.state {
  padding-left: 29px;
  z-index: 2;
  display: flex;
  position: relative;
}
/*.state--default span:nth-child(4) {
  margin-right: 5px;
}*/
.state--sent {
  display: none;
}
.state--sent svg {
  transform: scale(1.25);
  margin-right: 8px;
}
.button:focus .state--default {
  position: absolute;
}
.button:focus .state--sent {
  display: flex;
}
.button:focus .state--sent span {
  opacity: 0;
  animation: slideDown 0.8s ease forwards calc(var(--i) * 0.1s);
}
.button:focus .state--sent .icon svg {
  opacity: 0;
  animation: appear 1.2s ease forwards 0.8s;
}
@keyframes appear {
  0% {
    opacity: 0;
    transform: scale(4) rotate(-40deg);
    color: var(--cmain);
    filter: blur(4px);
  }
  30% {
    opacity: 1;
    transform: scale(0.6);
    filter: blur(1px);
  }
  50% {
    opacity: 1;
    transform: scale(1.2);
    filter: blur(0);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
/*
===================================================================================
toast
===================================================================================
*/
#toast-container {
  min-width: 10%;
  top: 40%;
  right: 50%;
  transform: translateX(50%) translateY(0%);
}
.toast{
  background-color: var(--cmain);
}
/*
===================================================================================
Checkbox
===================================================================================
*/
[type="checkbox"].filled-in:checked+span:not(.lever):after{
  border: 2px solid var(--cmain);
  background-color: var(--cmain);  
}
[type="checkbox"]+span:not(.lever){
  line-height: 20px;
  padding-left:30px;
  font-size: .8rem;
  font-style: italic;
}
[type="checkbox"].filled-in:not(:checked)+span:not(.lever):after{
  border: 2px solid #aaa;
}
[type="checkbox"].filled-in:not(.lever)+span:focus{
  animation: wave 0.8s linear forwards;  
}
/*
===================================================================================
Preloader
===================================================================================
*/
.\+\=is-hidden{
display: none;
}
.preloader {
  width: 100%;
  height: 100%;
  background-color: #eee;
  z-index: 999;
  position: absolute;
  top:0;
}
.preloader.is-hidden {
  visibility: hidden;
  opacity: 0; 
  height: 0;
}
.is-loading {
  overflow: hidden; 
}
.precircle {
  border-radius: 190px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.4);
  position: absolute;
  top: 50%;
  left: 50%;
  opacity: 0;
}
.precircle1 {
  background-color: var(--cmain);
  width: 200px;
  height: 200px;
  margin-top: -100px;
  margin-left: -100px;
}
.precircle2 {
  background-color: #eee;
  width: 190px;
  height: 190px;
  margin-top: -95px;
  margin-left: -95px;
}
.precircle3 {
  background-image: url("../img/logo-cmain.svg");
  background-position: 50% 60%;
  background-size: 182px;
  background-color: #eee;
  width: 180px;
  height: 180px;
  margin-top: -90px;
  margin-left: -90px;
}
/*
===================================================================================
Woro-woro
===================================================================================
*/
.woro{
  height:60px;
  background-image: url('../img/woro-woro/toprow.svg');
  background-size: cover;
  background-position: center center;
}
.woro, .woro a{
  margin:0;
  line-height: 0;
}
.woro img{
  width: auto;
  height: 60px;
  margin:0 auto;
}
@media only screen and (max-width : 599px) {
  .woro{
    background-image: url('../img/woro-woro/toprow-small.svg');
  }
}
/*
===================================================================================
Slider
===================================================================================
*/
.slider .slides li .caption{
  top:10%;
  width:100%;
  left:5%;
}
.slider .indicators{
  text-align: center;
  left:0;
  bottom:48px;
  z-index: 800;
}
.slider .indicators .indicator-item{
  background-color: var(--cmain);
  margin: 0 5px;
}
.slider .indicators .indicator-item.active{
  background-color: var(--csec);
  border-radius: 20px;
  animation: manjang .5s ease-in;
  width:100px;
}
.img-slide {
  width: 500px!important;
  height: 405px!important;
  transform: translatey(0px);
  animation: float 4s ease-in-out infinite;
  background-size: cover!important;
  filter:drop-shadow(20px 20px 20px rgba(0,0,0,.3));
}
.div-slide-caption p{
  margin-bottom:20px;
  font-size: 2rem;
  font-weight: 600;
}
.slider .slides li .btn img, .btn img{
  width: 30px;
  height:auto;
  float: left;
  left:-15px;
  top:5px;
  margin:5px 0;
  color: #fff;
  filter: invert(100%);
}
@media only screen and (max-width : 599px) {
  .slider .indicators{
    left:0;
    text-align: center;
  }
  .img-slide {
     width: 300px!important;
     height: 240px!important;
     right:0;
  }
  .slider .slides li .caption{
    top:5%;
    left:5%;
    width: 95%;
  }
  .div-slide-img{
    text-align: right;
  }
  .div-slide-caption h3{
    margin:5px 0;
    font-size:2rem;
  }
  .div-slide-caption p{
    margin:10px 0;
    font-size:1.0rem;
  }
}

@keyframes manjang {
  0% {
    width: 16px;
  }
  100% {
    width:100px;
  }
}
@keyframes float {
  0% {
    transform: translatey(0px);
  }
  50% {
    transform: translatey(-20px);
  }
  100% {
    transform: translatey(0px);
  }
}
/*
===================================================================================
Hamburger
===================================================================================
*/
.hamburger .line{
  width: 25px;
  height: 3px;
  background-color: var(--cmain);
  display: block;
  margin: 3px auto;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.hamburger:hover{
  cursor: pointer;
}
#hamburger-9{
  position: relative;
  top:30%;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
#hamburger-9.is-active{
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
#hamburger-9:before{
  content: "";
  position: absolute;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 30px;
  height: 30px;
  border: 0px solid transparent;
  top: calc(50% - 15px);
  left: calc(50% - 15px);
  border-radius: 100%;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
#hamburger-9.is-active:before{
  border: 0px solid var(--cmain);
}
#hamburger-9.is-active .line{
  width: 25px;
}
#hamburger-9.is-active .line:nth-child(2){
  opacity: 0;
}
#hamburger-9.is-active .line:nth-child(1){
  -webkit-transform: translateY(7px);
  -ms-transform: translateY(7px);
  -o-transform: translateY(7px);
  transform: translateY(7px);
}
#hamburger-9.is-active .line:nth-child(3){
  -webkit-transform: translateY(-6px) rotate(90deg);
  -ms-transform: translateY(-6px) rotate(90deg);
  -o-transform: translateY(-6px) rotate(90deg);
  transform: translateY(-6px) rotate(90deg);
}
/*
===================================================================================
Balon
===================================================================================
*/
.balon{
  /*background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' width='370px' height='300px' version='1.1' style='shape-rendering:geometricPrecision; text-rendering:geometricPrecision; image-rendering:optimizeQuality; fill-rule:evenodd; clip-rule:evenodd' viewBox='0 0 1043.92 849.05' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:xodm='http://www.corel.com/coreldraw/odm/2003'%3E%3Cdefs%3E%3Cstyle type='text/css'%3E%3C!%5BCDATA%5B .fil0 %7Bfill:%23a82f73;fill-rule:nonzero%7D%5D%5D%3E%3C/style%3E%3C/defs%3E%3Cg id='Layer_x0020_1'%3E%3Cmetadata id='CorelCorpID_0Corel-Layer'/%3E%3Cpath class='fil0' d='M132.61 114.79c210.81,-218.09 650.56,-112.56 755.65,207.96 67.35,205.46 23.39,339.59 155.66,511.56 -159.32,-123.45 -476.39,44.36 -677.06,9.99 -386.45,-66.36 -472.77,-482.44 -234.25,-729.51l0.01 0z'/%3E%3C/g%3E%3C/svg%3E");*/
/*  display: block;*/
  width:470px;
  height: 383px;
  color:var(--cmain);
  /*filter:drop-shadow(10px 10px 15px rgba(0,0,0,.5));*/
/*  background-color: #000;*/
/*  background-attachment: fixed; */
/*  background-size: contain; 
  background-repeat: no-repeat; 
  background-origin: content-box;
  background-clip: content-box;
  background-blend-mode: overlay;
*/}
.balon .row{
  margin: 0 100px 0 60px;
  /*color: var(--light1);*/
}
@media only screen and (max-width : 599px) {
  .balon{
    background-image: none;
/*    background-color: var(--cmain);*/
    width: 100%;
    height: 240px;
  }
  .balon .row{
    color: var(--cmain);
    margin: 0;
    text-align: center;
  }
  .balon h3{
    margin-top: 0;
  }
}
/*
===================================================================================
Carousel
===================================================================================
*/
.carousel{
  position: relative;
}
#cpromo{
  width: 100%;
  perspective:3000px;
  height:300px!important;
}
#cpromo .carousel-item {
  width: 200px!important;
  height: 270px!important;
}
#cclient{
  width: 100%;
  /*perspective:3000px;*/
  height:150px!important;
}
#cclient .carousel-item {
  width: 150px!important;
  /*height: 150px!important;*/
  top:80%;
  transform: translateY(50%);
}
#cberita{
  width: 100%;
/*  perspective:3000px;*/
  height:500px!important;
}
#cberita .carousel-item {
  width: 260px!important;
  height: 460px!important;
}
.middle-indicator{
  position:absolute;
  bottom:50%!important;
  transform: translateY(50%)!important;
}
.middle-indicator a{
  width: 44px;
  height: 44px;
  background: var(--cmain);
  color:#fff;
  -moz-border-radius: 50px;
  -webkit-border-radius: 50px;
  border-radius: 50px;   
}
.middle-indicator i{
  font-size: 40px;
}
.middle-indicator a.left{
  left:2px;
}
.middle-indicator a.right{
  right:2px;
}
.content-indicator{
  width: 64px;
  height: 64px;
  background: none;
  -moz-border-radius: 50px;
  -webkit-border-radius: 50px;
  border-radius: 50px; 
}
.indicators{
/*  visibility: hidden;*/
}
.carousel .indicators{
  text-align: center;
  left:0;
  bottom:10px;
  z-index: 998;
}
.carousel .indicators .indicator-item{
  background-color: var(--cmain);
  margin: 0 5px;
  height: 15px;
  width: 15px;
}
.carousel .indicators .indicator-item.active{
  background-color: var(--csec);
  border-radius: 20px;
  animation: manjang .5s ease-in;
  width:100px;
}
/*
===================================================================================
Services
===================================================================================
*/
.services-item{
/*  padding:20px;*/
/*  width: 100%;
  height: 180px;
  max-width: 1280px;
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;*/
}
.services-item .col{
  border-right: 2px solid var(--cmain);
}
.services-item .col:last-child{
  border-right: none;
}
.services-item a, #services h3{
  color: var(--cmain);
}
.services-item .col i:hover{
  animation: wave 0.8s linear forwards;
}
.services-item .col:after{
  display:block;
  content: '';
  border-bottom: solid 5px var(--csec);  
  transform: scaleX(0);  
  transition: transform 250ms ease-in-out;
}
.services-item .col:hover:after, .services-item .col:hover a{
  color: var(--csec);
  transform: scaleX(1); 
}
@media only screen and (max-width : 599px) {
  .services-item .col{
  flex-basis: 0;
  flex-grow: 1;
  min-width: 150px;
  }  
  .services-item{
    display: flex;
    overflow-x: auto;
    overflow-y:hidden;
  }
}
/*
===================================================================================
Pelatihan
===================================================================================
*/

.masking-container {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  overflow: visible;
}

/* Purple SVG background balloon */
.masking-container.mleft::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 120%;
  height: 100%;
  background: url('../img/balon01.svg') no-repeat center / contain;
  opacity: 1;
  z-index: -1;
  transition: transform 0.5s ease;
  top:0;
  left:-10%;
}
.masking-container.mright::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 120%;
  height: 100%;
  background: url('../img/balon02.svg') no-repeat center / contain;
  opacity: 1;
  z-index: -1;
  transition: transform 0.5s ease;
  top:0;
  left:-10%;
}

/* Base masking setup */
.masking-left {
  position: relative;
  width: 100%; /* 10% smaller than background */
  height: 100%;
  mask-repeat: no-repeat;
  mask-size: 90%;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: 90%;
  -webkit-mask-position: center;
  transition: transform 0.5s ease;
  -webkit-mask-image: url('../img/balon01.svg');
  mask-image: url('../img/balon01.svg');
}
.masking-right {
  position: relative;
  width: 100%; /* 10% smaller than background */
  height: 100%;
  mask-repeat: no-repeat;
  mask-size: 90%;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: 90%;
  -webkit-mask-position: center;
  transition: transform 0.5s ease;
  -webkit-mask-image: url('../img/balon02.svg');
  mask-image: url('../img/balon02.svg');
}

/* Image inside mask */
.imgmask {
  position: relative;
  width: 100%;
  height: 100%;
  transition: transform 0.5s ease;
  object-fit: fill;
}

/* Hover effect — both left and right */
.masking-left:hover, .masking-right:hover {
  transform: scale(1.1);
}

/* Responsive adjustments */
@media only screen and (max-width: 599px) {
  .masking {
    width: 90%;
    height: 90%;
    mask-size: 90%;
    -webkit-mask-size: 90%;
  }
}
@supports ((animation-timeline: scroll()) and (animation-range: 0% 100%)) {
  /* Scroll-Driven Animations related styles go here */
  /* This check excludes Firefox Nightly which only has a partial implementation at the moment of posting (mid-September 2024). */
  @keyframes reveal {
    from {
      opacity: 0;
      transform: translateY(600px);
    }
    40% {
      opacity: 1;
      transform: translateY(0px);
    }
  }
  .section, .page-footer {
    animation: reveal 2s linear both;
/*    animation-delay: 1s;*/
    animation-timeline: view();
  }
  @keyframes sticky-header {
    from {
      top:60px;
      box-shadow: 0px 0px 0px rgba(0,0,0,0.5);
    }
    to {
      top:0px;
      box-shadow: 0px 0px 50px rgba(0,0,0,0.5);
    }
  }
  nav {
    position: fixed;
    top: 60px;
    animation: sticky-header linear forwards;
    animation-timeline: scroll();
    animation-range: 0% 2%;
  }
}
/*
===================================================================================
chip
===================================================================================
*/
.chip{
  letter-spacing: 0;
}
@media only screen and (max-width : 599px) {
  .chip{
    /*display: contents;*/
    height:20px;
    font-size:10px;
    line-height:20px;
  }
  .chip-container{
    margin-top:20px;
  }
}
