*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#162017;background:#fff;line-height:1.6}.agency-container{width:min(1120px,calc(100% - 36px));margin:0 auto}.agency-narrow{width:min(820px,calc(100% - 36px))}.agency-topbar{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid #e5ece7}.agency-topbar-inner{height:70px;display:flex;align-items:center;justify-content:space-between}.agency-brand{display:flex;gap:11px;align-items:center;text-decoration:none;color:#132418}.agency-brand-mark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--agency-primary);color:#fff;font-size:12px;font-weight:800}.agency-brand strong,.agency-brand small{display:block}.agency-brand small{color:#6d7e72;font-size:11px}.agency-top-cta{padding:9px 15px;border-radius:999px;text-decoration:none;border:1px solid #cfdcd2;color:var(--agency-primary);font-weight:700}.agency-hero{position:relative;min-height:650px;display:grid;align-items:center;background:linear-gradient(135deg,#073c27,#155f3e);overflow:hidden}.agency-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.agency-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,29,18,.9),rgba(5,39,23,.68) 52%,rgba(5,39,23,.25))}.agency-hero-content{position:relative;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:48px;align-items:center;color:#fff;padding:80px 0}.agency-eyebrow,.agency-section-kicker{display:inline-block;font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:#d6ae49;margin-bottom:12px}.agency-hero h1{font-family:Georgia,serif;font-size:clamp(38px,5vw,70px);line-height:1.05;margin:0 0 20px;max-width:800px}.agency-hero p{font-size:18px;max-width:700px;color:#e4ede7}.agency-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.agency-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 20px;border-radius:10px;text-decoration:none;font-weight:800;border:1px solid transparent}.agency-btn-primary{background:var(--agency-primary);color:#fff}.agency-btn-light{background:#fff;color:#173823}.agency-btn-gold{background:#d5aa43;color:#173018}.agency-btn-block{width:100%}.agency-profile-card{background:rgba(255,255,255,.94);color:#173018;border-radius:24px;padding:24px;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.25)}.agency-profile-card img,.agency-avatar{width:150px;height:150px;border-radius:50%;object-fit:cover;margin:0 auto 18px}.agency-avatar{display:grid;place-items:center;background:#e8f2eb;color:var(--agency-primary);font-size:58px;font-weight:800}.agency-profile-card strong,.agency-profile-card span,.agency-profile-card small{display:block}.agency-profile-card strong{font-size:22px}.agency-profile-card span{color:#54705b}.agency-profile-card small{margin-top:8px;color:#78907e}.agency-section{padding:20px 0}.agency-section-soft{background:#f2f7f3}.agency-section h2{font-family:Georgia,serif;font-size:clamp(30px,4vw,48px);line-height:1.15;margin:0 0 22px;color:#173820}.agency-lead{font-size:18px;color:#4d6253}.agency-two-col{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.agency-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.agency-feature-grid article{border:1px solid #dce8df;border-radius:16px;padding:20px;background:#fff}.agency-feature-grid strong,.agency-feature-grid span{display:block}.agency-feature-grid span{font-size:14px;color:#68786d;margin-top:7px}.agency-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.agency-gallery figure{margin:0;background:#fff;border-radius:16px;overflow:hidden}.agency-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.agency-gallery figcaption{padding:10px 14px;font-size:13px;color:#526257}.agency-product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.agency-product-card{position:relative;border:1px solid #dce8df;border-radius:18px;padding:24px;background:#fff;box-shadow:0 12px 28px rgba(20,60,36,.06)}.agency-product-card h3{margin:0 0 4px;font-size:21px}.agency-product-card small{color:#7b8a80}.agency-price{display:block;font-size:24px;color:var(--agency-primary);margin:20px 0 8px}.agency-product-card p{color:#607065;min-height:76px}.agency-featured{position:absolute;right:18px;top:18px;padding:5px 9px;border-radius:999px;background:#fff1c7;color:#7b5a00;font-size:11px;font-weight:800}.agency-testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.agency-testimonial-grid blockquote{margin:0;padding:24px;border-radius:18px;background:#fff;border:1px solid #dce8df}.agency-stars{color:#d5aa43}.agency-testimonial-grid footer strong,.agency-testimonial-grid footer span{display:block}.agency-testimonial-grid footer span{color:#7b8a80;font-size:13px}.agency-faqs details{border-bottom:1px solid #dce8df;padding:18px 0}.agency-faqs summary{cursor:pointer;font-weight:800}.agency-faqs p{color:#5e6e63}.agency-cta{padding:72px 0;background:var(--agency-primary);color:#fff}.agency-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.agency-cta span{color:#d8eadd}.agency-cta h2{font-family:Georgia,serif;font-size:clamp(28px,4vw,46px);line-height:1.15;margin:5px 0 0;max-width:760px}.agency-footer{padding:50px 0;background:#092f20;color:#dce9df}.agency-footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.agency-footer p{color:#a9c1b1}.agency-empty{max-width:650px;margin:100px auto;padding:50px;border:1px solid #dce8df;border-radius:20px;text-align:center}.agency-empty-inline{padding:25px;border:1px dashed #cddbd0;border-radius:14px;color:#65766b}.agency-hidden{display:none!important}@media(max-width:900px){.agency-hero-content,.agency-two-col{grid-template-columns:1fr}.agency-profile-card{max-width:420px}.agency-product-grid,.agency-gallery,.agency-testimonial-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.agency-container,.agency-narrow{width:min(100% - 24px,1120px)}.agency-hero{min-height:auto}.agency-hero-content{padding:60px 0}.agency-hero h1{font-size:40px}.agency-feature-grid,.agency-product-grid,.agency-gallery,.agency-testimonial-grid,.agency-footer-grid{grid-template-columns:1fr}.agency-cta-inner{align-items:flex-start;flex-direction:column}.agency-actions .agency-btn{width:100%}.agency-top-cta{font-size:12px;padding:8px 10px}}
.agency-logo{width:44px;height:44px;object-fit:contain}.agency-nav{display:flex;gap:18px;align-items:center}.agency-nav a{text-decoration:none;color:#24352a;font-size:13px;font-weight:700}.agency-nav-toggle{display:none;border:0;background:none;font-size:23px}.agency-profile-visual img{width:100%;max-height:520px;object-fit:cover;border-radius:22px}.agency-feature-grid-six{grid-template-columns:repeat(3,1fr)}.agency-feature-icon{font-size:25px;margin-bottom:10px}.agency-gallery-filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.agency-gallery-filters button{border:1px solid #d3dfd6;background:#fff;border-radius:999px;padding:8px 13px;cursor:pointer}.agency-gallery-filters button.is-active{background:var(--agency-primary);color:#fff}.agency-chip-list{display:flex;gap:9px;flex-wrap:wrap}.agency-chip-list span{padding:9px 13px;border-radius:999px;background:#edf6f0;color:#245a38;font-weight:700;font-size:13px}.agency-timeline{display:grid;gap:12px}.agency-timeline article{display:grid;grid-template-columns:48px 1fr;gap:15px;align-items:start}.agency-timeline-number{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--agency-primary);color:#fff;font-weight:800}.agency-timeline p{margin:4px 0 0;color:#64736a}.agency-product-meta{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.agency-product-meta span{background:#edf6f0;border-radius:999px;padding:5px 9px;font-size:11px}.agency-office-card{display:grid;grid-template-columns:1fr 1fr;gap:24px;border:1px solid #dce8df;border-radius:20px;padding:20px}.agency-office-card img{width:100%;height:320px;object-fit:cover;border-radius:15px}.agency-legality-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.agency-legality-grid article{display:flex;gap:12px;padding:16px;border:1px solid #dce8df;border-radius:14px;background:#fff}.agency-legality-grid article>span{color:#0c8b50;font-weight:900}.agency-legality-grid strong,.agency-legality-grid small{display:block}.agency-legality-grid small{color:#64736a}.agency-lead-section{background:#0b512f;color:#fff}.agency-lead-section h2{color:#fff}.agency-lead-layout{display:grid;grid-template-columns:1fr 1fr;gap:55px}.agency-benefit-list{display:grid;gap:10px}.agency-benefit-list>div{display:flex;gap:12px;padding:13px;border-radius:12px;background:rgba(255,255,255,.08)}.agency-benefit-list span{color:#e4bd5d}.agency-benefit-list strong,.agency-benefit-list small{display:block}.agency-benefit-list small{opacity:.78}.agency-lead-form{background:#fff;color:#1a2a20;border-radius:20px;padding:24px}.agency-lead-form label{display:block;font-weight:700;font-size:13px;margin-bottom:12px}.agency-lead-form input,.agency-lead-form select,.agency-lead-form textarea{width:100%;margin-top:6px;border:1px solid #d7e1da;border-radius:10px;padding:12px;font:inherit}.agency-alert{padding:12px;border-radius:10px;margin-bottom:12px}.agency-alert.success{background:#dcfce7;color:#166534}.agency-alert.danger{background:#fee2e2;color:#991b1b}.agency-floating-wa{position:fixed;right:20px;bottom:20px;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#18ad63;color:#fff;text-decoration:none;font-weight:900;box-shadow:0 12px 28px rgba(0,0,0,.25);z-index:40}.agency-socials{display:flex;gap:10px;flex-wrap:wrap}.agency-socials a{color:#dce9df}.agency-copyright{border-top:1px solid rgba(255,255,255,.12);padding-top:18px;margin-top:22px;font-size:13px;color:#9fb8a7}.agency-countdown{margin-top:24px}.agency-countdown>span{display:block;margin-bottom:8px;color:#e8d394}.agency-countdown>div{display:flex;gap:7px;align-items:end;flex-wrap:wrap}.agency-countdown strong{font-size:28px}.agency-countdown small{margin-right:8px;color:#d7e3db}@media(max-width:1020px){.agency-nav{display:none;position:absolute;top:70px;left:12px;right:12px;background:#fff;padding:16px;border-radius:14px;box-shadow:0 14px 35px rgba(0,0,0,.12);flex-direction:column;align-items:flex-start}.agency-nav.is-open{display:flex}.agency-nav-toggle{display:block}.agency-top-cta{display:none}.agency-feature-grid-six{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.agency-office-card,.agency-lead-layout,.agency-legality-grid{grid-template-columns:1fr}.agency-feature-grid-six{grid-template-columns:1fr}.agency-carousel{grid-template-columns:34px 1fr 34px}.agency-office-card img{height:230px}}

/* CMM Agency Posts v2.6 */
.agency-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.agency-post-card{overflow:hidden;border:1px solid #dce8df;border-radius:18px;background:#fff;box-shadow:0 12px 28px rgba(20,60,36,.06)}
.agency-post-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.agency-post-card-body{padding:20px}
.agency-post-card time,.agency-post-detail time{display:block;color:var(--agency-primary);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.agency-post-card h3{margin:8px 0;font-size:21px;line-height:1.3}
.agency-post-card h3 a{color:#173820;text-decoration:none}
.agency-post-card p{color:#607065;min-height:70px}
.agency-post-more{color:var(--agency-primary);font-weight:800;text-decoration:none}
.agency-post-detail{padding:60px 0 90px;background:#f4f8f5}
.agency-post-detail-container{max-width:900px}
.agency-post-back{display:inline-block;margin-bottom:20px;color:var(--agency-primary);font-weight:800;text-decoration:none}
.agency-post-cover{width:100%;max-height:520px;object-fit:cover;border-radius:22px 22px 0 0;display:block}
.agency-post-detail-body{padding:clamp(24px,5vw,58px);border:1px solid #dce8df;border-radius:22px;background:#fff}
.agency-post-cover+.agency-post-detail-body{border-top:0;border-radius:0 0 22px 22px}
.agency-post-detail h1{font-family:Georgia,serif;font-size:clamp(34px,5vw,58px);line-height:1.12;margin:12px 0 18px;color:#173820}
.agency-post-lead{font-size:19px;color:#53685a;border-left:4px solid var(--agency-primary);padding-left:18px}
.agency-post-content{font-size:17px;color:#33463a;line-height:1.85;margin-top:28px}
@media(max-width:900px){.agency-post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.agency-post-grid{grid-template-columns:1fr}.agency-post-detail{padding-top:28px}.agency-post-detail-body{padding:24px}.agency-post-card p{min-height:auto}}



/* =========================================================
   CMM AGENCY CAROUSEL v2.7
   - Satu postingan proporsional di tengah
   - Maksimal 20 postingan terbaru
   - Auto slide, tombol, dots, swipe Android
   - Testimoni memakai mesin carousel yang sama
========================================================= */
.agency-carousel-intro {
    max-width: 680px;
    margin: -8px auto 24px;
    color: #68786d;
    text-align: center;
}

.agency-post-carousel,
.agency-testimonial-carousel {
    width: min(100%, 820px);
    margin: 28px auto 0;
    position: relative;
    touch-action: pan-y;
}

.agency-carousel-viewport {
    width: 100%;
    overflow: hidden;
    border-radius: 22px;
}

.agency-carousel-track {
    display: flex;
    width: 100%;
    transform: translate3d(0, 0, 0);
    transition: transform .55s cubic-bezier(.22,.61,.36,1);
    will-change: transform;
}

.agency-carousel-track.is-dragging {
    transition: none;
}

.agency-carousel-slide {
    flex: 0 0 100%;
    min-width: 0;
    box-sizing: border-box;
}

.agency-post-slide {
    display: flex;
    justify-content: center;
    align-items: stretch;
    padding: 2px;
}

.agency-post-card {
    overflow: hidden;
    width: 100%;
    border: 1px solid #dce8df;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 16px 38px rgba(20,60,36,.09);
}

.agency-post-card-featured {
    max-width: 760px;
    margin: 0 auto;
}

.agency-post-image-link {
    display: block;
    overflow: hidden;
    background: #e9f1eb;
}

.agency-post-card img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    transition: transform .45s ease;
}

.agency-post-card:hover img {
    transform: scale(1.025);
}

.agency-post-card-body {
    padding: clamp(22px, 4vw, 38px);
    text-align: center;
}

.agency-post-card time,
.agency-post-detail time {
    display: block;
    color: var(--agency-primary);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.agency-post-card h3 {
    max-width: 650px;
    margin: 10px auto 12px;
    font-family: Georgia, serif;
    font-size: clamp(24px, 3vw, 34px);
    line-height: 1.22;
}

.agency-post-card h3 a {
    color: #173820;
    text-decoration: none;
}

.agency-post-card p {
    max-width: 650px;
    min-height: 0;
    margin: 0 auto 18px;
    color: #607065;
    font-size: 15px;
    line-height: 1.75;
}

.agency-post-more {
    color: var(--agency-primary);
    font-weight: 800;
    text-decoration: none;
}













.agency-carousel-controls {
    display: grid;
    grid-template-columns: 44px minmax(0,1fr) 44px;
    align-items: center;
    gap: 14px;
    width: min(100%, 620px);
    margin: 20px auto 0;
}

.agency-carousel-control {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border: 1px solid #d5e2d9;
    border-radius: 50%;
    background: #fff;
    color: #244532;
    font: inherit;
    font-size: 25px;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 8px 18px rgba(20,60,36,.07);
}

.agency-carousel-control:hover,
.agency-carousel-control:focus-visible {
    border-color: var(--agency-primary);
    color: var(--agency-primary);
    outline: none;
}

.agency-carousel-dots {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 7px;
    min-width: 0;
    overflow-x: auto;
    padding: 7px 4px;
    scrollbar-width: none;
}

.agency-carousel-dots::-webkit-scrollbar {
    display: none;
}

.agency-carousel-dot {
    flex: 0 0 auto;
    width: 9px;
    height: 9px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #c7d5cb;
    cursor: pointer;
    transition: width .25s ease, background .25s ease;
}

.agency-carousel-dot.is-active {
    width: 25px;
    border-radius: 999px;
    background: var(--agency-primary);
}

.agency-carousel-hint {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 7px;
    margin-top: 7px;
    color: #7b8a80;
    font-size: 12px;
}

.agency-carousel-hint span {
    color: var(--agency-primary);
    font-size: 18px;
    animation: agency-carousel-hint 1.8s ease-in-out infinite;
}

@keyframes agency-carousel-hint {
    0%,100% { transform: translateX(-3px); }
    50% { transform: translateX(3px); }
}

@media (max-width: 620px) {
    .agency-post-carousel,
    .agency-testimonial-carousel {
        width: 100%;
        margin-top: 20px;
    }

    .agency-post-card {
        border-radius: 17px;
    }

    .agency-post-card-body {
        padding: 22px 18px 24px;
    }

    .agency-post-card h3 {
        font-size: 24px;
    }

    .agency-post-card p {
        font-size: 14px;
    }

    

    

    .agency-carousel-controls {
        grid-template-columns: 38px minmax(0,1fr) 38px;
        gap: 8px;
        margin-top: 14px;
    }

    .agency-carousel-control {
        width: 38px;
        height: 38px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .agency-carousel-track,
    .agency-post-card img,
    .agency-carousel-dot,
    .agency-carousel-hint span {
        transition: none;
        animation: none;
    }
}


/* =========================================================
   CMM TESTIMONIAL SLIDER v2.8
========================================================= */
.agency-testimonial-slider {
    position: relative;
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) 48px;
    align-items: center;
    gap: 12px;
    width: min(100%, 900px);
    margin: 28px auto 0;
    touch-action: pan-y;
}

.agency-testimonial-viewport {
    width: 100%;
    max-width: 100%;
    overflow: hidden !important;
    border-radius: 18px;
}

.agency-testimonial-track {
    display: flex !important;
    width: 100%;
    max-width: 100%;
    transform: translate3d(0, 0, 0);
    transition: transform .5s ease;
    will-change: transform;
}

.agency-testimonial-track.is-dragging {
    transition: none;
}

.agency-testimonial-slide {
    min-height: 250px;
    margin: 0 !important;
    padding: 28px;
    border: 1px solid #dce8df;
    border-radius: 18px;
    background: #fff;
    box-sizing: border-box;
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    text-align: left;
}

.agency-testimonial-slide .agency-stars {
    margin-bottom: 12px;
    color: #d5aa43;
    font-size: 18px;
    letter-spacing: .08em;
}

.agency-testimonial-slide > p {
    max-width: 760px;
    margin: 0 0 22px;
    color: #33483a;
    font-size: 17px;
    line-height: 1.75;
}

.agency-testimonial-slide footer strong,
.agency-testimonial-slide footer span {
    display: block;
}

.agency-testimonial-slide footer strong {
    color: #173820;
}

.agency-testimonial-slide footer span {
    margin-top: 2px;
    color: #7b8a80;
    font-size: 13px;
}

.agency-testimonial-arrow {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 1px solid #d7e3da;
    border-radius: 50%;
    background: #fff;
    color: #244532;
    font: inherit;
    font-size: 27px;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 8px 18px rgba(20,60,36,.07);
}

.agency-testimonial-arrow:hover,
.agency-testimonial-arrow:focus-visible {
    border-color: var(--agency-primary);
    color: var(--agency-primary);
    outline: none;
}

.agency-testimonial-progress {
    grid-column: 2;
    justify-self: center;
    display: flex;
    gap: 5px;
    margin-top: 3px;
    color: #718078;
    font-size: 12px;
    font-weight: 700;
}

@media (max-width: 700px) {
    .agency-testimonial-slider {
        grid-template-columns: 38px minmax(0, 1fr) 38px;
        gap: 7px;
        width: 100%;
    }

    .agency-testimonial-slide {
        min-height: 290px;
        padding: 24px 20px;
    }

    .agency-testimonial-slide > p {
        font-size: 15px;
        line-height: 1.7;
    }

    .agency-testimonial-arrow {
        width: 36px;
        height: 36px;
        font-size: 23px;
    }
}

@media (max-width: 420px) {
    .agency-testimonial-slider {
        grid-template-columns: 32px minmax(0, 1fr) 32px;
        gap: 5px;
    }

    .agency-testimonial-slide {
        min-height: 320px;
        padding: 22px 17px;
    }

    .agency-testimonial-arrow {
        width: 31px;
        height: 31px;
        font-size: 20px;
    }
}

/* =========================================================
   CMM AGENCY GALLERY CAROUSEL — R3
   Visual card mengikuti Featured Posting
   Layout count dikendalikan oleh agency-carousel.js
========================================================= */

.agency-gallery-carousel {
    width: 100%;
    max-width: 100%;
    margin-top: 20px;
    overflow: hidden;
}

.agency-gallery-viewport {
    width: 100%;
    max-width: 100%;
    overflow: hidden !important;
    border-radius: 20px;
}

.agency-gallery-track {
    display: flex !important;
    width: 100%;
    max-width: 100%;
    will-change: transform;
}

.agency-gallery-slide {
    min-width: 0;
    box-sizing: border-box;
    margin: 0;
    padding: 0 7px;
    background: transparent;
}

.agency-gallery-slide img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    border-radius: 18px 18px 0 0;
}

.agency-gallery-slide {
    overflow: hidden;
    border: 1px solid #dce8df;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(20,60,36,.06);
}

.agency-gallery-slide figcaption {
    min-height: 52px;
    padding: 12px 15px 14px;
    color: #526257;
    font-size: 13px;
    line-height: 1.5;
    text-align: center;
}

.agency-gallery-slide:hover img {
    transform: scale(1.015);
    transition: transform .35s ease;
}

@media (max-width: 620px) {
    .agency-gallery-carousel {
        margin-top: 16px;
    }

    .agency-gallery-slide {
        padding: 0;
        border-radius: 17px;
    }

    .agency-gallery-slide img {
        border-radius: 17px 17px 0 0;
    }

    .agency-gallery-slide figcaption {
        min-height: 48px;
        padding: 11px 14px 13px;
        font-size: 13px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .agency-gallery-slide img {
        transition: none;
    }
}


/* =========================================================
   CMM AGENCY FANPAGE — VISUAL ALIGNMENT 70I
   Gallery / Postingan / Testimoni
   VISUAL ONLY — NO DATA / JS / ORDER CHANGE
========================================================= */

/* ---------------------------------------------------------
   1. BUKTI / GALLERY
   Menyamakan ritme visual dengan section homepage
--------------------------------------------------------- */

.agency-proof {
    padding-top: 28px;
    padding-bottom: 28px;
}

.agency-proof-header {
    max-width: 820px;
    margin: 0 auto 28px;
    text-align: center;
}

.agency-proof-header .agency-section-kicker {
    display: block;
    margin-bottom: 10px;
}

.agency-proof-header h2 {
    margin-bottom: 14px;
}

.agency-proof-header p {
    max-width: 680px;
    margin: 0 auto;
    color: #68786d;
    font-size: 18px;
    line-height: 1.7;
}

/* Gallery tetap memiliki filter.
   Yang disamakan hanya lebar dan ritme carousel. */
.agency-proof #gallery {
    padding-top: 0;
    padding-bottom: 20px;
}

.agency-proof #gallery .agency-gallery-filters {
    margin: 0 auto 20px;
    justify-content: center;
}

.agency-proof #gallery .agency-gallery-carousel {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
}

/* ---------------------------------------------------------
   2. POSTINGAN
   Homepage menggunakan section putih.
   Fanpage tetap memakai struktur/class lama,
   tetapi tampilan background diselaraskan.
--------------------------------------------------------- */

.agency-proof #posts {
    background: #fff;
    padding-top: 28px;
    padding-bottom: 28px;
}

.agency-proof #posts > .agency-container {
    text-align: center;
}

.agency-proof #posts .agency-carousel-intro {
    max-width: 680px;
    margin: -8px auto 24px;
    color: #68786d;
    font-size: 18px;
    line-height: 1.7;
    text-align: center;
}

.agency-proof #posts .agency-post-carousel {
    width: min(100%, 820px);
    margin: 28px auto 0;
}

.agency-proof #posts .agency-post-card-featured {
    max-width: 760px;
    margin: 0 auto;
}

/* ---------------------------------------------------------
   3. TESTIMONI
   Menjaga struktur slider dan kontrol yang sudah ada.
--------------------------------------------------------- */

.agency-proof #testimonials {
    padding-top: 28px;
    padding-bottom: 28px;
}

.agency-proof #testimonials > .agency-container {
    text-align: center;
}

.agency-proof #testimonials .agency-testimonial-slider {
    width: min(100%, 900px);
    margin: 28px auto 0;
}

.agency-proof #testimonials .agency-testimonial-slide {
    text-align: left;
}

/* ---------------------------------------------------------
   MOBILE
--------------------------------------------------------- */

@media (max-width: 700px) {

    .agency-proof {
        padding-top: 22px;
        padding-bottom: 22px;
    }

    .agency-proof-header {
        margin-bottom: 22px;
    }

    .agency-proof-header p {
        font-size: 16px;
        line-height: 1.65;
    }

    .agency-proof #gallery {
        padding-bottom: 16px;
    }

    .agency-proof #gallery .agency-gallery-filters {
        justify-content: flex-start;
        margin-bottom: 16px;
    }

    .agency-proof #posts,
    .agency-proof #testimonials {
        padding-top: 22px;
        padding-bottom: 22px;
    }

    .agency-proof #posts .agency-carousel-intro {
        font-size: 16px;
        line-height: 1.65;
    }
}

@media (max-width: 420px) {

    .agency-proof-header h2 {
        font-size: 28px;
    }

    .agency-proof-header p {
        font-size: 15px;
    }
}

/* =========================================================
   END VISUAL ALIGNMENT 70I
========================================================= */
/* =========================================================
   CMM AGENCY FANPAGE — GALLERY VISUAL MATCH HOMEPAGE
   70I-GALLERY
   VISUAL ONLY — NO DATA / JS / ORDER / FILTER CHANGE
========================================================= */

.agency-proof #gallery .agency-gallery-carousel {
    position: relative;
    width: min(100%, 820px);
    max-width: 820px;
    margin: 28px auto 0;
    overflow: visible;
    touch-action: pan-y;
}

.agency-proof #gallery .agency-gallery-viewport {
    width: 100%;
    max-width: 100%;
    overflow: hidden !important;
    border-radius: 22px;
}

.agency-proof #gallery .agency-gallery-slide {
    box-sizing: border-box;
    min-width: 0;
    width: 100%;
    margin: 0;
    padding: 2px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    overflow: visible;
}

.agency-proof #gallery .agency-gallery-slide img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
    border: 1px solid rgba(15, 23, 42, .09);
    border-radius: 22px 22px 0 0;
    background: #e2e8f0;
    box-shadow: 0 16px 38px rgba(15, 23, 42, .09);
}

.agency-proof #gallery .agency-gallery-slide figcaption {
    min-height: 0;
    margin: 0;
    padding: 14px 18px 16px;
    border: 1px solid rgba(15, 23, 42, .09);
    border-top: 0;
    border-radius: 0 0 22px 22px;
    background: #fff;
    color: #334155;
    font-size: .94rem;
    font-weight: 650;
    line-height: 1.5;
    text-align: center;
}

.agency-proof #gallery .agency-gallery-slide:hover img {
    transform: none;
    transition: none;
}

@media (max-width: 767px) {
    .agency-proof #gallery .agency-gallery-carousel {
        width: 100%;
        max-width: 100%;
        margin-top: 22px;
    }

    .agency-proof #gallery .agency-gallery-viewport {
        border-radius: 18px;
    }

    .agency-proof #gallery .agency-gallery-slide {
        padding: 1px;
    }

    .agency-proof #gallery .agency-gallery-slide img {
        aspect-ratio: 4 / 3;
        border-radius: 18px 18px 0 0;
    }

    .agency-proof #gallery .agency-gallery-slide figcaption {
        border-radius: 0 0 18px 18px;
    }

    .agency-proof #gallery .agency-gallery-slide:not(:has(figcaption)) img {
        border-radius: 18px;
    }
}

/* =========================================================
   END 70I-GALLERY
========================================================= */


/* Z3-K8-R6: HOMEPAGE PRODUCT IMAGE SIZE — FIXED 4:3 */
.agency-product-card-image {
    width: 100%;
    max-width: 100%;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    border-radius: 18px;
    margin-bottom: 14px;
}

.agency-product-card-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}


/* 77B-L5-A24: Homepage Product Visual Parity */
.cmm-company-category{
    display:inline-flex;
    margin-bottom:14px;
    padding:6px 10px;
    border-radius:999px;
    background:rgba(15,107,62,.1);
    color:var(--agency-primary);
    font-size:12px;
    font-weight:800;
}

.cmm-homepage-product-price{
    display:flex;
    flex-direction:column;
    gap:3px;
    margin:18px 0 16px;
    min-height:62px;
}

.cmm-homepage-product-price-label{
    color:#68786d;
    font-size:11px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.cmm-homepage-product-price-main{
    display:block;
    color:var(--agency-primary);
    font-size:24px;
    line-height:1.2;
    font-weight:900;
}

.cmm-homepage-product-price-old{
    display:block;
    color:#87958c;
    font-size:14px;
    line-height:1.3;
    text-decoration:line-through;
}

.cmm-homepage-product-price-empty{
    justify-content:center;
    color:#87958c;
    font-size:13px;
    font-weight:700;
}

@media (max-width:620px){
    .cmm-homepage-product-price{
        margin-top:16px;
        margin-bottom:14px;
        min-height:58px;
    }

    .cmm-homepage-product-price-main{
        font-size:22px;
    }

    .cmm-homepage-product-price-old{
        font-size:13px;
    }
}

/* END 77B-L5-A24 */
