.ellipsis_1 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ellipsis_2 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ellipsis_3 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ellipsis_4 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* whatsapp */
.containers {
    bottom: 24px;
    position: fixed;
    margin: 1em;
    left: 33px;
    z-index: 9999;
}

.buttons {
    background: #25d366;
    box-shadow:
        0px 5px 11px -2px rgba(0, 0, 0, 0.18),
        0px 4px 12px -7px rgba(0, 0, 0, 0.15);
    border-radius: 50%;
    display: block;
    width: 56px;
    height: 56px;
    margin: 20px auto 0;
    position: relative;
    -webkit-transition: all 0.1s ease-out;
    transition: all 0.1s ease-out;
}

.buttons:active,
.buttons:focus,
.buttons:hover {
    box-shadow:
        0 0 4px rgba(0, 0, 0, 0.14),
        0 4px 8px rgba(0, 0, 0, 0.28);
}

.buttons:not(:last-child) {
    width: 40px;
    height: 40px;
    margin: 20px auto 0;
    opacity: 0;
    -webkit-transform: translateY(50px);
    -ms-transform: translateY(50px);
    transform: translateY(50px);
}

.containers:hover .buttons:not(:last-child) {
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    margin: 15px auto 0;
}

.buttons:nth-last-child(1) {
    -webkit-transition-delay: 25ms;
    transition-delay: 25ms;
    background-image: url(/assets/defaults/gambar/whatsapp.png);
    background-size: contain;
}

.buttons:not(:last-child):nth-last-child(2) {
    -webkit-transition-delay: 50ms;
    transition-delay: 20ms;
    background-image: url(/assets/defaults/gambar/whatsapp.png);
    background-size: contain;
}

.buttons:not(:last-child):nth-last-child(3) {
    -webkit-transition-delay: 75ms;
    transition-delay: 40ms;
    background-image: url(/assets/defaults/gambar/whatsapp.png);
    background-size: contain;
}

.buttons:not(:last-child):nth-last-child(4) {
    -webkit-transition-delay: 100ms;
    transition-delay: 60ms;
    background-image: url(/assets/defaults/gambar/whatsapp.png);
    background-size: contain;
}

[tooltip]:before {
    bottom: 25%;
    font-family: arial;
    font-weight: 600;
    border-radius: 2px;
    background: #585858;
    color: #fff;
    content: attr(tooltip);
    font-size: 12px;
    visibility: hidden;
    opacity: 0;
    padding: 5px 7px;
    margin-left: 12px;
    position: absolute;
    left: 100%;
    white-space: nowrap;
}

[tooltip]:hover:before,
[tooltip]:hover:after {
    visibility: visible;
    opacity: 1;
}

.map-footer iframe {
    width: 100%;
    height: 230px;
    border: 0;
}

/*  */

.program-list li {
    position: relative;
    padding-left: 28px;
}

.program-list li::before {
    content: "";
    position: absolute;
    top: 4px;
    left: 0;
    width: 18px;
    height: 18px;
    background-image: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15.8531 8.63909L13.8086 8.05484C12.8879 7.79527 12.0492 7.30377 11.3728 6.62736C10.6964 5.95095 10.2049 5.11228 9.94536 4.19159L9.36111 2.14709C9.33172 2.07556 9.28174 2.01438 9.2175 1.97132C9.15327 1.92826 9.07769 1.90527 9.00036 1.90527C8.92303 1.90527 8.84744 1.92826 8.78321 1.97132C8.71897 2.01438 8.66899 2.07556 8.63961 2.14709L8.05536 4.19159C7.79579 5.11228 7.30429 5.95095 6.62788 6.62736C5.95147 7.30377 5.1128 7.79527 4.19211 8.05484L2.14761 8.63909C2.0691 8.66137 2.00001 8.70865 1.95082 8.77375C1.90162 8.83886 1.875 8.91823 1.875 8.99984C1.875 9.08144 1.90162 9.16082 1.95082 9.22592C2.00001 9.29103 2.0691 9.3383 2.14761 9.36059L4.19211 9.94484C5.1128 10.2044 5.95147 10.6959 6.62788 11.3723C7.30429 12.0487 7.79579 12.8874 8.05536 13.8081L8.63961 15.8526C8.66189 15.9311 8.70917 16.0002 8.77427 16.0494C8.83938 16.0986 8.91875 16.1252 9.00036 16.1252C9.08196 16.1252 9.16133 16.0986 9.22644 16.0494C9.29154 16.0002 9.33882 15.9311 9.36111 15.8526L9.94536 13.8081C10.2049 12.8874 10.6964 12.0487 11.3728 11.3723C12.0492 10.6959 12.8879 10.2044 13.8086 9.94484L15.8531 9.36059C15.9316 9.3383 16.0007 9.29103 16.0499 9.22592C16.0991 9.16082 16.1257 9.08144 16.1257 8.99984C16.1257 8.91823 16.0991 8.83886 16.0499 8.77375C16.0007 8.70865 15.9316 8.66137 15.8531 8.63909Z' fill='%2300A693' /%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
}

.brand__item {
    transition: all 0.3s ease;
    padding: 15px;
}

.brand__item:hover {
    transform: scale(1.1);
    cursor: pointer;
}

/* .swiper-slide {
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
} */

.brand-swiper {
    width: 100%;
    overflow: hidden;
    position: relative;
    padding: 0 40px;
}

.lokasi-map {
    overflow: hidden;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
}

.lokasi-map iframe {
    width: 100% !important;
    height: 350px !important;
    border: none !important;
    display: block !important;
}

.custom-logo-size {
    width: 240px !important;
    display: inline-block;
}

@media (max-width: 991px) {
    .custom-logo-size {
        width: 220px !important; /* Ukuran lebih maksimal untuk tablet */
    }
}

@media (max-width: 575px) {
    .custom-logo-size {
        width: 190px !important; /* Ukuran dimaksimalkan untuk mobile */
    }
}

.custom-logo-size img {
    width: 100%;
    height: auto;
    max-width: 100%;
    max-height: 100%;
}

/* WhatsApp Floating Button */
.wa-float {
    position: fixed;
    bottom: 40px;
    right: 40px;
    width: 60px;
    height: 60px;
    background-color: #25d366;
    color: #fff;
    border-radius: 50%;
    text-align: center;
    font-size: 30px;
    box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.2);
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.3s ease;
}

.wa-float:hover {
    background-color: #128c7e;
    color: #fff;
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.3);
}

.wa-float i {
    font-family: "Font Awesome 5 Brands", "Font Awesome 6 Brands", "FontAwesome";
    font-weight: 400;
}

.wa-badge {
    position: absolute;
    top: -5px;
    right: -5px;
    background-color: #ff3b30;
    color: white;
    border-radius: 50%;
    padding: 3px 8px;
    font-size: 12px;
    font-weight: bold;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    line-height: 1;
}

/* Pulse Effect */
.wa-float .pulse {
    position: absolute;
    width: 100%;
    height: 100%;
    background: inherit;
    border-radius: inherit;
    z-index: -1;
    animation: wa-pulse 2s infinite;
}

@keyframes wa-pulse {
    0% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7);
    }
    70% {
        transform: scale(1.3);
        box-shadow: 0 0 0 15px rgba(37, 211, 102, 0);
    }
    100% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(37, 211, 102, 0);
    }
}