.language-switcher{display:inline-flex;align-items:center;gap:7px;margin-right:18px;white-space:nowrap}.language-switcher a,.language-switcher .cms-language-disabled{border:0;padding:0;margin:0;background:transparent;color:inherit;font-family:inherit;font-size:13px;font-weight:600;letter-spacing:.04em;opacity:.55;transition:opacity .2s ease,color .2s ease;text-decoration:none}.language-switcher a:hover,.language-switcher a.active,.language-switcher .active{opacity:1}.language-switcher>span{opacity:.35;font-size:12px}.mobile-menu-area .mobile-language-item{display:flex!important;align-items:center;justify-content:center;width:100%;margin-top:18px;padding-top:18px;border-top:1px solid rgba(255,255,255,.18)}.mobile-menu-area .mobile-language-item .language-switcher{display:inline-flex!important;align-items:center;justify-content:center;margin:0!important;color:#000!important}.cms-mobile-support{margin-top:18px}.cms-mobile-support a{font-weight:600}.price-idr,.price-usd{white-space:nowrap}.cms-empty{text-align:center;padding:50px 20px}.cms-content-body img{max-width:100%;height:auto}.cms-detail-gallery{margin-top:50px}.cms-detail-gallery img{width:100%;height:100%;object-fit:cover}.cms-detail-gallery .gallery-item{aspect-ratio:1/1;margin-bottom:24px;overflow:hidden}.cms-booking-shell{margin-top:55px;padding:40px;border:1px solid rgba(0,0,0,.08);background:#fff}.cms-booking-shell .title-area{margin-bottom:25px}.cms-product-detail-price{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:15px 0 25px}.cms-product-detail-price del{opacity:.55}.cms-product-meta{margin:15px 0 25px;padding:0;list-style:none}.cms-product-meta li{margin-bottom:6px}.cms-collection-card-link{display:block}.cms-collection-card-code{display:block;margin-top:12px;font-size:13px;letter-spacing:.08em}.llf-policy-modal{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;padding:20px}.llf-policy-modal.active{display:flex}.llf-policy-overlay{position:absolute;inset:0;background:rgba(0,0,0,.72)}.llf-policy-dialog{position:relative;z-index:2;width:min(760px,100%);max-height:82vh;overflow:auto;background:#fff;padding:42px;color:#111}.llf-policy-close{position:absolute;top:15px;right:15px;border:0;background:transparent;font-size:20px}.llf-policy-kicker{font-size:12px;letter-spacing:.14em;text-transform:uppercase}.footer-policy-link{border:0;background:transparent;color:inherit;padding:0;cursor:pointer}.footer-policy-list{display:flex;flex-wrap:wrap;gap:16px}.footer-policy-list li{margin:0!important}.faq-item .faq-answer{display:none}.faq-item.active .faq-answer{display:block}.cms-faq-simple .faq-question{width:100%;text-align:left;background:transparent;border:0;display:flex;justify-content:space-between;padding:20px 0;font-weight:600}.cms-faq-simple .faq-item{border-bottom:1px solid rgba(0,0,0,.12)}.cms-faq-simple .faq-answer{padding:0 0 20px}.cms-showcase-fallback img{width:100%}@media(max-width:767px){.cms-booking-shell{padding:24px 15px}.llf-policy-dialog{padding:34px 22px}.language-switcher{margin-right:0}}


/* Preserved inline styles from the original Last Little Flame template. */
/* Last Little Flame — Language Switcher */
.language-switcher {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-right: 18px;
    white-space: nowrap;
}
.language-switcher button {
    border: 0;
    padding: 0;
    margin: 0;
    background: transparent;
    color: inherit;
    font-family: inherit;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .04em;
    cursor: pointer;
    opacity: .55;
    transition: opacity .2s ease, color .2s ease;
}
.language-switcher button:hover,
.language-switcher button.active {
    opacity: 1;
}
.language-switcher > span {
    opacity: .35;
    font-size: 12px;
}
.mobile-menu-area .mobile-language-item {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid rgba(255,255,255,.18);
}
.mobile-menu-area .mobile-language-item .language-switcher {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
    color: #000 !important;
}
@media (max-width: 1199px) {
    .language-switcher {
        margin-right: 12px;
    }
}

.price-idr, .price-usd { white-space: nowrap; }
.price-idr[style*="display: none"], .price-usd[style*="display: none"] { display: none !important; }

.subscribe-popup {
    position: fixed;
    inset: 0;
    z-index: 999999;

    display: none;

    align-items: center;
    justify-content: center;
}

.subscribe-popup.active {
    display: flex;
}

.subscribe-popup-overlay {
    position: absolute;
    inset: 0;

    background: rgba(0, 0, 0, 0.65);

    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
}

.subscribe-popup-box {
    position: relative;
    z-index: 2;

    width: calc(100% - 40px);
    max-width: 450px;

    padding: 45px 35px;

    background: #ffffff;

    border-radius: 12px;

    text-align: center;

    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25);

    transform: translateY(25px) scale(0.95);
    opacity: 0;

    transition:
        transform 0.35s ease,
        opacity 0.35s ease;
}

.subscribe-popup.active .subscribe-popup-box {
    transform: translateY(0) scale(1);
    opacity: 1;
}

.subscribe-popup-icon {
    width: 70px;
    height: 70px;

    margin: 0 auto 20px;

    border-radius: 50%;

    background: #f1eee7;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 28px;

    color: #9b8155;
}

.subscribe-popup-box h3 {
    margin: 0 0 12px;

    font-size: 28px;
}

.subscribe-popup-box p {
    margin: 0 0 10px;

    line-height: 1.7;

    color: #666;
}

.subscribe-popup-box p strong {
    color: #333;
}

.subscribe-popup-box > span {
    display: block;

    margin-bottom: 25px;

    color: #9b8155;

    font-style: italic;
}

.subscribe-popup-button {
    min-width: 110px;
}

.subscribe-popup-close {
    position: absolute;

    top: 15px;
    right: 15px;

    width: 35px;
    height: 35px;

    border: 0;

    background: transparent;

    font-size: 18px;

    color: #777;

    cursor: pointer;
}

.subscribe-popup-close:hover {
    color: #000;
}

@media (max-width: 575px) {

    .subscribe-popup-box {
        width: calc(100% - 30px);

        padding: 40px 25px;
    }

    .subscribe-popup-box h3 {
        font-size: 24px;
    }

    .subscribe-popup-icon {
        width: 60px;
        height: 60px;

        font-size: 24px;
    }

}
