/* School Page — Jamiatul Ilm Wal Huda
   External stylesheet to survive WordPress the_content() stripping.
   Uses high-specificity selectors + !important to beat theme resets. */

/* Three Elements grid */
.school-elements,
div.school-elements {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 28px !important;
  margin-top: 40px !important;
}
.school-el-card,
div.school-el-card {
  background: var(--card) !important;
  border: 1px solid var(--border) !important;
  border-radius: 8px !important;
  padding: 32px !important;
  text-align: center !important;
  transition: box-shadow 0.3s !important;
}
.school-el-card:hover { box-shadow: 0 10px 30px -10px rgba(199, 159, 47, 0.15) !important; }
.school-el-num,
div.school-el-num,
.school-el-card .school-el-num {
  font-family: 'Playfair Display', serif !important;
  font-size: 2.5rem !important;
  font-weight: 700 !important;
  color: var(--primary) !important;
  margin-bottom: 8px !important;
}
.school-el-card h3 {
  font-size: 1.15rem !important;
  font-weight: 600 !important;
  margin-bottom: 12px !important;
  margin-top: 0 !important;
  font-family: 'Playfair Display', serif !important;
  color: var(--foreground) !important;
}
.school-el-card p {
  color: var(--muted) !important;
  line-height: 1.7 !important;
  font-size: 0.95rem !important;
}

/* Key Stage sections */
.school-ks,
div.school-ks {
  margin-bottom: 56px !important;
}
.school-ks:last-of-type { margin-bottom: 0 !important; }

.school-ks-head,
div.school-ks-head {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  margin-bottom: 16px !important;
}
.school-ks-badge,
span.school-ks-badge {
  background: var(--foreground) !important;
  color: var(--primary) !important;
  font-family: 'Playfair Display', serif !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  padding: 6px 14px !important;
  border-radius: 4px !important;
  white-space: nowrap !important;
  display: inline-block !important;
}
.school-ks-head h3,
div.school-ks-head h3 {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.5rem !important;
  font-weight: 700 !important;
  margin: 0 !important;
  color: var(--foreground) !important;
}
.school-ks-head h3 span {
  color: var(--muted) !important;
  font-weight: 400 !important;
  font-size: 0.85rem !important;
  margin-left: 8px !important;
}
.school-ks-desc,
p.school-ks-desc {
  color: var(--muted) !important;
  font-size: 1rem !important;
  line-height: 1.7 !important;
  margin-bottom: 20px !important;
}

/* Subject chips */
.school-chips,
div.school-chips {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-bottom: 24px !important;
}
.school-chip,
span.school-chip {
  background: var(--card) !important;
  border: 1px solid var(--border) !important;
  border-radius: 20px !important;
  padding: 8px 20px !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
  color: var(--foreground) !important;
  display: inline-block !important;
}

/* KS3 aims */
.school-ks3-aims h4,
div.school-ks3-aims h4 {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.1rem !important;
  font-weight: 600 !important;
  margin-bottom: 12px !important;
  margin-top: 0 !important;
  color: var(--foreground) !important;
}
.school-ks3-aims ul {
  padding-left: 20px !important;
  list-style: disc !important;
}
.school-ks3-aims ul li {
  color: var(--muted) !important;
  line-height: 1.7 !important;
  margin-bottom: 6px !important;
  font-size: 0.95rem !important;
}

/* Tables */
table.school-tbl,
.school-tbl {
  width: 100% !important;
  border-collapse: collapse !important;
  font-size: 0.95rem !important;
  margin-bottom: 8px !important;
  border: none !important;
}
.school-tbl thead th,
table.school-tbl th {
  background: var(--foreground) !important;
  color: var(--primary-fg) !important;
  padding: 12px 16px !important;
  text-align: left !important;
  font-weight: 600 !important;
  font-size: 0.8rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  border: none !important;
}
.school-tbl th:first-child { border-radius: 6px 0 0 0 !important; }
.school-tbl th:last-child { border-radius: 0 6px 0 0 !important; }
.school-tbl td,
table.school-tbl td {
  padding: 12px 16px !important;
  border-bottom: 1px solid var(--border) !important;
  border-left: none !important;
  border-right: none !important;
  border-top: none !important;
  color: var(--muted) !important;
  background: transparent !important;
}
.school-tbl tr:hover td { background: rgba(199, 159, 47, 0.04) !important; }

.school-note,
p.school-note {
  margin-top: 12px !important;
  font-size: 0.9rem !important;
  font-style: italic !important;
  color: var(--muted) !important;
}
.school-divider,
hr.school-divider {
  border: none !important;
  border-top: 1px solid var(--border) !important;
  margin: 0 0 56px 0 !important;
}

/* EBacc highlight box */
.school-ebacc,
div.school-ebacc {
  background: linear-gradient(135deg, rgba(199, 159, 47, 0.08), hsla(210, 60%, 35%, 0.06)) !important;
  border: 1px solid var(--border) !important;
  border-left: 4px solid var(--primary) !important;
  border-radius: 8px !important;
  padding: 32px !important;
  margin-top: 48px !important;
}
.school-ebacc h3 {
  margin-top: 0 !important;
  font-size: 1.3rem !important;
  font-weight: 700 !important;
  margin-bottom: 12px !important;
  font-family: 'Playfair Display', serif !important;
  color: var(--foreground) !important;
}
.school-ebacc p {
  color: var(--muted) !important;
  line-height: 1.7 !important;
  margin-bottom: 12px !important;
}
.school-ebacc ol {
  padding-left: 20px !important;
  list-style: decimal !important;
}
.school-ebacc ol li {
  color: var(--muted) !important;
  line-height: 1.7 !important;
  margin-bottom: 6px !important;
}

/* Stats row */
.school-stats,
div.school-stats {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 24px !important;
  margin-top: 48px !important;
}
.school-stat,
div.school-stat {
  text-align: center !important;
  padding: 24px !important;
  background: var(--card) !important;
  border: 1px solid var(--border) !important;
  border-radius: 8px !important;
}
.school-stat-val,
div.school-stat-val {
  font-family: 'Playfair Display', serif !important;
  font-size: 2rem !important;
  font-weight: 700 !important;
  color: var(--primary) !important;
}
.school-stat-lbl,
div.school-stat-lbl {
  color: var(--muted) !important;
  font-size: 0.9rem !important;
  margin-top: 4px !important;
}

/* Aims two-column */
.school-aims,
div.school-aims {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 32px !important;
}
.school-aim-card,
div.school-aim-card {
  background: var(--card) !important;
  border: 1px solid var(--border) !important;
  border-radius: 8px !important;
  padding: 36px !important;
}
.school-aim-card h3 {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.25rem !important;
  font-weight: 700 !important;
  margin-bottom: 20px !important;
  margin-top: 0 !important;
  padding-bottom: 16px !important;
  border-bottom: 2px solid var(--primary) !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  color: var(--foreground) !important;
}
.school-aim-card ul {
  padding-left: 18px !important;
  list-style: disc !important;
}
.school-aim-card ul li {
  color: var(--muted) !important;
  line-height: 1.8 !important;
  margin-bottom: 8px !important;
  font-size: 0.95rem !important;
}

/* Enrichment grid */
.school-enrich,
div.school-enrich {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 24px !important;
  margin-top: 24px !important;
}
.school-enrich-item,
div.school-enrich-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  padding: 20px !important;
  background: var(--card) !important;
  border: 1px solid var(--border) !important;
  border-radius: 8px !important;
}
.school-enrich-ico,
div.school-enrich-ico {
  font-size: 1.4rem !important;
  flex-shrink: 0 !important;
  margin-top: 2px !important;
}
.school-enrich-item h4 {
  font-family: 'Playfair Display', serif !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  margin-bottom: 4px !important;
  margin-top: 0 !important;
  color: var(--foreground) !important;
}
.school-enrich-item p {
  color: var(--muted) !important;
  font-size: 0.9rem !important;
  line-height: 1.6 !important;
}

/* Mobile */
@media (max-width: 768px) {
  .school-elements { grid-template-columns: 1fr !important; }
  .school-stats { grid-template-columns: 1fr !important; }
  .school-aims { grid-template-columns: 1fr !important; }
  .school-enrich { grid-template-columns: 1fr !important; }
  .school-tbl, table.school-tbl { font-size: 0.85rem !important; }
  .school-tbl th, .school-tbl td { padding: 10px 12px !important; }
  .school-ks-head { flex-wrap: wrap !important; }
}
