body {
    font-family: 'GeneralSans-Variable';
    font-size: 1rem;
}

.custom-shape-divider-bottom-1615015013 {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    transform: rotate(180deg);
    z-index: 1;
}

.custom-shape-divider-bottom-1615015013 svg {
    position: relative;
    display: block;
    width: calc(100% + 1.3px);
    height: 39px;
}

.custom-shape-divider-bottom-1615015013 .shape-fill {
    fill: #FFFFFF;
}

.img-head-top {
    width: 50% !important;
    margin: 0 auto 15px auto;
    transform: scale(1);
    transition-duration: .3s;
    /* background: #ffffff14; */
    /* background: linear-gradient(180deg, #a207009e 0%, #42000026 100%); */
    background: linear-gradient(180deg, #a207009e 0%, #C71D1C 100%);
    border-radius: 500px;
    padding: 12px;
    backdrop-filter: blur(30px);
}

.img-head-top:hover {
    background: #f8f9fa !important;
    transform: scale(1.1);
    box-shadow: 0 0 40px 5px rgba(0, 0, 0, 0.438);
    cursor: pointer;
}


.category-item-03:hover .img-head-top {
    transform: scale(1.1);
    cursor: pointer;
}

.header .topbar {
    background: linear-gradient(180deg, rgba(255, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 100%);
}

.category-item-03 {
    /* background: rgba(255, 255, 255, 0.75); */
    background: transparent;
    /* backdrop-filter: blur(20px); */
    /* border: 1px solid rgba(255, 255, 255, 0.15);
    box-shadow: 0 0 40px 5px rgba(0, 0, 0, 0.438);
    border-radius: 15px; */
    border: unset;
    box-shadow: unset;
    border-radius: unset;
    display: grid;
}

.category-item-03 .category-title {
    color: white;
    font-size: 15pt;
}

.category-item-03:hover .category-title {
    color: white;
}

.navbar .navbar-nav .nav-link {
    font-weight: 400;
}

.header .is-sticky {
    backdrop-filter: blur(8px);
    background-color: rgba(0, 0, 0, 0.8);
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}


div,
a,
body,
h1,
h2,
h3,
h4,
h5,
h6 {
    /* font-family: 'Poppins', sans-serif; */
    font-family: 'GeneralSans-Variable', sans-serif;
}

.font-2 {
    /* font-family: 'Akaya Telivigala', cursive; */
    font-family: 'GeneralSans-Variable', sans-serif;
}

.judul-1a {
    font-weight: 600 !important;
    font-size: 50pt !important;
    line-height: 1;
}

.judul-1b {
    font-weight: 500;
    font-size: 25pt;
}

.custom-shape-divider-top-1615015559 {
    position: absolute;
    bottom: -35px;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    z-index: 1;
}

.custom-shape-divider-top-1615015559 svg {
    position: relative;
    display: block;
    width: calc(100% + 1.3px);
    height: 39px;
}

.custom-shape-divider-top-1615015559 .shape-fill {
    fill: #FFFFFF;
}

.space-ptb {
    position: relative;
}

.img-float-o {
    width: 220px;
    opacity: .1;
    position: absolute;
    z-index: 1;
    bottom: -40px;
    right: -50px;
}

.banner.banner-03 {
    overflow: hidden;
}

.breadcrumb {
    border-radius: 1rem;
}

.navbar .navbar-nav .nav-link:hover,
.text-yellow,
.breadcrumb .breadcrumb-item.active {
    color: #ffee00;
}

.widget-title.bg-primary {
    background: #9c0004 !important
}

footer {
    position: relative;
    overflow: hidden;
}

.lh-1 {
    line-height: 1;
}

.lh-11 {
    line-height: 1.1;
}

.lh-12 {
    line-height: 1.2;
}

.lh-13 {
    line-height: 1.3;
}

.o-hidden {
    overflow: hidden;
}

.rad-10 {
    border-radius: 10px;
}

.rad-15 {
    border-radius: 15px;
}

.rad-20 {
    border-radius: 20px;
}

.rad-25 {
    border-radius: 25px;
}

.rad-50 {
    border-radius: 50px;
}

.shadow-sm {
    box-shadow: 0 26px 50px 0 #00000040;
}

.hide-mobile {
    display: block;
}

.hide-pc {
    display: none;
}

.btn.btn-outline-light:hover {
    color: #9c0004 !important;
}

/* btn */
.btn {
    border-radius: 12px;
    font-size: 1rem;
}


.btn-secondary {
    background-color: #e8e7e7;
    border-color: #e8e7e7;
    color: #1e2939;
}

.btn-secondary:hover,
.btn-secondary:active,
.btn-secondary:focus,
.btn-secondary:hover:not(:disabled):not(.disabled):active {
    background-color: #e8e7e7;
    border-color: #d1d5dc;
    color: #1e2939;
}

/* feature list */
.feature-list {
    gap: 1rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: fit-content;
}

.feature {
    background-color: rgba(153, 153, 153, 0.25);
    border: 1px solid rgba(227, 227, 227, 0.5);
    backdrop-filter: blur(4px);
    aspect-ratio: 1/1;
    width: 200px;
    border-radius: 1rem;
    display: grid;
    place-items: center;
}

.feature:hover {
    background: rgba(153, 153, 153, 0.35);
}

.feature:hover .feature__img {
    transform: scale(1.1);
}

.feature__img {
    width: 125px;
    height: 125px;
    transition: all 100ms linear;
    margin-bottom: 8px;
    margin-top: 16px;
}

.main {
    width: 100dvw;
    height: 100dvh;
}

.screen-swiper {
    height: 100%;
    width: 100%;
}

.screen-swiper-wrapper {
    height: 100%;
}

.screen-swiper-slide {
    height: 100%;
}

.screen {
    height: 100%;
    background: url(../img/setda-sukoharjo.jpg);
    background-size: cover;
    background-attachment: fixed;
    padding: 1rem;
    padding-top: 10rem;
    padding-bottom: 8rem;
    display: grid;
    align-items: center;
    position: relative;
    overflow-y: scroll;

}

.screen::before {
    content: "";
    position: fixed;
    inset: 0;
    background: #131c1c;
    background: linear-gradient(8deg, rgba(19, 28, 28, 1) 0%, rgba(0, 0, 0, 0.6) 47%, rgba(0, 0, 0, 0.9) 100%);
    pointer-events: none;
}

.screen-container {
    position: relative;
}

.screen-navigation {
    background-color: rgba(255, 255, 255, 0.25);
    height: 125px;
    width: 300px;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 999;
    border-top-left-radius: 2rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 0.75rem;
    gap: 0.75rem;
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-bottom: 0;
    border-right: 0;
}

.screen-navigation__prev,
.screen-navigation__next {
    font-size: 3rem;
    color: white;
    border-radius: 0.5rem;
    border-top-left-radius: calc(2rem - 0.75rem);
    display: grid;
    place-items: center;
    background: rgba(255, 255, 255, 0.1)
}

.screen-navigation__next {
    border-top-left-radius: 0.5rem;
}

.screen-navigation__prev:hover,
.screen-navigation__next:hover {
    background-color: rgba(255, 255, 255, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: white;
}

.screen-autoplay-progress {
    z-index: 999;
    position: absolute;
    left: -96px;
    bottom: 16px;
    z-index: 10;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    color: #fff;
}

.screen-autoplay-progress svg {
    --progress: 0;
    position: absolute;
    left: 0;
    top: 0px;
    z-index: 10;
    width: 100%;
    height: 100%;
    stroke-width: 4px;
    stroke: #fff;
    fill: none;
    stroke-dashoffset: calc(125.6px * (1 - var(--progress)));
    stroke-dasharray: 125.6;
    transform: rotate(-90deg);
}

/* widget */

.widget-rekapitulasi {
    background-color: rgba(255, 255, 255, 0.25) !important;
    border-radius: 1rem !important;
    padding: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.5);
}

.widget-rekapitulasi .widget {
    background-color: white;
    margin-bottom: 0;
    border-radius: 0.5rem;

}

/* form control */
.form-control,
input[type="text"],
input[type='number'],
select {
    padding: 0.75rem 1rem !important;
    border-radius: 0.65rem !important;
    font-size: 1rem !important;
    height: 48px;
    border: 1px solid #cad5e2 !important;
    color: var(--dark) !important;
}



/* utility */
.font-semibold {
    font-weight: 600;
}

.font-semibold {
    font-weight: 500;
}



















@media screen and (max-width: 991px) {
    .main {
        height: 100dvh;
        overflow: scroll;
    }

    .screen {
        padding-top: 9rem;
        padding-bottom: 10rem;
        height: 100dvh;
        position: relative;
        overflow-y: scroll;
    }

    .screen::before {
        position: fixed;
    }
}

@media screen and (max-width: 576px) {
    .feature {
        width: 100%;
    }


    .screen-navigation {
        background-color: rgba(0, 0, 0, 0.5);
        height: 80px;
        width: 100%;
        position: absolute;
        right: 0;
        border-top-left-radius: 0rem;
        border: 1px solid rgba(0, 0, 0, 0.2);
        border-bottom: 0;
        border-right: 0;
        border-left: 0;
    }


    .screen-navigation__prev,
    .screen-navigation__next {
        font-size: 3rem;
        color: white;
        border-radius: 0.5rem;
        background: rgba(54, 54, 54, 0.3)
    }

    .screen-navigation__next {
        border-top-left-radius: 0.5rem;
    }
}

@media screen and (min-width: 992px) {
    .feature--reklame {
        margin-top: 6rem
    }

    .feature--tanah {
        margin-top: -5.75rem
    }
}


/* Smartphone */
@media screen and (max-width: 600px) {
    .hide-mobile {
        display: none;
    }

    .hide-pc {
        display: block;
    }

    .back-to-top a {
        bottom: 10px;
        right: 10px;
    }
}
