/* Floating Pace HUMAS */
@keyframes paceGlow {
    0%,100% { box-shadow:0 16px 36px rgba(197,154,69,.24),0 0 0 0 rgba(197,154,69,.34); }
    50% { box-shadow:0 20px 44px rgba(197,154,69,.32),0 0 0 14px rgba(197,154,69,0); }
}

@keyframes paceFloat {
    0%,100% { transform:translateY(0); }
    50% { transform:translateY(-7px); }
}

@keyframes pacePulse {
    0% { transform:scale(.8); opacity:.6; }
    100% { transform:scale(1.45); opacity:0; }
}

.pace-humas-float {
    position:fixed;
    right:22px;
    bottom:96px;
    z-index:1040;
    display:grid;
    place-items:center;
    width:92px;
    height:92px;
    color:#fff;
    background:linear-gradient(135deg,#fff,#fff8e7);
    border:1px solid rgba(197,154,69,.35);
    border-radius:50%;
    text-decoration:none;
    padding:0;
    animation:paceGlow 2.4s ease-in-out infinite, paceFloat 3.6s ease-in-out infinite;
}

.pace-humas-float img {
    position:relative;
    z-index:2;
    width:76px;
    height:76px;
    object-fit:contain;
    filter:drop-shadow(0 10px 14px rgba(74,92,82,.18));
}

.pace-humas-pulse {
    position:absolute;
    inset:7px;
    border:2px solid rgba(197,154,69,.45);
    border-radius:50%;
    animation:pacePulse 1.7s ease-out infinite;
}

.pace-humas-label {
    position:absolute;
    right:78px;
    top:50%;
    width:max-content;
    padding:8px 11px;
    color:#303f39;
    background:#fff;
    border:1px solid #e8eee9;
    border-radius:999px;
    box-shadow:0 12px 24px rgba(80,93,86,.12);
    font-size:.68rem;
    font-weight:800;
    transform:translateY(-50%);
}

.pace-humas-float:hover {
    color:#fff;
    transform:translateY(-4px);
}

.pace-humas-popup {
    position:fixed;
    right:24px;
    bottom:198px;
    z-index:1039;
    width:min(390px,calc(100vw - 28px));
    max-height:min(620px,calc(100vh - 132px));
    display:none;
    overflow:hidden;
    background:#fff;
    border:1px solid #e6eee8;
    border-radius:18px;
    box-shadow:0 28px 70px rgba(64,80,71,.22);
}

.pace-humas-popup.show {
    display:flex;
    flex-direction:column;
}

.pace-popup-head {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    padding:16px;
    background:linear-gradient(135deg,#fbfdfb,#eef4f0);
    border-bottom:1px solid #e6eee8;
}

.pace-popup-head span {
    display:block;
    color:#c59a45;
    font-size:.62rem;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.pace-popup-head strong {
    display:block;
    margin-top:4px;
    color:#303f39;
    font-size:.92rem;
    line-height:1.35;
}

.pace-popup-head button {
    display:grid;
    flex:0 0 auto;
    width:34px;
    height:34px;
    place-items:center;
    color:#60746b;
    background:#fff;
    border:1px solid #e6eee8;
    border-radius:10px;
}

.pace-popup-search {
    display:grid;
    grid-template-columns:minmax(0,1fr) 42px;
    gap:8px;
    padding:12px 14px;
    border-bottom:1px solid #eef3ef;
}

.pace-popup-search input {
    width:100%;
    min-height:42px;
    padding:0 12px;
    color:#303f39;
    background:#f8faf8;
    border:1px solid #e6eee8;
    border-radius:12px;
    font-size:.8rem;
    outline:none;
}

.pace-popup-search input:focus {
    border-color:#c8d5cc;
    box-shadow:0 0 0 4px rgba(143,161,150,.14);
}

.pace-popup-search button {
    display:grid;
    place-items:center;
    color:#fff;
    background:#8fa196;
    border:0;
    border-radius:12px;
}

.pace-faq-list {
    display:grid;
    gap:9px;
    padding:12px 14px;
    overflow:auto;
}

.pace-faq-item {
    background:#fbfdfb;
    border:1px solid #e6eee8;
    border-radius:13px;
}

.pace-faq-item summary {
    cursor:pointer;
    display:grid;
    gap:6px;
    padding:12px;
    color:#303f39;
    font-size:.8rem;
    font-weight:800;
    line-height:1.45;
    list-style:none;
}

.pace-faq-item summary::-webkit-details-marker {
    display:none;
}

.pace-faq-item summary span {
    width:max-content;
    padding:5px 8px;
    color:#9a742d;
    background:#fff7e8;
    border-radius:999px;
    font-size:.55rem;
    font-weight:800;
    text-transform:uppercase;
}

.pace-faq-item p {
    margin:0;
    padding:0 12px 12px;
    color:#65766d;
    font-size:.76rem;
    line-height:1.65;
}

.pace-faq-empty {
    padding:18px;
    color:#728179;
    background:#fbfdfb;
    border:1px dashed #dce6df;
    border-radius:13px;
    font-size:.78rem;
    text-align:center;
}

.pace-popup-lapor {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:42px;
    margin:0 14px 14px;
    color:#fff;
    background:linear-gradient(135deg,#c59a45,#d8b66d);
    border-radius:12px;
    font-size:.75rem;
    font-weight:800;
    text-decoration:none;
}

.pace-popup-lapor:hover {
    color:#fff;
}

/* Halaman HUMAS */
.humas-page-body {
    margin:0;
    color:#303f39;
    background:#f8faf8;
    font-family:'Montserrat','Segoe UI',sans-serif;
}

.humas-page-body .main-navbar {
    position:sticky;
    top:0;
    z-index:10;
    background:rgba(255,255,255,.96);
    box-shadow:0 12px 28px rgba(80,93,86,.08);
}

.humas-page {
    min-height:100vh;
    background:linear-gradient(180deg,#fbfcfa 0%,#fff 45%,#f3f7f4 100%);
}

.humas-hero {
    position:relative;
    overflow:hidden;
    padding:58px 0 46px;
    background:
        radial-gradient(circle at 14% 18%,rgba(191,207,197,.32),transparent 28%),
        radial-gradient(circle at 88% 12%,rgba(218,184,109,.22),transparent 25%),
        linear-gradient(135deg,#fff,#edf4ef);
}

.humas-kicker,
.humas-section-heading span,
.humas-complaint-panel span {
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:8px 12px;
    color:#6d7f74;
    background:#fff;
    border:1px solid #e6eee8;
    border-radius:12px;
    box-shadow:0 10px 22px rgba(83,101,91,.07);
    font-size:.64rem;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.humas-kicker i,
.humas-section-heading i,
.humas-complaint-panel span i {
    color:#c59a45;
}

.humas-hero h1 {
    max-width:760px;
    margin:14px 0 12px;
    color:#303f39;
    font-size:clamp(1.9rem,3.4vw,3.2rem);
    font-weight:800;
    line-height:1.12;
}

.humas-hero p {
    max-width:680px;
    margin:0;
    color:#68776f;
    font-size:.92rem;
    line-height:1.75;
}

.humas-hero-actions,
.humas-complaint-actions {
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:20px;
}

.humas-hero-actions a,
.humas-complaint-actions a {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:44px;
    padding:10px 14px;
    border-radius:999px;
    font-size:.76rem;
    font-weight:800;
    text-decoration:none;
    transition:transform .25s ease,box-shadow .25s ease;
}

.humas-primary-action,
.humas-complaint-actions a:first-child {
    color:#fff;
    background:linear-gradient(135deg,#c59a45,#d8b66d);
    box-shadow:0 16px 30px rgba(197,154,69,.2);
}

.humas-wa-action,
.humas-complaint-actions a:last-child {
    color:#45564e;
    background:#fff;
    border:1px solid #e6eee8;
    box-shadow:0 12px 24px rgba(83,101,91,.08);
}

.humas-hero-actions a:hover,
.humas-complaint-actions a:hover {
    transform:translateY(-3px);
}

.humas-mascot-card {
    display:grid;
    justify-items:center;
    max-width:360px;
    margin-left:auto;
    padding:26px;
    background:#fff;
    border:1px solid #e6eee8;
    border-radius:20px;
    box-shadow:0 24px 48px rgba(83,101,91,.11);
    text-align:center;
}

.humas-mascot-card img {
    width:190px;
    height:190px;
    object-fit:contain;
    filter:drop-shadow(0 14px 18px rgba(80,93,86,.16));
    animation:paceFloat 3.8s ease-in-out infinite;
}

.humas-mascot-card span {
    color:#c59a45;
    font-size:.66rem;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.humas-mascot-card strong {
    display:block;
    margin-top:5px;
    color:#303f39;
    font-size:1.2rem;
    font-weight:800;
}

.humas-mascot-card small {
    display:block;
    margin-top:6px;
    color:#718079;
    line-height:1.55;
}

.humas-support,
.humas-faq-section,
.humas-complaint {
    padding:34px 0;
}

.humas-support-card {
    height:100%;
    padding:20px;
    background:#fff;
    border:1px solid #e6eee8;
    border-radius:16px;
    box-shadow:0 18px 38px rgba(84,101,91,.08);
}

.humas-support-card i {
    display:grid;
    width:42px;
    height:42px;
    place-items:center;
    color:#fff;
    background:linear-gradient(135deg,#9cafa3,#c8d5cc);
    border-radius:12px;
    font-size:1.15rem;
}

.humas-support-card:nth-child(2) i {
    background:linear-gradient(135deg,#c59a45,#d8b66d);
}

.humas-support-card h2 {
    margin:13px 0 8px;
    color:#303f39;
    font-size:1rem;
    font-weight:800;
}

.humas-support-card p,
.humas-support-card small {
    margin:0;
    color:#68776f;
    font-size:.82rem;
    line-height:1.65;
}

.humas-section-heading {
    margin-bottom:16px;
}

.humas-section-heading h2,
.humas-complaint-panel h2 {
    margin:12px 0 0;
    color:#303f39;
    font-size:clamp(1.35rem,2.2vw,2rem);
    font-weight:800;
}

.humas-category-row {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:16px;
}

.humas-category-row span {
    padding:7px 10px;
    color:#6d7f74;
    background:#fff;
    border:1px solid #e6eee8;
    border-radius:999px;
    font-size:.66rem;
    font-weight:800;
}

.humas-accordion .accordion-item {
    overflow:hidden;
    margin-bottom:10px;
    background:#fff;
    border:1px solid #e6eee8;
    border-radius:14px;
    box-shadow:0 12px 24px rgba(84,101,91,.06);
}

.humas-accordion .accordion-button {
    gap:12px;
    color:#303f39;
    background:#fff;
    font-size:.88rem;
    font-weight:800;
    box-shadow:none;
}

.humas-accordion .accordion-button span {
    flex:0 0 auto;
    padding:6px 9px;
    color:#c59a45;
    background:#fff7e8;
    border-radius:999px;
    font-size:.58rem;
    text-transform:uppercase;
}

.humas-accordion .accordion-body {
    color:#5d6f66;
    font-size:.86rem;
    line-height:1.8;
}

.humas-empty {
    padding:24px;
    color:#718079;
    background:#fff;
    border:1px dashed #dce6df;
    border-radius:14px;
    text-align:center;
}

.humas-complaint {
    padding-bottom:70px;
}

.humas-complaint-panel {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
    padding:26px;
    background:linear-gradient(135deg,#fff,#eef4f0);
    border:1px solid #e6eee8;
    border-radius:20px;
    box-shadow:0 24px 48px rgba(83,101,91,.1);
}

.humas-complaint-panel p {
    max-width:720px;
    margin:10px 0 0;
    color:#68776f;
    font-size:.9rem;
    line-height:1.7;
}

.humas-complaint-actions {
    flex:0 0 auto;
    margin-top:0;
}

@media (max-width:991.98px) {
    .pace-humas-float {
        right:16px;
        bottom:78px;
        width:78px;
        height:78px;
    }

    .pace-humas-float img {
        width:64px;
        height:64px;
    }

    .pace-humas-label {
        display:none;
    }

    .pace-humas-popup {
        right:14px;
        bottom:166px;
        max-height:calc(100vh - 190px);
    }

    .humas-mascot-card {
        margin:0 auto;
    }

    .humas-complaint-panel {
        display:block;
    }

    .humas-complaint-actions {
        margin-top:18px;
    }
}

@media (max-width:575.98px) {
    .humas-hero {
        padding:40px 0 34px;
    }

    .humas-mascot-card img {
        width:150px;
        height:150px;
    }

    .humas-hero-actions a,
    .humas-complaint-actions a {
        width:100%;
    }

    .humas-accordion .accordion-button {
        align-items:flex-start;
        flex-direction:column;
    }
}
