
/* ANGKOR CONNECT - FULL ADVANCE LISTING V24 */

#acLiveTemplateV24{
    --ac-v24-accent:#159db8;
    --ac-v24-dark:#11384a;
    --ac-v24-ink:#294653;
    --ac-v24-muted:#68808b;
    --ac-v24-line:#dce7eb;
    --ac-v24-bg:#f4f7f9;

    width:100%;
    margin:0;
    padding:34px 18px 70px;
    background:
        linear-gradient(
            180deg,
            #f7fafb 0%,
            var(--ac-v24-bg) 100%
        );
    font-family:
        Poppins,
        Arial,
        sans-serif;
    color:var(--ac-v24-ink);
}

.ac-v24-wrap{
    width:min(1240px,100%);
    margin:0 auto;
}

.ac-v24-hero{
    position:relative;
    min-height:465px;
    overflow:hidden;
    display:flex;
    align-items:flex-end;
    border-radius:24px;
    background:
        linear-gradient(
            135deg,
            #12394b 0%,
            #1b6174 70%,
            #2396ad 100%
        );
    background-size:cover;
    background-position:center;
    box-shadow:
        0 22px 55px
        rgba(26,55,68,.15);
}

.ac-v24-hero.has-cover:before{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(4,22,31,.05) 18%,
            rgba(4,22,31,.91) 100%
        );
}

.ac-v24-hero.no-cover:before{
    content:"";
    position:absolute;
    inset:0;
    background:
        radial-gradient(
            circle at 85% 18%,
            rgba(255,255,255,.16),
            transparent 25%
        );
}

.ac-v24-hero-inner{
    position:relative;
    z-index:2;
    display:grid;
    width:100%;
    grid-template-columns:
        minmax(0,1fr)
        auto;
    gap:28px;
    align-items:end;
    padding:42px;
}

.ac-v24-badges{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-bottom:12px;
}

.ac-v24-badge{
    display:inline-flex;
    align-items:center;
    min-height:29px;
    padding:0 10px;
    border:
        1px solid
        rgba(255,255,255,.27);
    border-radius:999px;
    background:
        rgba(8,35,47,.38);
    color:#fff;
    font-size:9px;
    font-weight:700;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.ac-v24-hero h1{
    margin:0 0 7px!important;
    max-width:850px;
    color:#fff!important;
    font-size:36px!important;
    line-height:1.17!important;
    font-weight:800!important;
}

.ac-v24-meta{
    color:
        rgba(255,255,255,.77);
    font-size:10px;
}

.ac-v24-actions{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:17px;
}

.ac-v24-btn{
    display:inline-flex;
    min-height:40px;
    align-items:center;
    justify-content:center;
    gap:7px;
    padding:0 14px;
    border:0;
    border-radius:9px;
    background:var(--ac-v24-accent);
    color:#fff!important;
    font-size:10px;
    font-weight:700;
    text-decoration:none!important;
}

.ac-v24-btn.secondary{
    border:
        1px solid
        rgba(255,255,255,.28);
    background:
        rgba(8,35,47,.46);
}

.ac-v24-logo-card{
    display:flex;
    width:150px;
    min-height:150px;
    align-items:center;
    justify-content:center;
    padding:13px;
    border:
        1px solid
        rgba(255,255,255,.3);
    border-radius:18px;
    background:#fff;
    box-shadow:
        0 14px 36px
        rgba(0,0,0,.18);
}

.ac-v24-logo-card img{
    display:block;
    max-width:100%;
    max-height:125px;
    object-fit:contain;
}

.ac-v24-grid{
    display:grid;
    grid-template-columns:
        minmax(0,1fr)
        340px;
    gap:18px;
    margin-top:18px;
    align-items:start;
}

.ac-v24-stack{
    display:grid;
    gap:18px;
}

.ac-v24-card{
    padding:24px;
    border:
        1px solid
        var(--ac-v24-line);
    border-radius:17px;
    background:#fff;
    box-shadow:
        0 7px 24px
        rgba(31,57,70,.045);
}

.ac-v24-kicker{
    display:block;
    margin-bottom:7px;
    color:var(--ac-v24-accent);
    font-size:9px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.ac-v24-card h2,
.ac-v24-card h3{
    margin:0 0 12px!important;
    color:var(--ac-v24-ink)!important;
    font-weight:800!important;
}

.ac-v24-card h2{
    font-size:21px!important;
}

.ac-v24-card h3{
    font-size:15px!important;
}

.ac-v24-copy{
    color:var(--ac-v24-muted);
    font-size:12px;
    line-height:1.85;
    white-space:pre-line;
}

.ac-v24-info{
    display:grid;
    gap:0;
}

.ac-v24-info-row{
    display:grid;
    grid-template-columns:
        85px
        minmax(0,1fr);
    gap:9px;
    padding:10px 0;
    border-bottom:
        1px solid
        #edf2f4;
}

.ac-v24-info-row:last-child{
    border-bottom:0;
}

.ac-v24-info-row strong{
    color:#78909a;
    font-size:9px;
    text-transform:uppercase;
}

.ac-v24-info-row span,
.ac-v24-info-row a{
    min-width:0;
    color:#355764;
    font-size:10px;
    line-height:1.55;
    word-break:break-word;
    text-decoration:none;
}

.ac-v24-services{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
}

.ac-v24-service{
    display:inline-flex;
    min-height:32px;
    align-items:center;
    padding:0 10px;
    border-radius:999px;
    background:#edf7f9;
    color:#267e91;
    font-size:9px;
    font-weight:700;
}

.ac-v24-gallery{
    display:grid;
    grid-template-columns:
        repeat(3,minmax(0,1fr));
    gap:10px;
}

.ac-v24-gallery-link{
    display:block;
    overflow:hidden;
    aspect-ratio:4/3;
    border-radius:12px;
    background:#e8f0f3;
    cursor:zoom-in;
}

.ac-v24-gallery-link img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:
        transform .2s ease;
}

.ac-v24-gallery-link:hover img{
    transform:scale(1.025);
}

.ac-v24-sources{
    display:grid;
    gap:7px;
}

.ac-v24-source{
    display:flex;
    min-height:39px;
    align-items:center;
    gap:8px;
    padding:0 10px;
    border:
        1px solid
        var(--ac-v24-line);
    border-radius:9px;
    background:#f9fbfc;
    color:#426572!important;
    font-size:9px;
    font-weight:700;
    text-decoration:none!important;
}

.ac-v24-note{
    margin-top:11px;
    padding:10px 11px;
    border-radius:9px;
    background:#f2f8fa;
    color:#748a94;
    font-size:9px;
    line-height:1.6;
}

.ac-v24-empty{
    color:#85969d;
    font-size:10px;
}

/* isolated gallery lightbox */
#acV24Lightbox{
    position:fixed;
    inset:0;
    z-index:999999;
    display:none;
    align-items:center;
    justify-content:center;
    padding:22px;
    background:
        rgba(3,15,22,.93);
}

#acV24Lightbox.open{
    display:flex;
}

#acV24Lightbox img{
    display:block;
    max-width:92vw;
    max-height:88vh;
    object-fit:contain;
    border-radius:11px;
}

.ac-v24-light-close{
    position:absolute;
    top:18px;
    right:22px;
    width:42px;
    height:42px;
    border:0;
    border-radius:50%;
    background:
        rgba(255,255,255,.12);
    color:#fff;
    font-size:26px;
    cursor:pointer;
}

@media(max-width:900px){
    #acLiveTemplateV24{
        padding:
            24px
            11px
            50px;
    }

    .ac-v24-hero{
        min-height:405px;
        border-radius:18px;
    }

    .ac-v24-hero-inner{
        grid-template-columns:1fr;
        padding:28px;
    }

    .ac-v24-logo-card{
        width:115px;
        min-height:115px;
    }

    .ac-v24-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:600px){
    .ac-v24-hero h1{
        font-size:28px!important;
    }

    .ac-v24-gallery{
        grid-template-columns:
            1fr
            1fr;
    }
}
