/* ─────────────────────────────────────────
   PAGE PHILOSOPHY VISION — 財団概要－基本理念・ビジョン (Figma 4059:41695)
   Pyramid 3 tầng (clip-path) trái + 3 item đánh số phải.
   Palette: pyramid #E4B29F/#F9E3CF/#A9C7E1, heading teal đậm #006A62,
   section title #008F8D, text navy #061C3D.
   ───────────────────────────────────────── */

/* ── Title band (teal strip — same pattern as WSR/QA pages) ── */
.pv-title-band-wrap {
    max-width: 1200px;
    margin: 24px auto 0;
    padding: 0 2rem;
}
.pv-title-band {
    display: inline-block;
    background: #4DB1AF;
    color: #fff;
    font-size: 26px; font-weight: 700;
    line-height: 1;
    padding: 18px 48px 18px 28px;
    margin: 0;
}

/* ── Section: centered title with teal rules on both sides ── */
.pv-section { margin-bottom: 64px; }
.pv-section-title {
    display: flex; align-items: center; gap: 24px;
    font-size: 22px; font-weight: 700; color: #008F8D;
    text-align: center;
    margin: 0 0 40px;
}
.pv-section-title::before,
.pv-section-title::after {
    content: "";
    flex: 1;
    height: 1px;
    background: #008F8D;
}

/* ── Layout: pyramid + items ── */
.pv-layout {
    display: flex;
    gap: 44px;
    align-items: stretch; /* pyramid cao bằng cột nội dung phải — 2 bên cân nhau */
}

/* ── Pyramid (3 stacked clip-path layers, apex top) ── */
.pv-pyramid {
    flex: 0 0 400px;
    min-height: 600px;
    display: flex;
    flex-direction: column;
}
.pv-pyr-layer {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: 700;
    font-size: 20px;
    line-height: 1.4;
    text-align: center;
}
/* hình học: đỉnh (50%,0), đáy (0..100%,100%); ranh giới tầng tại 31% / 61% chiều cao */
.pv-pyr-top {
    flex: 0 0 31%;
    background: #E4B29F;
    clip-path: polygon(50% 0%, 65.5% 100%, 34.5% 100%);
}
.pv-pyr-top span { margin-top: 28%; }
.pv-pyr-mid {
    flex: 0 0 30%;
    background: #F9E3CF;
    clip-path: polygon(34.5% 0%, 65.5% 0%, 80.5% 100%, 19.5% 100%);
}
.pv-pyr-bot {
    flex: 1 1 auto;
    background: #A9C7E1;
    clip-path: polygon(19.5% 0%, 80.5% 0%, 100% 100%, 0% 100%);
}

/* ── Numbered items ── */
.pv-items {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 44px;
    min-width: 0;
}
.pv-item-head {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 14px;
}
.pv-item-badge {
    flex: 0 0 40px;
    width: 40px; height: 40px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px; font-weight: 700;
    color: #006A62;
}
.pv-badge-1 { background: #E4B29F; }
.pv-badge-2 { background: #F9E3CF; }
.pv-badge-3 { background: #A9C7E1; }
.pv-item-heading {
    font-size: 20px; font-weight: 700;
    color: #006A62;
    margin: 0;
}

/* ── Card (white, teal left border, soft shadow) ── */
.pv-item-card {
    margin-left: 56px;
    background: #fff;
    border: 1px solid #E2E6EB;
    border-left: 5px solid #006A62;
    border-radius: 4px;
    padding: 26px 28px;
}
.pv-item-lead {
    font-size: 17px; font-weight: 700;
    color: #061C3D;
    line-height: 1.7;
    margin: 0;
}
.pv-item-text {
    font-size: 15px;
    color: #061C3D;
    line-height: 1.8;
    margin: 6px 0 0;
}

/* ── 基本方針 policies (check list) ── */
/* card chứa check list: padding trái nhỏ hơn (1/3 card thường) */
.pv-item:last-child .pv-item-card { padding-left: 9px; }
.pv-policy { margin-bottom: 18px; }
.pv-policy:last-child { margin-bottom: 0; }
.pv-policy-title {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 15px; font-weight: 700;
    color: #061C3D;
    margin: 0 0 4px;
}
.pv-policy-check { flex-shrink: 0; }
.pv-policy-text {
    font-size: 14px;
    color: #061C3D;
    line-height: 1.8;
    margin: 0 0 0 26px;
}

/* ── Responsive ── */
@media (max-width: 1100px) {
    .pv-layout { gap: 32px; }
    .pv-pyramid { flex-basis: 320px; }
}
@media (max-width: 900px) {
    .pv-layout { flex-direction: column; }
    .pv-pyramid { flex-basis: auto; width: 100%; max-width: 340px; margin: 0 auto; min-height: 520px; height: 520px; }
    .pv-item-card { margin-left: 0; }
}
@media (max-width: 768px) {
    .pv-title-band { font-size: 20px; padding: 14px 32px 14px 20px; }
    .pv-section-title { font-size: 18px; gap: 14px; }
    .pv-pyr-layer { font-size: 17px; }
    .pv-item-card { padding: 20px 18px; }
}
