@import url('https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap');
body{
    font-family: Inter;
}
.page:not(.h-custom){
    min-height: 100vh;
}
.page:nth-child(1){
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 74.95%, #FFFFFF 100%),radial-gradient(75.42% 246.19% at 24.58% 38.33%, #FFFFFF 0%, #DDE6FF 65.58%, #FEE1FF 96.35%) /* warning: gradient uses a rotation that is not supported by CSS and may not behave as expected */;
}
.bg-dark .page:nth-child(1){
    background: none !important;
}
.btn-login{
    background: rgba(255, 255, 255, 1);
    padding: 8px, 12px, 8px, 12px;
    border-radius: 100px;
}
.nav-item{
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}
.navbar-brand img{
    height: 70px;
    width: 70px;
}
.bg-dark .navbar-brand img{
    height: 26px;
    width: 52px;
}
.section-1 img{
    width: 140px;
}
.section-1 h1{
    font-size: 65px;
    font-weight: 600;
    background: linear-gradient(91.15deg, #0043F0 1.44%, #D700C1 102.05%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.section-1 p.title{
    font-size: 24px;
}
.section-1 p.sub-title{
    font-size: 20px;
}
.section-1 .btn-jadwal{
    padding: 15px;
    border-radius: 100px;
    background: rgba(54, 92, 180, 1);
    box-shadow: 4px 4px 12px 0px rgba(0, 67, 240, 0.25);
    color: rgba(255, 255, 255, 1);
    font-size: 20px;
    font-weight: bold;
    width: 206px !important;
    height: 64px !important;
}
.section-1 .img-logo{
    margin-top: 150px;
}
.h-100vh{
    height: 100vh;
}
.navbar.fixed-top{
    background: rgba(250,255,255,.5);
    height: 80px;
    width: 100vw;
}
.navbar-collapse.show{
    background: rgba(250,255,255,.5);
    width: 100vw;
}
.bg-dark .navbar.fixed-top{
    background: none !important;
}
.mt-7{
    margin-top: 7rem !important;
}

.col-xs-5ths,
.col-sm-5ths,
.col-md-5ths,
.col-lg-5ths {
    position: relative;
    min-height: 1px;
    padding-right: 10px;
    padding-left: 10px;
}

.col-xs-5ths {
    width: 20%;
    float: left;
}

@media (min-width: 768px) {
    .col-sm-5ths {
        width: 20%;
        float: left;
    }
}

@media (min-width: 992px) {
    .col-md-5ths {
        width: 20%;
        float: left;
    }
}

@media (min-width: 1200px) {
    .col-lg-5ths {
        width: 20%;
        float: left;
    }
}

/* */
.container {
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
  }
  @media (min-width: 768px) {
      .container {
          width: 750px;
      }
  }
  @media (min-width: 992px) {
    .container {
        width: 970px;
    }
  }
  @media (min-width: 1200px) {
      .container {
          width: 1170px;
      }
  }



      @media (max-width: 767px) {
          #featureContainer .carousel-inner .carousel-item > div {
              display: none;
          }
          #featureContainer .carousel-inner .carousel-item > div:first-child {
              display: block;
          }
      }

      #featureContainer .carousel-inner .carousel-item.active,
      #featureContainer .carousel-inner .carousel-item-next,
      #featureContainer .carousel-inner .carousel-item-prev {
          display: flex;
      }

      /* medium and up screens */
      @media (min-width: 768px) {
          
          #featureContainer .carousel-inner .carousel-item-end.active,
          #featureContainer .carousel-inner .carousel-item-next {
              transform: translateX(20%);
          }
          
          #featureContainer .carousel-inner .carousel-item-start.active, 
          #featureContainer .carousel-inner .carousel-item-prev {
              transform: translateX(-20%);
          }
          #featureContainer .card img{
              max-height: 80px;
          }
          #featureContainer .carousel-item{
              justify-content: space-between;
          }
      }
      @media (max-width: 767px) {
          #featureContainer .card img{
              max-height: 70px;
          }
      }
      #featureContainer .carousel-inner .carousel-item-end,
      #featureContainer .carousel-inner .carousel-item-start { 
        transform: translateX(0);
      }
      #featureContainer .card{
          border: 0;
          background: none !important;
      }
      #featureContainer .card{
          position: relative;
          height: 100% !important;
          vertical-align: middle;
      }
      #featureContainer .card .card-img-overlays{
          position: absolute;
          bottom: 15%;
          left: 10%;
      }
      #featureContainer .float-end{
          padding-top: 10px;
      }
/*  */

/* GALLERY */
.gallery-container {
	align-items: center;
	display: flex;
	height: 100vh;
	margin: 0 auto;
	max-width: 80vw;
	position: relative;
}

.gallery-item {
	height: 500px;
	opacity: 1;
	position: absolute;
	transform: translateX(-50%);
    transition: all 0.3s ease-in-out;
	width: 651px;
	z-index: 0;
}

.gallery-item-1{
    z-index: 0;
    left: 25%;
    height: 400px;
    opacity: 0;
    transition: opacity 0.75s;
}

.gallery-item-2{
    left: 50%;
    z-index: 1;
}

.gallery-item-3{
    z-index: 0;
    left: 75%;
    height: 400px;
    opacity: 0;
    transition: opacity 0.75s;
    transition-delay: 0.75s;
}

.mb-7{
    margin-bottom: 100px;
}
.my-7{
    margin-top: 100px;
    margin-bottom: 100px;
}

.section-3 h1{
    font-family: Inter;
    font-size: 62px;
    font-weight: 600;
    line-height: 75px;
    letter-spacing: 0em;
    text-align: center;
    max-width: 740px;
}
.section-3 .card-first{
    height: 100%;
}
.section-3 .card{
    padding: 1.5rem;
    border-radius: 20px;
    background: rgba(245, 245, 245, 1);
    border: none !important;
    max-height: 653px;
}
.section-3 h3{
    font-weight: 600;
    font-size: 32px !important;
    text-align: left !important;
    margin-bottom: 1rem !important;
}
.section-3 p{
    text-align: left !important;
    font-size: 16px;
    font-weight: 500;
}
.section-3 img.bottom-right{
    position: absolute;
    right:0px;
    bottom: 0px;
}
.section-3 img.bottom-center{
    position: absolute;
    bottom: 0px;
    width: 100%;
    left:0px;
}

.h-100{
    height: 100%;
}
.h-653{
    height: 653px;   
}
.h-410{
    height: 410px;   
}
.h-220{
    height: 220px;   
}

.section-4 .card{
    border-radius: 20px;
    border: none !important;
    height: 493px;
}
.section-4 img{
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 0;
    left: 0;
}
.section-4 h3, .section-4 p{
    z-index: 1;
    position: relative;
    color: white;
    text-align: left;
}
.bg-grey{
    background: rgba(246, 246, 246, 1) !important;
}

.section-5 h1{
    font-size: 62px;
    font-weight: 600;
    width: 626px;
}

.section-5 .card{
    box-shadow: 0px 4px 10px 0px rgba(197, 197, 197, 0.25);
    border-radius: 10px;
    background: rgba(255, 255, 255, 1);
    height: 337px;
    border: none;
}
.section-5 .card-body{
    padding: 2rem !important; 
}

.section-5 p{
    font-size: 14px;
    font-weight: 400;
}
.section-5 h4{
    font-size: 20px;
    font-weight: 600;
}

.my-6{
    margin-top: 5rem;
    margin-bottom: 5rem;
}
.mt-6{
    margin-top: 5rem;
}
.h-50{
    height: 50vh !important;
}
.section-6{
    height: 353px;
}
.section-7{
    height: 276px;
}
.section-6 img:not(.icon-btn){
    width: 100%;
    height: 353px;
    position: absolute;
    z-index: 0;
    left: 0;
}
.section-6 h1,
.section-6 p{
    color: white;
    position: relative;
    z-index: 1;
}

.section-6 h1{
    font-size: 46px;
}
.section-6 p{
    font-size: 24px;
}

.btn-hubungi{
    width: 171px;
    height: 59px;
    padding: 10px 20px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 1);
    font-size: 16px;
    font-weight: 600;
    z-index: 1;
    position: relative;
    border-radius: 30px;
}
.icon-btn{
    width: 16px;
    height: 16px;
    z-index: 1;
    position: relative;
}
.section-7 table td{
    padding: 2px 8px !important;
}
.bold{
    font-weight: 600;
}
body.bg-dark{
    background: #121212 !important;
    background-color: #121212 !important;
    color: white !important;
}

.bg-dark a, .bg-dark table td{
    color: white !important;
}
.bg-dark .card-body{
    background: none;
    border-radius: 20px;
    border: none;
    box-shadow: none;
    padding: 0px;
}
.bg-dark .card{
    border-radius: 20px;
    border: none;
    box-shadow: none;
    background: none;
}
.bg-dark .section-1 img{
    width: 100%;
    height: 100%;
    position: absolute;
    top:0px;
    left: 0px;
    z-index: 0;
}
.bg-dark .section-1 .card-body{
    height: 100vh !important;
}
.bg-dark .section-1 h1,
.bg-dark .section-1 p{
    position: relative;   
    z-index: 1;
}
.bg-dark .section-1 h1{
    font-size: 58px;
    font-weight: 700;
    width: 654px;
    background: unset !important;
    -webkit-background-clip: unset;
    -webkit-text-fill-color: unset;
    margin-left: 7rem;
    margin-bottom: 2rem;
}
.bg-dark .section-1 p{
    font-size: 24px;
    font-weight: 500;
    width: 797px;
    margin-left: 7rem;
}
.bg-dark .section-2 h1{
    font-size: 34px;
    font-weight: 500;
}
.bg-dark .section-3 p{
    font-size: 40px;
    font-weight: 700;
    text-align: center !important;
    width: 756px;
    line-height: 1.25;
}
.bg-dark .section-3 .card{
    background: rgba(33, 33, 33, 1);
    border-radius: 20px;
}
.bg-dark .section-7{
    background: rgba(33, 33, 33, 1);
}

/* Mobile devices (portrait and landscape) */
@media only screen and (max-width: 767px) {
    /* CSS rules for mobile devices */
    
}

/* Tablets and small devices (portrait and landscape) */
@media only screen and (min-width: 768px) and (max-width: 1023px) {
    /* CSS rules for tablets and small devices */

    .section-1 h1{
        font-size: 50px;
    }
    .section-1 p.title{
        font-size: 18px;
    }

    .section-1 .btn-jadwal {
        padding: 10px;
        border-radius: 80px;
        font-size: 16px;
        font-weight: bold;
        width: 166px !important;
        height: 54px !important;
    }
    .section-1 p.sub-title {
        font-size: 16px;
    }

    .page:not(.h-custom){
        min-height: 70vh;
    }

    .h-100vh{
        height: 70vh;
    }
    
    .gallery-container {
        align-items: center;
        display: flex;
        height: 70vh;
        margin: 0 auto;
        max-width: 80vw;
        position: relative;
    }
    
    .gallery-item {
        height: 300px;
        opacity: 1;
        position: absolute;
        transform: translateX(-50%);
        transition: all 0.3s ease-in-out;
        width: 451px;
        z-index: 0;
    }
    
    .gallery-item-1{
        z-index: 0;
        left: 25%;
        height: 200px;
        opacity: 0;
        transition: opacity 0.75s;
    }
    
    .gallery-item-2{
        left: 50%;
        z-index: 1;
    }
    
    .gallery-item-3{
        z-index: 0;
        left: 75%;
        height: 200px;
        opacity: 0;
        transition: opacity 0.75s;
        transition-delay: 0.75s;
    }
}

/* Laptops, desktops, and larger devices */
@media only screen and (min-width: 1024px) {
    /* CSS rules for laptops, desktops, and larger devices */
}