﻿body {
}
.center-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.property-description {
    max-height: 300px;
    overflow-y: auto;
    padding-right: 8px; /* space for scrollbar */
}

/* Optional: smooth scrolling */
.property-description {
    scroll-behavior: smooth;
}
    .property-description::-webkit-scrollbar {
        width: 6px;
    }

    .property-description::-webkit-scrollbar-thumb {
        background-color: #bbb;
        border-radius: 4px;
    }
.property-description {
    overflow-x: hidden;
}
/* ===== HOME PAGE MAIN SLIDER HEIGHT FIX ===== */

/* Force slider to original template height */
.pgl-main-slide,
.pgl-main-slide .owl-stage-outer,
.pgl-main-slide .owl-stage,
.pgl-main-slide .owl-item,
.pgl-main-slide .item {
    height: 560px; /* original template height */
}

    /* Force images to fill slider */
    .pgl-main-slide .item img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    /* Caption overlay should fill slider height */
    .pgl-main-slide .item-caption {
        height: 100%;
        display: flex;
        align-items: center;
    }

    /* Keep caption box vertically centered */
    .pgl-main-slide .property-info {
        margin-top: 0;
    }

/* Mobile override */
@media (max-width: 767px) {
    .pgl-main-slide,
    .pgl-main-slide .owl-stage-outer,
    .pgl-main-slide .owl-stage,
    .pgl-main-slide .owl-item,
    .pgl-main-slide .item {
        height: auto !important;
        min-height: 280px; /* adjust if needed */
    }

        .pgl-main-slide .item img {
            width: 100%;
            height: 280px; /* keeps consistent visible area */
            object-fit: cover; /* prevents layout breaking */
            display: block;
        }
}


/* Mobile spacing improvements for featured image grid */
@media (max-width: 767px) {

    /* Ensure container doesn’t look too tight */
    .pgl-featured .container,
    .pgl-bg-grey .container {
        padding-left: 15px;
        padding-right: 15px;
    }

    /* Reduce weird gaps between columns */
    .pgl-featured .row {
        margin-left: -8px;
        margin-right: -8px;
    }

    .pgl-featured [class*="col-"] {
        padding-left: 8px;
        padding-right: 8px;
        margin-bottom: 12px;
    }

    /* Images always fill box */
    .pgl-featured img {
        width: 100%;
        height: auto;
        display: block;
    }

    /* If the dark title panel overlaps badly */
    .pgl-featured .caption,
    .pgl-featured .property-thumb-info-label {
        left: 0;
        right: 0;
    }
}



/* Legal Advisory Detail page – mobile fix (scoped, won’t affect other pages) */
@media (max-width: 767px) {

    /* remove desktop spacing that expects the date box on the left */
    .associate-legal-officer-page .post-body {
        padding-left: 0 !important;
    }

    /* make the date box stack on top */
    .associate-legal-officer-page .post-date {
        position: static !important;
        float: none !important;
        width: 100% !important;
        max-width: 280px; /* keeps it nice centered */
        margin: 0 auto 16px !important; /* space under the box */

        display: block !important;
        text-align: center !important;
    }

    /* ensure content doesn’t keep left margin/padding from desktop */
    .associate-legal-officer-page .post-content {
        margin-left: 0 !important;
        padding-left: 0 !important;
        clear: both !important;
    }
}

/* ===== Legal Advisory Detail Mobile Fix ===== */
@media (max-width: 768px) {

    /* Card spacing */
    .legal-detail-card,
    .experience-item,
    .timeline-item {
        padding: 20px 18px !important;
    }

    /* Content text spacing */
    .experience-content,
    .legal-content {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

        /* Number circle spacing */
        .experience-content ul,
        .experience-content li {
            padding-left: 15px !important;
        }

        /* Fix bullet alignment */
        .experience-content li {
            margin-bottom: 12px !important;
            line-height: 1.6;
        }

        /* Heading spacing */
        .experience-content h4,
        .experience-content h5 {
            margin-top: 15px;
            margin-bottom: 12px;
        }
}
/* Legal Advisory Detail – Mobile fixes */
@media (max-width: 767px) {

    /* Give inner content proper left/right padding */
    .post.post-large .post-content {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    /* Your Education/Skills blocks are inside ul.post-action > li (template makes them side-by-side) */
    .post.post-large .post-action > li {
        float: none !important;
        width: 100% !important;
        display: block !important;
        border-left: none !important;
        border-right: none !important;
        padding: 0 !important;
        margin-bottom: 14px !important;
        text-align: left !important;
    }

    /* Override your inline height/width so the red date box looks good on mobile */
    .post.post-large .post-action .post-date {
        width: 100% !important;
        height: auto !important; /* overrides inline height:50px */
        padding: 12px 10px !important;
        line-height: 1.25 !important;
        text-align: center !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        border-radius: 12px !important;
        white-space: normal !important;
    }

    /* Add padding for the text below the red box (h4 and span text) */
    .post.post-large .post-action h4,
    .post.post-large .post-action span {
        display: block;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    /* If any container is removing padding, force it back */
    .post.post-large .post-body {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
}





/* ===== Featured block: 1 big left + 4 small right (stable) ===== */

/* Make the featured row behave like the template */
.pgl-featured .row {
    display: flex;
    flex-wrap: wrap;
    gap: 0; /* keep template spacing */
    align-items: stretch;
}

    /* Ensure columns stretch and cards fill width */
    .pgl-featured .row > [class*="col-"] {
        display: flex;
        flex-direction: column;
    }

.pgl-featured .pgl-property,
.pgl-featured .property-thumb-info,
.pgl-featured .property-thumb-info-image {
    width: 100%;
}

/* Important: prevent image-size from breaking layout */
.pgl-featured .property-thumb-info-image {
    overflow: hidden;
    background: #eee; /* fallback while image loads */
}

    .pgl-featured .property-thumb-info-image img {
        width: 100%;
        height: 100%;
        display: block;
        object-fit: cover; /* crops images nicely */
    }

/* LEFT big card height */
.pgl-featured .col-md-8 .property-thumb-info-image {
    height: 420px; /* match original look */
}

/* RIGHT small cards height */
.pgl-featured .col-md-4 .property-thumb-info-image {
    height: 200px; /* two rows on right */
}

/* spacing between 2x2 small cards */
.pgl-featured .col-md-4 .row {
    margin-left: -10px;
    margin-right: -10px;
}

    .pgl-featured .col-md-4 .row > [class*="col-"] {
        padding-left: 10px;
        padding-right: 10px;
        margin-bottom: 20px;
    }

/* Make caption bar stay at bottom like template */
.pgl-featured .property-thumb-info-label {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
}

/* Ensure image container is relative for overlay */
.pgl-featured .property-thumb-info-image {
    position: relative;
}

/* Fallback: force right side items to stack 2 per row */
.pgl-featured .col-md-4 {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

    .pgl-featured .col-md-4 .pgl-property {
        flex: 0 0 calc(50% - 10px); /* 2 items per row */
    }

/* ===== LOCK FEATURED PROPERTY LAYOUT (NO BREAK) ===== */

/* Make featured row stable */
.pgl-featured .row {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
}

    /* Force columns to stretch equally */
    .pgl-featured .row > [class*="col-"] {
        display: flex;
    }

/* Ensure cards fill column width */
.pgl-featured .pgl-property,
.pgl-featured .property-thumb-info {
    width: 100%;
}

/* IMPORTANT: give image container fixed height */
.pgl-featured .property-thumb-info-image {
    position: relative;
    overflow: hidden;
    background: #f2f2f2;
}

/* Left big card */
.pgl-featured .col-md-6 .property-thumb-info-image {
    height: 340px; /* matches your screenshot row height */
}

/* Right small cards */
.pgl-featured .col-md-3 .property-thumb-info-image {
    height: 160px; /* two rows fit nicely */
}

/* Image always fits container */
.pgl-featured .property-thumb-info-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Caption bar stays pinned at bottom */
.pgl-featured .property-thumb-info-label {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
}
/* ===== PROPERTIES section cards (tabs) - prevent layout break ===== */

/* Lock image area so portrait images don't stretch the card */
.pgl-properties .pgl-property .property-thumb-info-image,
.pgl-properties .property-thumb-info .property-thumb-info-image {
    position: relative;
    overflow: hidden;
    height: 220px; /* match template card image height */
    background: #f2f2f2;
}

    /* Force image to fill the fixed height */
    .pgl-properties .pgl-property .property-thumb-info-image img,
    .pgl-properties .property-thumb-info .property-thumb-info-image img {
        width: 100%;
        height: 100%;
        object-fit: cover; /* IMPORTANT */
        display: block;
    }

/* Keep the price/status label at bottom-left */
.pgl-properties .property-thumb-info-label {
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 2;
}

/* Make card body consistent height */
.pgl-properties .pgl-property .property-thumb-info-content {
    min-height: 120px;
}

    /* Stop long titles from increasing card height */
    .pgl-properties .pgl-property .property-thumb-info-content h3,
    .pgl-properties .pgl-property .property-thumb-info-content h3 a {
        display: -webkit-box;
        -webkit-line-clamp: 2; /* max 2 lines */
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

.testimonial-author img{
    max-width:110px;
}
.testimonial-text-limit-100 {
    max-height: 106px;
}
.testimonial-text-limit-200 {
    max-height: 200px;
}
.testimonial {
    /* adjust height as needed */
    overflow-y: auto;
    padding-right: 10px;
}

    /* Optional: nicer scrollbar (Chrome/Edge) */
    .testimonial::-webkit-scrollbar {
        width: 6px;
    }

    .testimonial::-webkit-scrollbar-thumb {
        background: #888;
        border-radius: 3px;
    }

        .testimonial::-webkit-scrollbar-thumb:hover {
            background: #555;
        }

/* Make row behave like flex */
.blog-posts .row {
    display: flex !important;
    flex-wrap: wrap !important;
}

    /* Make columns stretch */
    .blog-posts .row > .col-md-6 {
        display: flex !important;
        flex-direction: column !important;
    }

/* Make article stretch */
.blog-posts .post.post-large {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    height: 100% !important;
}

    /* Fix image height so all cards align */
    .blog-posts .post.post-large .post-image {
        height: 300px !important;
        overflow: hidden !important;
    }

        .blog-posts .post.post-large .post-image img {
            width: 100% !important;
            height: 100% !important;
            object-fit: cover !important;
        }

    /* Make body fill remaining height */
    .blog-posts .post.post-large .post-body {
        flex: 1 !important;
        display: flex !important;
        flex-direction: column !important;
    }

        /* Remove bottom margin causing empty space */
        .blog-posts .post.post-large .post-body p:last-child {
            margin-bottom: 0 !important;
        }

/* Mobile fix */
@media (max-width: 768px) {
    .blog-posts .row {
        display: block !important;
    }

        .blog-posts .row > .col-md-6 {
            display: block !important;
        }
}

/* ===== Featured section: 1 BIG (left) + 4 SMALL (right 2x2) ===== */

/* Images always crop nicely */
.pgl-featured .property-thumb-info-image {
    position: relative;
    overflow: hidden;
    background: #eee;
}

    .pgl-featured .property-thumb-info-image img {
        width: 100%;
        height: 100%;
        display: block;
        object-fit: cover;
    }

/* Desktop layout exactly like template */
@media (min-width: 992px) {
    /* target the main featured row */
    .pgl-featured .container > .row {
        display: grid;
        grid-template-columns: repeat(4, 1fr); /* 4 columns */
        grid-auto-rows: 200px; /* small tile height */
        gap: 30px; /* spacing like template */
        margin-left: 0;
        margin-right: 0;
    }

        /* remove bootstrap column padding (grid uses gap) */
        .pgl-featured .container > .row > [class*="col-"] {
            padding-left: 0;
            padding-right: 0;
            width: auto;
        }

        /* BIG tile = first item spans 2 columns + 2 rows */
        .pgl-featured .container > .row > :first-child {
            grid-column: 1 / span 2;
            grid-row: 1 / span 2;
        }

        /* SMALL tiles: place next 4 items into the right 2x2 */
        .pgl-featured .container > .row > :nth-child(2) {
            grid-column: 3;
            grid-row: 1;
        }

        .pgl-featured .container > .row > :nth-child(3) {
            grid-column: 4;
            grid-row: 1;
        }

        .pgl-featured .container > .row > :nth-child(4) {
            grid-column: 3;
            grid-row: 2;
        }

        .pgl-featured .container > .row > :nth-child(5) {
            grid-column: 4;
            grid-row: 2;
        }

        /* make each card fill its grid cell */
        .pgl-featured .container > .row .pgl-property,
        .pgl-featured .container > .row .property-thumb-info,
        .pgl-featured .container > .row .property-thumb-info-image {
            height: 100%;
        }
}

/* keep overlay label at bottom */
.pgl-featured .property-thumb-info-label {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
}
/* ===== Featured section: 1 BIG + 4 SMALL (2x2) – hard lock ===== */

@media (min-width: 992px) {

  /* Apply grid to the TOP featured row only */
  .pgl-featured .container .row {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: 200px 200px;  /* exactly 2 rows of small tiles */
    gap: 20px;
    margin-left: 0;
    margin-right: 0;
  }

  /* Remove bootstrap column padding and stop floats from interfering */
  .pgl-featured .container .row > [class*="col-"] {
    float: none !important;
    width: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;

    /* IMPORTANT: allow children to fit inside grid cell */
    min-height: 0;
    min-width: 0;
  }

  /* Place tiles exactly */
  .pgl-featured .container .row > :first-child { grid-column: 1 / span 2; grid-row: 1 / span 2; }
  .pgl-featured .container .row > :nth-child(2) { grid-column: 3; grid-row: 1; }
  .pgl-featured .container .row > :nth-child(3) { grid-column: 4; grid-row: 1; }
  .pgl-featured .container .row > :nth-child(4) { grid-column: 3; grid-row: 2; }
  .pgl-featured .container .row > :nth-child(5) { grid-column: 4; grid-row: 2; }

  /* Force each card to fill its tile and not grow */
  .pgl-featured .container .row > [class*="col-"] .pgl-property,
  .pgl-featured .container .row > [class*="col-"] .property-thumb-info {
    height: 100% !important;
    overflow: hidden;          /* prevents content from stretching tile */
  }

  /* Make image fill the entire tile */
  .pgl-featured .property-thumb-info-image {
    height: 100% !important;
    overflow: hidden;
    position: relative;
    background: #eee;
  }

  .pgl-featured .property-thumb-info-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  /* Keep label overlay at bottom */
  .pgl-featured .property-thumb-info-label {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
  }
}
/* ===== Restore project name overlay (black panel) ===== */

.pgl-featured .property-thumb-info-content {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 12px 15px;
    background: rgba(0, 0, 0, 0.75); /* black overlay like original */
    color: #fff;
    z-index: 2;
    /* IMPORTANT: do not affect layout height */
    height: auto;
}

    /* Project title text */
    .pgl-featured .property-thumb-info-content h4,
    .pgl-featured .property-thumb-info-content h5,
    .pgl-featured .property-thumb-info-content a {
        color: #fff !important;
        margin: 0;
        font-size: 15px;
        font-weight: 600;
    }

/* Prevent overlay content from pushing tile height */
.pgl-featured .property-thumb-info {
    position: relative;
    overflow: hidden;
}

/* ===== Remove Bootstrap clearfix gap for featured grid ===== */
.pgl-featured .row::before,
.pgl-featured .row::after {
    display: none !important;
    content: none !important;
}


/* ===== About Us ===== */
.pgl-offer .row {
    display: flex;
    flex-wrap: wrap;
}

.pgl-offer .col-md-3 {
    display: flex;
}

.pgl-offer .offer-item {
    width: 100%;
    display: flex;
    padding: 40px 25px;
    transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;
}

.pgl-offer .offer-item-inner {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
}

    /* ICON ONLY */
    .pgl-offer .offer-item-inner i {
        font-size: 60px;
        color: #747474;
        margin-bottom: 30px;
        transition: color 0.3s ease;
    }

    /* Title + text */
    .pgl-offer .offer-item-inner h3 {
        margin: 0 0 15px;
        transition: color 0.3s ease;
    }

    .pgl-offer .offer-item-inner p {
        margin: 0;
        transition: color 0.3s ease;
    }

/* Hover: card lift + red background + white text/icons */
.pgl-offer .offer-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    background: #e53935;
}

    .pgl-offer .offer-item:hover i,
    .pgl-offer .offer-item:hover h3,
    .pgl-offer .offer-item:hover p {
        color: #fff;
    }

/* ===== Property Detail: FlexSlider - force same image size ===== */

/* Main big slider */
.pgl-pro-detail #slider .slides > li {
    height: 520px; /* change if you want taller/shorter */
    overflow: hidden;
}

    .pgl-pro-detail #slider .slides > li img {
        width: 100%;
        height: 100%;
        object-fit: cover; /* keeps crop without stretching */
        display: block;
    }

/* Thumbnail carousel */
.pgl-pro-detail #carousel .slides > li {
    height: 90px;
    overflow: hidden;
}

    .pgl-pro-detail #carousel .slides > li img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }
@media (max-width: 768px) {
    .pgl-pro-detail #slider .slides > li {
        height: 320px;
    }
}

/* Property Detail only: top banner spacing + title placement (won't affect other pages) */
.pgl-page-top.pgl-page-top--propertydetail {
    min-height: 260px; /* banner height even if no image */
    padding: 70px 0 60px; /* space above/below title */
    background-color: #f2f2f2; /* fallback if no bg image */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

    /* Title style */
    .pgl-page-top.pgl-page-top--propertydetail h2 {
        margin: 0;
        display: inline-block;
        background: rgba(255,255,255,0.85); /* white box like template feel */
        padding: 18px 26px;
        font-size: 46px;
        font-weight: 800;
        letter-spacing: 1px;
        text-transform: uppercase;
    }



.offer-item {
    padding: 50px 25px 45px !important;
}


/* Make the row flex so columns in the same row get equal height */
.practice-row {
    display: flex;
    flex-wrap: wrap;
}

    /* Each column becomes a flex item */
    .practice-row > .col-md-3 {
        display: flex;
    }

        /* The card fills the full column height */
        .practice-row > .col-md-3 .offer-item {
            width: 100%;
            display: flex;
        }

        /* Inner content layout */
        .practice-row > .col-md-3 .offer-item-inner {
            width: 100%;
            display: flex;
            flex-direction: column;
        }

            /* Optional: align text area similarly (keeps bottom spacing consistent) */
            .practice-row > .col-md-3 .offer-item-inner p:last-child {
                margin-top: auto;
            }


    .practice-row .offer-item {
        min-height: 320px;
        /* adjust once */
    }





/* =========================================================
   Associate Legal Officer Page - SAFE SCOPED CSS
   ========================================================= */

.associate-legal-officer-page .post-date {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.5;
    /* requested improvement */
    border-radius: 10px;
    overflow: hidden;
}

.associate-legal-officer-page .post-action li {
    padding: 5px !important;
    width: 33%;
    border-right: 1px solid #ddd;
}

    .associate-legal-officer-page .post-action li h4 {
        padding: 10px !important;
    }

/* ---------- Page spacing ---------- */
.associate-legal-officer-page .blog-posts {
    width: 100%;
}

    .associate-legal-officer-page .blog-posts > .post {
        margin-bottom: 18px;
    }

/* ---------- Testimonial section ---------- */
.associate-legal-officer-page .pgl-testimonials-full,
.associate-legal-officer-page .pgl-testimonials-full * {
    border-radius: 0 !important;
}

/* ---------- Main cards (Experience / Education / Skills / Activities) ---------- */
.associate-legal-officer-page .post.post-large {
    background: #fff;
    border: 1px solid #ececec;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.05);
    transition: 0.2s ease;
}

    .associate-legal-officer-page .post.post-large:hover {
        box-shadow: 0 12px 28px rgba(0, 0, 0, 0.08);
        transform: translateY(-2px);
    }

    /* Layout for experience cards with date on left */
    .associate-legal-officer-page .post.post-large .post-body {
        padding: 22px 24px;
        display: flex;
        align-items: flex-start;
    }

/* make sure content flows nicely */
.associate-legal-officer-page .post .post-content {
    flex: 1;
    padding-top: 2px;
}

    .associate-legal-officer-page .post .post-content h4 {
        margin: 0 0 12px !important;
        font-weight: 800;
        color: #1b1b1b;
        line-height: 1.45 !important;
    }

    /* ---------- Number circles inside experience lists (b tags) ---------- */
    .associate-legal-officer-page .post .post-content b {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 26px;
        height: 26px;
        border-radius: 999px;
        background: #f7caca;
        color: #8b1414;
        font-size: 13px;
        font-weight: 800;
        margin-right: 10px;
    }

    /* Improve spacing between <br><br> blocks */
    .associate-legal-officer-page .post .post-content br + br {
        display: block;
        content: "";
        margin: 12px 0;
    }

/* ---------- Education / Skills blocks ---------- */
.associate-legal-officer-page .post .post-action {
    display: flex;
    gap: 18px;
    padding: 0;
    margin: 0;
    list-style: none;
}

    .associate-legal-officer-page .post .post-action > li {
        flex: 1;
        background: #fff;
        border: 1px solid #eeeeee;
        border-radius: 14px;
        padding: 16px 16px 18px;
        box-shadow: 0 6px 18px rgba(0, 0, 0, 0.04);
    }

        /* the small red header strip you use inside these blocks */
        .associate-legal-officer-page .post .post-action > li .post-date {
            border-radius: 12px;
        }

        /* remove harsh vertical divider lines (your inline border-left) */
        .associate-legal-officer-page .post .post-action > li[style*="border-left"] {
            border-left: none !important;
        }

    /* Education/skills titles */
    .associate-legal-officer-page .post .post-action h4 {
        margin: 6px 0 8px;
        font-weight: 800;
        line-height: 1.45;
    }

    /* Skills arrows spacing */
    .associate-legal-officer-page .post .post-action span {
        display: inline-block;
        margin: 4px 0;
    }

/* ---------- Activities ---------- */
.associate-legal-officer-page .post.post-large.activities .post-body {
    display: block;
}

.associate-legal-officer-page .activities .activity-item {
    display: flex;
    gap: 14px;
    padding: 14px 16px;
    margin-bottom: 12px;
    background: #fafafa;
    border: 1px solid #eeeeee;
    border-radius: 12px;
    width:100%;
}

.associate-legal-officer-page .activities .activity-no {
    width: 28px;
    height: 28px;
    border-radius: 999px;
    background: #f7caca;
    color: #8b1414;
    font-weight: 900;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 28px;
}

.associate-legal-officer-page .activities p {
    margin: 0;
    line-height: 1.65;
}

.associate-legal-officer-page .activities .activity-date {
    display: block;
    margin-top: 4px;
    font-size: 13px;
    color: #777;
}

/* ---------- IMPORTANT: scoped HR hide (safe) ---------- */
.associate-legal-officer-page hr {
    display: none !important;
}

/* ---------- Mobile ---------- */
@media (max-width: 768px) {
    .associate-legal-officer-page .post.post-large .post-body {
        flex-direction: column;
    }

    .associate-legal-officer-page .post .post-date {
        width: fit-content;
        min-width: 190px;
    }

    .associate-legal-officer-page .post .post-action {
        flex-direction: column;
    }
}

.post-video{
    padding-bottom :20px;
}

/* ✅ Related Properties: keep all cards equal height */
.pgl-properties .pgl-pro-slide .pgl-property,
.pgl-properties .pgl-pro-slide .property-thumb-info {
    height: 100%;
}

.pgl-properties .pgl-pro-slide .pgl-property {
    display: flex;
}

.pgl-properties .pgl-pro-slide .property-thumb-info {
    display: flex;
    flex-direction: column;
    width: 100%;
}

/* Image section fixed height (optional but helps uniform cards) */
.pgl-properties .pgl-pro-slide .property-thumb-info-image {
    height: 220px; /* adjust if you want bigger/smaller */
    overflow: hidden;
}

    .pgl-properties .pgl-pro-slide .property-thumb-info-image img {
        width: 100%;
        height: 100%;
        object-fit: cover; /* keeps same size without stretching */
    }

/* Content stays flexible, footer sticks to bottom */
.pgl-properties .pgl-pro-slide .property-thumb-info-content {
    flex: 1;
    padding-bottom: 10px;
}

    /* ✅ Clamp title to 2 lines */
    .pgl-properties .pgl-pro-slide .property-thumb-info-content h3 {
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        min-height: 48px; /* keeps space equal even if 1 line */
    }

    /* ✅ Clamp address to 2 lines */
    .pgl-properties .pgl-pro-slide .property-thumb-info-content address {
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        min-height: 40px; /* keeps equal space */
    }

/* ✅ Amenities/footer always at bottom */
.pgl-properties .pgl-pro-slide .amenities {
    margin-top: auto;
}

.logo img {
    max-width: 230px;
}
/*.property-card-link:hover .pgl-property {
    transform: translateY(-4px);
    transition: 0.2s ease;
    box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}*/
#topPropertiesModal .modal-body {
    background-color: #eee;
}
.pgl-featured .property-card-link h3{
    color: #fff !important;
    margin: 0;
    font-size: 15px;
    font-weight: 600;
}
    .pgl-featured .property-card-link h3:hover {
        color: #d84949;
    }

/* Marquee changes */
/* ===== Top header marquee ===== */

/* ===== Top header marquee ===== */

/* top bar layout */
#top .topbar-flex {
    display: flex;
    align-items: center;
    position: relative;
}

    /* If marquee exists */
    #top .topbar-flex:not(.no-marquee) {
        justify-content: space-between;
    }

    /* If marquee not exists */
    #top .topbar-flex.no-marquee {
        justify-content: flex-end;
    }

/* Marquee wrapper */
#top .top-marquee-wrap {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    white-space: nowrap;
    height: 34px;
    display: flex;
    align-items: center;
    margin-right: 15px;
    /* ✅ Start AFTER logo width */
    padding-left: 240px;
}

/* Keep icons right */
#top .topbar-icons {
    margin: 0;
    display: flex;
    align-items: center;
    position: relative;
    z-index: 2;
}

/* Marquee animation */
#top .top-marquee {
    display: inline-flex;
    gap: 60px;
    animation: topScroll 18s linear infinite;
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    opacity: .95;
    will-change: transform;
}

@keyframes topScroll {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

/* Pause on hover */
#top .top-marquee-wrap:hover .top-marquee {
    animation-play-state: paused;
}

/* Mobile */
@media(max-width:768px) {
    #top .top-marquee-wrap {
        display: none;
    }
}


#topPropertiesModalBody .pgl-property {
    margin-bottom: 0px;
}

.property-card-link {
    display: block;
    height: 100%;
    text-decoration: none;
    color: inherit;
}

    .property-card-link:hover {
        text-decoration: none;
    }
/* ==============Start Enquiry know in center ================= */
/* Make image container positioning base */
.property-thumb-info-image {
    position: relative;
}

/* Your enquiry button (centered) */
.enquiry-know-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    background: rgba(216, 73, 73, 0.75);
    color: #fff;
    padding: 10px 16px;
    border-radius: 6px;
    font-weight: 600;
    cursor: pointer;
    user-select: none;
    /* hidden by default */
    opacity: 0;
    visibility: hidden;
    transition: opacity .25s ease, visibility .25s ease;
}

/* Show button on hover of card or image */
.property-thumb-info:hover .enquiry-know-btn,
.property-thumb-info-image:hover .enquiry-know-btn {
    opacity: 1;
    visibility: visible;
}

/* Optional: little darker on hover */
.enquiry-know-btn:hover {
    background: rgba(216, 73, 73, 0.9);
}
.legal-enquiry-know-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    padding: 14px 30px;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.5px;
    color: #ffffff;
    background: rgba(0, 0, 0, 0.45); /* dark glass effect */
    border: 2px solid #ffffff;
    border-radius: 6px;
    cursor: pointer;
    backdrop-filter: blur(3px); /* optional modern glass look */
    transition: all 0.3s ease;
    
}
    .legal-enquiry-know-btn:hover {
        background: #ffffff;
        color: #000000;
        transform: translate(-50%, -50%) scale(1.05);
    }
/* ==============END Enquiry know in center ================= */

/* ============Start Video ================== */
.testimonial-card {
    margin-bottom: 30px;
}

.video-thumb {
    position: relative;
    height: 250px;
    overflow: hidden;
    cursor: pointer;
}

    .video-thumb video {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

.play-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: rgba(0,0,0,0.6);
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .play-overlay i {
        color: #fff;
        font-size: 22px;
        margin-left: 3px;
    }

.testimonial-name {
    padding: 15px 0;
    font-weight: 600;
}
#videoModal .modal-dialog {
    max-width: 900px; /* limits width */
    width: 95%;
}

#modalVideo {
    width: 100%;
    max-height: 80vh; /* 👈 prevents overflow */
    object-fit: contain;
    border-radius: 6px;
}
/* ============End Video ================== */



.property-card .offer-icon {
    font-size: 50px;
    color: #fff;
    margin-bottom: 15px;
}

.property-card .property-title {
    color: #fff;
    font-weight: 600;
    margin-bottom: 20px;
    text-align: center;
}

.property-card .property-points {
    list-style: disc;
    padding-left: 20px;
    margin: 0;
    text-align: left !important;
}

    .property-card .property-points li {
        margin-bottom: 10px;
        font-size: 15px;
        color: #fff;
    }
/* ===== Video Conference ====== */
.btn-concierge {
    background-color: #d84949;
    color: #fff !important;
    padding: 8px 14px;
    border-radius: 4px;
    font-size: 13px;
    font-weight: 500;
    margin-left: 10px;
    display: flex;
    align-items: center;
    gap: 8px;
    line-height: 1.2;
    transition: 0.3s ease;
}

    .btn-concierge:hover {
        background-color: #b93636;
        color: #fff !important;
        text-decoration: none;
    }

    .btn-concierge i {
        font-size: 16px;
    }

    .btn-concierge .btn-text {
        display: inline-block;
    }
    .btn-concierge.active {
        background-color: #000 !important;
        color: #fff !important;
    }
.btn-concierge {
    flex-direction: column;
    justify-content: center;
    text-align: center;
}

.vc-top {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-weight: 600;
}

.vc-bottom {
    font-size: 11px;
    margin-top: 3px;
    letter-spacing: 0.5px;
}

/* ===== Footer Logo ======*/
.footer-logo {
    text-align: center;
    margin-top: 20px;
}

    .footer-logo img {
        max-width: 160px;
        opacity: 0.9;
    }
/* ===== End Footer Logo ======*/
/* ====== Our Team height fix in about us ===== */

.pgl-teams .img-thumbnail-medium {
    height: 260px; /* fixed image area */
    overflow: hidden;
}

    .pgl-teams .img-thumbnail-medium img {
        width: 100%;
        height: 100%;
        object-fit: cover; /* crop image instead of stretching */
        display: block;
    }
/* ====== End Our Team height fix in about us ===== */