.board-page{background:#f6f9f7}.board-hero{background:var(--forest,#093f33);color:white;padding:35px 0 60px}.board-breadcrumb{font-size:14px;color:#d8e8df;margin-bottom:35px;display:flex;gap:12px}.board-breadcrumb a:hover{color:#d4ef8b}.board-hero .eyebrow{color:#d4ef8b}.board-hero h1{font-size:clamp(32px,4vw,52px);margin:0 0 10px;letter-spacing:0}.board-hero p{color:#dfebe4;margin:0;font-size:18px}.board-body{padding-top:50px;padding-bottom:80px}.board-section-title{font-size:26px;line-height:1.5;margin:0 0 25px;font-weight:600;letter-spacing:0}.board-lead{text-align:center}.board-card{background:#fff;border:1px solid #dfe8e2;border-radius:18px;overflow:hidden;height:100%;box-shadow:0 8px 25px #143d2510}.board-portrait{background:#e8efea;aspect-ratio:1.18;overflow:hidden}.board-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 25%}.board-person{padding:23px 19px 27px}.board-role{color:#17694d;font-size:15px;font-weight:600;line-height:1.65;margin:0 0 9px}.board-person h3{font-size:19px;font-weight:600;line-height:1.65;letter-spacing:0;margin:0;overflow-wrap:anywhere}.board-president{display:grid;grid-template-columns:300px 1fr;max-width:810px;margin:auto;text-align:left;border-top:4px solid #17694d}.board-president .board-portrait{aspect-ratio:1.1}.board-president .board-person{display:flex;flex-direction:column;justify-content:center;padding:32px}.board-president h3{font-size:28px}.board-president .board-role{font-size:17px}.board-officers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;max-width:810px;margin:48px auto 64px}.board-officers section{min-width:0;display:flex;flex-direction:column;text-align:center}.board-officers .board-card{height:auto;flex:1}.board-officers .board-section-title{font-size:23px}.board-officers .board-portrait{max-height:260px;aspect-ratio:1.4}.board-officers .board-portrait img{object-fit:contain}.board-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}.board-section-heading{border-top:1px solid #d8e5dc;padding-top:35px}.board-grid .board-card{text-align:center}@media(max-width:991px){.board-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.board-president{grid-template-columns:240px 1fr}.board-president h3{font-size:24px}}@media(max-width:575px){.board-hero{padding-bottom:40px}.board-body{padding-top:32px}.board-president{display:block;text-align:center;max-width:360px}.board-president .board-portrait{max-height:290px}.board-president .board-person{padding:24px 18px}.board-officers{grid-template-columns:1fr;gap:32px;max-width:360px}.board-grid{grid-template-columns:1fr;max-width:360px;margin:auto}.board-section-title{font-size:24px}.board-person h3{font-size:20px}}

/* Compact portraits: preserve original resolution and hide poster edges. */
.board-card{border:1px solid #e3e9e5;box-shadow:0 5px 18px #143d2509;padding-top:18px}
.board-portrait,.board-officers .board-portrait,.board-president .board-portrait{width:160px;height:155px;aspect-ratio:auto;max-height:none;margin:0 auto;background:transparent;overflow:hidden;border:0;border-radius:0}
.board-portrait img,.board-officers .board-portrait img{width:100%;height:100%;object-fit:cover;object-position:center;clip-path:inset(5px round 18px);border:0;box-shadow:none}
.board-person,.board-president .board-person{padding:12px 14px 23px;text-align:center;display:flex;flex-direction:column;justify-content:flex-start}
.board-person h3,.board-president h3{font-size:18px;line-height:1.65;order:0;margin:0 0 7px}
.board-role,.board-president .board-role{font-size:15px;line-height:1.65;order:1;margin:0}
.board-president{display:block;width:100%;max-width:280px;margin:auto;text-align:center;border-top:1px solid #e3e9e5}
.board-president .board-portrait{width:200px;height:190px}
.board-officers{max-width:590px;gap:30px;align-items:start}
.board-officers .board-card{width:100%;max-width:260px;margin:0 auto;flex:initial}
.board-officers .board-section-title{font-size:21px;min-height:64px;margin-bottom:14px}
.board-grid{max-width:1060px;margin:0 auto;gap:22px}
.board-grid .board-card{width:100%;max-width:250px;justify-self:center}
@media(max-width:991px){.board-grid{max-width:550px}.board-president{display:block}}
@media(max-width:575px){.board-officers{max-width:280px;gap:32px}.board-officers .board-section-title{min-height:0}.board-grid{max-width:280px}.board-grid .board-card{max-width:260px}.board-person h3,.board-president h3{font-size:18px}.board-president .board-person{padding:12px 14px 23px}}
/* Badge ตำแหน่งคณะกรรมการ */
.board-person .board-role {
    display: inline-block;
    align-self: center;
    max-width: 100%;
    margin: 5px 0 0;
    padding: 7px 14px;

    background: var(--green, #17694d);
    color: #fff;
    border-radius: 16px;

    font-size: 14px;
    font-weight: 500;
    line-height: 1.6;
    text-align: center;
    white-space: normal;
    overflow-wrap: anywhere;
}