/* 組織架構頁專用樣式：與 about-page.css 的 .abt 基礎共用 */
.org{padding:0;overflow:hidden}
.org *{box-sizing:border-box}

/* ---------- 校長室 ---------- */
.org-role-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(21rem,1fr));gap:1.4rem}
.org-role{position:relative;overflow:hidden;padding:1.9rem;background:#fff;
  border:1px solid var(--abt-line);border-radius:14px}
.org-role::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:var(--gold)}
.org-role--principal{background:linear-gradient(135deg,var(--g-900) 0%,var(--g-700) 100%);border-color:transparent}
.org-role--principal::after{content:"";position:absolute;right:-44px;bottom:-54px;width:150px;height:150px;
  border-radius:50%;border:14px solid rgba(242,193,78,.16);pointer-events:none}
.org-role-label{position:relative;display:inline-flex;align-items:center;gap:.6rem;
  font-size:1.25rem;font-weight:700;letter-spacing:.12em;color:#856818}
.org-role-label::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.org-role--principal .org-role-label{color:var(--gold)}
.org-role-people{position:relative;display:grid;gap:1.1rem;list-style:none;margin:1.2rem 0 0;padding:0}
.org-role-people li{display:flex;align-items:center;gap:1rem}
.org-avatar{display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:4.4rem;height:4.4rem;
  border-radius:50%;background:var(--g-100);color:var(--g-700);font-size:1.7rem;font-weight:700}
.org-role--principal .org-avatar{background:rgba(242,193,78,.18);color:var(--gold)}
.org-role-name b{display:block;font-size:1.85rem;line-height:1.4;color:var(--g-900)}
.org-role--principal .org-role-name b{color:#fff}
.org-role-name small{display:block;margin-top:.15rem;font-size:1.3rem;line-height:1.5;color:#68736b;letter-spacing:.02em}
.org-role--principal .org-role-name small{color:#cfe0d4}

/* ---------- 課程協調員 ---------- */
.org-coord-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}
.org-coord{position:relative;overflow:hidden;padding:1.8rem 2rem;
  background:linear-gradient(135deg,#fffdf5 0%,#fff 100%);
  border:1px solid var(--abt-line);border-radius:14px}
.org-coord::after{content:"";position:absolute;right:-34px;top:-34px;width:104px;height:104px;
  border-radius:50%;background:rgba(242,193,78,.12);pointer-events:none}
.org-coord-top{position:relative;display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;margin-bottom:1.3rem}
.org-coord-no{font-size:1.25rem;font-weight:700;letter-spacing:.08em;color:#856818;font-variant-numeric:tabular-nums}
.org-coord-program{font-size:1.3rem;line-height:1.5;padding:.35rem .9rem;border-radius:999px;
  background:#fff;border:1px solid #e8d9a8;color:#6b5513}
.org-coord h4{position:relative;margin:0;font-size:2.1rem;line-height:1.4;color:var(--g-900)}
.org-en{position:relative;margin:.4rem 0 0;font-size:1.35rem;line-height:1.6;color:#68736b;letter-spacing:.02em}

/* ---------- 學科與支援團隊名冊 ---------- */
.org-subjects{display:grid;gap:1.4rem}
.org-subject{background:#fff;border:1px solid var(--abt-line);border-radius:16px;overflow:hidden}
.org-subject-h{display:flex;align-items:center;gap:1.1rem;flex-wrap:wrap;padding:1.3rem 1.8rem;
  background:var(--abt-soft);border-bottom:1px solid var(--abt-line)}
.org-subject-no{display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:3.6rem;height:3.6rem;
  border-radius:50%;background:var(--g-700);color:var(--gold);font-size:1.25rem;font-weight:700}
.org-subject-h h4{flex:1 1 auto;margin:0;font-size:1.9rem;line-height:1.4;color:var(--g-900)}
.org-count{font-size:1.3rem;line-height:1.5;padding:.3rem .9rem;border-radius:999px;
  background:#fff;border:1px solid var(--abt-line);color:#5f6a60;white-space:nowrap}
.org-roster{display:grid;grid-template-columns:repeat(auto-fill,minmax(17.5rem,1fr));gap:.8rem;
  list-style:none;margin:0;padding:1.6rem}
.org-person{display:flex;flex-direction:column;gap:.22rem;padding:.9rem 1.1rem;
  background:#fff;border:1px solid #ece8dc;border-radius:10px}
.org-person--raw{justify-content:center;color:#5f6a60;font-size:1.35rem;line-height:1.7}
.org-prefix{font-size:1.15rem;font-weight:700;letter-spacing:.06em;color:#856818}
.org-name b{display:block;font-size:1.6rem;line-height:1.45;color:#26342b}
.org-name small{display:block;margin-top:.1rem;font-size:1.2rem;line-height:1.5;color:#68736b;
  overflow-wrap:anywhere}
.org-tag{align-self:flex-start;margin-top:.3rem;padding:.2rem .65rem;border-radius:999px;
  background:#f4f8f3;border:1px solid #dce9e0;color:var(--g-700);
  font-size:1.1rem;line-height:1.5}
.org-tag--key{background:#fdf6e3;border-color:#ecdcae;color:#6b5513}

/* ---------- 輔導及特教 ---------- */
.org-specs{display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:1.2rem}
.org-spec{padding:1.8rem;background:#fff;border:1px solid var(--abt-line);
  border-top:3px solid var(--g-500);border-radius:14px}
.org-spec-role{font-size:1.2rem;font-weight:700;letter-spacing:.08em;color:#856818}
.org-spec h4{margin:.7rem 0 0;font-size:1.85rem;line-height:1.4;color:var(--g-900)}
.org-spec p{margin:.35rem 0 0;font-size:1.3rem;line-height:1.6;color:#68736b;overflow-wrap:anywhere}

/* ---------- 電郵連結 ---------- */
.org-mail{display:inline-flex;align-items:center;gap:.4rem;color:inherit;text-decoration:none;
  vertical-align:middle}
.org-mail svg{flex:0 0 auto;width:1.35rem;height:1.35rem;color:#a3831f;transition:color .15s ease}
.org-mail:hover{color:var(--g-700);text-decoration:underline;text-underline-offset:.18em}
.org-mail:hover svg{color:var(--g-700)}
.org-role-name .org-mail svg{width:1.5rem;height:1.5rem}
.org-role--principal .org-mail{color:#fff}
.org-role--principal .org-mail svg{color:var(--gold)}
.org-role--principal .org-mail:hover{color:var(--gold)}
.org-mail-off{display:inline-flex;align-items:center;margin-left:.35rem;color:#b3bbb4;
  vertical-align:middle}
.org-mail-off svg{width:1.1em;height:1.1em}

/* ---------- 響應式 ---------- */
@media(max-width:991px){
  .org-role-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
  .org-role-grid,.org-coord-grid,.org-specs{grid-template-columns:1fr}
  .org-roster{grid-template-columns:1fr;padding:1.3rem}
  .org-role,.org-coord,.org-spec{padding:1.6rem}
  .org-subject-h{padding:1.2rem 1.4rem}
  .org-subject-h h4{font-size:1.8rem}
}
@media(max-width:479px){
  .org-role-people li{gap:.8rem}
  .org-avatar{width:4rem;height:4rem;font-size:1.55rem}
  .org-role-name b{font-size:1.75rem}
  .org-coord h4{font-size:1.95rem}
  .org-spec h4{font-size:1.8rem}
  .org-subject-no{width:3.3rem;height:3.3rem}
}
