.home-container {
    position: relative;
    width: 100%;
    padding-top: calc(16px + 73px);
    overflow: hidden;
}

.home-top-container {
    position: relative;
    display: block;
    width: calc(100% - (16px * 2));
    aspect-ratio: 1860/950;
    overflow: hidden;
    margin: 0px auto;
    /* background: url('../../img/front/home-background.jpg') no-repeat; */
    /* background-size: cover !important; */
    /* background-position: 50% !important; */
    border-radius: 12px;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    -ms-border-radius: 12px;
    -o-border-radius: 12px;
}

.home-top-video {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover;
}

@media (min-aspect-ratio: 500/281) {
    .video-wrapper video {
        height: 100%;
        width: auto;
    }
}

@media (max-aspect-ratio: 500/281) {
    .video-wrapper video {
        width: 100%;
        height: auto;
    }
}

.home-top-video-after {
    content: '';
    position: absolute !important;
    display: block;
    width: 100%;
    height: 100%;
    background: url('../../img/front/background-dark.png') no-repeat;
    background-position: 50% !important;
    background-size: cover !important;
    left: 0px;
    top: 0px;
}

.home-nav-group {
    position: absolute;
    top: 16px;
    right: 0px;
    padding-right: 16px;
    font-size: 0px;
    text-align: right;
    height: 73px;
    background: #fff;
    width: calc(100% - 403px);
    z-index: 1;
    display: none !important;
}

.home-nav-group:before {
    content: '';
    position: absolute;
    display: block;
    right: 100%;
    top: 0px;
    aspect-ratio: 76/99;
    height: 100%;
    background: url('../../img/front/header_1.svg') no-repeat;
    background-size: 100% 100% !important;
    background-position: 0px 0px !important;
}

.home-nav-group:after {
    content: '';
    position: absolute;
    display: block;
    right: 16px;
    top: 0px;
    aspect-ratio: 20/120;
    height: calc(100% + 15px);
    background: url('../../img/front/header_2.svg') no-repeat;
    background-size: 100% 100% !important;
    background-position: 0px 0px !important;
}

.home-top-content {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
}

.bx-wrapper {
    background: transparent !important;
    max-width: 585px !important;
    border: 0px !important;
    box-shadow: 0px 0px 0px transparent !important;
    bottom: 110px !important;
    left: 0px !important;
    position: absolute !important;
    margin: 0px !important;
}

.bxslider {
    align-items: flex-end;
    height: 350px;
    -webkit-perspective: unset !important;
}

.bxslider li {
    color: #fff;
    height: 100%;
    padding-left: 40px;
    font-size: 17px;
    line-height: 24px;
    width: 100%;
    font-weight: normal;
    letter-spacing: 1.3px;
    align-content: end;
}

.bx-controls {
    display: none !important;
}

.bxslider h2 {
    position: relative;
    display: block;
    font-size: 57px;
    line-height: 47px;
    margin: 0px 0px 20px;
    letter-spacing: 2.5px;
}

#bx-pager {
    position: absolute;
    display: block;
    bottom: 40px;
    left: 40px;
    font-size: 0px;
}

#bx-pager > * {
    font-size: 12px;
}

#bx-pager a {
    position: relative;
    display: inline-block;
    margin-right: 15px;
    vertical-align: top;
    width: 32px;
    height: 32px;
    line-height: 29px;
    text-align: center;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;

    -webkit-transition: background 0.4s, border 0.4s;
    -moz-transition: background 0.4s, border 0.4s;
    -ms-transition: background 0.4s, border 0.4s;
    transition: background 0.4s, border 0.4s;
}

#bx-pager a.active {
    background: #ff0000 !important;
    border: 1px solid #ff0000 !important;
}

#bx-pager a:hover {
    background: #ff0000;
    border: 1px solid #ff0000;

    -webkit-transition: background 0.4s, border 0.4s;
    -moz-transition: background 0.4s, border 0.4s;
    -ms-transition: background 0.4s, border 0.4s;
    transition: background 0.4s, border 0.4s;
}

.home-top-text-group:after {
    content: '';
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    left: 0px;
    top: 0px;
}

.home-top-link-group {
    position: relative;
    display: block;
    font-size: 0px;
    padding: 20px 0px 0px;
}

.home-top-link-group > * {
    font-size: 14px;
}

.home-top-link {
    position: relative;
    display: inline-block;
    vertical-align: top;
    border: 1px solid #fff;
    color: #fff;
    width: 205px;
    text-align: center;
    font-size: 14px;
    line-height: 38px;
    margin-right: 5px;
    border-radius: 13px;
    -webkit-border-radius: 13px;
    -moz-border-radius: 13px;
    -ms-border-radius: 13px;
    -o-border-radius: 13px;

    -webkit-transition: background 0.4s, color 0.4s, border 0.4s;
    -moz-transition: background 0.4s, color 0.4s, border 0.4s;
    -ms-transition: background 0.4s, color 0.4s, border 0.4s;
    transition: background 0.4s, color 0.4s, border 0.4s;
}

.home-top-link:last-child {
    margin-right: 0px;
}

.home-top-link:hover {
    border: 1px solid #ff0000;
    background: #ff0000;
    color: #fff;

    -webkit-transition: background 0.4s, color 0.4s, border 0.4s;
    -moz-transition: background 0.4s, color 0.4s, border 0.4s;
    -ms-transition: background 0.4s, color 0.4s, border 0.4s;
    transition: background 0.4s, color 0.4s, border 0.4s;
}

.home-top-link .bi {
    position: relative;
    display: inline-block;
    vertical-align: top;
    font-size: 14px;
    margin-left: 5px;
}



.home-ab-container {
    position: relative;
    display: block;
    width: calc(100% - (16px * 2));
    margin: 0px auto;
    padding: 50px 0px 80px;
    overflow: hidden;
    font-size: 0px;
}

.home-ab-container > * {
    font-size: 16px;
}

.home-ab-desc {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    width: 100%;
    max-width: 670px;
    /* padding-right: 82px; */
    padding: calc(290 / 864 * 100vh) 0px calc(290 / 864 * 100vh) 40px;
}

.home-ab-title {
    position: relative;
    display: block;
    font-size: 57px;
    line-height: 64px;
    margin: 0px 0px 35px;
}

.home-ab-article {
    position: relative;
    display: block;
    font-size: 16px;
    line-height: 24px;
    width: 100%;
    max-width: 560px;
    margin-bottom: 27px;
}

.home-ab-article span {
    color: #f90105;
}

.home-ab-link {
    position: relative;
    display: table;
    margin: 18px 0px 0px;
    border: 1px solid #3e3e3e;
    width: 205px;
    text-align: center;
    font-size: 14px;
    line-height: 38px;
    border-radius: 13px;
    -webkit-border-radius: 13px;
    -moz-border-radius: 13px;
    -ms-border-radius: 13px;
    -o-border-radius: 13px;

    -webkit-transition: background 0.4s, color 0.4s, border 0.4s;
    -moz-transition: background 0.4s, color 0.4s, border 0.4s;
    -ms-transition: background 0.4s, color 0.4s, border 0.4s;
    transition: background 0.4s, color 0.4s, border 0.4s;
}

.home-ab-link .bi {
    position: relative;
    display: inline-block;
    vertical-align: top;
    font-size: 14px;
    margin-left: 5px;
}

.home-ab-link:hover {
    background: #ff0000;
    border: 1px solid #ff0000;
    color: #fff;

    -webkit-transition: background 0.4s, color 0.4s, border 0.4s;
    -moz-transition: background 0.4s, color 0.4s, border 0.4s;
    -ms-transition: background 0.4s, color 0.4s, border 0.4s;
    transition: background 0.4s, color 0.4s, border 0.4s;
}

.home-ab-img-group {
    position: absolute;
    display: block;
    /* width: calc(728 / 1536 * 100%); */
    width: 100%;
    max-width: calc(712 / 1536 * 100svw);
    right: 0px;
    top: 58px;
}

.home-ab-img-wrapper {
    position: relative;
    display: block;
    width: 100%;
    /* width: 200px; */
}

.home-ab-img {
    position: absolute;
    display: block;
    width: calc((432 + 16) / 1536 * 100svw);
    border: 8px solid #fff;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -ms-border-radius: 20px;
    -o-border-radius: 20px;
}

.home-ab-img.img1 {
    top: calc(655px - 8px);
    left: 272px;

    animation: abImg1 0.5s linear infinite;
    animation-play-state: paused;
    animation-delay: calc(var(--scroll) * -0.5s);

    animation-iteration-count: 1;
    animation-fill-mode: both;
}

@keyframes abImg1 {
    to {
        top: calc(655px - 8px - 200px);
    }
}

.home-ab-img.img2 {
    top: calc(350px - 8px + 100px);
    border: 8px solid #fff;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -ms-border-radius: 20px;
    -o-border-radius: 20px;

    animation: abImg2 0.3s linear infinite;
    animation-play-state: paused;
    animation-delay: calc(var(--scroll) * -0.3s);

    animation-iteration-count: 1;
    animation-fill-mode: both;
}

@keyframes abImg2 {
    to {
        top: calc(350px - 8px - 600px);
    }
}

.home-ab-img-wrapper.img2 {
    z-index: 3;
}

.home-ab-img.img3 {
    top: calc(50px - 8px - 0px);
    left: 272px;
    z-index: 6;
    border: 8px solid #fff;
    border-radius: 20px;

    animation: abImg3 0.4s linear infinite;
    animation-play-state: paused;
    animation-delay: calc(var(--scroll) * -0.4s);

    animation-iteration-count: 1;
    animation-fill-mode: both;
}

@keyframes abImg3 {
    to {
        top: calc(50px - 8px + 300px);
    }
}

.home-ab-img-wrapper.img3 {
    z-index: 6;
}

.home-ab-icon {
    position: absolute;
    display: block;
}

.home-ab-img-wrapper.icon {
    z-index: 10;
}

.home-ab-icon.icon1 {
    right: 23px;
    top: calc((352 / 864 * 100vh) + 400px);

    animation: abIconOne 0.3s linear infinite;
    animation-play-state: paused;
    animation-delay: calc(var(--scroll) * -1s);

    animation-iteration-count: 1;
    animation-fill-mode: both;
}

@keyframes abIconOne {
    to {
        top: calc((352 / 864 * 100vh) - 200px);
    }
}

.home-ab-icon.icon2 {
    right: 356px;
    top: calc((656 / 864 * 100vh) - 100px);

    animation: abIconTwo 1s linear infinite;
    animation-play-state: paused;
    animation-delay: calc(var(--scroll) * -1s);

    animation-iteration-count: 1;
    animation-fill-mode: both;
}

@keyframes abIconTwo {
    to {
        top: calc((656 / 864 * 100vh) + 300px);
    }
}



.home-br-container {
    position: relative;
    display: block;
    width: 100%;
    margin-bottom: 100px;
    overflow: hidden;
}

.home-br-content {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    margin: 0px 0px 20px;
}

.home-br-content.text {
    white-space: nowrap;
    color: #fff;
    height: 120px;
    -webkit-text-stroke: 2px #222222;
    font-size: 160px;
    letter-spacing: 3px;
    line-height: 145px;
    opacity: 0.5;
}

.home-br-content.text span {
    top: -23px;
    position: relative;
}

.home-br-content.text-top .inner {
    animation: toLeft 30s linear infinite;
    -webkit-animation: toLeft 30s linear infinite;
}

.home-br-content.text-bottom {
    margin: 0px;
}

.home-br-content.text-bottom .inner {
    animation: toRight 30s linear infinite;
    -webkit-animation: toRight 30s linear infinite;
}

.home-br-content.red {
    background: #f90105;
    font-size: 0px;
    height: calc(177 / 864 * 100vh);
}

.home-br-content.red > *  {
    font-size: 14px;
    align-content: center;
}
/*
.home-br-img {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    mix-blend-mode: multiply;
    margin: 0px calc(32 / 1536 * 100vw);
    height: calc(130 / 864 * 100vh);
    width: calc(300 / 1536 * 100vw);
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: 50% !important;
    align-content: center;
} */

.home-br-content a {
    transition: transform .3s;
}

.home-br-content a:hover {
    transform: scale(1.2);
    transform-origin: center center;
}

.home-br-content img {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    mix-blend-mode: multiply;
    max-width: none;
    margin: 0px calc(32 / 1536 * 100vw);
    /* max-height: 130px;
    max-width: 300px; */
    max-height: calc(100 / 864 * 100vh);
    max-width: calc(200 / 1536 * 100vw);
}

.home-br-content img.landscape {
    width: calc(200 / 1536 * 100vw);
    /* width: 19.53vw; */
    height: auto !important;
}

.home-br-content img.portrait {
    height: calc(100 / 864 * 100vh);
    /* height: 15.04vh; */
    width: auto;
}

.home-br-content.red .inner {
    animation: toRight 45s linear infinite;
    -webkit-animation: toRight 45s linear infinite;
    mix-blend-mode: multiply;
    height: 100%;
}

.home-br-content.blue {
    background: #005ec8;
    font-size: 0px;
    height: calc(177 / 864 * 100vh);
}

.home-br-content.blue > * {
    font-size: 14px;
}

.home-br-content.blue .inner {
    animation: toLeft 45s linear infinite;
    -webkit-animation: toLeft 45s linear infinite;
    mix-blend-mode: multiply;
    height: 100%;
}

.wrap {
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
}

.inner {
    display: inline-flex;
    align-content: center;
    align-items: center;
}

@keyframes toLeft {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}

@keyframes toRight {
    to {
        transform: translateX(0);
    }

    from {
        transform: translateX(-50%);
    }
}



.home-pr-container {
    position: relative;
    display: block;
    width: calc(100% - (16px * 2));
    margin: 0px auto;
    background: #e6e6e6;
    text-align: center;
    padding: 155px 0px 0px;
    border-radius: 12px;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    -ms-border-radius: 12px;
    -o-border-radius: 12px;
    overflow: hidden;
    mix-blend-mode: multiply;
}

.home-pr-title {
    position: relative;
    display: block;
    text-align: center;
    font-size: 57px;
    line-height: 43px;
    letter-spacing: 0.3px;
    margin-bottom: 25px;
}

:root {
    --h: 24px;
    /* tinggi 1 slide */
    --move: 0.5s;
    /* durasi geser */
    --pause: 1s;
    /* jeda */
    --total: 8s;
    /* (move+pause) × 2 item = 3s */
}

/* layout */
.slider.css-only {
    position: relative;
    display: block;
    color: #f90105;
    font-size: 24px;
    line-height: 24px;
    margin-bottom: 20px;

    height: var(--h);
    overflow: hidden;
    width: auto;
}

.track {
  display: flex;
  flex-direction: column;
  animation: slide var(--total) linear infinite;
  will-change: transform;
}

.item {
  height: var(--h);
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}

/* 3 slide — cepat bergerak, lama diam */
@keyframes slide {

    /* Slide 1 (awal) */
    0% {
        transform: translateY(0);
    }

    /* Cepat geser ke slide 2 */
    5% {
        transform: translateY(calc(-1 * var(--h)));
    }

    /* Diam di slide 2 */
    33.333% {
        transform: translateY(calc(-1 * var(--h)));
    }

    /* Cepat geser ke slide 3 */
    38.333% {
        transform: translateY(calc(-2 * var(--h)));
    }

    /* Diam di slide 3 */
    66.666% {
        transform: translateY(calc(-2 * var(--h)));
    }

    /* Cepat geser ke duplikat slide 1 */
    71.666% {
        transform: translateY(calc(-3 * var(--h)));
    }

    /* Diam sampai akhir (agar looping mulus) */
    100% {
        transform: translateY(calc(-3 * var(--h)));
    }
}

.home-pr-desc {
    position: relative;
    display: block;
    width: calc(100% - (16px * 2));
    max-width: 620px;
    margin: 0px auto 25px;
    font-size: 16px;
    line-height: 24px;
}

.home-pr-link {
    margin: 0px auto 60px;
}

.home-pr-img {
    position: relative;
    display: block;
    width: 100%;
    max-width: 1208px;
    mix-blend-mode: multiply;
    margin: 0px auto 60px;
}

.home-pr-bottom {
    position: relative;
    display: block;
    width: 100%;
    border-top: 1px solid rgba(34, 34, 34, 0.5);
    height: 295px;
    font-size: 0px;
    padding-top: 60px;
}

.home-pr-bottom > * {
    font-size: 16px;
}

.home-pr-text-bg {
    position: absolute;
    display: block;
    height: 100%;
    width: 100%;
    padding-right: 20px;
    text-align: right;
    align-content: center;
    font-size: 160px;
    letter-spacing: 8px;
    line-height: 130px;
    color: #e6e6e6;
    -webkit-text-stroke: 1px rgba(34, 34, 34, 0.3);
    top: -10px;
}

.home-pr-bottom-title {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 50%;
    text-align: right;
    padding: 0px 50px 0px 16px;
    font-size: 28px;
    line-height: 38px;
    margin: 0px;
    padding-right: 50px;
}

.home-pr-bottom-title span {
    position: relative;
    display: block;
    color: #f90105;
}

.home-pr-bottom-link-group {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 50%;
    text-align: left;
    padding: 0px 16px 0px 50px;
    font-size: 0px;
}

.home-pr-bottom-link-group > * {
    font-size: 14px;
}

.home-pr-bottom-link {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: calc(100% - 16px);
    max-width: 496px;
    /* margin-left: 16px; */
    border: 1px solid #222;
    line-height: 20px;
    align-content: center;
    text-align: center;
    height: 73px;
    font-size: 0px;
    background: #fff;
    border-radius: 23px;
    -webkit-border-radius: 23px;
    -moz-border-radius: 23px;
    -ms-border-radius: 23px;
    -o-border-radius: 23px;

    -webkit-transition: background 0.4s, color 0.4s, border 0.4s;
    -moz-transition: background 0.4s, color 0.4s, border 0.4s;
    -ms-transition: background 0.4s, color 0.4s, border 0.4s;
    transition: background 0.4s, color 0.4s, border 0.4s;
}

.home-pr-bottom-link:hover {
    border: 1px solid #ff0000;
    background: #ff0000;
    color: #fff;

    -webkit-transition: background 0.4s, color 0.4s, border 0.4s;
    -moz-transition: background 0.4s, color 0.4s, border 0.4s;
    -ms-transition: background 0.4s, color 0.4s, border 0.4s;
    transition: background 0.4s, color 0.4s, border 0.4s;
}

.home-pr-bottom-link > * {
    font-size: 19px;
}

.home-pr-bottom-link span {
    position: relative;
    display: inline-block;
    vertical-align: middle;
}

.home-pr-bottom-link span:first-child {
    margin-right: 15px;
    font-size: 32px;
}

.home-pr-bottom-link-text {
    text-align: left;
}

.client-content {
    position: relative;
    display: block;
    font-size: 0px;
    padding-bottom: 60px;
}

.client-content>* {
    font-size: 12px;
}

.client-item {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: calc((100% / 7) - calc(90 / 1536 * 100vw));
    max-width: 112px;
    margin: 0px calc((90 / 1536 * 100vw) / 2) 6px;
    line-height: 16px;

    mix-blend-mode: multiply;
    filter: grayscale(100%);
}



.home-bl-container {
    position: relative;
    display: block;
    width: calc(100% - (16px * 2));
    margin: 0px auto 120px;
    max-width: 1408px;
    padding-top: 155px;
    overflow: hidden;
}

.home-bl-title {
    position: relative;
    display: block;
    font-size: 57px;
    line-height: 64px;
    margin: 0px 0px 15px;
    font-weight: normal;
    letter-spacing: 1px;
    left: -5px;
}

.home-bl-desc {
    position: relative;
    display: block;
    font-size: 16px;
    line-height: 20px;
    margin: 0px 0px 35px;
}

.home-bl-content {
    position: relative;
    display: block;
    font-size: 0px;
    margin: 0px auto 35px;
}

.home-bl-content > * {
    font-size: 16px;
    line-height: 24px;
}

.home-bl-side {
    position: relative;
    display: inline-block;
    vertical-align: top;
}

.home-bl-side.left {
    width: calc(448 / 1536 * 100svw);
    margin-right: calc(32 / 1536 * 100svw);
}

.home-bl-side.right {
    width: calc(100% - (448 / 1536 * 100svw) - (32 / 1536 * 100svw));
    font-size: 0px;
}

.home-bl-side.right > * {
    font-size: 14px;
}

.home-bl-item {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: calc((100% - (32px * 2)) / 3);
}

.left .home-bl-item {
    display: block;
    width: 100%;
}

.right .home-bl-item:nth-child(2) {
    margin: 0px 32px;
}

.home-bl-img {
    position: relative;
    display: block;
    width: 100%;
    margin: 0px 0px 25px;
    aspect-ratio: 410/262;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: 50% !important;
    border-radius: 12px;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    -ms-border-radius: 12px;
    -o-border-radius: 12px;
}

.home-bl-date {
    position: relative;
    display: block;
    width: 100%;
    padding: 0px 16px;
    font-size: 12px;
    margin: 0px auto 10px;
    line-height: 16px;
}

.home-bl-item-title {
    position: relative;
    display: block;
    width: 100%;
    padding: 0px 16px;
    font-size: 17px;
    line-height: 22px;
    margin: 0px auto 20px;
    color: #222;

    -webkit-transition: color 0.4s;
    -moz-transition: color 0.4s;
    -ms-transition: color 0.4s;
    transition: color 0.4s;
}

.left .home-bl-item-title {
    font-size: 24px;
    line-height: 29px;
}

.home-bl-item:hover .home-bl-item-title {
    color: #ff0000;

    -webkit-transition: color 0.4s;
    -moz-transition: color 0.4s;
    -ms-transition: color 0.4s;
    transition: color 0.4s;
}

.home-bl-item-desc {
    position: relative;
    align-items: flex-end;
    display: -webkit-box;
    width: 100%;
    padding: 0px 16px;
    -webkit-line-clamp: 6;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: unset;
}

.home-bl-item::after {
    font-family: "bootstrap-icons";
    content: "\f138";
    position: relative;
    display: block;
    left: 16px;
    /* bottom: 0; */
    background: white;
}

.left .home-bl-item-desc {
    -webkit-line-clamp: 3;
    font-size: 16px;
    line-height: 24px;
}

.home-bl-link {
    margin: 0px auto;
}

@media (min-width: 1536px) {
}

@media (max-width: 1024px) {
    .bx-wrapper {
        bottom: 90px !important;
    }

    .bxslider h2 {
        font-size: 36px;
        line-height: 35px;
    }

    .bxslider li {
        font-size: 15px;
        line-height: 22px;
    }

    .home-top-link {
        font-size: 13px;
    }

    .home-ab-desc {
        padding: 0px;
        margin: 0px auto 430px;
        max-width: 768px;
        display: block;
    }

    .home-ab-img-group {
        top: 250px;
        /* max-width: unset; */
    }

    .home-ab-img.img3 {
        left: 190px;
    }

    .home-ab-icon.icon2 {
        right: 240px;
        top: calc((656 / 864 * 100vh) - 200px);
    }

    .home-ab-img.img1 {
        top: calc(500px - 8px);
        left: 190px;
    }

    .home-pr-container {
        padding: 100px 0px 0px;
    }

    .home-pr-bottom-title {
        padding: 0px 16px;
        font-size: 22px;
        line-height: 33px;
    }

    .home-pr-bottom-link-group {
        padding: 0px 16px;
    }

    .home-pr-text-bg {
        font-size: 140px;
    }

    .home-bl-container {
        padding-top: 100px;
    }

    .home-bl-side.left {
        width: 40%;
        margin-right: 16px;
    }

    .home-bl-side.right {
        width: calc(60% - 16px);
    }

    .home-bl-side.right > * {
        width: calc((100% - (16px * 1)) / 2);
        margin-bottom: 30px;
    }

    .right .home-bl-item:nth-child(2) {
        margin: 0px 0px 0px 16px;
    }
/*
    .right .home-bl-item:nth-child(3) {
        display: none;
    } */
}

@media (max-width: 768px) {
    .home-ab-title {
        font-size: 40px;
        line-height: 45px;
    }

    .home-ab-container {
        padding: 80px 0px;
    }

    .home-ab-img {
        width: 270px;
    }

    .home-ab-img.img3 {
        left: 100px;
    }

    .home-ab-icon.icon1 {
        right: 23px;
        width: 200px;
        top: 500px;
    }

    @keyframes abIconOne {
        to {
            top: 100px;
        }
    }

    .home-ab-icon.icon2 {
        right: 240px;
        /* top: calc((656 / 864 * 100vh) - 100px); */
        top: 450px;
        width: 200px;
    }

    @keyframes abIconTwo {
        to {
            /* top: calc((656 / 864 * 100vh) + 300px); */
            top: 800px;
        }
    }

    .home-ab-img.img1 {
        top: 450px;
        left: 100px;
    }

    .home-ab-img.img2 {
        left: -80px;
        top: 350px;
    }

    @keyframes abImg2 {
        to {
            top: 0px;
        }
    }

    .home-br-content.text {
        font-size: 120px;
        line-height: 120px;
        height: 90px;
    }

    .home-br-content.red {
        height: 120px;
    }

    .home-br-content.blue {
        height: 120px;
    }

    .home-br-content img.portrait {
        height: 90px;
    }

    .client-item {
        width: calc((100% / 5) - calc(90 / 1536 * 100vw));
    }

    .home-pr-bottom-title {
        width: 100%;
        display: block;
        margin: 0px auto 30px;
        text-align: center;
    }

    .home-pr-bottom-link-group {
        display: block;
        margin: 0px auto;
        width: calc(100% - calc(16px * 2));
        max-width: 500px;
    }

    .home-pr-bottom-link > * {
        font-size: 16px;
    }

    .home-bl-title {
        font-size: 50px;
        margin-bottom: 10px;
    }
}

@media (max-width: 500px) {
    .home-top-container {
        width: 100%;
        border-radius: 0px;
        aspect-ratio: unset;
        height: calc(100vh - (90px + 16px))
    }

    #bx-pager {
        bottom: 30px;
        left: 16px;
    }

    #bx-pager a {
        margin-right: 10px;
    }

    .bxslider li {
        padding-left: 16px;
    }

    .bxslider h2 {
        font-size: 25px;
        line-height: 25px;
    }

    .bxslider li {
        font-size: 14px;
        line-height: 22px;
    }

    .home-top-link {
        width: calc((100% / 2) - 5px);
        margin: 0px;
        font-size: 12px;
    }

    .home-top-link:first-child {
        margin-right: 8px;
    }

    .home-ab-title {
        font-size: 30px;
        line-height: 35px;
    }

    .home-ab-img.img3 {
        left: auto;
        right: 0px;
        top: 230px;
    }

    @keyframes abImg3 {
        to {
            top: 400px;
        }
    }

    .home-ab-img.img1 {
        left: auto;
        right: 0px;
        top: 600px;
    }

    @keyframes abImg1 {
        to {
            top: 100px;
        }
    }

    .home-ab-img.img2 {
        top: 350px;
        left: -130px;
    }

    @keyframes abImg2 {
        to {
            top: 500px;
        }
    }

    .home-ab-icon.icon2 {
        left: -160px;
    }

    .home-ab-icon.icon1 {
        top: 800px;
    }

    .home-ab-desc {
        margin: 0px auto 500px;
    }

    .home-ab-img-group {
        top: 310px;
    }

    .home-br-content.text span {
        top: -13px;
    }

    .home-ab-container {
        padding: 80px 0px 30px;
    }

    .home-br-content.text {
        font-size: 70px;
        line-height: 72px;
        height: 55px;
    }

    .home-br-container {
        margin-bottom: 80px;
    }

    .home-pr-container {
        padding: 80px 0px 0px;
    }

    .home-br-content img {
        max-width: 130px;
        max-height: 80px;
    }

    :root {
        --h: 44px;
        /* tinggi 1 slide */
        --move: 0.5s;
        /* durasi geser */
        --pause: 1s;
        /* jeda */
        --total: 8s;
        /* (move+pause) × 2 item = 3s */
    }

    /* layout */
    .slider.css-only {
        font-size: 19px;
        line-height: 22px;
        width: calc(100% - 32px);
        margin: 0px auto 25px;
    }

    .home-pr-title {
        font-size: 30px;
        line-height: 30px;
    }

    .client-item {
        width: calc((100% / 2) - 16px);
        margin: 0px 25px 20px;
        max-width: 115px;
    }

    .home-pr-bottom-title {
        font-size: 17px;
        line-height: 28px;
    }

    .home-pr-bottom-link-group {
        padding: 0px;
    }

    .home-pr-bottom-link {
        width: 100%;
        height: 58px;
    }

    .home-pr-bottom-link span:first-child {
        font-size: 25px;
    }

    .home-pr-bottom-link > * {
        font-size: 14px;
    }

    .home-pr-bottom {
        padding: 0px;
        align-content: center;
    }

    .home-pr-text-bg {
        font-size: 65px;
        line-height: 75px;
        padding: 0px 0px 7px;
        align-content: end;
    }

    .home-bl-title {
        padding-left: 2px;
        font-size: 30px;
        line-height: 40px;
    }

    .home-bl-side {
        display: block;
        width: 100% !important;
        margin: 0px;
    }

    .home-bl-side.left {
        margin-bottom: 60px;
    }

    .home-bl-side.right > * {
        width: 100%;
    }

    .right .home-bl-item {
        margin: 0px auto 50px !important;
    }

    .home-bl-item-title {
        font-size: 24px;
        line-height: 29px;
    }

    .left .home-bl-item-desc {
        -webkit-line-clamp: 6;
    }

    .home-bl-item-desc {
        font-size: 16px;
        line-height: 24px;
    }

    .home-ab-link {
        font-size: 16px;
        /* width: 100%; */
    }

    .home-ab-img-group {
        right: 10px;
    }

    .home-ab-img-wrapper {
        width: 200px;
    }

    .home-bl-item::after {
        font-size: 20px;
    }
}