/*!
* PT. IMAJIKU CIPTA MEDIA
* Copyright 2019-2024 IMAJIKU.
*/

/* = GENERAL
-------------------------------------------------------------*/

/* = HERO
-------------------------------------------------------------*/

/* = CARD
------------------------------------------------------------ */
.framelite-box {
    display: flex;
    width: 100%;
    position: relative;
}

.framelite {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    padding: 15%;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.framelite-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    position: relative;
    padding: 1px;
    width: 100%;
    height: auto;
}

.framelite-line-1::before {
    content: "";
    display: flex;
    width: 100%;
    height: 1px;
    position: absolute;
    top: 0;
    left: 0;
    background-color: var(--hc-color-white);
    z-index: 1;
}

.framelite-line-1::after {
    content: "";
    display: flex;
    width: 1px;
    height: 40%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: var(--hc-color-white);
    z-index: 1;
}

.framelite-line-2::before {
    content: "";
    display: flex;
    width: 1px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    background-color: var(--hc-color-white);
    z-index: 1;
}

.framelite-line-2::after {
    content: "";
    display: flex;
    width: 10%;
    height: 1px;
    position: absolute;
    bottom: 0;
    right: 0;
    background-color: var(--hc-color-white);
    z-index: 1;
}

.framelite-content {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    width: 100%;
    height: 100%;
    z-index: 10;
}

/* Frame line for hero */
.framehero {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    padding: 5%;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.framehero-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    position: relative;
    padding: 1px;
    width: 100%;
    height: auto;
}

.framehero-line-1::before {
    content: "";
    display: flex;
    width: 100%;
    height: 1px;
    position: absolute;
    top: 0;
    left: 0;
    background-color: var(--hc-color-white);
    z-index: 1;
}

.framehero-line-1::after {
    content: "";
    display: flex;
    width: 1px;
    height: 50%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: var(--hc-color-white);
    z-index: 1;
}

.framehero-line-2::before {
    content: "";
    display: flex;
    width: 1px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    background-color: var(--hc-color-white);
    z-index: 1;
}

.framehero-line-2::after {
    content: "";
    display: flex;
    width: 15%;
    height: 1px;
    position: absolute;
    bottom: 0;
    right: 0;
    background-color: var(--hc-color-white);
    z-index: 1;
}

/* Frame line gallery horizontal */
.framemood {
    display: flex;
    position: relative;
    width: 100%;
    min-height: 50px;
    z-index: 1;
}

.framemood-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    position: relative;
    padding: 20px;
    width: 100%;
    height: auto;
}

.framemood-line-1::before {
    content: "";
    display: flex;
    width: 100%;
    height: 4px;
    position: absolute;
    top: 0;
    left: 0;
    background-color: var(--hc-color-primary-200);
    z-index: 1;
}

.framemood-line-1::after {
    content: "";
    display: flex;
    width: 4px;
    height: 50%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: var(--hc-color-primary-200);
    z-index: 1;
}

.framemood-line-2::before {
    content: "";
    display: flex;
    width: 4px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    background-color: var(--hc-color-primary-200);
    z-index: 1;
}

.framemood-line-2::after {
    content: "";
    display: flex;
    width: 15%;
    height: 4px;
    position: absolute;
    bottom: 0;
    right: 0;
    background-color: var(--hc-color-primary-200);
    z-index: 1;
}

/* card home */
.card-grade {
    overflow: hidden;
    position: relative;
}

.card-grade a {
    width: 100%;
}

.card-grade img {
    display: block;
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
    transition: all 0.6s ease;
    -webkit-transition: all 0.6s ease;
    -moz-transition: all 0.6s ease;
}

.card-grade:hover img {
    transition: all 0.6s ease;
    -webkit-transition: all 0.6s ease;
    -moz-transition: all 0.6s ease;
    filter: brightness(60%);
    -webkit-filter: brightness(60%);
    -moz-filter: brightness(60%);
    object-fit: cover;
    transform: scale(1.03);
    -webkit-transform: scale(1.03);
    -moz-transform: scale(1.03);
}

.card-grade-action {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: left;
    font-size: 38px;
    line-height: 1;
    font-weight: 600;
    font-family: var(--hc-font-family-2);
    color: var(--hc-color-white);
    transition: all 0.6s ease;
    -webkit-transition: all 0.6s ease;
    -moz-transition: all 0.6s ease;

}

.card-grade:hover .card-grade-action {
    font-size: 30px;
    transition: all 0.6s ease;
    -webkit-transition: all 0.6s ease;
    -moz-transition: all 0.6s ease;

}

/* = NEWS
------------------------------------------------------------ */
.section-home-facilities {
    overflow: hidden;
}

/* = PRODUCT DETAIL
------------------------------------------------------------ */
/*product title*/
.productset-title {
    display: flex;
    position: relative;
    width: 100%;
}

.productset-title h1,
.productset-title h2,
.productset-title h3 {
    font-size: 54px;
    font-weight: 600;
    color: var(--hc-color-text-head);
    font-family: var(--hc-font-family-2);
    line-height: 1.2;
}

/*product tag category*/
.productset-tags {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    padding: 5px 0 5px;
    position: relative;
}

.productset-tags ul {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
    flex-direction: row;
    flex-wrap: wrap;
    row-gap: 10px;
    column-gap: 15px;
}

.productset-tags li {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 8px;
    background-color: var(--hc-color-primary-50);
    font-family: var(--hc-font-family-2);
    font-weight: 700;
    font-size: 16px;
    transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
}

.productset-tags li a {
    color: var(--hc-color-primary-500);
}

.productset-tags li:hover {
    background-color: var(--hc-color-primary-100);
    transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
}

/* = SWIPER
------------------------------------------------------------ */
.plider-box {
    position: relative;
    padding: 0;
    overflow: hidden;

}

.plider-box .plider {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    padding: 30px;
    background-color: var(--hc-color-white);
}

.contentinside-box {
    display: flex;
    flex-direction: column;
}

.swiper-arrow.variant-2 {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    width: 100%;
    height: 70px;
    column-gap: 10px;
    margin-top: 10px;
    position: relative;
}

/* =HIIDEN BUTTON ARROW DEFAULT
-------------------------------------------------------------*/
.swiper-button-next:after,
.swiper-button-prev:after {
    display: none;
}

/* =CUSTOM BUTTON ARROW
-------------------------------------------------------------*/
.swiper-arrow.variant-2 .swiper-button-prev,
.swiper-arrow.variant-2 .swiper-button-next {
    position: relative;
    top: unset;
    left: unset;
    right: unset;
    z-index: 100;
    display: flex;
    justify-content: center;
    align-items: center;
    height: auto;
    cursor: pointer;
    margin: unset;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    width: auto;
    opacity: 0.6;
}

.swiper-arrow.variant-2 .swiper-button-prev::after,
.swiper-arrow.variant-2 .swiper-button-next::after {
    content: '';
    display: none;
}

.swiper-arrow.variant-2 .swiper-button-prev:hover,
.swiper-arrow.variant-2 .swiper-button-next:hover {
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    opacity: 1;
}

/*button with shadow blur*/
.swiper-arrow.variant-2 .swiper-button-prev.variant-blur {
    left: 0;
    background-image: linear-gradient(to right, #ffffff, rgba(255, 255, 255, 255));
    opacity: 0.6;
}

.swiper-arrow.variant-2 .swiper-button-next.variant-blur {
    right: 0;
    background-image: linear-gradient(to left, #ffffff, rgba(255, 255, 255, 255));
    opacity: 0.6;
}

/* =HIIDEN BUTTON PAGINATION DEFAULT
-------------------------------------------------------------*/
/* .swiper-pagination {
	display: none;
} */

/* =CUSTOM BUTTON PAGINATION
-------------------------------------------------------------*/
.swiper-pagination-bullet {
    width: 15px;
    height: 15px;
    background-color: var(--hc-color-gray-900);
}

.swiper-pagination-bullet-active {
    background-color: var(--hc-color-gray-400);
}

/* =CLASS UNTUK HANDLE ARROW KETIKA MUNCUL KURANG DARI QUANTITY
-------------------------------------------------------------*/
.swiper-button-lock {
    display: none !important;
}

/* =CARD RELAY
-------------------------------------------------------------*/
.relay {
    display: flex;
    position: relative;
}

.relay-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
}

.relay-list li:first-child .card-relay-img::before {
    content: "";
    height: 50%;
    top: 50%;
}

.relay-list li:last-child .card-relay-img::before {
    content: "";
    height: 50%;
    bottom: 50%;
}

.card-relay {
    display: flex;
    position: relative;
    width: 100%;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
    transition: all 0.6s ease;
    -webkit-transition: all 0.6s ease;
    -moz-transition: all 0.6s ease;
}

.card-relay-img {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: 100px;
    position: relative;
}

.card-relay-img::before {
    content: "";
    display: flex;
    position: absolute;
    width: 2px;
    height: 100%;
    top: 0;
    left: 50%;
    background-color: var(--hc-color-neutral-300);
    z-index: 1;
}

.card-relay-img img {
    display: flex;
    height: 40px;
    width: 40px;
    object-fit: cover;
    object-position: center;
    transition: all 0.6s ease;
    -webkit-transition: all 0.6s ease;
    -moz-transition: all 0.6s ease;
    position: relative;
    z-index: 5;
}

.card-relay-desc {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    row-gap: 10px;
    flex: 1;
    padding: 15px 0 15px;
}

.card-relay-caption-title {
    font-size: 20px;
    color: var(--hc-color-white);
    font-weight: 600;
    line-height: 1.4;
    margin: 0;
    font-family: var(--hc-font-family-1);
    text-align: left;

}
.card-relay-caption-subtitle {
    font-size: 20px;
    color: var(--hc-color-primary-100);
    font-weight: 700;
    line-height: 1.4;
    margin: 0;
    font-family: var(--hc-font-family-2);
    text-align: left;
}

.card-relay-caption-desc {
    font-size: 16px;
    color: #D9D9D9;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
    font-family: var(--hc-font-family-1);
    text-align: left;
}