/* =========================================================
   PHONGVT - DỰ ÁN ĐÃ THI CÔNG / FLATSOME
   ========================================================= */

:root{
    --phongvt-blue:#1e40af;
    --phongvt-blue-dark:#1e3a8a;
    --phongvt-dark:#0f172a;
    --phongvt-text:#334155;
    --phongvt-muted:#64748b;
    --phongvt-border:#e2e8f0;
    --phongvt-bg:#f8fafc;
}

.phongvt-container{
    width:min(1350px, calc(100% - 32px));
    margin:0 auto;
}

.phongvt-project-detail,
.phongvt-project-archive{
    background:var(--phongvt-bg);
    color:var(--phongvt-text);
}

.phongvt-project-hero{
    min-height:560px;
    background-size:cover;
    background-position:center;
    display:flex;
    align-items:flex-end;
    color:#fff;
    padding:120px 0 70px;
}

.phongvt-project-hero-inner{
    max-width:850px;
}

.phongvt-project-tags{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-bottom:18px;
}

.phongvt-project-tags span{
    background:#fff;
    color:#0f172a;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    border-radius:999px;
    padding:8px 16px;
}

.phongvt-project-hero h1{
    font-size:clamp(38px, 5vw, 68px);
    line-height:1;
    font-weight:800;
    letter-spacing:-.05em;
    margin:0;
    color:#fff;
}

.phongvt-project-hero-desc{
    max-width:680px;
    margin:20px 0 0;
    font-size:18px;
    line-height:1.6;
    color:rgba(255,255,255,.86);
}

.phongvt-project-hero-meta{
    display:flex;
    flex-wrap:wrap;
    gap:18px 28px;
    margin-top:24px;
    font-weight:600;
}

.phongvt-project-hero-meta div{
    display:flex;
    align-items:center;
    gap:10px;
}

.phongvt-project-stats-wrap{
    margin-top:-42px;
    position:relative;
    z-index:5;
}

.phongvt-project-stats{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
}

.phongvt-project-stat{
    background:#fff;
    border:1px solid var(--phongvt-border);
    border-radius:26px;
    padding:26px;
    box-shadow:0 16px 40px rgba(15,23,42,.08);
}

.phongvt-project-stat span{
    display:block;
    color:#64748b;
    font-size:12px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.04em;
    margin-bottom:8px;
}

.phongvt-project-stat strong{
    display:block;
    color:var(--phongvt-blue);
    font-size:26px;
    line-height:1.2;
    font-weight:800;
}

.phongvt-status-done{
    color:#059669 !important;
}

.phongvt-project-main{
    padding:60px 0 40px;
}

.phongvt-project-layout{
    display:grid;
    grid-template-columns:minmax(0, 1.35fr) minmax(360px, .65fr);
    gap:42px;
    align-items:start;
}

.phongvt-project-section{
    margin-bottom:38px;
}

.phongvt-project-section h2,
.phongvt-project-info-card h2{
    font-size:26px;
    line-height:1.25;
    font-weight:800;
    letter-spacing:-.03em;
    margin:0 0 20px;
    color:#0f172a;
}

.phongvt-project-gallery-main{
    border-radius:28px;
    overflow:hidden;
    background:#e2e8f0;
    border:1px solid var(--phongvt-border);
}

.phongvt-project-gallery-main img{
    width:100%;
    height:460px;
    object-fit:cover;
    display:block;
}

.phongvt-project-gallery-thumbs{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:12px;
    margin-top:12px;
}

.phongvt-project-thumb{
    border:2px solid transparent;
    padding:0;
    border-radius:16px;
    overflow:hidden;
    background:#fff;
    cursor:pointer;
    height:86px;
}

.phongvt-project-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.phongvt-project-thumb.is-active{
    border-color:var(--phongvt-blue);
    box-shadow:0 0 0 4px rgba(30,64,175,.12);
}

.phongvt-project-content-detail{
    background:#fff;
    border:1px solid var(--phongvt-border);
    border-radius:28px;
    padding:32px;
    font-size:16px;
    line-height:1.75;
    color:#475569;
}

.phongvt-project-content-detail h2,
.phongvt-project-content-detail h3,
.phongvt-project-content-detail h4{
    color:#0f172a;
    font-weight:800;
    letter-spacing:-.03em;
}

.phongvt-project-content-detail p:last-child{
    margin-bottom:0;
}

.phongvt-technical-list{
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:12px;
}

.phongvt-technical-list li{
    display:flex;
    gap:12px;
    align-items:flex-start;
    background:#fff;
    border:1px solid var(--phongvt-border);
    border-radius:18px;
    padding:16px 18px;
}

.phongvt-technical-list i{
    width:24px;
    height:24px;
    border-radius:50%;
    background:#dcfce7;
    color:#059669;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    font-size:12px;
    margin-top:2px;
}

.phongvt-project-right{
    position:sticky;
    top:100px;
}

.phongvt-project-info-card{
    background:#fff;
    border:1px solid var(--phongvt-border);
    border-radius:30px;
    padding:30px;
    box-shadow:0 16px 40px rgba(15,23,42,.08);
}

.phongvt-project-info-list{
    display:grid;
    gap:0;
}

.phongvt-info-item{
    display:flex;
    justify-content:space-between;
    gap:18px;
    padding:15px 0;
    border-bottom:1px solid #f1f5f9;
    font-size:14px;
}

.phongvt-info-item span{
    color:#64748b;
    flex:0 0 42%;
}

.phongvt-info-item strong,
.phongvt-info-item a{
    color:#0f172a;
    text-align:right;
    font-weight:700;
}

.phongvt-info-item a{
    color:var(--phongvt-blue);
}

.phongvt-info-call{
    margin-top:24px;
    height:52px;
    border-radius:999px;
    background:var(--phongvt-blue);
    color:#fff !important;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    font-weight:800;
}

.phongvt-info-call:hover{
    background:var(--phongvt-blue-dark);
}

.phongvt-project-cta{
    padding:20px 0 70px;
}

.phongvt-project-cta-box{
    background:linear-gradient(135deg, var(--phongvt-blue), var(--phongvt-blue-dark));
    color:#fff;
    border-radius:34px;
    padding:42px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:28px;
}

.phongvt-project-cta-box h2{
    margin:0;
    color:#fff;
    font-size:34px;
    font-weight:800;
    letter-spacing:-.04em;
}

.phongvt-project-cta-box p{
    margin:10px 0 0;
    color:rgba(255,255,255,.82);
}

.phongvt-project-cta-box a{
    color:var(--phongvt-blue) !important;
    background:#fff;
    height:54px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    padding:0 24px;
    font-weight:800;
    white-space:nowrap;
}

.phongvt-related-projects{
    padding:0 0 80px;
}

.phongvt-section-head{
    margin-bottom:26px;
}

.phongvt-section-head span,
.phongvt-archive-hero span{
    display:block;
    color:var(--phongvt-blue);
    font-size:13px;
    font-weight:900;
    letter-spacing:.12em;
}

.phongvt-section-head h2{
    margin:8px 0 0;
    font-size:36px;
    font-weight:800;
    letter-spacing:-.04em;
    color:#0f172a;
}

/* Card dự án dùng chung cho trang chủ, archive, related */

.phongvt-project-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
}

.phongvt-project-card{
    background:#fff;
    border:1px solid var(--phongvt-border);
    border-radius:26px;
    overflow:hidden;
    box-shadow:0 12px 30px rgba(15,23,42,.07);
    transition:.3s;
}

.phongvt-project-card:hover{
    transform:translateY(-6px);
    box-shadow:0 24px 55px rgba(15,23,42,.14);
}

.phongvt-project-img{
    display:block;
    height:220px;
    overflow:hidden;
    background:#e2e8f0;
}

.phongvt-project-img img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:.45s;
}

.phongvt-project-card:hover .phongvt-project-img img{
    transform:scale(1.05);
}

.phongvt-project-img-placeholder{
    width:100%;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#94a3b8;
    font-size:46px;
}

.phongvt-project-content{
    padding:22px;
}

.phongvt-project-year{
    display:inline-flex;
    background:#dcfce7;
    color:#047857;
    border-radius:999px;
    padding:5px 12px;
    font-size:12px;
    font-weight:900;
    margin-bottom:12px;
}

.phongvt-project-content h3{
    margin:0 0 12px;
    font-size:20px;
    line-height:1.3;
    font-weight:800;
    letter-spacing:-.03em;
}

.phongvt-project-content h3 a{
    color:#0f172a;
}

.phongvt-project-meta{
    display:flex;
    gap:9px;
    color:#64748b;
    font-size:14px;
    line-height:1.45;
}

.phongvt-project-meta i{
    color:var(--phongvt-blue);
    margin-top:3px;
}

.phongvt-project-scale{
    margin-top:16px;
    padding-top:16px;
    border-top:1px solid #f1f5f9;
}

.phongvt-project-scale span{
    display:block;
    color:#94a3b8;
    font-size:12px;
    font-weight:700;
    text-transform:uppercase;
}

.phongvt-project-scale strong{
    display:block;
    color:var(--phongvt-blue);
    font-size:18px;
    font-weight:800;
}

.phongvt-project-btn{
    margin-top:20px;
    height:46px;
    border-radius:999px;
    border:1px solid #cbd5e1;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:8px;
    color:#0f172a !important;
    font-weight:800;
    font-size:14px;
}

.phongvt-project-btn:hover{
    background:var(--phongvt-blue);
    color:#fff !important;
    border-color:var(--phongvt-blue);
}

.phongvt-project-empty{
    background:#fff;
    border:1px solid var(--phongvt-border);
    border-radius:20px;
    padding:24px;
    text-align:center;
    color:#64748b;
}

/* Archive */

.phongvt-archive-hero{
    background:#0f172a;
    color:#fff;
    padding:90px 0;
}

.phongvt-archive-hero h1{
    margin:8px 0 0;
    color:#fff;
    font-size:clamp(38px, 5vw, 62px);
    line-height:1;
    font-weight:900;
    letter-spacing:-.05em;
}

.phongvt-archive-hero p{
    max-width:560px;
    margin:18px 0 0;
    color:#cbd5e1;
    font-size:18px;
}

.phongvt-archive-main{
    padding:46px 0 80px;
}

.phongvt-archive-filter{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-bottom:28px;
}

.phongvt-archive-filter a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:0 18px;
    border-radius:999px;
    border:1px solid #cbd5e1;
    color:#334155;
    background:#fff;
    font-weight:700;
    font-size:14px;
}

.phongvt-archive-filter a.is-active,
.phongvt-archive-filter a:hover{
    background:var(--phongvt-blue);
    border-color:var(--phongvt-blue);
    color:#fff;
}

.phongvt-pagination{
    margin-top:34px;
}

.phongvt-pagination .nav-links{
    display:flex;
    justify-content:center;
    gap:8px;
}

.phongvt-pagination .page-numbers{
    min-width:42px;
    height:42px;
    border-radius:50%;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#fff;
    border:1px solid var(--phongvt-border);
    color:#334155;
    font-weight:700;
}

.phongvt-pagination .page-numbers.current,
.phongvt-pagination .page-numbers:hover{
    background:var(--phongvt-blue);
    color:#fff;
    border-color:var(--phongvt-blue);
}

/* Responsive */

@media(max-width:1100px){
    .phongvt-project-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .phongvt-project-layout{
        grid-template-columns:1fr;
    }

    .phongvt-project-right{
        position:static;
    }

    .phongvt-project-stats{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:768px){
    .phongvt-project-hero{
        min-height:460px;
        padding:90px 0 48px;
    }

    .phongvt-project-hero h1{
        font-size:40px;
    }

    .phongvt-project-gallery-main img{
        height:300px;
    }

    .phongvt-project-gallery-thumbs{
        grid-template-columns:repeat(4,1fr);
    }

    .phongvt-project-cta-box{
        flex-direction:column;
        align-items:flex-start;
        padding:30px;
    }

    .phongvt-project-cta-box h2{
        font-size:28px;
    }
}

@media(max-width:549px){
    .phongvt-container{
        width:min(100% - 24px, 1350px);
    }

    .phongvt-project-stats{
        grid-template-columns:1fr;
    }

    .phongvt-project-grid{
        grid-template-columns:1fr;
        gap:18px;
    }

    .phongvt-project-img{
        height:210px;
    }

    .phongvt-project-content-detail,
    .phongvt-project-info-card{
        padding:22px;
        border-radius:22px;
    }

    .phongvt-info-item{
        display:block;
    }

    .phongvt-info-item strong,
    .phongvt-info-item a{
        display:block;
        text-align:left;
        margin-top:4px;
    }

    .phongvt-project-gallery-thumbs{
        grid-template-columns:repeat(3,1fr);
    }

    .phongvt-project-thumb{
        height:72px;
    }
}

/* =========================================================
   PHONGVT - FIX CARD TRANG CHỦ GIỐNG MẪU 1
   Badge nằm trên ảnh + thông số Hoàn thành / Chiều dài
   ========================================================= */

/* Card */
.phongvt-project-card{
    background:#fff !important;
    border:1px solid #e2e8f0 !important;
    border-radius:26px !important;
    overflow:hidden !important;
    box-shadow:0 12px 30px rgba(15,23,42,.08) !important;
    transition:.3s !important;
}

.phongvt-project-card:hover{
    transform:translateY(-6px) !important;
    box-shadow:0 24px 50px rgba(15,23,42,.14) !important;
}

/* Ảnh card */
.phongvt-project-card .phongvt-project-img{
    display:block !important;
    position:relative !important;
    height:225px !important;
    overflow:hidden !important;
    background:#e2e8f0 !important;
}

.phongvt-project-card .phongvt-project-img img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    display:block !important;
    transition:.45s !important;
}

.phongvt-project-card:hover .phongvt-project-img img{
    transform:scale(1.05) !important;
}

/* Badge trên ảnh */
.phongvt-project-card .phongvt-project-tags{
    position:absolute !important;
    top:12px !important;
    right:12px !important;
    left:auto !important;
    bottom:auto !important;

    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:flex-end !important;
    align-items:center !important;
    gap:8px !important;

    max-width:86% !important;
    margin:0 !important;
    z-index:5 !important;
}

.phongvt-project-card .phongvt-project-tags span{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    min-height:30px !important;
    padding:0 14px !important;

    background:rgba(255,255,255,.96) !important;
    color:#334155 !important;
    border-radius:999px !important;

    font-size:12px !important;
    font-weight:700 !important;
    line-height:1 !important;
    text-transform:none !important;
    letter-spacing:0 !important;
    white-space:nowrap !important;

    box-shadow:0 2px 10px rgba(0,0,0,.08) !important;
}

/* Nội dung card */
.phongvt-project-card .phongvt-project-content{
    padding:22px 22px 20px !important;
}

.phongvt-project-card .phongvt-project-content h3{
    margin:0 0 12px !important;
    font-size:20px !important;
    line-height:1.35 !important;
    font-weight:800 !important;
    letter-spacing:-.03em !important;
    color:#0f172a !important;
}

.phongvt-project-card .phongvt-project-content h3 a{
    color:#0f172a !important;
    text-decoration:none !important;
}

.phongvt-project-card .phongvt-project-meta{
    display:flex !important;
    align-items:flex-start !important;
    gap:8px !important;

    font-size:14px !important;
    color:#64748b !important;
    line-height:1.5 !important;

    margin:0 0 18px !important;
}

.phongvt-project-card .phongvt-project-meta i{
    color:#1d4ed8 !important;
    margin-top:3px !important;
    flex:0 0 auto !important;
}

/* Ẩn kiểu năm pill/quy mô cũ nếu shortcode còn dùng class cũ */
.phongvt-project-card .phongvt-project-year{
    display:none !important;
}

.phongvt-project-card .phongvt-project-scale{
    display:none !important;
}

/* Thông số dưới card */
.phongvt-project-card .phongvt-project-bottom{
    display:flex !important;
    justify-content:space-between !important;
    align-items:flex-start !important;
    gap:16px !important;

    padding-top:14px !important;
    margin-top:10px !important;
    border-top:1px solid #e5e7eb !important;
}

.phongvt-project-card .phongvt-project-bottom > div{
    flex:1 !important;
    min-width:0 !important;
}

.phongvt-project-card .phongvt-project-bottom > div:last-child{
    text-align:right !important;
}

.phongvt-project-card .phongvt-project-bottom span{
    display:block !important;
    margin:0 0 4px !important;

    font-size:12px !important;
    line-height:1.2 !important;
    color:#94a3b8 !important;
    font-weight:500 !important;
    text-transform:none !important;
    letter-spacing:0 !important;
}

.phongvt-project-card .phongvt-project-bottom strong{
    display:block !important;
    font-size:18px !important;
    line-height:1.2 !important;
    color:#1d4ed8 !important;
    font-weight:800 !important;
}

/* Nút */
.phongvt-project-card .phongvt-project-btn{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;

    height:50px !important;
    margin-top:18px !important;

    border:1px solid #cbd5e1 !important;
    border-radius:999px !important;

    color:#0f172a !important;
    background:#fff !important;
    text-decoration:none !important;

    font-weight:700 !important;
    font-size:14px !important;
    transition:.25s !important;
}

.phongvt-project-card .phongvt-project-btn:hover{
    background:#1e40af !important;
    border-color:#1e40af !important;
    color:#fff !important;
}

/* =========================================================
   PHONGVT - MOBILE GALLERY
   Hiện 3 thumbnail, ảnh thứ 4 vuốt ngang, ẩn thanh scroll
   ========================================================= */
@media(max-width:767px){

    .phongvt-project-gallery-thumbs{
        display:flex !important;
        grid-template-columns:none !important;
        flex-wrap:nowrap !important;
        gap:12px !important;

        overflow-x:auto !important;
        overflow-y:hidden !important;

        padding:4px 2px 8px !important;
        margin-top:12px !important;

        scroll-snap-type:x mandatory !important;
        -webkit-overflow-scrolling:touch !important;

        scrollbar-width:none !important;
        -ms-overflow-style:none !important;
    }

    .phongvt-project-gallery-thumbs::-webkit-scrollbar{
        display:none !important;
        width:0 !important;
        height:0 !important;
    }

    .phongvt-project-thumb{
        flex:0 0 calc((100% - 24px) / 3) !important;
        width:calc((100% - 24px) / 3) !important;
        min-width:calc((100% - 24px) / 3) !important;

        height:72px !important;
        border-radius:14px !important;
        scroll-snap-align:start !important;
    }

    .phongvt-project-thumb img{
        width:100% !important;
        height:100% !important;
        object-fit:cover !important;
        display:block !important;
    }

    .phongvt-project-card .phongvt-project-img{
        height:210px !important;
    }

    .phongvt-project-card .phongvt-project-content h3{
        font-size:18px !important;
    }

    .phongvt-project-card .phongvt-project-bottom strong{
        font-size:17px !important;
    }

    .phongvt-project-card .phongvt-project-tags{
        top:10px !important;
        right:10px !important;
        gap:6px !important;
    }

    .phongvt-project-card .phongvt-project-tags span{
        min-height:28px !important;
        padding:0 12px !important;
        font-size:11px !important;
    }
}

