/**
 * Organization Chart Styles
 */

.org-hero { background: linear-gradient(135deg,#eef6fb,#f7fbff); padding: var(--spacing-xxl) 0; text-align:center; }
.org-hero .page-title { font-size: 32px; margin-bottom: 8px; }
.org-hero .page-subtitle { color: #6b7b89; }


.dept-section { margin-top: 3rem; margin-bottom: 3rem; }

/* Organization chart image section (client-supplied) */
.org-chart-section { margin: 2.5rem 0; }
.org-chart-wrap img { max-width: 100%; height: auto; display: block; margin: 0 auto; border-radius: 10px; box-shadow: 0 8px 24px rgba(33,40,55,0.06); border: 1px solid rgba(33,40,55,0.03); }
.org-chart-wrap .org-chart-mobile { display: none; }
.org-chart-empty { text-align: center; color: #6b7b89; padding: 28px 12px; border: 1px dashed rgba(107,123,137,0.12); border-radius: 8px; background: #fbfdff; }
.dept-heading { font-size: 18px; margin-bottom: 18px; font-weight:700; display:flex; align-items:center; gap:12px; }
.dept-heading .dept-icon { width:20px; height:20px; display:inline-block; border-radius:50%; background:#e9f3fb; box-shadow: inset 0 -2px 0 rgba(0,0,0,0.02); }

.dept-grid { display:grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap:20px; }

/* Card base */
.member-card { background:#fff; border-radius:12px; padding:18px; box-shadow: 0 8px 22px rgba(33,40,55,0.04); border:1px solid rgba(33,40,55,0.04); display:flex; gap:16px; align-items:flex-start; }
.member-photo img { width:96px; height:96px; object-fit:cover; border-radius:50%; display:block; }
.member-photo-placeholder { width:96px; height:96px; background:linear-gradient(135deg,#e9f3fb,#f3f7fb); border-radius:50%; }
.member-body .member-name { margin:0 0 4px 0; font-size:16px; font-weight:700; line-height:1.3; }
.member-body .member-title { color:#2c5aa0; font-size:13px; font-weight:600; margin-bottom:8px; }
.member-position { color:#6b7b89; margin:8px 0; font-size:14px; line-height:1.6; text-align: left; }
.member-specialization { color:#758089; font-size:13px; margin:10px 0; line-height:1.5; }
.member-specialization p { margin:0 0 6px 0; }
.member-specialization p:last-child { margin-bottom:0; }
.member-contact { margin-top:10px; font-size:13px; }
.member-contact a { color:#2c5aa0; text-decoration:none; }
.member-contact a:hover { text-decoration:underline; }

/* Non-leadership departments: center-style cards with circular image above text */
.dept-section:not(.dept-leadership) .dept-grid .member-card { flex-direction:column; text-align:center; align-items:center; padding:22px; }
.dept-section:not(.dept-leadership) .member-photo img,
.dept-section:not(.dept-leadership) .member-photo-placeholder { width:96px; height:96px; margin-bottom:12px; }
.dept-section:not(.dept-leadership) .member-body { width:100%; }

/* Leadership: larger image left, name and details on the right */
.dept-section.dept-leadership .dept-grid { grid-template-columns: repeat(2,1fr); }
.dept-section.dept-leadership .member-card { flex-direction:row; }
.dept-section.dept-leadership .member-photo img { width:140px; height:140px; border-radius:8px; object-fit:cover; }
.dept-section.dept-leadership .member-photo-placeholder { width:140px; height:140px; border-radius:8px; }
.dept-section.dept-leadership .member-body { text-align:left; }


@media (max-width: 1200px) { .dept-grid { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 768px) { 
    .dept-grid { grid-template-columns: 1fr; } 
    .dept-section.dept-leadership .dept-grid { grid-template-columns: repeat(1, 1fr); }
    .dept-section.dept-leadership .member-photo img, .dept-section.dept-leadership .member-photo-placeholder { width:96px; height:96px; border-radius:50%; } 
    .dept-section.dept-leadership .member-card { flex-direction:column; text-align:center; align-items:center; }
    .dept-section .container, .org-hero .container { max-width: 350px; width: 100%;}
    .dept-section.dept-operations{max-width: 350px; width: 100%;}
    .dept-section {max-width: 350px; width: 100%;}
    .org-chart-empty{max-width: 350px;}
    .org-chart-section{max-width: 350px;}
    .dept-section.dept-leadership .member-body { text-align: center; }
    
    /* Show mobile chart, hide desktop chart on mobile */
    .org-chart-wrap .org-chart-desktop { display: none; }
    .org-chart-wrap .org-chart-mobile { display: block; }
}
