/* ===================================
    Crafto - Hosting
====================================== */
/* font */
@import url('https://fonts.googleapis.com/css2?family=Mulish:ital,wght@0,200..1000;1,200..1000&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Raleway:ital,wght@0,100..900;1,100..900&display=swap');
/* variable */
:root {      
    --alt-font: 'Mulish', sans-serif;
    --primary-font: 'Mulish', sans-serif;
    --main-color: #1a99c8;
    --second-color: #2CB3D6;
    --dark-gray: #181b31;
    --green: #0fc978;
    --medium-gray: #6e7982;
}
/* reset */
::-webkit-input-placeholder {
    color: #6e7982 !important;
    text-overflow: ellipsis; 
}
::-moz-placeholder {
    color: #6e7982 !important;
    text-overflow: ellipsis;
    opacity: 1; 
}
:-ms-input-placeholder {
    color: #6e7982 !important;
    text-overflow: ellipsis;
    opacity: 1; 
}
body{
    line-height: 30px;
}
/* header */
/* .header-icon .icon > a {
    font-size: 15px;
} */
    @keyframes fadeIn {
        0% {
            opacity: 0;
        }
        100% {
            opacity: 1;
        }
    }
    
    @keyframes fadeOut {
        0% {
            opacity: 1;
        }
        100% {
            opacity: 0;
        }
    }
    
    #what_we_do .swiper-slide-active img {
        opacity: 1;
        animation: fadeIn 1.5s ease-in forwards;
    }
    
    #what_we_do .swiper-slide-active .text-content {
        opacity: 1;
        animation: fadeIn 2.5s ease-in forwards;
    }
    
    #what_we_do .swiper-slide-prev img,
    #what_we_do .swiper-slide-prev .text-content,
    #what_we_do .swiper-slide-next img,
    #what_we_do .swiper-slide-next .text-content {
        opacity: 0;
        animation: fadeOut 0.5s ease-out forwards;
    }
    
    .what_we_do img,
    .what_we_do .text-content {
        opacity: 0;
    }
    
    #what_we_do .swiper-wrapper {
        transition: transform 1s ease;
    }
    #what_we_do .text-content {
        display: flex;
        flex-direction: column;
        justify-content: center; 
        height: 100%;
        position: relative;
    }
    
    #what_we_do .text-content-inner {
        display: flex;
        flex-direction: column;
        justify-content: center;
        height: 100%;
    }
    
    @media (max-width: 991px) {
        #what_we_do .text-content {
            display: block;
            justify-content: start; 
            height: auto; 
        }
        
        #what_we_do .text-content-inner {
            display: block; 
            justify-content: start;
            height: auto; 
        }
    }

    




.header-transparent .header-button .btn {
    background-color: #FFD601;
    color: var(--white);
    transition: all 0.3s ease-in-out;
}
.header-transparent .header-button .btn:hover {
    background-color: transparent;
    color: #fff;
    outline: 2px solid #fff;
}

.sticky .header-transparent .header-button .btn {
    background-color: #FFD601;
    color: var(--white);
    transition: all 0.3s ease-in-out;
}
.sticky .header-transparent .header-button .btn:hover {
    background-color: transparent;
    color: var(--main-color);
    outline: 2px solid var(--main-color);
}

.header-transparent .header-button-login .btn {
    background-color: transparent;
    border: 2px solid var(--white);
    color: var(--white);
    transition: all 0.3s ease-in-out;
}
.header-transparent .header-button-login .btn:hover {
    background-color: #FFD601;
    border: 2px solid #FFD601;
    color: #fff;
}

.btn-pesan {
    border: 3px solid #fff;
    background-color: transparent;
    color: #fff;
    transition: all 0.3s ease-in-out;
    padding: 10px 25px;
    font-size: 19px;
}

.btn-pesan:hover {
    border: 3px solid #FFD601;
    background-color: #FFD601;
    color: #fff;
}

.btn-read-more {
    border: 1px solid var(--second-color);
    background-color: transparent;
    color: var(--main-color);
    transition: all 0.3s ease-in-out;
    padding: 10px 20px;
    font-size: 13px;
}

.btn-read-more:hover {
    border: 1px solid var(--second-color);
    background-color: var(--second-color);
    color: #fff;
}


.btn-lihat-demo {
    border: 3px solid var(--second-color);
    background-color: var(--second-color);
    color: #fff;
    transition: all 0.3s ease-in-out;
    padding: 12px 34px;
    font-size: 15px;
}

.btn-lihat-demo:hover {
    border: 3px solid var(--second-color);
    background-color: transparent;
    color: var(--main-color);
}




.btn-mobile-try {
    background-color: #FFD601;
    border: 2px solid #FFD601;
    color: #fff;
    transition: all 0.3s ease-in-out;
    padding: 10px 15px;
    font-size: 14px;
}

.btn-mobile-try:hover {
    background-color: transparent;
    color: #fff;
    border: 2px solid #fff;
}

.btn-mobile-login {
    background-color: #fff;
    border: 2px solid #fff;
    color: var(--main-color);
    transition: all 0.3s ease-in-out;
    padding: 10px 15px;
    font-size: 14px;
}

.btn-mobile-login:hover {
    background-color: #FFD601;
    color: #fff;
    border: 2px solid #FFD601;
}

header.sticky .header-transparent .header-button-login .btn {
    background-color: transparent;
    border: 2px solid var(--main-color);
    color: var(--main-color);
    transition: all 0.3s ease-in-out;
}
header.sticky .header-transparent .header-button-login .btn:hover {
    background-color: var(--main-color);
    color: #fff;
    transition: all 0.3s ease-in-out;
}



/* bg background color */
.bg-midnight-dark-blue {
    background-color: #191d3c;
}
.bg-dark-blue {
    background-color: #0d1229; 
}
.bg-arsenic-grey {
    background-color: #3c414a !important; 
}
.bg-transparent-white-light {
    background-color: rgba(255, 255, 255, .1) !important;
}
/* btn */
.btn { 
    text-transform: initial;
    letter-spacing: 0px;
}
.btn i,
.btn.btn-hover-animation-switch .btn-icon {
    margin-left: 6px;
}
/* button type */  
.btn.btn-switch-text.btn-extra-large > span {
    font-size: 17px; 
    padding: 16px 36px;
}
.btn.btn-switch-text.btn-large > span {
    font-size:15px;
    padding: 14px 34px;
}
.btn.btn-switch-text.btn-medium > span {
    font-size: 14px;
    padding: 12px 28px;
}
.btn.btn-switch-text.btn-small > span {
    font-size: 13px;
    padding: 8px 20px;
}
.btn.btn-switch-text.btn-very-small > span {
    font-size: 12px;
    padding: 6px 20px;
}
.btn.btn-link {
    padding: 0 0 2px;
}
.btn-yellow {
    background-color: var(--yellow);
    color: var(--dark-gray);
}
.btn-yellow:hover { 
    background-color: transparent;
    border-color: var(--yellow);
    color: var(--yellow); 
}
.btn.btn-box-shadow.btn-yellow:hover {
    background-color: var(--yellow) !important;
    color: var(--dark-gray) !important;
}
.btn-green {
    background-color: var(--green);
    color: var(--white);
}
.btn-green:hover { 
    background-color: var(--white);
    border-color: var(--white);
    color: var(--dark-gray); 
}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    margin-bottom: 25px;
}
/* page title */
.page-title-extra-small h2 {
    font-size: 3.25rem;
    line-height: 3.425rem;
}
/* checkbox */
.form-check-input:checked {
    background-color: var(--main-color) !important;
    border-color: var(--main-color) !important;
}
.form-check-input:focus {
    outline: none;
    box-shadow: none;
}

.accordion-item {
    transition: all 0.3s ease-in-out;
}

.accordion-item:hover .accordion-title{
    color: var(--main-color);
}



#what_we_do {
    position: relative;
    z-index: 1;
}

#what_we_do::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 60%;
    height: 100%;
    background-color: var(--second-color);
    z-index: -1;
}

#what_we_do::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 40%;
    height: 100%;
    background-color: var(--white);
    z-index: -1;
}

#what_we_do .section-heading-big {
    font-size: 35px !important; 
    line-height: 45px !important;
    font-weight: 700;
}

#what_we_do .desc {
    font-size: 20px; 
    line-height: 28px;
}

#what_we_do .swiper-wrapper {
    padding-bottom: 70px;
}


@media (max-width: 768px) {
    #what_we_do .section-heading {
        color: var(--white);
    }
    #what_we_do .swiper-wrapper {
        padding-bottom: 0;
    }
    #what_we_do .section-heading-big {
        font-size: 20px !important; 
        line-height: 35px !important;
    }
    #what_we_do .desc {
        font-size: 15px; 
        line-height: 24px;
    }
    #what_we_do .image {
        text-align: center;
    }
    #what_we_do::before {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        width: 100%;
        height: 100%;
        background-color: var(--second-color);
        z-index: -1;
    }
    
    #what_we_do::after {
        display: none;
    }
}

/* features */
.feature.icon-with-text-style-07 {
    display: flex;
    flex-direction: column; 
}

.feature .feature-box {
    display: flex;
    align-items: left;
    flex-direction: column; 
}

.feature .feature-box-icon {
    margin-bottom: 10px;
}

.feature .feature-box-content {
    text-align: left;
}

@media (max-width: 768px) {
    .feature.icon-with-text-style-07 {
        flex-direction: row; 
        align-items: center;
        justify-content: flex-start !important;
        width: 100% ;
    }

    .feature .feature-box {
        flex-direction: row; 
        text-align: left !important;
        width: 100%;
    }

    .feature .feature-box-icon {
        margin-bottom: 0; 
        margin-right: 10px; 
    }

    .feature .feature-box-content {
        text-align: left;
    }
}

.description-list ul li{
    list-style: disc;
}


.content.description-list ul li{
    list-style: disc;
}










/* footer */
footer {
    padding-top: 100px;
}

.footer-dark a:hover {
    color: var(--white);
}
footer ul li {
    margin-bottom: 0;
}

/*responsive text*/
/* @media (max-width: 768px) {
    body, span, p {
        font-size: 14px !important;
    }
} */

.description-pers ul li {
    list-style-type: disc !important;
}
.description-pers ul li::marker {
    font-size: 1.5em; 
}

.text-info {
    font-size: 27px;
}

@media (max-width: 768px) {
    .text-info {
        font-size: 16px;
    }
}

.translate-hover {
    transition: all 0.3s ease-in-out;
    position: relative;
}

.translate-hover:hover {
    transform: translateY(-10px);
}

.shadow-hover {
    transition: all 0.3s ease-in-out;
    position: relative;
}

.shadow-hover:hover {
    box-shadow: 5px 5px 5px 5px whitesmoke;
}

.bg-hero {
    background: linear-gradient(90deg, #1a99c8, #56d6ea);
}

.section-big-heading {
    font-size: 49px;
    text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.4);
    line-height: 55px;
}

.hero-title {
    font-size: 49px;
    text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.4);
    line-height: 55px;
}


@media (max-width: 768px) {
    .hero-title {
        font-size: 30px;
        line-height: 30px;
        margin-top: 30px;
    }
    .section-big-heading {
        font-size: 30px;
        line-height: 30px;
        margin-top: 30px;
    }
}


.hero-img-wrapper {
    position: absolute;
    right: 0;
    bottom: 0;
    width: auto;
    height: auto;
}

.hero-img img {
    width: 670px;
    height: auto;
}

@media (max-width: 768px) {
    .hero-img-wrapper {
        position: relative !important;
        right: 0;
    }

    .hero-img img {
        width: 400px; 
        height: auto;
    }
}



@media (max-width: 768px) {

    .hero-img {
        text-align: center;
        right: 0;
        bottom: 00;
    }
} 






.layer-background-very-dark {
    position: relative;
    z-index: 1;
}

.layer-background-very-dark::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.75); 
    z-index: -1; 
}

.layer-background {
    position: relative;
    z-index: 1;
}

.layer-background::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.1)); 
    z-index: -1; 
}


.price-background {
    position: relative;
    z-index: 1;
    overflow: hidden;
}

.price-background::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 39.4%;
    background: url('../images/price-background.webp'); 
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    z-index: -1; 
}

.price-background::after {
    content: "";
    position: absolute;
    top: 40%; 
    left: 0;
    width: 100%;
    height: 60.6%;
    background-color: var(--white);
    z-index: -1; 
}

@media (max-width: 768px) {
    .price-background::before {
        width: 100%;
        height: 100%;
    }
    
    .price-background::after {
        display: none;
    }
}


.w-mobile-100 {
    width: 85%;
}

@media (max-width: 768px) {
    .w-mobile-100 {
        width: 100%;
    }
}

@media (max-width: 768px) {
    .footer-top-contact {
        text-align: center;
    }
}

.footer-contact {
    display: flex;
    flex-direction: column;
    justify-content: end;
    text-align: end;
    margin-top: 0;
}

@media (max-width: 768px) {
    .footer-contact {
        display: flex;
        flex-direction: column;
        justify-content: center;
        text-align: center;
        margin-top: 30px;
    }
}

/* paket harga */
.harga_diskon {
    font-size: 22px;
}

@media (max-width: 768px) {
    .harga_diskon {
        font-size: 20px;
    }
    .chat-paket a span {
        font-size: 11px;
    }
    .chat-paket .btn .btn-medium {
        padding-right: 5px;
        padding-left: 5px;
    } 
}


.btn-chat {
    position: relative;
    display: inline-block;
    text-align: center;
    padding: 7px 10px;
    font-size: 13px;
    color: #fff;
    text-decoration: none;
    border: none;
    border-radius: 20px;
    overflow: hidden;
    z-index: 1;
    transition: transform 0.3s ease, opacity 0.3s ease;
}

.btn-chat::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(to right, #56D4E1, #0653B1);
    z-index: -1;
    transition: transform 0.3s ease, opacity 0.3s ease;
}

.btn-annualy::before {
    background: linear-gradient(to right, #0097b2, #7ed957);
}

.btn-lifetime::before {
    background: linear-gradient(to right, #ffde59, #ff914d);
}

.btn-monthly::before {
    background: linear-gradient(to right, #8c52ff, #5ce1e6);
}

.text-monthly {
    color: #8c52ff;
}

.text-lifetime {
    color: #ffde59;
}

.text-annually {
    color: #0097b2;
}

/* Hover Effects */
.btn-chat:hover {
    transform: scale(1.02);
    opacity: 0.95;
}


.text-annualy {
    color: #137dcb !important;
}

.text-lifetime {
    color: #e4af37 !important;
}

.text-monthly  {
    color: #6d6b6b !important;
}



.btn-annualy {
    background: linear-gradient(to right, #56D4E1, #0653B1);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    border-radius: 20px;
    overflow: hidden;
}

.btn-lifetime {
    background: linear-gradient(to right, #F5BF41, #9E720D);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    border-radius: 20px;
    overflow: hidden;
}

.btn-monthly {
    background: linear-gradient(to right, #696767, #272727);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    border-radius: 20px;
    overflow: hidden;
}


.bg-notmark,
.bg-mark {
    width: 20px; 
    height: 20px; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    background-color: #FA424E; 
    color: #fff;
    border-radius: 50%; 
}

.bg-mark {
    background-color: #7ED957;
}

.table-striped>tbody>tr:nth-of-type(odd)>* {
    --bs-table-bg-type: #fff;
}
.table>:not(caption)>*>* {
    background-color: #F4F6FC;
}

.table {
    width: 100%;
    max-width: 100%;
    margin-bottom: 1rem;
    background-color: transparent;
    border-collapse: collapse;
}

th.features {
    vertical-align: middle; 
    text-align: center; 
    padding: 0; 
}

th.features .d-flex {
    height: 100%; 
}

.table th {
    padding-top: 80px;
    padding-bottom: 20px;
    padding-left: 40px;
    padding-right: 40px;
}
.table td {
    padding: 25px 40px;
    font-size: 17px;
}

.table td i {
    display: inline-flex; 
    align-items: center;
    justify-content: center; 
    margin: 0 auto; 
}


.table th.title {
    font-size: 19px;
    font-weight: 700;
}

.table th .price {
    font-size: 23px;
}

.table th .keterangan {
    font-size: 13px;
    font-weight: 400;
}


.table-striped thead th {
    background-color: #fff;
}

.table-striped tbody tr:nth-child(odd) {
    background-color: #F4F6FC;
}

.table-striped tbody tr:nth-child(odd) {
    background-color: #fff;
}

.text-danger {
    color: #dc3545 !important;
}

.text-success {
    color: #28a745 !important;
}

@media (max-width: 767.98px) {
    .table {
        font-size: 10px !important;
    }

    .table th, .table td {
        padding: 0.5rem !important; 
    }
        
    .table th {
        font-size: 11px !important; 
        line-height: 15px;
    }
    .table td {
        line-height: 20px;
    }
    .bg-notmark,
    .bg-mark {
        width: 15px; 
        height: 15px; 
    }
}


.custom-overlay {
    position: relative;
}
.custom-overlay::before {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .5);
}

.bg-stripped {
    background-color: #F5F6FA;
}

.box-shadow-feature {
    transition: all 350ms ease-in-out;
    border: 4px solid transparent; 
}

.box-shadow-feature:hover {
    border: 4px solid var(--main-color);
    color: var(--second-color);
}

.box-shadow-feature:hover .feature-box-content span { 
    color: var(--second-color);
}


.full_features-list ul {
    list-style: none; 
    margin: 0 50px;
    display: flex;
    flex-wrap: wrap;
}

.full_features-list ul li {
    flex: 1 1 30%; 
    display: flex;
    font-size: 15px;
    align-items: center;
    margin-bottom: 15px;
    line-height: 1.3;
    margin-right: 30px;
}


.full_features-list ul li::before {
    content: "\f00c"; 
    font-family: "Font Awesome 5 Free"; 
    font-weight: 900;
    background-color: #BBF4FD; 
    color: #43BDDD; 
    border-radius: 50%; 
    flex-shrink: 0;
    width: 20px; 
    height: 20px; 
    line-height: 20px;
    text-align: center; 
    padding: 0; 
    margin-right: 10px;
    display: inline-block; 
}

@media (max-width: 768px) {
    .full_features-list {
        flex-direction: column;
    }

    .full_features-list ul {
        margin: 0;
    }
    .full_features-list ul li{
        flex: 1 1 100%;
        margin-right: 0;
    }
}


#show-more-btn, #show-less-btn {
    display: block;
    margin: 0 auto;
    cursor: pointer;
    background-color: #43BDDD;
    color: #ffffff;
    border: none;
    padding: 10px 20px;
    font-size: 16px;
    border-radius: 5px;
    text-align: center;
}

#show-more-btn i, #show-less-btn i {
    margin-left: 5px;
}

#show-less-btn {
    margin-top: 10px;
}




.no-margin-x {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.gallery-image-01 {
    position: relative;
    height: 250px; 
    overflow: hidden; 
}

.gallery-image-01 img {
    width: 100%;
    height: 100%;
    object-fit: cover; 
    object-position: top; 
}

/* background image custom */
.backlink-background {
    position: relative;
    z-index: 1;
    overflow: hidden;
    background-color: var(--second-color);
}

.backlink-background::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url('../../public/images/backlink-background.webp');
    z-index: -1; 
}



.go-top {
    position: fixed;
    cursor: pointer;
    top: 0;
    right: 15px;
    color: #fff;
    background-color: #FFD601;
    z-index: 4;
    width: 50px;
    text-align: center;
    height: 50px;
    line-height: 50px;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: .9s;
    transition: .9s;
    border-radius: 50%;
    border: 1px solid transparent;
  }
  
  .go-top.active {
    top: 97%;
    -webkit-transform: translateY(-98%);
    transform: translateY(-98%);
    opacity: 1;
    visibility: visible;
  }
  
  @media (max-width: 768px) {
      .go-top.active {
        top: 96.5%;
      }
  }
  
  .go-top i {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
    right: 0;
    margin: 0 auto;
    -webkit-transition: .3s;
    transition: .3s;
  }
  
  .go-top i:last-child {
    opacity: 0;
    visibility: hidden;
    top: 60%;
  }
  
  .go-top::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: #FFD601;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: .6s;
    transition: .6s;
    border-radius: 50%;
  }
  
  .go-top:hover,
  .go-top:focus,
  .go-top.white:focus {
    color: #fff;
  }
  
  .go-top:hover::before,
  .go-top:focus::before {
    opacity: 1;
    visibility: visible;
  }
  
  .go-top:hover i:first-child,
  .go-top:focus i:first-child {
    opacity: 0;
    top: 0;
    visibility: hidden;
  }
  
  .go-top:hover i:last-child,
  .go-top:focus i:last-child {
    opacity: 1;
    visibility: visible;
    top: 50%;
  }


.testimoni .box-shadow-extra-large {
    background-color: white;
}

.testimoni .box-shadow-extra-large:hover {
    background-color: var(--main-color);
}

.testimoni .box-shadow-extra-large:hover p{
    color: var(--white);
}
.testimoni .box-shadow-extra-large:hover .desc {
    color: var(--white);
}

@media (max-width: 768px) {
    .testimoni .box-shadow-extra-large:hover {
        background-color: #fff;
    }
    
    .testimoni .box-shadow-extra-large:hover p,
    .testimoni .box-shadow-extra-large:hover .desc {
        color: inherit; 
    }
}


/* top bar mobile */
.top-bar-mobile {
    z-index: 10000;
}
.top-bar-mobile span {
    font-size: 9px !important;
}

/* nav logo mobile */
.navlogo-mobile .navbarlogo-mobile img {
    margin-left: 15px;
    width: 150px;
    filter: brightness(0) invert(1);
}


.partner img {
    filter: grayscale(100%); 
    transition: filter 0.3s ease-in-out; 
}

.partner img:hover {
    filter: grayscale(0%);
}

.diliput_oleh img {
    filter: grayscale(100%); 
    transition: filter 0.3s ease-in-out; 
}

.diliput_oleh img:hover {
    filter: grayscale(0%);
}




#contact .section-heading {
    margin-bottom: 40px;
}
#contact .contact {
    margin-bottom: 40px;
}

@media (max-width: 768px) {
    #contact .section-heading {
        margin-bottom: 20px;
    }
    #contact .contact {
        margin-bottom: 20px;
    }
}


.icon-round {
    background-color: #737373; 
    color: #ffffff; 
    width: 35px; 
    height: 35px; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    border-radius: 50%;
}

.icon-round i {
    color: #ffffff; 
}




/* slider */

.swiper-slide {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    height: 100%;
}

.slide-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block; 
}

picture {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0; 
    padding: 0; 
}

@media (max-width: 767px) {
    .swiper-slide {
        height: auto;
    }
    .slide-image {
        height: auto;
        object-fit: contain; 
    }
}

@media (max-width: 768px) {
    .feature-box-content p{
        font-size: 14px;
    }
}

.section-heading {
    font-size: 32px;
    font-family: "Raleway", sans-serif;
    font-weight: 700;
    line-height: 34px;
}

@media (max-width: 768px) {
    .section-heading {
        font-size: 22px;
    }
}

.section-subheading {
    font-size: 15px;
    line-height: 22px;
    text-transform: uppercase;
    font-weight: 600;
}

@media (max-width: 768px) {
    .section-subheading {
        font-size: 14px;
    }
}

.custom-hover-scale-img {
    transition: 0.3s;
}
.custom-hover-scale-img .image {
    transition: .3s;
}
.custom-hover-scale-img:hover {
    transform: translateY(-10px);
}
.custom-hover-scale-img:hover .image {
    transform: scale(1.05);
}

/* contact-btn */
.floating_btn {
    position: fixed;
    bottom: 10px;
    left: 10px;
    width: 100px;
    height: 100px;
    display: flex;
    flex-direction: column;
    align-items:center;
    justify-content:center;
    z-index: 1000;
  }
  
  @keyframes pulsing {
    to {
      box-shadow: 0 0 0 30px rgba(232, 76, 61, 0);
    }
  }
  
  .contact_icon {
    background-color: #42db87;
    color: #fff;
    width: 60px;
    height: 60px;
    font-size:30px;
    border-radius: 50px;
    text-align: center;
    box-shadow: 2px 2px 3px #999;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translatey(0px);
    animation: pulse 1.5s infinite;
    box-shadow: 0 0 0 0 #42db87;
    -webkit-animation: pulsing 1.25s infinite cubic-bezier(0.66, 0, 0, 1);
    -moz-animation: pulsing 1.25s infinite cubic-bezier(0.66, 0, 0, 1);
    -ms-animation: pulsing 1.25s infinite cubic-bezier(0.66, 0, 0, 1);
    animation: pulsing 1.25s infinite cubic-bezier(0.66, 0, 0, 1);
    font-weight: normal;
    font-family: sans-serif;
    text-decoration: none !important;
    transition: all 300ms ease-in-out;
  }

@media (max-width: 768px) {
    .subscribe-section .feature-box .feature-box-content {
        text-align: center;
    }
    .subscribe-section .feature-box .feature-box-content h5{
        font-size: 22px !important;
    }
    .subscribe-section .feature-box .feature-box-content p {
        font-size: 14px !important;
        line-height: 20px;
    }
}

.copyright p {
    font-size: 11px !important; 
    line-height: 17px;
}

@media (max-width: 768px) {
    .copyright p {
        font-size: 9px !important; 
    }
}

.contact-title {
    font-size: 18px !important;
}

.swiper-pagination {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10;
}

.swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background: var(--light-gray); 
    border-radius: 50%;
    opacity: 1;
    transition: opacity 0.3s;
}

.swiper-pagination-bullet-active {
    background: var(--dark-gray); 
}
  

/* media query responsive */
@media (max-width: 991px) {
    [data-mobile-nav-style=full-screen-menu] .navbar-full-screen-menu-inner {
        background-color: var(--main-color);
    }
}
@media (max-width: 1199px) {
    .btn.btn-switch-text.btn-small > span {
        padding: 6px 18px;
    }
    footer {
        padding-top: 80px;
    }
    .btn.btn-switch-text.btn-extra-large > span { 
        padding: 16px 30px;
    }
    .btn.btn-switch-text.btn-large > span { 
        padding: 14px 30px;
    }
}
footer .footer-subheading {
    font-size: 15px;
}
@media (max-width: 767px) {
    footer {
        padding-top: 50px;
    }
    footer .footer-subheading {
        font-size: 13px;
    }
}

.terdaftar {
    margin-top: 50px;
}

@media (max-width: 768px) {
    .terdaftar {
        margin-top: 40px;
    }
}



/* whatsapp float */
.cbh-phone {
    display: block;
    position: fixed;
    left: -50px;
    bottom: -55px;
    visibility: hidden;
    background-color: transparent;
    width: 200px;
    height: 200px;
    cursor: pointer;
    z-index: 999;
    -webkit-backface-visibility: hidden;
    -webkit-transform: translateZ(0);
    -webkit-transition: visibility .5s;
    -moz-transition: visibility .5s;
    -o-transition: visibility .5s;
    transition: visibility .5s
}

.cbh-phone.cbh-show {
    visibility: visible
}

.cbh-phone.cbh-static1 {
    opacity: .6
}

.cbh-phone.cbh-hover1 {
    opacity: 1
}

.cbh-ph-circle {
    width: 110px;
    height: 110px;
    top: 40px;
    left: 40px;
    position: absolute;
    background-color: transparent;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
    border: 2px solid rgba(30,30,30,.4);
    opacity: .1;
    -webkit-animation: cbh-circle-anim 1.2s infinite ease-in-out;
    -moz-animation: cbh-circle-anim 1.2s infinite ease-in-out;
    -ms-animation: cbh-circle-anim 1.2s infinite ease-in-out;
    -o-animation: cbh-circle-anim 1.2s infinite ease-in-out;
    animation: cbh-circle-anim 1.2s infinite ease-in-out;
    -webkit-transition: all .5s;
    -moz-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s
}

.cbh-phone.cbh-active .cbh-ph-circle1 {
    -webkit-animation: cbh-circle-anim 1.1s infinite ease-in-out!important;
    -moz-animation: cbh-circle-anim 1.1s infinite ease-in-out!important;
    -ms-animation: cbh-circle-anim 1.1s infinite ease-in-out!important;
    -o-animation: cbh-circle-anim 1.1s infinite ease-in-out!important;
    animation: cbh-circle-anim 1.1s infinite ease-in-out!important
}

.cbh-phone.cbh-static .cbh-ph-circle {
    -webkit-animation: cbh-circle-anim 2.2s infinite ease-in-out!important;
    -moz-animation: cbh-circle-anim 2.2s infinite ease-in-out!important;
    -ms-animation: cbh-circle-anim 2.2s infinite ease-in-out!important;
    -o-animation: cbh-circle-anim 2.2s infinite ease-in-out!important;
    animation: cbh-circle-anim 2.2s infinite ease-in-out!important
}

.cbh-phone.cbh-hover .cbh-ph-circle {
    border-color: rgba(0,175,242,1);
    opacity: .5
}

.cbh-phone.cbh-green.cbh-hover .cbh-ph-circle {
    border-color: rgba(117,235,80,1);
    opacity: .5
}

.cbh-phone.cbh-green .cbh-ph-circle {
    border-color: rgba(0,175,242,1);
    opacity: .5
}

.cbh-phone.cbh-gray.cbh-hover .cbh-ph-circle {
    border-color: rgba(204,204,204,1);
    opacity: .5
}

.cbh-phone.cbh-gray .cbh-ph-circle {
    border-color: rgba(117,235,80,1);
    opacity: .5
}

.cbh-ph-circle-fill {
    width: 74px;
    height: 74px;
    top: 58px;
    left: 58px;
    position: absolute;
    background-color: #000;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
    border: 2px solid transparent;
    opacity: .1;
    -webkit-animation: cbh-circle-fill-anim 2.3s infinite ease-in-out;
    -moz-animation: cbh-circle-fill-anim 2.3s infinite ease-in-out;
    -ms-animation: cbh-circle-fill-anim 2.3s infinite ease-in-out;
    -o-animation: cbh-circle-fill-anim 2.3s infinite ease-in-out;
    animation: cbh-circle-fill-anim 2.3s infinite ease-in-out;
    -webkit-transition: all .5s;
    -moz-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s
}

.cbh-phone.cbh-active .cbh-ph-circle-fill {
    -webkit-animation: cbh-circle-fill-anim 1.7s infinite ease-in-out!important;
    -moz-animation: cbh-circle-fill-anim 1.7s infinite ease-in-out!important;
    -ms-animation: cbh-circle-fill-anim 1.7s infinite ease-in-out!important;
    -o-animation: cbh-circle-fill-anim 1.7s infinite ease-in-out!important;
    animation: cbh-circle-fill-anim 1.7s infinite ease-in-out!important
}

.cbh-phone.cbh-static .cbh-ph-circle-fill {
    -webkit-animation: cbh-circle-fill-anim 2.3s infinite ease-in-out!important;
    -moz-animation: cbh-circle-fill-anim 2.3s infinite ease-in-out!important;
    -ms-animation: cbh-circle-fill-anim 2.3s infinite ease-in-out!important;
    -o-animation: cbh-circle-fill-anim 2.3s infinite ease-in-out!important;
    animation: cbh-circle-fill-anim 2.3s infinite ease-in-out!important;
    opacity: 0!important
}

.cbh-phone.cbh-hover .cbh-ph-circle-fill {
    background-color: rgba(0,175,242,.5);
    opacity: .75!important
}

.cbh-phone.cbh-green.cbh-hover .cbh-ph-circle-fill {
    background-color: rgba(117,235,80,.5);
    opacity: .75!important
}

.cbh-phone.cbh-green .cbh-ph-circle-fill {
    background-color: rgba(0,175,242,.5);
    opacity: .75!important
}

.cbh-phone.cbh-gray.cbh-hover .cbh-ph-circle-fill {
    background-color: rgba(204,204,204,.5);
    opacity: .75!important
}

.cbh-phone.cbh-gray .cbh-ph-circle-fill {
    background-color: rgba(117,235,80,.5);
    opacity: 1!important
}

.cbh-ph-img-circle1 {
    width: 50px;
    height: 50px;
    top: 70px;
    left: 70px;
    position: absolute;
    background-image: url(../../../assets/public/images/whats.png);
    background-size: 40px 40px;
    background-color: rgba(30,30,30,.1);
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
    border: 2px solid transparent;
    opacity: 1;
    -webkit-animation: cbh-circle-img-anim 1s infinite ease-in-out;
    -moz-animation: cbh-circle-img-anim 1s infinite ease-in-out;
    -ms-animation: cbh-circle-img-anim 1s infinite ease-in-out;
    -o-animation: cbh-circle-img-anim 1s infinite ease-in-out;
    animation: cbh-circle-img-anim 1s infinite ease-in-out
}

.cbh-phone.cbh-active .cbh-ph-img-circle1 {
    -webkit-animation: cbh-circle-img-anim 1s infinite ease-in-out!important;
    -moz-animation: cbh-circle-img-anim 1s infinite ease-in-out!important;
    -ms-animation: cbh-circle-img-anim 1s infinite ease-in-out!important;
    -o-animation: cbh-circle-img-anim 1s infinite ease-in-out!important;
    animation: cbh-circle-img-anim 1s infinite ease-in-out!important
}

.cbh-phone.cbh-static .cbh-ph-img-circle1 {
    -webkit-animation: cbh-circle-img-anim 0 infinite ease-in-out!important;
    -moz-animation: cbh-circle-img-anim 0 infinite ease-in-out!important;
    -ms-animation: cbh-circle-img-anim 0 infinite ease-in-out!important;
    -o-animation: cbh-circle-img-anim 0 infinite ease-in-out!important;
    animation: cbh-circle-img-anim 0 infinite ease-in-out!important
}

.cbh-phone.cbh-hover .cbh-ph-img-circle1 {
    background-color: rgba(0,175,242,1)
}

.cbh-phone.cbh-green.cbh-hover .cbh-ph-img-circle1:hover {
    background-color: rgba(117,235,80,1)
}

.cbh-phone.cbh-green .cbh-ph-img-circle1 {
    background-color: rgba(0,175,242,1);
    background-color: rgba(0,175,242,1)
}

.cbh-phone.cbh-gray.cbh-hover .cbh-ph-img-circle1 {
    background-color: rgba(204,204,204,1)
}

.cbh-phone.cbh-gray .cbh-ph-img-circle1 {
    background-color: rgba(117,235,80,1)
}

@-moz-keyframes cbh-circle-anim {
    0% {
        -moz-transform: rotate(0deg) scale(0.5) skew(1deg);
        opacity: .1;
        -moz-opacity: .1;
        -webkit-opacity: .1;
        -o-opacity: .1
    }

    30% {
        -moz-transform: rotate(0deg) scale(.7) skew(1deg);
        opacity: .5;
        -moz-opacity: .5;
        -webkit-opacity: .5;
        -o-opacity: .5
    }

    100% {
        -moz-transform: rotate(0deg) scale(1) skew(1deg);
        opacity: .6;
        -moz-opacity: .6;
        -webkit-opacity: .6;
        -o-opacity: .1
    }
}

@-webkit-keyframes cbh-circle-anim {
    0% {
        -webkit-transform: rotate(0deg) scale(0.5) skew(1deg);
        -webkit-opacity: .1
    }

    30% {
        -webkit-transform: rotate(0deg) scale(.7) skew(1deg);
        -webkit-opacity: .5
    }

    100% {
        -webkit-transform: rotate(0deg) scale(1) skew(1deg);
        -webkit-opacity: .1
    }
}

@-o-keyframes cbh-circle-anim {
    0% {
        -o-transform: rotate(0deg) kscale(0.5) skew(1deg);
        -o-opacity: .1
    }

    30% {
        -o-transform: rotate(0deg) scale(.7) skew(1deg);
        -o-opacity: .5
    }

    100% {
        -o-transform: rotate(0deg) scale(1) skew(1deg);
        -o-opacity: .1
    }
}

@keyframes cbh-circle-anim {
    0% {
        transform: rotate(0deg) scale(0.5) skew(1deg);
        opacity: .1
    }

    30% {
        transform: rotate(0deg) scale(.7) skew(1deg);
        opacity: .5
    }

    100% {
        transform: rotate(0deg) scale(1) skew(1deg);
        opacity: .1
    }
}

@-moz-keyframes cbh-circle-fill-anim {
    0% {
        -moz-transform: rotate(0deg) scale(0.7) skew(1deg);
        opacity: .2
    }

    50% {
        -moz-transform: rotate(0deg) -moz-scale(1) skew(1deg);
        opacity: .2
    }

    100% {
        -moz-transform: rotate(0deg) scale(0.7) skew(1deg);
        opacity: .2
    }
}

@-webkit-keyframes cbh-circle-fill-anim {
    0% {
        -webkit-transform: rotate(0deg) scale(0.7) skew(1deg);
        opacity: .2
    }

    50% {
        -webkit-transform: rotate(0deg) scale(1) skew(1deg);
        opacity: .2
    }

    100% {
        -webkit-transform: rotate(0deg) scale(0.7) skew(1deg);
        opacity: .2
    }
}

@-o-keyframes cbh-circle-fill-anim {
    0% {
        -o-transform: rotate(0deg) scale(0.7) skew(1deg);
        opacity: .2
    }

    50% {
        -o-transform: rotate(0deg) scale(1) skew(1deg);
        opacity: .2
    }

    100% {
        -o-transform: rotate(0deg) scale(0.7) skew(1deg);
        opacity: .2
    }
}

@keyframes cbh-circle-fill-anim {
    0% {
        transform: rotate(0deg) scale(0.7) skew(1deg);
        opacity: .2
    }

    50% {
        transform: rotate(0deg) scale(1) skew(1deg);
        opacity: .2
    }

    100% {
        transform: rotate(0deg) scale(0.7) skew(1deg);
        opacity: .2
    }
}

@keyframes cbh-circle-img-anim {
    0% {
        transform: rotate(0deg) scale(1) skew(1deg)
    }

    10% {
        transform: rotate(-25deg) scale(1) skew(1deg)
    }

    20% {
        transform: rotate(25deg) scale(1) skew(1deg)
    }

    30% {
        transform: rotate(-25deg) scale(1) skew(1deg)
    }

    40% {
        transform: rotate(25deg) scale(1) skew(1deg)
    }

    100%,50% {
        transform: rotate(0deg) scale(1) skew(1deg)
    }
}

@-moz-keyframes cbh-circle-img-anim {
    0% {
        transform: rotate(0deg) scale(1) skew(1deg)
    }

    10% {
        -moz-transform: rotate(-25deg) scale(1) skew(1deg)
    }

    20% {
        -moz-transform: rotate(25deg) scale(1) skew(1deg)
    }

    30% {
        -moz-transform: rotate(-25deg) scale(1) skew(1deg)
    }

    40% {
        -moz-transform: rotate(25deg) scale(1) skew(1deg)
    }

    100%,50% {
        -moz-transform: rotate(0deg) scale(1) skew(1deg)
    }
}

@-webkit-keyframes cbh-circle-img-anim {
    0% {
        -webkit-transform: rotate(0deg) scale(1) skew(1deg)
    }

    10% {
        -webkit-transform: rotate(-25deg) scale(1) skew(1deg)
    }

    20% {
        -webkit-transform: rotate(25deg) scale(1) skew(1deg)
    }

    30% {
        -webkit-transform: rotate(-25deg) scale(1) skew(1deg)
    }

    40% {
        -webkit-transform: rotate(25deg) scale(1) skew(1deg)
    }

    100%,50% {
        -webkit-transform: rotate(0deg) scale(1) skew(1deg)
    }
}

@-o-keyframes cbh-circle-img-anim {
    0% {
        -o-transform: rotate(0deg) scale(1) skew(1deg)
    }

    10% {
        -o-transform: rotate(-25deg) scale(1) skew(1deg)
    }

    20% {
        -o-transform: rotate(25deg) scale(1) skew(1deg)
    }

    30% {
        -o-transform: rotate(-25deg) scale(1) skew(1deg)
    }

    40% {
        -o-transform: rotate(25deg) scale(1) skew(1deg)
    }

    100%,50% {
        -o-transform: rotate(0deg) scale(1) skew(1deg)
    }
}

.cbh-phone.cbh-green .cbh-ph-circle {
    border-color: #00f2a4
}

.cbh-phone.cbh-green .cbh-ph-circle-fill {
    background-color: #00f2a4
}

.cbh-phone.cbh-green .cbh-ph-img-circle1 {
    background-color: #2ecb71
}