/* ============================================================
   CWS Modern Design System
   Child theme overrides for Astra
   ============================================================ */

:root {
  --cws-navy: #0F1E3D;
  --cws-navy-2: #1A2D5C;
  --cws-gold: #D4A24C;
  --cws-gold-2: #B8862E;
  --cws-cream: #FAF7F2;
  --cws-paper: #FFFFFF;
  --cws-slate: #475569;
  --cws-slate-2: #64748B;
  --cws-line: #E5E7EB;
  --cws-ink: #0B1224;
  --cws-success: #16A34A;

  --r-sm: 8px;
  --r-md: 14px;
  --r-lg: 22px;
  --r-xl: 32px;

  --shadow-1: 0 2px 8px rgba(15, 30, 61, 0.06);
  --shadow-2: 0 10px 30px rgba(15, 30, 61, 0.10);
  --shadow-3: 0 18px 50px rgba(15, 30, 61, 0.14);

  --container: 1200px;
}

/* ---------- Global typography ---------- */
html, body {
  font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif !important;
  color: var(--cws-ink);
  background: var(--cws-paper);
  -webkit-font-smoothing: antialiased;
}

body, p, li, a, span, label, input, textarea, button, .ast-container {
  font-family: "Inter", system-ui, sans-serif !important;
}

h1, h2, h3, h4, h5, h6,
.entry-title, .site-title, .ast-builder-html-element,
.menu-item, .ast-builder-menu-1 .menu-item > a {
  font-family: "Plus Jakarta Sans", "Inter", sans-serif !important;
  color: var(--cws-navy);
  letter-spacing: -0.01em;
}

h1 { font-weight: 800; line-height: 1.08; }
h2 { font-weight: 700; line-height: 1.15; }
h3 { font-weight: 700; line-height: 1.25; }

/* ---------- Header / nav ---------- */
.site-header,
.ast-primary-header-bar,
header.site-header .main-header-bar {
  background: var(--cws-paper) !important;
  box-shadow: var(--shadow-1) !important;
  border-bottom: 1px solid var(--cws-line);
}

.main-header-menu .menu-item > a,
.ast-builder-menu .menu-item > a {
  font-weight: 600 !important;
  font-size: 15px !important;
  color: var(--cws-ink) !important;
  letter-spacing: 0.01em;
  transition: color .2s ease;
}
.main-header-menu .menu-item > a:hover,
.ast-builder-menu .menu-item > a:hover,
.main-header-menu .current-menu-item > a {
  color: var(--cws-gold) !important;
}

.main-header-menu .sub-menu {
  border-radius: var(--r-md) !important;
  box-shadow: var(--shadow-2) !important;
  border: 1px solid var(--cws-line) !important;
  padding: 8px !important;
  overflow: hidden;
}
.main-header-menu .sub-menu a {
  border-radius: var(--r-sm) !important;
  padding: 10px 14px !important;
}
.main-header-menu .sub-menu a:hover {
  background: var(--cws-cream) !important;
  color: var(--cws-navy) !important;
}

/* Site title fallback */
.site-title a { color: var(--cws-navy) !important; }

/* ---------- Buttons ---------- */
.wp-block-button__link,
.ast-button, .menu-item.ast-masthead-custom-menu-items a.menu-link,
button, input[type="submit"], .button {
  border-radius: 999px !important;
  font-weight: 600 !important;
  font-family: "Plus Jakarta Sans", sans-serif !important;
  letter-spacing: 0.01em;
  padding: 14px 26px !important;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease !important;
  border: none !important;
}
.wp-block-button__link {
  background: var(--cws-navy) !important;
  color: #fff !important;
  box-shadow: var(--shadow-1);
}
.wp-block-button__link:hover {
  background: var(--cws-navy-2) !important;
  transform: translateY(-2px);
  box-shadow: var(--shadow-2);
}
.wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent !important;
  color: var(--cws-navy) !important;
  border: 2px solid var(--cws-navy) !important;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover {
  background: var(--cws-navy) !important;
  color: #fff !important;
}
.is-style-gold .wp-block-button__link {
  background: var(--cws-gold) !important;
  color: var(--cws-ink) !important;
}
.is-style-gold .wp-block-button__link:hover {
  background: var(--cws-gold-2) !important;
  color: #fff !important;
}

/* ---------- Content width ---------- */
.ast-container, .site-content > .ast-container,
.entry-content > .alignwide { max-width: var(--container); }

/* ---------- Section utility classes (for home rebuild) ---------- */
.cws-section { padding: 96px 24px; }
.cws-section.tight { padding: 72px 24px; }
.cws-wrap { max-width: var(--container); margin: 0 auto; }
.cws-eyebrow {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 13px; font-weight: 700; letter-spacing: 0.12em;
  text-transform: uppercase; color: var(--cws-gold);
  margin-bottom: 16px;
}
.cws-eyebrow:before {
  content: ""; width: 28px; height: 2px; background: var(--cws-gold); border-radius: 2px;
}
.cws-h2 {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 800;
  font-size: clamp(28px, 4vw, 44px);
  line-height: 1.12;
  color: var(--cws-navy);
  margin: 0 0 16px;
}
.cws-lead {
  color: var(--cws-slate);
  font-size: 17px;
  line-height: 1.7;
  max-width: 720px;
}

/* ---------- Hero ---------- */
.cws-hero {
  position: relative;
  background: radial-gradient(1200px 600px at 80% -20%, rgba(212,162,76,0.18) 0%, transparent 60%),
              linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 60%, #243C82 100%);
  color: #fff;
  padding: 120px 24px 110px;
  overflow: hidden;
  isolation: isolate;
}
.cws-hero:before {
  content: "";
  position: absolute; inset: 0;
  background-image:
    radial-gradient(circle at 20% 80%, rgba(212,162,76,0.15) 0%, transparent 40%),
    radial-gradient(circle at 90% 20%, rgba(255,255,255,0.06) 0%, transparent 40%);
  z-index: -1;
}
.cws-hero .cws-wrap { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 56px; align-items: center; }
.cws-hero h1 {
  font-size: clamp(36px, 5.2vw, 64px);
  line-height: 1.05;
  font-weight: 800;
  color: #fff;
  margin: 0 0 22px;
  letter-spacing: -0.02em;
}
.cws-hero h1 .accent { color: var(--cws-gold); }
.cws-hero p.lead {
  font-size: 19px; line-height: 1.65;
  color: rgba(255,255,255,0.82);
  max-width: 560px;
  margin: 0 0 32px;
}
.cws-hero .cws-eyebrow { color: var(--cws-gold); }
.cws-hero .cws-eyebrow:before { background: var(--cws-gold); }
.cws-hero-actions { display: flex; gap: 14px; flex-wrap: wrap; }
.cws-btn {
  display: inline-flex; align-items: center; gap: 10px;
  padding: 16px 28px; border-radius: 999px;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 700; font-size: 15px;
  text-decoration: none !important;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.cws-btn.primary { background: var(--cws-gold); color: var(--cws-ink); box-shadow: 0 12px 26px rgba(212,162,76,0.35); }
.cws-btn.primary:hover { transform: translateY(-2px); background: #E5B25C; box-shadow: 0 18px 36px rgba(212,162,76,0.45); }
.cws-btn.ghost { background: rgba(255,255,255,0.08); color: #fff; border: 1.5px solid rgba(255,255,255,0.25); }
.cws-btn.ghost:hover { background: rgba(255,255,255,0.15); }

.cws-hero-card {
  position: relative;
  border-radius: var(--r-xl);
  overflow: hidden;
  box-shadow: var(--shadow-3);
  aspect-ratio: 4/5;
  background: linear-gradient(180deg, rgba(15,30,61,0) 30%, rgba(15,30,61,0.5) 100%), url(/wp-content/uploads/2024/09/13-1.jpg) center/cover no-repeat;
}
.cws-hero-card .badge {
  position: absolute; left: 22px; bottom: 22px;
  background: rgba(255,255,255,0.95);
  color: var(--cws-navy);
  padding: 14px 18px;
  border-radius: var(--r-md);
  font-family: "Plus Jakarta Sans", sans-serif;
  box-shadow: var(--shadow-2);
}
.cws-hero-card .badge strong { display: block; font-size: 22px; font-weight: 800; color: var(--cws-navy); }
.cws-hero-card .badge span { font-size: 13px; color: var(--cws-slate); font-weight: 500; }

@media (max-width: 900px) {
  .cws-hero .cws-wrap { grid-template-columns: 1fr; gap: 40px; }
  .cws-hero { padding: 80px 20px; }
  .cws-hero-card { aspect-ratio: 4/3; }
}

/* ---------- Stats strip ---------- */
.cws-stats {
  background: var(--cws-paper);
  margin-top: -50px;
  position: relative;
  z-index: 3;
}
.cws-stats .cws-wrap {
  background: #fff;
  border-radius: var(--r-xl);
  box-shadow: var(--shadow-2);
  padding: 36px 32px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  border: 1px solid var(--cws-line);
}
.cws-stat { text-align: center; }
.cws-stat .num {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 800;
  font-size: 40px;
  color: var(--cws-navy);
  line-height: 1;
  display: block;
}
.cws-stat .label {
  font-size: 13px;
  color: var(--cws-slate);
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  margin-top: 8px;
  display: block;
}
.cws-stat + .cws-stat { border-left: 1px solid var(--cws-line); }
@media (max-width: 800px) {
  .cws-stats .cws-wrap { grid-template-columns: repeat(2, 1fr); }
  .cws-stat + .cws-stat { border-left: none; }
  .cws-stat:nth-child(odd) { border-right: 1px solid var(--cws-line); }
}

/* ---------- Feature cards ---------- */
.cws-features-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 48px;
}
.cws-feature {
  background: var(--cws-paper);
  border: 1px solid var(--cws-line);
  border-radius: var(--r-lg);
  padding: 32px 28px;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  position: relative;
  overflow: hidden;
}
.cws-feature:hover {
  transform: translateY(-6px);
  box-shadow: var(--shadow-2);
  border-color: rgba(212,162,76,0.4);
}
.cws-feature .icon {
  width: 54px; height: 54px;
  border-radius: 14px;
  display: inline-flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, var(--cws-navy) 0%, var(--cws-navy-2) 100%);
  color: var(--cws-gold);
  font-size: 26px;
  margin-bottom: 18px;
  box-shadow: 0 8px 18px rgba(15,30,61,0.18);
}
.cws-feature h3 {
  font-size: 20px; font-weight: 700;
  color: var(--cws-navy);
  margin: 0 0 10px;
}
.cws-feature p {
  color: var(--cws-slate);
  font-size: 15px; line-height: 1.65;
  margin: 0;
}
@media (max-width: 900px) { .cws-features-grid { grid-template-columns: 1fr; } }

/* ---------- Programs grid ---------- */
.cws-section.alt { background: var(--cws-cream); }
.cws-programs {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 48px;
}
.cws-program {
  background: #fff;
  border-radius: var(--r-lg);
  overflow: hidden;
  box-shadow: var(--shadow-1);
  transition: transform .25s ease, box-shadow .25s ease;
}
.cws-program:hover { transform: translateY(-4px); box-shadow: var(--shadow-2); }
.cws-program .img {
  aspect-ratio: 4/3;
  background-size: cover; background-position: center;
}
.cws-program .body { padding: 24px 22px; }
.cws-program .tag {
  font-size: 12px; font-weight: 700; letter-spacing: 0.1em;
  text-transform: uppercase; color: var(--cws-gold);
  margin-bottom: 8px;
}
.cws-program h3 { font-size: 19px; color: var(--cws-navy); margin: 0 0 8px; }
.cws-program p { color: var(--cws-slate); font-size: 14.5px; line-height: 1.6; margin: 0 0 14px; }
.cws-program a.more {
  color: var(--cws-navy); font-weight: 700; font-size: 14px;
  text-decoration: none; display: inline-flex; align-items: center; gap: 6px;
}
.cws-program a.more:after { content: "→"; transition: transform .2s ease; }
.cws-program a.more:hover:after { transform: translateX(4px); }
@media (max-width: 900px) { .cws-programs { grid-template-columns: 1fr; } }

/* ---------- Principal section ---------- */
.cws-principal { display: grid; grid-template-columns: 0.9fr 1.1fr; gap: 56px; align-items: center; }
.cws-principal .img-wrap {
  position: relative;
  border-radius: var(--r-xl);
  overflow: hidden;
  aspect-ratio: 4/5;
  box-shadow: var(--shadow-3);
}
.cws-principal .img-wrap img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cws-principal .quote-mark {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 96px; line-height: 0.8;
  color: var(--cws-gold);
  margin-bottom: 0;
}
.cws-principal blockquote {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 22px; line-height: 1.5;
  font-weight: 500;
  color: var(--cws-navy);
  margin: 12px 0 24px;
  border: none; padding: 0;
}
.cws-principal .sig { font-weight: 700; color: var(--cws-navy); }
.cws-principal .sig span { display: block; font-weight: 500; color: var(--cws-slate); font-size: 14px; }
@media (max-width: 900px) {
  .cws-principal { grid-template-columns: 1fr; }
}

/* ---------- Gallery preview ---------- */
.cws-gallery {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 16px;
  margin-top: 48px;
  height: 540px;
}
.cws-gallery .tile {
  border-radius: var(--r-lg);
  overflow: hidden;
  background-size: cover; background-position: center;
  position: relative;
  transition: transform .3s ease;
  cursor: pointer;
}
.cws-gallery .tile:hover { transform: scale(1.02); }
.cws-gallery .tile.big { grid-row: span 2; }
@media (max-width: 900px) {
  .cws-gallery { grid-template-columns: 1fr 1fr; grid-template-rows: repeat(3, 200px); height: auto; }
  .cws-gallery .tile.big { grid-row: span 2; grid-column: span 2; }
}

/* ---------- CTA band ---------- */
.cws-cta {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 100%);
  color: #fff;
  border-radius: var(--r-xl);
  padding: 64px 56px;
  margin: 0 24px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.cws-cta:before {
  content: "";
  position: absolute; inset: 0;
  background: radial-gradient(circle at 80% 30%, rgba(212,162,76,0.25) 0%, transparent 50%);
}
.cws-cta > * { position: relative; }
.cws-cta h2 {
  color: #fff;
  font-size: clamp(28px, 4vw, 42px);
  margin: 0 0 16px;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 800;
}
.cws-cta p { color: rgba(255,255,255,0.85); font-size: 18px; max-width: 640px; margin: 0 auto 32px; }
.cws-cta .cws-btn.primary { display: inline-flex; }

/* ---------- Footer ---------- */
.site-footer, footer.site-footer {
  background: var(--cws-navy) !important;
  color: rgba(255,255,255,0.78);
}
.site-footer a { color: rgba(255,255,255,0.85) !important; }
.site-footer a:hover { color: var(--cws-gold) !important; }
.site-footer h2, .site-footer h3, .site-footer h4,
.site-footer .widget-title { color: #fff !important; }
.site-footer hr { border-color: rgba(255,255,255,0.08) !important; }

/* ---------- Page hero (interior pages) ---------- */
.entry-header.ast-no-title-container { display: none; }
.ast-page-builder-template .entry-header {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 100%);
  color: #fff;
  padding: 60px 24px;
  margin-bottom: 0;
  text-align: center;
}
.ast-page-builder-template .entry-header h1 {
  color: #fff;
  font-size: clamp(28px, 4vw, 44px);
}

/* ---------- Scroll reveal ---------- */
[data-reveal] {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity .8s ease, transform .8s ease;
}
[data-reveal].in {
  opacity: 1;
  transform: none;
}

/* ---------- Small fixes ---------- */
img { max-width: 100%; height: auto; }
.ast-builder-grid-row > div { align-items: center; }


/* ============================================================
   Menu visibility patch (stronger selectors)
   ============================================================ */
.site-header,
.ast-primary-header-bar,
header.site-header .main-header-bar,
.ast-above-header,
.ast-below-header {
  background: #ffffff !important;
}

.main-header-bar,
.main-header-bar-wrap {
  background: #ffffff !important;
}

/* Menu links — explicit + high specificity */
.main-header-menu .menu-link,
.ast-builder-menu .menu-link,
.main-header-menu .menu-item > a,
.ast-builder-menu-1 .menu-item > a,
.main-header-menu a.menu-link {
  color: #0B1224 !important;
  font-family: "Plus Jakarta Sans", "Inter", sans-serif !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  letter-spacing: 0.01em;
  background: transparent !important;
  transition: color .2s ease;
  padding: 12px 16px !important;
}

.main-header-menu .menu-link:hover,
.ast-builder-menu .menu-link:hover,
.main-header-menu .menu-item:hover > a,
.main-header-menu .current-menu-item > a {
  color: #D4A24C !important;
  background: transparent !important;
}

/* Dropdown caret + arrow icon visible */
.main-header-menu .menu-link svg,
.main-header-menu .dropdown-menu-toggle {
  color: #0B1224 !important;
  fill: #0B1224 !important;
}
.main-header-menu .menu-link:hover svg,
.main-header-menu .menu-item:hover .dropdown-menu-toggle {
  color: #D4A24C !important;
  fill: #D4A24C !important;
}

/* Sub menu items */
.main-header-menu .sub-menu .menu-link,
.main-header-menu .sub-menu a {
  color: #0B1224 !important;
  background: transparent !important;
}
.main-header-menu .sub-menu .menu-link:hover {
  background: #FAF7F2 !important;
  color: #0F1E3D !important;
}

/* Mobile hamburger / toggle */
.ast-mobile-menu-buttons-fill,
.ast-mobile-menu-buttons-outline,
.menu-toggle {
  color: #0F1E3D !important;
  background: transparent !important;
}
.menu-toggle .menu-toggle-icon:before,
.ast-mobile-menu-trigger-fill svg,
.ast-mobile-menu-trigger-outline svg,
.menu-toggle svg {
  fill: #0F1E3D !important;
  color: #0F1E3D !important;
}

/* Mobile slide-in / off-canvas menu */
.ast-mobile-popup-drawer .menu-item a,
.ast-mobile-popup-drawer .menu-link {
  color: #0B1224 !important;
}
.ast-mobile-popup-drawer { background: #ffffff !important; }

/* Site title fallback */
.site-title a, .site-title { color: #0F1E3D !important; }
.site-description { color: #475569 !important; }

/* Ensure header isn't pushed behind hero */
header.site-header,
.site-header.ast-replace-site-logo-transparent {
  position: relative !important;
  z-index: 1000 !important;
}


/* ============================================================
   Header rows — force white across ALL Astra header containers
   ============================================================ */
header.site-header,
.site-primary-header-wrap,
.site-below-header-wrap,
.ast-primary-header-bar,
.ast-below-header,
.ast-below-header-bar,
.ast-below-header-wrap,
.ast-above-header,
.ast-above-header-bar,
.ast-above-header-wrap,
.main-header-bar,
.main-header-bar-wrap,
.ast-main-header-wrap,
.ast-mobile-header-wrap,
.main-header-bar-navigation,
.ast-builder-html-element,
.ast-main-header-bar-alignment {
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
}

/* Soft hairline between rows */
.ast-below-header-bar,
.site-below-header-wrap {
  border-top: 1px solid #E5E7EB !important;
}

/* Strong menu link colors */
.main-header-menu .menu-link,
.ast-builder-menu .menu-link,
.main-header-menu .menu-item > a,
.ast-builder-menu-1 .menu-item > a {
  color: #0B1224 !important;
  background: transparent !important;
}
.main-header-menu .menu-link:hover,
.main-header-menu .menu-item:hover > a,
.main-header-menu .current-menu-item > a {
  color: #D4A24C !important;
}
.main-header-menu .menu-link svg,
.main-header-menu .dropdown-menu-toggle svg,
.ast-arrow-svg {
  fill: currentColor !important;
}

/* Header social icons (YouTube/Facebook on right) -> navy */
.ast-header-social-1-wrap a,
.ast-header-social-wrap a,
.ast-social-color-type-custom a {
  color: #0F1E3D !important;
}
.ast-header-social-1-wrap a:hover,
.ast-header-social-wrap a:hover {
  color: #D4A24C !important;
}

/* Bottom hairline at the bottom of full header */
header.site-header {
  border-bottom: 1px solid #E5E7EB !important;
  box-shadow: 0 1px 0 rgba(15,30,61,0.04) !important;
}


/* ============================================================
   Full-width content overrides
   ============================================================ */
:root {
  --container: 1480px;
}

.cws-wrap { max-width: var(--container) !important; padding: 0 32px; }

/* Astra global containers — widen */
.ast-container,
.site-content > .ast-container,
.site .ast-container,
.ast-container-fluid {
  max-width: 100% !important;
  padding-left: 32px !important;
  padding-right: 32px !important;
}

/* Page-builder template: no max-width on entry */
.ast-page-builder-template .entry-content,
.ast-no-sidebar.ast-page-builder-template .entry-content {
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
.ast-page-builder-template .site-content,
.ast-page-builder-template #primary {
  padding: 0 !important;
  margin: 0 !important;
}

/* Hero edge-to-edge */
.cws-hero { padding-left: 0; padding-right: 0; }
.cws-hero .cws-wrap {
  padding-left: 32px;
  padding-right: 32px;
}

/* Stats strip — let it use full container */
.cws-stats { padding: 0 32px; }
.cws-stats .cws-wrap { padding: 36px 40px; }

/* Sections: full-bleed background, inner content respects container */
.cws-section { padding-left: 0; padding-right: 0; padding-top: 96px; padding-bottom: 96px; }
.cws-section.tight { padding-top: 64px; padding-bottom: 64px; }
.cws-section > .cws-wrap { padding-left: 32px; padding-right: 32px; }

/* Header bar: full bleed but inner content centered to wider container */
.site-header .ast-builder-grid-row,
.main-header-bar .ast-builder-grid-row,
.ast-below-header .ast-builder-grid-row {
  max-width: 100% !important;
  padding-left: 32px !important;
  padding-right: 32px !important;
}

/* Footer full width */
.site-footer .ast-container { max-width: 100% !important; padding-left: 32px !important; padding-right: 32px !important; }

/* CTA band: keep wider with rounded card */
.cws-cta { margin-left: 32px; margin-right: 32px; max-width: calc(100% - 64px); }

@media (max-width: 720px) {
  .cws-wrap, .cws-section > .cws-wrap, .ast-container { padding-left: 18px !important; padding-right: 18px !important; }
  .cws-stats { padding: 0 18px; }
  .cws-cta { margin-left: 18px; margin-right: 18px; max-width: calc(100% - 36px); padding: 44px 24px; }
}


/* ============================================================
   MENU BAR REDESIGN — full-width, modern, sticky
   ============================================================ */

/* Outer wrapper of below-header (menu row) - full bleed dark navy */
.site-below-header-wrap,
.ast-below-header-wrap {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 100%) !important;
  background-color: #0F1E3D !important;
  background-image: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 100%) !important;
  width: 100% !important;
  border-top: none !important;
  border-bottom: 3px solid #D4A24C !important;
  box-shadow: 0 4px 16px rgba(15,30,61,0.18) !important;
  position: relative;
  z-index: 999;
}

.ast-below-header-bar {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: none !important;
  width: 100% !important;
  padding: 0 !important;
}

/* Inner grid row inside menu bar - centered to wider container */
.ast-below-header .ast-builder-grid-row,
.site-below-header-wrap .ast-builder-grid-row,
.ast-below-header-bar .ast-builder-grid-row {
  max-width: 1480px !important;
  margin: 0 auto !important;
  padding: 4px 32px !important;
  background: transparent !important;
}

/* Section wrappers inside menu bar - transparent */
.site-header-below-section-left,
.site-header-below-section-center,
.site-header-below-section-right,
.site-header-below-section {
  background: transparent !important;
}

/* Menu links - white text on dark background, modern spacing */
.ast-below-header .main-header-menu .menu-link,
.ast-below-header .ast-builder-menu .menu-link,
.ast-below-header .main-header-menu .menu-item > a,
.ast-below-header .ast-builder-menu-1 .menu-item > a,
.site-below-header-wrap .menu-link,
.site-below-header-wrap .menu-item > a {
  color: rgba(255,255,255,0.92) !important;
  background: transparent !important;
  font-family: "Plus Jakarta Sans", "Inter", sans-serif !important;
  font-weight: 600 !important;
  font-size: 14.5px !important;
  letter-spacing: 0.02em !important;
  padding: 22px 18px !important;
  position: relative;
  transition: color .25s ease;
}

/* Animated underline on hover */
.ast-below-header .main-header-menu .menu-item > a::after,
.site-below-header-wrap .main-header-menu .menu-item > a::after {
  content: "";
  position: absolute;
  left: 18px; right: 18px; bottom: 16px;
  height: 2px;
  background: #D4A24C;
  border-radius: 2px;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .3s ease;
}
.ast-below-header .main-header-menu .menu-item:hover > a::after,
.ast-below-header .main-header-menu .current-menu-item > a::after,
.site-below-header-wrap .main-header-menu .menu-item:hover > a::after,
.site-below-header-wrap .main-header-menu .current-menu-item > a::after {
  transform: scaleX(1);
}

/* Hover / active link color */
.ast-below-header .main-header-menu .menu-link:hover,
.ast-below-header .main-header-menu .menu-item:hover > a,
.ast-below-header .main-header-menu .current-menu-item > a,
.site-below-header-wrap .menu-link:hover,
.site-below-header-wrap .current-menu-item > a {
  color: #D4A24C !important;
}

/* Dropdown caret colors */
.ast-below-header .main-header-menu .menu-link svg,
.ast-below-header .main-header-menu .dropdown-menu-toggle svg,
.ast-below-header .ast-arrow-svg {
  fill: rgba(255,255,255,0.7) !important;
  color: rgba(255,255,255,0.7) !important;
}
.ast-below-header .main-header-menu .menu-item:hover .dropdown-menu-toggle svg,
.ast-below-header .main-header-menu .menu-item:hover .ast-arrow-svg,
.ast-below-header .main-header-menu .current-menu-item .ast-arrow-svg {
  fill: #D4A24C !important;
  color: #D4A24C !important;
}

/* Sub-menu (dropdown) styling */
.ast-below-header .main-header-menu .sub-menu,
.site-below-header-wrap .sub-menu {
  background: #ffffff !important;
  border-radius: 12px !important;
  box-shadow: 0 18px 50px rgba(15,30,61,0.22) !important;
  border: 1px solid rgba(15,30,61,0.06) !important;
  padding: 8px !important;
  margin-top: 6px !important;
  min-width: 240px !important;
  overflow: hidden;
}
.ast-below-header .main-header-menu .sub-menu .menu-link,
.ast-below-header .main-header-menu .sub-menu a,
.site-below-header-wrap .sub-menu a {
  color: #0B1224 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  padding: 10px 14px !important;
  border-radius: 8px !important;
  background: transparent !important;
}
.ast-below-header .main-header-menu .sub-menu .menu-link:hover,
.ast-below-header .main-header-menu .sub-menu .menu-item:hover > a,
.site-below-header-wrap .sub-menu a:hover {
  background: #FAF7F2 !important;
  color: #0F1E3D !important;
}
.ast-below-header .main-header-menu .sub-menu .menu-link::after {
  display: none !important;
}

/* Center the menu list horizontally on desktop */
.ast-below-header .main-navigation { width: 100%; }
.ast-below-header .main-header-menu {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: wrap;
  gap: 0;
}

/* Sticky menu bar */
.site-below-header-wrap {
  position: sticky !important;
  top: 0 !important;
  z-index: 1000 !important;
}

/* Logo row (above menu) - clean white, generous padding */
.site-primary-header-wrap,
.ast-primary-header-bar {
  padding: 14px 0 !important;
  background: #ffffff !important;
}
.site-primary-header-wrap .ast-builder-grid-row,
.ast-primary-header-bar .ast-builder-grid-row {
  max-width: 1480px !important;
  margin: 0 auto !important;
  padding: 0 32px !important;
}

/* Site title styling */
.site-title { font-weight: 800 !important; letter-spacing: -0.02em; }
.site-title a { color: #0F1E3D !important; }

/* Mobile responsive — stack-on-mobile already collapses; ensure visible hamburger */
@media (max-width: 922px) {
  .site-below-header-wrap { display: none !important; }
}


/* ============================================================
   COMPACT HEADER + MENU BAR
   ============================================================ */

/* Top logo row — shorter */
.site-primary-header-wrap,
.ast-primary-header-bar {
  padding: 6px 0 !important;
  min-height: 0 !important;
}
.site-primary-header-wrap .ast-builder-grid-row,
.ast-primary-header-bar .ast-builder-grid-row {
  padding: 4px 32px !important;
  min-height: 0 !important;
}

/* Logo image size cap */
.site-branding img.custom-logo,
.site-logo-img img,
.ast-header-logo img,
header .custom-logo-link img {
  max-height: 50px !important;
  width: auto !important;
}

/* Site title smaller */
.site-title { font-size: 22px !important; line-height: 1.2 !important; margin: 0 !important; }
.site-description { font-size: 12px !important; margin: 0 !important; }

/* Header social icons row spacing */
.ast-header-social-1-wrap a,
.ast-header-social-wrap a {
  padding: 6px !important;
}

/* Menu bar - shorter */
.ast-below-header .ast-builder-grid-row,
.site-below-header-wrap .ast-builder-grid-row,
.ast-below-header-bar .ast-builder-grid-row {
  padding: 0 32px !important;
  min-height: 0 !important;
}

/* Menu links - reduced vertical padding */
.ast-below-header .main-header-menu .menu-link,
.ast-below-header .ast-builder-menu .menu-link,
.ast-below-header .main-header-menu .menu-item > a,
.ast-below-header .ast-builder-menu-1 .menu-item > a,
.site-below-header-wrap .menu-link,
.site-below-header-wrap .menu-item > a {
  padding: 12px 16px !important;
  font-size: 14px !important;
}

/* Underline accent — repositioned for shorter bar */
.ast-below-header .main-header-menu .menu-item > a::after,
.site-below-header-wrap .main-header-menu .menu-item > a::after {
  bottom: 8px !important;
  left: 16px !important;
  right: 16px !important;
}

/* Menu bar bottom accent border thinner */
.site-below-header-wrap,
.ast-below-header-wrap {
  border-bottom-width: 2px !important;
}

/* Mobile header bar — also compact */
.ast-mobile-header-wrap .ast-builder-grid-row {
  padding: 4px 18px !important;
}
.ast-mobile-header-wrap .custom-logo-link img,
.ast-mobile-header-wrap .ast-header-logo img {
  max-height: 44px !important;
}


/* ============================================================
   LOGO + SCHOOL NAME — bigger
   ============================================================ */

/* Top logo row - a bit more breathing room */
.site-primary-header-wrap,
.ast-primary-header-bar {
  padding: 12px 0 !important;
}
.site-primary-header-wrap .ast-builder-grid-row,
.ast-primary-header-bar .ast-builder-grid-row {
  padding: 6px 32px !important;
}

/* Logo image — larger */
.site-branding img.custom-logo,
.site-logo-img img,
.ast-header-logo img,
header .custom-logo-link img,
.ast-builder-html-element img,
.site-header .site-logo-img img {
  max-height: 92px !important;
  height: 92px !important;
  width: auto !important;
}

/* Site title — bigger and bolder */
.site-title {
  font-size: 36px !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.02em;
  margin: 0 !important;
}
.site-title a { color: #0F1E3D !important; }

/* Site description (tagline) below title — visible if exists */
.site-description {
  font-size: 13px !important;
  color: #475569 !important;
  font-weight: 500 !important;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  margin: 4px 0 0 !important;
}

/* Mobile header logo — also bigger */
.ast-mobile-header-wrap .custom-logo-link img,
.ast-mobile-header-wrap .ast-header-logo img,
.ast-mobile-header-wrap .site-logo-img img {
  max-height: 64px !important;
  height: 64px !important;
}
.ast-mobile-header-wrap .site-title { font-size: 22px !important; }

@media (max-width: 600px) {
  .site-title { font-size: 24px !important; }
  .site-branding img.custom-logo,
  .ast-header-logo img { max-height: 60px !important; height: 60px !important; }
}


/* ============================================================
   HEADER — match production captwilliamsschooltura.com proportions
   ============================================================ */

/* Rubik font like prod */
@import url('https://fonts.googleapis.com/css2?family=Rubik:wght@400;500;600;700&display=swap');

/* Top logo+title row */
.site-primary-header-wrap,
.ast-primary-header-bar {
  padding: 0 !important;
  background: #ffffff !important;
  border-bottom: 4px solid #D4A24C !important;
  min-height: 100px !important;
}
.ast-primary-header-bar .ast-builder-grid-row,
.site-primary-header-wrap .ast-builder-grid-row {
  padding: 0 20px !important;
  min-height: 100px !important;
  align-items: center !important;
}

/* Logo width matches prod (100px) */
.site-branding img.custom-logo,
.site-logo-img img,
.custom-logo-link img,
.ast-header-logo img,
header .custom-logo-link img {
  max-width: 100px !important;
  width: 100px !important;
  height: auto !important;
  max-height: none !important;
}
.site-logo-img { padding-right: 1em !important; }

/* Site identity / branding flex alignment like prod */
.ast-site-identity {
  padding: 1em 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  vertical-align: middle;
  transition: all .2s linear;
}
.site-branding {
  line-height: 1;
  align-self: center;
  flex: 1;
}

/* Site title — Rubik, weight 600 */
.site-title {
  font-family: 'Rubik', sans-serif !important;
  font-weight: 600 !important;
  font-size: 30px !important;
  line-height: 1.2 !important;
  margin-bottom: 0 !important;
  margin: 0 !important;
  letter-spacing: -0.005em;
}
.site-title,
.site-title a {
  font-family: 'Rubik', sans-serif !important;
  font-weight: 600 !important;
  color: #0F1E3D !important;
}
.site-description {
  font-family: 'Rubik', sans-serif !important;
  font-size: 13px !important;
  color: #475569 !important;
  margin: 0 !important;
  font-weight: 400;
  letter-spacing: normal;
  text-transform: none;
}

/* Header social icons */
.ast-header-social-1-wrap a,
.ast-header-social-wrap a {
  color: #0F1E3D !important;
  padding: 8px !important;
}
.ast-header-social-1-wrap a:hover { color: #D4A24C !important; }

/* Below-header (menu bar) — keep modern dark, but adjust the existing top accent */
.site-below-header-wrap,
.ast-below-header-wrap {
  border-top: none !important;
  border-bottom: 2px solid #D4A24C !important;
}

/* Responsive: smaller on tablet/mobile like prod (80px / 50px min-heights) */
@media (max-width: 921px) {
  .site-primary-header-wrap,
  .ast-primary-header-bar { min-height: 80px !important; }
  .ast-primary-header-bar .ast-builder-grid-row { min-height: 80px !important; }
  .site-title { font-size: 24px !important; }
  .custom-logo-link img,
  .ast-header-logo img { width: 80px !important; max-width: 80px !important; }
}
@media (max-width: 600px) {
  .site-primary-header-wrap,
  .ast-primary-header-bar { min-height: 50px !important; }
  .site-title { font-size: 20px !important; }
  .custom-logo-link img,
  .ast-header-logo img { width: 64px !important; max-width: 64px !important; }
}


/* ============================================================
   Essential Blocks — modern overrides (keeps original content)
   ============================================================ */

/* Page background — soft cream like a modern site */
body.page-id-1171,
body.page-id-1171 .site-content,
body.page-id-1171 #primary,
body.page-id-1171 main {
  background: #FAF7F2 !important;
}

/* Row containers — give consistent spacing and remove gradient/overlay backgrounds */
.eb-row-root-container {
  background-color: transparent !important;
  background-image: none !important;
  margin: 0 !important;
  padding: 72px 0 !important;
  position: relative;
}
.eb-row-root-container:before {
  display: none !important;
}
.eb-row-root-container + .eb-row-root-container { padding-top: 0; }

/* Alternate row backgrounds for visual rhythm */
.eb-row-root-container:nth-of-type(odd) { background: #FFFFFF !important; }
.eb-row-root-container:nth-of-type(even) { background: #FAF7F2 !important; }

/* Inner row width — match site container */
.eb-row-wrapper {
  max-width: 1480px !important;
  margin: 0 auto !important;
  padding: 0 32px !important;
}
.eb-row-inner {
  gap: 32px !important;
  align-items: center;
}

/* Column wrappers — clean, no extra background unless intended */
.eb-column-wrapper {
  background-color: transparent !important;
  background-image: none !important;
  padding: 0 !important;
  min-height: 0 !important;
}

/* Typography inside content */
.eb-row-root-container h1,
.eb-row-root-container h2 {
  font-family: 'Plus Jakarta Sans', 'Inter', sans-serif !important;
  font-weight: 800 !important;
  color: #0F1E3D !important;
  letter-spacing: -0.02em !important;
  line-height: 1.1 !important;
  margin: 0 0 16px !important;
}
.eb-row-root-container h1 { font-size: clamp(34px, 4.5vw, 52px) !important; }
.eb-row-root-container h2 { font-size: clamp(28px, 3.5vw, 40px) !important; }
.eb-row-root-container h3,
.eb-row-root-container h4 {
  font-family: 'Plus Jakarta Sans', 'Inter', sans-serif !important;
  font-weight: 700 !important;
  color: #0F1E3D !important;
}
.eb-row-root-container p {
  font-family: 'Inter', sans-serif !important;
  color: #475569 !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
}
.eb-row-root-container strong { color: #0F1E3D !important; }

/* Infoboxes — modern cards */
.wp-block-essential-blocks-infobox,
.eb-infobox-wrapper {
  background: #ffffff !important;
  border-radius: 18px !important;
  padding: 32px 28px !important;
  border: 1px solid #E5E7EB !important;
  box-shadow: 0 2px 8px rgba(15,30,61,0.05) !important;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease !important;
  height: 100% !important;
}
.wp-block-essential-blocks-infobox:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 36px rgba(15,30,61,0.10) !important;
  border-color: rgba(212,162,76,0.45) !important;
}
.eb-infobox-image-wrapper { margin-bottom: 18px !important; }
.eb-infobox-image-wrapper img {
  border-radius: 12px !important;
  width: 64px !important;
  height: 64px !important;
  object-fit: contain;
}
.eb-infobox-title-wrapper h2,
.eb-infobox-title-wrapper h3,
.eb-infobox-title-wrapper h4 {
  font-size: 20px !important;
  margin: 0 0 8px !important;
}

/* Feature list items — modern row cards */
.eb-feature-list-item {
  background: #ffffff !important;
  border: 1px solid #E5E7EB !important;
  border-radius: 14px !important;
  padding: 18px 22px !important;
  margin-bottom: 14px !important;
  display: flex; align-items: flex-start;
  transition: background .2s ease, border-color .2s ease;
}
.eb-feature-list-item:hover {
  background: #FAF7F2 !important;
  border-color: rgba(212,162,76,0.45) !important;
}
.eb-feature-list-icon-box {
  background: linear-gradient(135deg, #0F1E3D, #1A2D5C) !important;
  color: #D4A24C !important;
  border-radius: 12px !important;
  padding: 10px !important;
  flex-shrink: 0;
}
.eb-feature-list-icon {
  color: #D4A24C !important;
  fill: #D4A24C !important;
}
.eb-feature-list-title-wrapper { margin-bottom: 4px !important; }
.eb-feature-list-title {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-weight: 700 !important;
  font-size: 17px !important;
  color: #0F1E3D !important;
}
.eb-feature-list-content {
  color: #475569 !important;
  font-size: 14.5px !important;
}

/* Flipbox — modern rounded with accent shadow */
.eb-flipbox-items-container {
  border-radius: 18px !important;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(15,30,61,0.10) !important;
}
.eb-flipbox-front, .eb-flipbox-back {
  border-radius: 18px !important;
}
.eb-flipbox-icon-wrapper svg,
.eb-flipbox-icon-wrapper i {
  color: #D4A24C !important;
}

/* Slider — rounded, soft */
.eb-slider-wrapper,
.wp-block-essential-blocks-slider {
  border-radius: 22px !important;
  overflow: hidden !important;
  box-shadow: 0 18px 50px rgba(15,30,61,0.14) !important;
}
.eb-slider-image { border-radius: 0 !important; }

/* Buttons — anywhere inside content */
.eb-row-root-container .wp-block-button__link,
.eb-row-root-container button,
.eb-row-root-container .eb-button-wrapper a {
  border-radius: 999px !important;
  background: #0F1E3D !important;
  color: #ffffff !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-weight: 700 !important;
  padding: 14px 28px !important;
  border: none !important;
  transition: transform .2s ease, background .2s ease, box-shadow .2s ease !important;
  box-shadow: 0 8px 20px rgba(15,30,61,0.18);
}
.eb-row-root-container .wp-block-button__link:hover,
.eb-row-root-container .eb-button-wrapper a:hover {
  background: #D4A24C !important;
  color: #0B1224 !important;
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(212,162,76,0.35);
}

/* Images inside content — gentle radius */
.eb-row-root-container img,
.eb-image-wrapper-inner img,
.wp-block-image img {
  border-radius: 14px !important;
}

/* Section eyebrow / small heading accent */
.eb-row-root-container .has-text-align-center { text-align: center; }

/* Reveal animation on scroll */
.eb-row-root-container,
.eb-column-wrapper {
  opacity: 1;
}

/* Remove the heavy purple/pink default overlays often baked into EB rows */
.eb-row-root-container [style*="radial-gradient"],
.eb-row-root-container [style*="linear-gradient(135deg"] {
  background-image: none !important;
}

/* Spacer/divider blocks — tighten */
.wp-block-spacer { height: 24px !important; }

/* Mobile responsive */
@media (max-width: 900px) {
  .eb-row-root-container { padding: 56px 0 !important; }
  .eb-row-wrapper { padding: 0 18px !important; }
  .eb-row-inner { flex-direction: column !important; }
}


/* ============================================================
   Tighter home page spacing
   ============================================================ */
.eb-row-root-container {
  padding: 24px 0 !important;
  margin: 0 !important;
}
.eb-row-root-container + .eb-row-root-container { padding-top: 0 !important; }
.eb-row-root-container:first-of-type { padding-top: 0 !important; }
.eb-row-root-container:last-of-type { padding-bottom: 32px !important; }

.eb-row-wrapper { padding: 0 24px !important; }
.eb-row-inner { gap: 20px !important; }

/* Reduce spacer block heights */
.wp-block-spacer { height: 12px !important; }

/* Tighten infobox padding */
.wp-block-essential-blocks-infobox,
.eb-infobox-wrapper {
  padding: 22px 20px !important;
}

/* Tighten feature list items */
.eb-feature-list-item {
  padding: 12px 16px !important;
  margin-bottom: 10px !important;
}

/* Tighten heading margins */
.eb-row-root-container h1,
.eb-row-root-container h2 {
  margin: 0 0 10px !important;
}
.eb-row-root-container h3,
.eb-row-root-container h4 {
  margin: 0 0 8px !important;
}
.eb-row-root-container p {
  margin: 0 0 10px !important;
}

/* Column wrapper padding override */
.eb-column-wrapper,
.eb-column-inner {
  padding: 0 !important;
  min-height: 0 !important;
}

/* Site content base padding off (page-builder layout) */
.ast-page-builder-template .site-content,
.ast-page-builder-template #primary,
.ast-page-builder-template .entry-content {
  padding: 0 !important;
  margin: 0 !important;
}

@media (max-width: 900px) {
  .eb-row-root-container { padding: 16px 0 !important; }
  .eb-row-wrapper { padding: 0 16px !important; }
}


/* ============================================================
   FANCY HOME — gradients, decor, animations, micro-interactions
   ============================================================ */

/* Page-level soft gradient backdrop with decorative blobs */
body.page-id-1171 {
  background:
    radial-gradient(800px 600px at 90% -5%, rgba(212,162,76,0.10) 0%, transparent 50%),
    radial-gradient(700px 700px at -10% 30%, rgba(15,30,61,0.05) 0%, transparent 55%),
    radial-gradient(900px 800px at 110% 80%, rgba(212,162,76,0.06) 0%, transparent 55%),
    #FAF7F2 !important;
  background-attachment: fixed !important;
}

/* Override the alternating row colors to be more subtle and let backdrop show */
body.page-id-1171 .eb-row-root-container:nth-of-type(odd),
body.page-id-1171 .eb-row-root-container:nth-of-type(even) {
  background: transparent !important;
}

/* Decorative section dividers — gold gradient hairline */
.eb-row-root-container + .eb-row-root-container::before {
  content: "";
  display: block;
  width: 120px;
  height: 2px;
  margin: 0 auto 28px;
  background: linear-gradient(90deg, transparent, #D4A24C, transparent);
  border-radius: 2px;
  opacity: 0.55;
}

/* Heading accent — gold underline bar */
.eb-row-root-container h2 {
  position: relative;
  padding-bottom: 16px !important;
  margin-bottom: 18px !important;
}
.eb-row-root-container h2::after {
  content: "";
  position: absolute;
  left: 0; bottom: 0;
  width: 56px; height: 4px;
  border-radius: 4px;
  background: linear-gradient(90deg, #D4A24C, #B8862E);
  box-shadow: 0 4px 12px rgba(212,162,76,0.4);
}
.eb-row-root-container .has-text-align-center h2::after,
.eb-row-root-container h2[style*="text-align:center"]::after,
.eb-row-root-container h2[style*="text-align: center"]::after {
  left: 50%; transform: translateX(-50%);
}

/* Strong gradient text accent for big H1/H2 (subtle) */
.eb-row-root-container h1 {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 60%, #2A4080 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent !important;
}

/* INFOBOX cards — fancier */
.wp-block-essential-blocks-infobox,
.eb-infobox-wrapper {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, #ffffff 0%, #FCFBF8 100%) !important;
  border: 1px solid rgba(15,30,61,0.08) !important;
  box-shadow: 0 4px 14px rgba(15,30,61,0.06) !important;
}
.wp-block-essential-blocks-infobox::before,
.eb-infobox-wrapper::before {
  content: "";
  position: absolute; top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, #0F1E3D, #D4A24C, #0F1E3D);
  background-size: 200% 100%;
  opacity: 0;
  transform: translateY(-3px);
  transition: opacity .35s ease, transform .35s ease;
}
.wp-block-essential-blocks-infobox:hover::before,
.eb-infobox-wrapper:hover::before {
  opacity: 1;
  transform: translateY(0);
  animation: cwsShimmer 2.5s linear infinite;
}
@keyframes cwsShimmer {
  0% { background-position: 0% 50%; }
  100% { background-position: 200% 50%; }
}
.wp-block-essential-blocks-infobox::after,
.eb-infobox-wrapper::after {
  content: "";
  position: absolute;
  right: -40px; bottom: -40px;
  width: 140px; height: 140px;
  background: radial-gradient(circle, rgba(212,162,76,0.20) 0%, transparent 70%);
  border-radius: 50%;
  opacity: 0;
  transition: opacity .35s ease, transform .35s ease;
  transform: scale(0.7);
}
.wp-block-essential-blocks-infobox:hover::after,
.eb-infobox-wrapper:hover::after {
  opacity: 1;
  transform: scale(1);
}
.wp-block-essential-blocks-infobox:hover,
.eb-infobox-wrapper:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 20px 50px rgba(15,30,61,0.16) !important;
  border-color: rgba(212,162,76,0.5) !important;
}

/* Infobox image circle with gradient ring */
.eb-infobox-image-wrapper {
  display: inline-flex !important;
  align-items: center; justify-content: center;
  padding: 8px;
  border-radius: 50% !important;
  background: linear-gradient(135deg, rgba(212,162,76,0.18), rgba(15,30,61,0.08));
  position: relative;
}
.eb-infobox-image-wrapper img {
  border-radius: 50% !important;
  background: #fff;
}

/* Feature list — fancy icon tile with gradient + glow */
.eb-feature-list-icon-box {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 60%, #243C82 100%) !important;
  box-shadow: 0 8px 22px rgba(15,30,61,0.25), inset 0 0 0 1px rgba(255,255,255,0.06) !important;
  position: relative;
  overflow: hidden;
}
.eb-feature-list-icon-box::before {
  content: "";
  position: absolute; inset: 0;
  background: radial-gradient(circle at 30% 20%, rgba(212,162,76,0.45) 0%, transparent 60%);
  opacity: 0.85;
}
.eb-feature-list-icon-box * { position: relative; z-index: 1; }

.eb-feature-list-item {
  position: relative;
  overflow: hidden;
}
.eb-feature-list-item::after {
  content: "→";
  position: absolute;
  right: 18px; top: 50%;
  transform: translateY(-50%) translateX(8px);
  color: #D4A24C;
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-size: 22px;
  font-weight: 700;
  opacity: 0;
  transition: opacity .25s ease, transform .25s ease;
}
.eb-feature-list-item:hover::after {
  opacity: 1;
  transform: translateY(-50%) translateX(0);
}

/* Slider — gradient overlay & soft glow */
.eb-slider-wrapper,
.wp-block-essential-blocks-slider {
  position: relative;
}
.eb-slider-wrapper::before,
.wp-block-essential-blocks-slider::before {
  content: "";
  position: absolute;
  inset: -10px;
  border-radius: 28px;
  background: linear-gradient(135deg, rgba(212,162,76,0.35), rgba(15,30,61,0.25));
  z-index: -1;
  filter: blur(20px);
  opacity: 0.45;
}

/* Flipbox — gradient front, accent back */
.eb-flipbox-front {
  background: linear-gradient(135deg, #ffffff 0%, #FCFBF8 100%) !important;
  border: 1px solid rgba(15,30,61,0.08) !important;
}
.eb-flipbox-back {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 60%, #2A4080 100%) !important;
  color: #fff !important;
}
.eb-flipbox-back h2, .eb-flipbox-back h3, .eb-flipbox-back h4, .eb-flipbox-back p {
  color: #fff !important;
}
.eb-flipbox-items-container:hover {
  transform: translateY(-4px);
  transition: transform .3s ease;
}

/* Images — soft frame and zoom on hover */
.eb-row-root-container img,
.wp-block-image img {
  transition: transform .5s ease, box-shadow .3s ease !important;
}
.wp-block-image:hover img,
.eb-image-wrapper-inner:hover img {
  transform: scale(1.02);
  box-shadow: 0 16px 40px rgba(15,30,61,0.12) !important;
}

/* Buttons — fancier with shine sweep */
.eb-row-root-container .wp-block-button__link,
.eb-row-root-container .eb-button-wrapper a {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 100%) !important;
}
.eb-row-root-container .wp-block-button__link::after,
.eb-row-root-container .eb-button-wrapper a::after {
  content: "";
  position: absolute;
  top: 0; left: -100%;
  width: 100%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.25), transparent);
  transition: left .6s ease;
}
.eb-row-root-container .wp-block-button__link:hover::after,
.eb-row-root-container .eb-button-wrapper a:hover::after {
  left: 100%;
}
.eb-row-root-container .wp-block-button__link:hover,
.eb-row-root-container .eb-button-wrapper a:hover {
  background: linear-gradient(135deg, #D4A24C 0%, #B8862E 100%) !important;
}

/* Scroll-reveal: animate EB rows in on scroll */
body.page-id-1171 .eb-row-root-container {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity .8s cubic-bezier(.2,.7,.3,1), transform .8s cubic-bezier(.2,.7,.3,1);
}
body.page-id-1171 .eb-row-root-container.in {
  opacity: 1;
  transform: none;
}
body.page-id-1171 .eb-row-root-container:first-of-type { opacity: 1; transform: none; }

/* Subtle stagger for infoboxes inside a revealed row */
.eb-row-root-container.in .wp-block-essential-blocks-infobox,
.eb-row-root-container.in .eb-feature-list-item {
  animation: cwsFadeUp .7s both;
}
.eb-row-root-container.in .wp-block-essential-blocks-infobox:nth-child(2),
.eb-row-root-container.in .eb-feature-list-item:nth-child(2) { animation-delay: .08s; }
.eb-row-root-container.in .wp-block-essential-blocks-infobox:nth-child(3),
.eb-row-root-container.in .eb-feature-list-item:nth-child(3) { animation-delay: .16s; }
.eb-row-root-container.in .wp-block-essential-blocks-infobox:nth-child(4),
.eb-row-root-container.in .eb-feature-list-item:nth-child(4) { animation-delay: .24s; }
.eb-row-root-container.in .wp-block-essential-blocks-infobox:nth-child(5) { animation-delay: .32s; }
.eb-row-root-container.in .wp-block-essential-blocks-infobox:nth-child(6) { animation-delay: .40s; }
@keyframes cwsFadeUp {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: none; }
}

/* Glowing accent dot inside section eyebrow / first column lead text */
.eb-row-root-container .eb-column-inner > *:first-child h2::before {
  content: "";
  display: inline-block;
  width: 10px; height: 10px;
  border-radius: 50%;
  background: #D4A24C;
  box-shadow: 0 0 0 4px rgba(212,162,76,0.15), 0 0 14px rgba(212,162,76,0.5);
  margin-right: 12px;
  vertical-align: middle;
  animation: cwsPulse 2.2s ease-in-out infinite;
}
@keyframes cwsPulse {
  0%, 100% { box-shadow: 0 0 0 4px rgba(212,162,76,0.15), 0 0 10px rgba(212,162,76,0.5); }
  50%      { box-shadow: 0 0 0 8px rgba(212,162,76,0.05), 0 0 20px rgba(212,162,76,0.75); }
}


/* ============================================================
   INFOBOX FIX — single layer + circular aligned image
   ============================================================ */

/* Inner wrapper transparent — outer block is the only card */
.wp-block-essential-blocks-infobox .eb-infobox-wrapper,
.eb-infobox-wrapper {
  background: transparent !important;
  background-image: none !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  transform: none !important;
}
.wp-block-essential-blocks-infobox .eb-infobox-wrapper:hover,
.eb-infobox-wrapper:hover {
  transform: none !important;
  box-shadow: none !important;
  border-color: transparent !important;
}
.eb-infobox-wrapper::before,
.eb-infobox-wrapper::after {
  display: none !important;
  content: none !important;
}

/* Outer block keeps the card styling (already set), make sure it lifts */
.wp-block-essential-blocks-infobox {
  background: linear-gradient(180deg, #ffffff 0%, #FCFBF8 100%) !important;
  border: 1px solid rgba(15,30,61,0.08) !important;
  border-radius: 18px !important;
  padding: 28px 24px !important;
  box-shadow: 0 4px 14px rgba(15,30,61,0.06) !important;
  text-align: center;
  height: 100%;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}

/* Image wrapper — clean fixed circle */
.eb-infobox-image-wrapper {
  width: 96px !important;
  height: 96px !important;
  border-radius: 50% !important;
  overflow: hidden !important;
  margin: 0 auto 16px !important;
  padding: 0 !important;
  background: linear-gradient(135deg, rgba(212,162,76,0.18), rgba(15,30,61,0.08)) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative;
  flex-shrink: 0;
  box-shadow: 0 6px 18px rgba(15,30,61,0.10);
}

/* Inner image wrapper */
.eb-infobox-image-wrapper .eb-image-wrapper,
.eb-infobox-image-wrapper .eb-image-wrapper-inner,
.eb-infobox-image-wrapper .eb-infobox-image {
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 50% !important;
  overflow: hidden !important;
  display: block !important;
  background: transparent !important;
}

/* The actual image — fill the circle, cropped to cover */
.eb-infobox-image-wrapper img,
.eb-infobox-image-wrapper .eb-image-wrapper img,
.eb-infobox-image-wrapper .eb-image-wrapper-inner img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 50% !important;
  display: block !important;
  background: transparent !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Centered text below image */
.eb-infobox-title-wrapper {
  text-align: center !important;
  width: 100%;
}
.eb-infobox-title-wrapper h2,
.eb-infobox-title-wrapper h3,
.eb-infobox-title-wrapper h4 {
  font-size: 20px !important;
  margin: 0 0 10px !important;
  text-align: center !important;
}
.eb-infobox-title-wrapper h2::after,
.eb-infobox-title-wrapper h3::after,
.eb-infobox-title-wrapper h4::after { display: none !important; }

.wp-block-essential-blocks-infobox p,
.eb-infobox-content-wrapper p,
.eb-infobox-content {
  text-align: center !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
  color: #475569 !important;
  margin: 0 !important;
}

/* Hover lift (outer only) */
.wp-block-essential-blocks-infobox:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 18px 40px rgba(15,30,61,0.14) !important;
  border-color: rgba(212,162,76,0.5) !important;
}


/* ============================================================
   Activities list — chip grid + nicer links section
   ============================================================ */

/* Heading wrapper accent — centered cleanly */
body.page-id-1171 .eb-ah-title {
  font-family: 'Plus Jakarta Sans', 'Inter', sans-serif !important;
  font-weight: 800 !important;
  font-size: clamp(28px, 3.6vw, 42px) !important;
  color: #0F1E3D !important;
  text-align: center !important;
  position: relative;
  padding-bottom: 14px !important;
  margin: 0 auto 18px !important;
}
body.page-id-1171 .eb-ah-title::after {
  content: "";
  position: absolute;
  left: 50%; transform: translateX(-50%);
  bottom: 0;
  width: 64px; height: 4px;
  background: linear-gradient(90deg, #D4A24C, #B8862E);
  border-radius: 4px;
}
/* Kill pulsing dot before this heading (if applied) */
body.page-id-1171 .eb-ah-title::before { content: none !important; display: none !important; }

/* Convert the wp-block-list into a chip grid */
body.page-id-1171 ul.wp-block-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 24px auto !important;
  max-width: 1100px;
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 14px;
}
body.page-id-1171 ul.wp-block-list > li {
  list-style: none !important;
  background: #ffffff !important;
  border: 1px solid rgba(15,30,61,0.10) !important;
  border-radius: 14px !important;
  padding: 16px 18px !important;
  font-family: 'Plus Jakarta Sans', 'Inter', sans-serif !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  color: #0F1E3D !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 !important;
  position: relative;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease;
  cursor: default;
  box-shadow: 0 2px 6px rgba(15,30,61,0.04);
}
body.page-id-1171 ul.wp-block-list > li::marker { content: "" !important; }
body.page-id-1171 ul.wp-block-list > li::before {
  content: "";
  flex-shrink: 0;
  width: 10px; height: 10px;
  border-radius: 50%;
  background: linear-gradient(135deg, #D4A24C 0%, #B8862E 100%);
  box-shadow: 0 0 0 4px rgba(212,162,76,0.18);
  display: inline-block;
}
body.page-id-1171 ul.wp-block-list > li:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(15,30,61,0.10) !important;
  border-color: rgba(212,162,76,0.55) !important;
  background: linear-gradient(180deg, #ffffff, #FCFBF8) !important;
}

/* Intro paragraph — calmer, centered */
body.page-id-1171 .eb-ah-title + * + .wp-block-paragraph,
body.page-id-1171 .wp-block-essential-blocks-advanced-heading + .wp-block-paragraph,
body.page-id-1171 .wp-block-essential-blocks-advanced-heading + p {
  text-align: center !important;
  max-width: 940px;
  margin: 0 auto 6px !important;
  color: #475569 !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
}

/* Closing paragraph (Mass PT) — pull-quote style */
body.page-id-1171 ul.wp-block-list + p {
  text-align: center !important;
  max-width: 820px;
  margin: 26px auto !important;
  padding: 18px 24px;
  background: linear-gradient(135deg, rgba(15,30,61,0.04), rgba(212,162,76,0.06));
  border-left: 4px solid #D4A24C;
  border-radius: 12px;
  color: #0F1E3D !important;
  font-weight: 500;
  font-style: italic;
}

/* Underlined inline action links -> pill buttons (admission + contact) */
body.page-id-1171 p > a[href*="admission"],
body.page-id-1171 p > a[href*="contact"] {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 100%) !important;
  color: #ffffff !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  padding: 12px 24px !important;
  border-radius: 999px !important;
  text-decoration: none !important;
  box-shadow: 0 8px 20px rgba(15,30,61,0.18);
  margin: 6px 8px 6px 0 !important;
  transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}
body.page-id-1171 p > a[href*="admission"]::after {
  content: " →";
}
body.page-id-1171 p > a[href*="admission"]:hover,
body.page-id-1171 p > a[href*="contact"]:hover {
  background: linear-gradient(135deg, #D4A24C 0%, #B8862E 100%) !important;
  color: #0B1224 !important;
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(212,162,76,0.35);
}
/* Wrapping paragraph for the buttons - center align */
body.page-id-1171 ul.wp-block-list + p + p,
body.page-id-1171 p:has(> a[href*="admission"]),
body.page-id-1171 p:has(> a[href*="contact"]) {
  text-align: center !important;
}

/* "Articles about us in popular Sites" heading + links — refined */
body.page-id-1171 h2:has(+ p > a[href*="medium"]),
body.page-id-1171 h2:has(+ p > a[href*="linkedin"]),
body.page-id-1171 h2 + p > a[href*="medium"],
body.page-id-1171 h2 + p > a[href*="linkedin"] {
  /* Touch */
}
body.page-id-1171 p > a[href*="medium"],
body.page-id-1171 p > a[href*="linkedin"] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(15,30,61,0.06);
  color: #0F1E3D !important;
  padding: 8px 14px;
  border-radius: 999px;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  margin: 4px 6px;
  border: 1px solid rgba(15,30,61,0.08);
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}
body.page-id-1171 p > a[href*="medium"]:hover,
body.page-id-1171 p > a[href*="linkedin"]:hover {
  background: #D4A24C;
  color: #0B1224 !important;
  border-color: #D4A24C;
}

@media (max-width: 600px) {
  body.page-id-1171 ul.wp-block-list { grid-template-columns: repeat(2, 1fr); gap: 10px; }
  body.page-id-1171 ul.wp-block-list > li { padding: 12px 14px !important; font-size: 14px !important; }
}


/* ============================================================
   Horizontal line polish — remove redundant, refine heading accents
   ============================================================ */

/* 1) Remove the row-to-row decorative hairline divider entirely.
      The alternating section backgrounds already create rhythm. */
.eb-row-root-container + .eb-row-root-container::before {
  content: none !important;
  display: none !important;
}

/* 2) Remove the pulsing gold dot before first H2 in column — too noisy */
.eb-row-root-container .eb-column-inner > *:first-child h2::before {
  content: none !important;
  display: none !important;
  animation: none !important;
}
.eb-row-root-container h2::before { content: none !important; }

/* 3) Refined, consistent H2 accent — short centered gold pill underline */
.eb-row-root-container h2 {
  position: relative;
  padding-bottom: 18px !important;
  margin-bottom: 24px !important;
  text-align: inherit;
}
.eb-row-root-container h2::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 48px;
  height: 3px;
  background: linear-gradient(90deg, #D4A24C, #B8862E);
  border-radius: 99px;
  box-shadow: none;
}
/* Center the accent under centered headings */
.eb-row-root-container .has-text-align-center > h2::after,
.eb-row-root-container h2.has-text-align-center::after,
.eb-row-root-container [style*="text-align:center"] h2::after,
.eb-row-root-container [style*="text-align: center"] h2::after,
.eb-row-root-container .eb-ah-title::after {
  left: 50% !important;
  transform: translateX(-50%);
}

/* 4) Sometimes Astra/EB injects a 1-2px hairline border below rows on first-child or top of column.
      Neutralize stray hairlines on EB containers. */
.eb-row-root-container,
.eb-column-wrapper,
.eb-column-inner {
  border-top: none !important;
  border-bottom: none !important;
}

/* 5) Style any explicit <hr> consistently if present anywhere on the home */
body.page-id-1171 hr,
body.page-id-1171 .wp-block-separator {
  border: none !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(15,30,61,0.12) 30%, rgba(15,30,61,0.12) 70%, transparent) !important;
  margin: 32px auto !important;
  max-width: 380px;
}
body.page-id-1171 hr.is-style-dots,
body.page-id-1171 .wp-block-separator.is-style-dots {
  background: none !important;
  border: none !important;
  text-align: center;
  height: auto !important;
  color: rgba(15,30,61,0.35);
}
body.page-id-1171 hr.is-style-dots::before,
body.page-id-1171 .wp-block-separator.is-style-dots::before {
  content: "• • •";
  font-size: 14px;
  letter-spacing: 8px;
  color: #D4A24C;
}

/* 6) Astra primary header bottom border — refine to thin clean gold */
.ast-primary-header-bar,
.site-primary-header-wrap {
  border-bottom-width: 1px !important;
  border-bottom-style: solid !important;
  border-bottom-color: rgba(15,30,61,0.08) !important;
}
/* Move the gold accent to the bottom of the menu bar (single source of accent) */
.site-below-header-wrap,
.ast-below-header-wrap {
  border-bottom: 3px solid #D4A24C !important;
  border-top: none !important;
}


/* ============================================================
   v1.1.8 — Remove borders from home-page content blocks
   Keeps header/menu/footer accent borders intact.
   ============================================================ */

/* Essential Blocks: row container + columns */
.eb-row-root-container,
.eb-row-wrapper,
.eb-parent-wrapper,
.eb-column,
.eb-column-inner,
.wp-block-essential-blocks-row,
.wp-block-essential-blocks-column {
  border: 0 !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  box-shadow: none !important;
}

/* Infoboxes — outer + inner wrapper */
.wp-block-essential-blocks-infobox,
.wp-block-essential-blocks-infobox > .eb-infobox-wrapper,
.eb-infobox-wrapper,
.eb-infobox {
  border: 0 !important;
}

/* Feature list / flipbox / cards */
.eb-feature-list-item,
.eb-flipbox-front,
.eb-flipbox-back,
.eb-flipbox-items-container,
.wp-block-essential-blocks-feature-list,
.wp-block-essential-blocks-flipbox {
  border: 0 !important;
}

/* Generic cards used by the design system */
.cws-card,
.cws-feature,
.cws-program,
.cws-stat-card,
.cws-chip,
.cws-link-card {
  border: 0 !important;
}

/* Remove the "+ row" hairline divider between sections, just in case */
.eb-row-root-container + .eb-row-root-container::before,
.eb-row-root-container::after {
  content: none !important;
  display: none !important;
  background: none !important;
  border: 0 !important;
}

/* ============================================================
   v1.1.9 — Strip borders from native wp-block-group sections
   (e.g. #reviews uses inline style="border-width:5px")
   ============================================================ */

.wp-block-group,
.wp-block-group[style*="border-width"],
#reviews,
.wp-block-group.alignfull,
.has-background.wp-block-group {
  border: 0 !important;
  border-width: 0 !important;
  border-style: none !important;
  outline: 0 !important;
}

/* Catch any block whose inline style sets border-width */
[style*="border-width:5px"],
[style*="border-width: 5px"],
[style*="border-width:4px"],
[style*="border-width: 4px"],
[style*="border-width:3px"],
[style*="border-width: 3px"] {
  border-width: 0 !important;
  border-style: none !important;
}

/* But preserve image rounded corners — only strip image borders if 0px specified */
img[style*="border-style:none"] { border: 0 !important; }

/* ============================================================
   v1.2.0 — Alternating section colors on home page
   Targets top-level home page sections: .eb-row-root-container
   and .wp-block-group.alignfull. Uses CSS counter-style nth on
   each, with a hash offset so the rhythm reads as alternating
   across both block types.
   ============================================================ */

/* Remove the page-canvas radial tints so plain alternation reads cleanly */
body.home .site-content,
body.home .ast-container {
  background: #ffffff !important;
}

/* Make sections full-bleed bands */
.entry-content > .eb-row-root-container,
.entry-content > .wp-block-group.alignfull,
.ast-page-builder-template .entry-content > .eb-row-root-container,
.ast-page-builder-template .entry-content > .wp-block-group.alignfull {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: clamp(20px, 5vw, 64px) !important;
  padding-right: clamp(20px, 5vw, 64px) !important;
  padding-top: clamp(40px, 6vw, 72px) !important;
  padding-bottom: clamp(40px, 6vw, 72px) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Color palette — soft, school-aligned alternation
   1: warm cream
   2: white
   3: navy tint
   4: gold tint
*/
:root {
  --band-1: #FAF6EE;  /* warm cream */
  --band-2: #FFFFFF;  /* white */
  --band-3: #F1F4FA;  /* cool navy tint */
  --band-4: #FBF3E2;  /* soft gold tint */
}

/* eb-row alternation by document position */
.entry-content > .eb-row-root-container:nth-of-type(4n+1) {
  background: var(--band-2) !important;
}
.entry-content > .eb-row-root-container:nth-of-type(4n+2) {
  background: var(--band-1) !important;
}
.entry-content > .eb-row-root-container:nth-of-type(4n+3) {
  background: var(--band-3) !important;
}
.entry-content > .eb-row-root-container:nth-of-type(4n+4) {
  background: var(--band-4) !important;
}

/* wp-block-group alternation — offset so they don't collide with neighbors */
.entry-content > .wp-block-group.alignfull:nth-of-type(odd) {
  background: var(--band-1) !important;
}
.entry-content > .wp-block-group.alignfull:nth-of-type(even) {
  background: var(--band-3) !important;
}

/* Override the inline ast-global-color-4 background from #reviews so
   our alternation wins (keep the section readable). */
#reviews.has-background.has-ast-global-color-4-background-color {
  background-color: var(--band-3) !important;
}

/* Headings stay navy on light bands; readable on all four tints */
.entry-content > .eb-row-root-container h1,
.entry-content > .eb-row-root-container h2,
.entry-content > .eb-row-root-container h3,
.entry-content > .eb-row-root-container .eb-ah-title,
.entry-content > .wp-block-group.alignfull h1,
.entry-content > .wp-block-group.alignfull h2,
.entry-content > .wp-block-group.alignfull h3 {
  color: #0F1E3D !important;
}

/* Inner content widths centered within the full-bleed band */
.entry-content > .eb-row-root-container > .eb-parent-wrapper,
.entry-content > .eb-row-root-container > .eb-row-wrapper,
.entry-content > .wp-block-group.alignfull > .wp-block-group__inner-container,
.entry-content > .wp-block-group.alignfull {
  /* keep existing inner containers, just constrain content readability */
}
.entry-content > .eb-row-root-container .eb-parent-wrapper,
.entry-content > .wp-block-group.alignfull > * {
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
}

/* ============================================================
   v1.2.1 — Redesign trailing CTAs
   Targets the four end-of-page links:
     - Admission Process
     - Contact Us
     - Articles about us (h3 label)
     - Medium / Linkedin pills
   ============================================================ */

/* The two main h4 CTAs become pill buttons */
h4.wp-block-heading:has(> a[href*="admission-procedure"]),
h4.wp-block-heading:has(> a[href*="contact-us"]) {
  margin: 14px 0 !important;
  padding: 0 !important;
  background: none !important;
  font-size: inherit !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}

h4.wp-block-heading > a[href*="admission-procedure"],
h4.wp-block-heading > a[href*="contact-us"] {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  text-decoration: none !important;
  font-family: "Plus Jakarta Sans", "Inter", system-ui, sans-serif !important;
  font-weight: 600 !important;
  font-size: 16px !important;
  letter-spacing: 0.01em !important;
  padding: 14px 28px !important;
  border-radius: 999px !important;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease, color .25s ease !important;
  border: 0 !important;
  box-shadow: 0 8px 22px -10px rgba(15, 30, 61, 0.35) !important;
}

/* Primary CTA — Admission */
h4.wp-block-heading > a[href*="admission-procedure"] {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 100%) !important;
  color: #ffffff !important;
}
h4.wp-block-heading > a[href*="admission-procedure"] strong {
  font-weight: 700 !important;
  color: #F0C674 !important;
}
h4.wp-block-heading > a[href*="admission-procedure"]::after {
  content: "→";
  font-size: 18px;
  transition: transform .25s ease;
}
h4.wp-block-heading > a[href*="admission-procedure"]:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 30px -10px rgba(15, 30, 61, 0.45) !important;
}
h4.wp-block-heading > a[href*="admission-procedure"]:hover::after {
  transform: translateX(4px);
}

/* Secondary CTA — Contact */
h4.wp-block-heading > a[href*="contact-us"] {
  background: #FFFFFF !important;
  color: #0F1E3D !important;
  border: 1.5px solid #0F1E3D !important;
  box-shadow: 0 4px 14px -8px rgba(15, 30, 61, 0.25) !important;
}
h4.wp-block-heading > a[href*="contact-us"]::after {
  content: "→";
  font-size: 18px;
  transition: transform .25s ease;
}
h4.wp-block-heading > a[href*="contact-us"]:hover {
  background: #0F1E3D !important;
  color: #ffffff !important;
  transform: translateY(-2px);
}
h4.wp-block-heading > a[href*="contact-us"]:hover::after {
  transform: translateX(4px);
}

/* Group the two CTA h4s onto one row visually */
h4.wp-block-heading:has(> a[href*="admission-procedure"]) {
  display: inline-block !important;
  margin-right: 12px !important;
}
h4.wp-block-heading:has(> a[href*="contact-us"]) {
  display: inline-block !important;
}

/* Section heading "Articles about us in popular Sites" */
h3.wp-block-heading:has(+ h4 > a[href*="medium.com"]),
h3.wp-block-heading:has(+ p + h4 > a[href*="medium.com"]) {
  margin-top: 56px !important;
  margin-bottom: 12px !important;
  font-family: "Plus Jakarta Sans", "Inter", system-ui, sans-serif !important;
  font-size: clamp(20px, 2.2vw, 26px) !important;
  font-weight: 700 !important;
  color: #0F1E3D !important;
  letter-spacing: -0.01em !important;
  position: relative;
  padding-bottom: 10px !important;
}
h3.wp-block-heading:has(+ h4 > a[href*="medium.com"])::after,
h3.wp-block-heading:has(+ p + h4 > a[href*="medium.com"])::after {
  content: "";
  position: absolute;
  left: 0; bottom: 0;
  width: 48px; height: 3px;
  background: linear-gradient(90deg, #D4A24C, #B8862E);
  border-radius: 99px;
}

/* Medium / Linkedin chips */
h4.wp-block-heading:has(> a[href*="medium.com"]),
h4.wp-block-heading:has(> a[href*="linkedin.com"]) {
  margin: 8px 0 !important;
  font-size: inherit !important;
  font-weight: 500 !important;
  display: inline-flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  align-items: center !important;
}

/* Hide the comma separator between Medium and Linkedin (text node) */
h4.wp-block-heading > a[href*="medium.com"],
h4.wp-block-heading > a[href*="linkedin.com"] {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  text-decoration: none !important;
  font-family: "Plus Jakarta Sans", "Inter", system-ui, sans-serif !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  padding: 10px 18px !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  border: 1px solid rgba(15, 30, 61, 0.12) !important;
  color: #0F1E3D !important;
  box-shadow: 0 4px 12px -8px rgba(15, 30, 61, 0.2) !important;
  transition: all .2s ease !important;
}

h4.wp-block-heading > a[href*="medium.com"]::before {
  content: "M";
  font-family: serif;
  font-weight: 900;
  font-size: 16px;
  width: 22px; height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #000;
  color: #fff;
  border-radius: 50%;
}
h4.wp-block-heading > a[href*="linkedin.com"]::before {
  content: "in";
  font-family: "Plus Jakarta Sans", system-ui, sans-serif;
  font-weight: 800;
  font-size: 11px;
  width: 22px; height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #0A66C2;
  color: #fff;
  border-radius: 4px;
  letter-spacing: 0;
  padding-top: 1px;
}

h4.wp-block-heading > a[href*="medium.com"]:hover,
h4.wp-block-heading > a[href*="linkedin.com"]:hover {
  transform: translateY(-2px);
  border-color: rgba(212, 162, 76, 0.5) !important;
  box-shadow: 0 8px 18px -8px rgba(15, 30, 61, 0.3) !important;
}

/* ============================================================
   v1.3.1 — Contact page (clean rebuild)
   Layout: hero card (H1+lead on left, image on right)
           + details card on bottom-left, map on bottom-right
   ============================================================ */

/* ---------- Reset Astra container, soft page background ---------- */
body.page-id-1223 .site-content {
  background:
    radial-gradient(900px 500px at 10% -10%, rgba(212, 162, 76, 0.08), transparent 60%),
    radial-gradient(800px 500px at 100% 10%, rgba(15, 30, 61, 0.06), transparent 60%),
    linear-gradient(180deg, #FAF7F2 0%, #ffffff 100%) !important;
}
body.page-id-1223 .ast-container {
  max-width: 1240px !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

/* ---------- Flatten Essential Blocks nesting ---------- */
body.page-id-1223 .wp-block-essential-blocks-row,
body.page-id-1223 .eb-parent-wrapper,
body.page-id-1223 .eb-row-root-container,
body.page-id-1223 .eb-row-wrapper,
body.page-id-1223 .eb-row-inner,
body.page-id-1223 .wp-block-essential-blocks-column,
body.page-id-1223 .eb-column-wrapper,
body.page-id-1223 .eb-column-inner,
body.page-id-1223 .eb-advance-heading-wrapper {
  display: contents !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Hide empties and the legacy empty 2nd column / unused google-map block */
body.page-id-1223 .entry-content p:empty,
body.page-id-1223 .eb-column-inner > p:empty,
body.page-id-1223 .root-eb-google-map-tlu3gco,
body.page-id-1223 .wp-block-essential-blocks-google-map {
  display: none !important;
}

/* ---------- Grid layout ---------- */
body.page-id-1223 .entry-content {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  grid-template-areas:
    "hero  hero"
    "title image"
    "lead  image"
    "card  map"
    "home  home" !important;
  grid-template-rows: 0 auto auto auto auto !important;
  column-gap: 28px !important;
  row-gap: 0 !important;
  max-width: 1200px !important;
  margin: 48px auto !important;
  padding: 0 !important;
  position: relative !important;
  align-items: start !important;
}

/* ---------- Hero card background (spans title+lead+image rows) ---------- */
body.page-id-1223 .entry-content::before {
  content: "" !important;
  grid-area: hero !important;
  grid-row: 2 / 4 !important;
  grid-column: 1 / -1 !important;
  background: #ffffff !important;
  border-radius: 22px !important;
  border-top: 4px solid #D4A24C !important;
  box-shadow:
    0 1px 0 rgba(15, 30, 61, 0.04),
    0 24px 48px -28px rgba(15, 30, 61, 0.22),
    0 8px 16px -8px rgba(15, 30, 61, 0.08) !important;
  z-index: 0 !important;
}

/* ---------- Title (grid area: title) ---------- */
body.page-id-1223 h1.wp-block-heading {
  grid-area: title !important;
  margin: 0 !important;
  padding: 40px 0 8px 40px !important;
  font-family: "Plus Jakarta Sans", "Inter", system-ui, sans-serif !important;
  font-size: clamp(28px, 3.6vw, 44px) !important;
  font-weight: 800 !important;
  color: #0F1E3D !important;
  letter-spacing: -0.02em !important;
  line-height: 1.15 !important;
  position: relative !important;
  z-index: 2 !important;
  align-self: end !important;
  text-align: left !important;
}
body.page-id-1223 h1.wp-block-heading::after {
  content: "" !important;
  display: block !important;
  width: 56px !important;
  height: 3px !important;
  background: linear-gradient(90deg, #D4A24C, #B8862E) !important;
  border-radius: 99px !important;
  margin-top: 14px !important;
}

/* ---------- Lead paragraph (grid area: lead) ---------- */
body.page-id-1223 .entry-content p:not(:empty) {
  grid-area: lead !important;
  margin: 0 !important;
  padding: 12px 24px 40px 40px !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
  color: #475569 !important;
  z-index: 2 !important;
  position: relative !important;
  align-self: start !important;
  text-align: left !important;
  max-width: 100% !important;
}

/* ---------- Image (grid area: image) ---------- */
body.page-id-1223 .wp-block-image {
  grid-area: image !important;
  margin: 24px 24px 24px 0 !important;
  padding: 0 !important;
  background: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  align-self: stretch !important;
  justify-self: stretch !important;
  z-index: 2 !important;
  position: relative !important;
  width: auto !important;
  max-width: 100% !important;
}
body.page-id-1223 .wp-block-image::before,
body.page-id-1223 .wp-block-image::after {
  content: none !important;
  display: none !important;
}
body.page-id-1223 .wp-block-image img {
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  min-height: 320px !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  border: 0 !important;
  display: block !important;
}

/* ---------- Contact details card (grid area: card) ---------- */
body.page-id-1223 .root-eb-advance-heading-hb1nd9t {
  grid-area: card !important;
  display: block !important;
  background: #ffffff !important;
  border-radius: 20px !important;
  padding: 36px 32px !important;
  margin: 32px 0 0 !important;
  box-shadow:
    0 1px 0 rgba(15, 30, 61, 0.04),
    0 18px 36px -22px rgba(15, 30, 61, 0.22),
    0 6px 14px -8px rgba(15, 30, 61, 0.08) !important;
  border: 1px solid rgba(15, 30, 61, 0.06) !important;
  border-top: 4px solid #D4A24C !important;
  overflow: hidden !important;
  position: relative !important;
  z-index: 2 !important;
  text-align: center !important;
  align-self: start !important;
  justify-self: stretch !important;
  min-height: 400px !important;
}

body.page-id-1223 .eb-ah-title,
body.page-id-1223 .eb-ah-title .first-title {
  text-align: center !important;
  display: block !important;
  line-height: 2 !important;
  margin: 0 !important;
  word-break: break-word !important;
}
body.page-id-1223 .eb-ah-title .first-title br {
  display: inline !important;
}
body.page-id-1223 .eb-ah-title .first-title strong {
  display: block !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #0F1E3D !important;
  margin: 0 auto 16px !important;
  padding: 0 0 16px !important;
  border-bottom: 1px dashed rgba(15, 30, 61, 0.12) !important;
  max-width: 460px !important;
}
body.page-id-1223 .eb-ah-title .first-title strong::before {
  content: "\1F4CD" !important;
  display: block !important;
  font-size: 20px !important;
  margin-bottom: 6px !important;
}

body.page-id-1223 .eb-ah-title .first-title a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  margin: 6px 4px !important;
  padding: 8px 14px !important;
  border-radius: 999px !important;
  background: rgba(15, 30, 61, 0.04) !important;
  color: #0F1E3D !important;
  text-decoration: none !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  word-break: break-all !important;
  transition: all .2s ease !important;
}
body.page-id-1223 .eb-ah-title .first-title a:hover {
  background: #0F1E3D !important;
  color: #fff !important;
  transform: translateY(-1px) !important;
}

/* ---------- Google Map (grid area: map) ---------- */
body.page-id-1223 .cws-map-embed {
  grid-area: map !important;
  margin: 32px 0 0 !important;
  background: #ffffff !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow:
    0 1px 0 rgba(15, 30, 61, 0.04),
    0 18px 36px -22px rgba(15, 30, 61, 0.22),
    0 6px 14px -8px rgba(15, 30, 61, 0.08) !important;
  border: 1px solid rgba(15, 30, 61, 0.06) !important;
  border-top: 4px solid #D4A24C !important;
  position: relative !important;
  z-index: 2 !important;
  align-self: stretch !important;
  min-height: 400px !important;
}
body.page-id-1223 .cws-map-embed iframe {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 400px !important;
  border: 0 !important;
}

/* ---------- Home Page back button (grid area: home) ---------- */
body.page-id-1223 h4.wp-block-heading {
  grid-area: home !important;
  justify-self: center !important;
  margin: 32px auto 0 !important;
  font-size: inherit !important;
  font-weight: normal !important;
  z-index: 2 !important;
  position: relative !important;
}
body.page-id-1223 h4.wp-block-heading > a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  text-decoration: none !important;
  font-family: "Plus Jakarta Sans", "Inter", system-ui, sans-serif !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  color: #0F1E3D !important;
  padding: 12px 22px !important;
  border-radius: 999px !important;
  border: 1.5px solid rgba(15, 30, 61, 0.18) !important;
  background: #ffffff !important;
  transition: all .25s ease !important;
}
body.page-id-1223 h4.wp-block-heading > a::before {
  content: "\2190" !important;
  font-size: 16px;
}
body.page-id-1223 h4.wp-block-heading > a:hover {
  background: #0F1E3D !important;
  color: #fff !important;
  border-color: #0F1E3D !important;
  transform: translateY(-2px) !important;
}

/* ---------- Mobile ---------- */
@media (max-width: 820px) {
  body.page-id-1223 .entry-content {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "hero"
      "title"
      "image"
      "lead"
      "card"
      "map"
      "home" !important;
    grid-template-rows: 0 auto auto auto auto auto auto !important;
    column-gap: 0 !important;
    padding: 0 16px !important;
  }
  body.page-id-1223 .entry-content::before {
    grid-row: 2 / 5 !important;
    grid-column: 1 / -1 !important;
  }
  body.page-id-1223 h1.wp-block-heading {
    padding: 24px 16px 4px !important;
    text-align: center !important;
  }
  body.page-id-1223 h1.wp-block-heading::after {
    margin-left: auto !important;
    margin-right: auto !important;
  }
  body.page-id-1223 .entry-content p:not(:empty) {
    padding: 4px 16px 20px !important;
    text-align: center !important;
  }
  body.page-id-1223 .wp-block-image {
    margin: 8px 16px !important;
  }
  body.page-id-1223 .wp-block-image img {
    min-height: 220px !important;
  }
  body.page-id-1223 .root-eb-advance-heading-hb1nd9t,
  body.page-id-1223 .cws-map-embed {
    margin: 16px 0 0 !important;
    min-height: 320px !important;
  }
}

/* ============================================================
   v1.3.3 — Photo Gallery: full-width grid layout
   ============================================================ */

body.page-id-1201 .ast-container,
body.page-id-1201 .site-content > .ast-container,
body.page-id-1201 .site-content .ast-container {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.page-id-1201 #primary,
body.page-id-1201 .site-content,
body.page-id-1201 #content {
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.page-id-1201 .entry-header {
  max-width: 1320px !important;
  margin: 32px auto 16px !important;
  padding: 0 32px !important;
}

body.page-id-1201 .entry-content {
  max-width: 100% !important;
  padding: 0 32px 64px !important;
  margin: 0 auto !important;
}

/* H1 / page title */
body.page-id-1201 .entry-content h1,
body.page-id-1201 .entry-content h2.wp-block-heading:first-of-type,
body.page-id-1201 .entry-header h1 {
  max-width: 1320px !important;
  margin: 0 auto 24px !important;
  padding: 0 32px !important;
}

/* WordPress core columns/gallery — kill the narrow constrained layout */
body.page-id-1201 .wp-block-columns,
body.page-id-1201 .wp-block-column,
body.page-id-1201 .wp-block-gallery,
body.page-id-1201 .wp-block-group {
  max-width: 100% !important;
  width: 100% !important;
}

/* Turn entry-content into a responsive image grid for any direct figures */
body.page-id-1201 .entry-content > .wp-block-columns {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
  gap: 16px !important;
  width: 100% !important;
  margin: 0 0 16px !important;
}

body.page-id-1201 .wp-block-columns .wp-block-column {
  display: contents !important;
}

/* Images in gallery */
body.page-id-1201 .entry-content .wp-block-image {
  margin: 0 !important;
  width: 100% !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow:
    0 2px 6px rgba(15, 30, 61, 0.06),
    0 12px 24px -12px rgba(15, 30, 61, 0.18) !important;
  transition: transform .3s ease, box-shadow .3s ease !important;
}
body.page-id-1201 .entry-content .wp-block-image:hover {
  transform: translateY(-3px) !important;
  box-shadow:
    0 4px 10px rgba(15, 30, 61, 0.08),
    0 18px 32px -12px rgba(15, 30, 61, 0.25) !important;
}
body.page-id-1201 .entry-content .wp-block-image img {
  width: 100% !important;
  max-width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  border-radius: 12px !important;
}

/* Wider on bigger screens */
@media (min-width: 1400px) {
  body.page-id-1201 .entry-content {
    padding: 0 48px 64px !important;
  }
  body.page-id-1201 .entry-content > .wp-block-columns {
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)) !important;
    gap: 18px !important;
  }
  body.page-id-1201 .entry-content .wp-block-image img {
    height: 240px !important;
  }
}

@media (max-width: 720px) {
  body.page-id-1201 .entry-content {
    padding: 0 16px 48px !important;
  }
  body.page-id-1201 .entry-content > .wp-block-columns {
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)) !important;
    gap: 10px !important;
  }
  body.page-id-1201 .entry-content .wp-block-image img {
    height: 160px !important;
  }
}

/* ============================================================
   v1.3.5 — Photo Gallery: full-bleed container, more columns,
            keeps masonry image-height variation
   ============================================================ */

/* Force entire parent chain to full width on the gallery page */
body.page-id-1201 .wp-block-essential-blocks-image-gallery,
body.page-id-1201 .eb-parent-wrapper,
body.page-id-1201 [class*="eb-parent-eb-image-gallery"],
body.page-id-1201 .eb-gallery-img-wrapper,
body.page-id-1201 [class*="eb-image-gallery-"] {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

/* Add small horizontal margin around the actual gallery */
body.page-id-1201 .wp-block-essential-blocks-image-gallery {
  padding-left: 16px !important;
  padding-right: 16px !important;
}

/* Override the per-block column-count: 3 — use 4 on standard desktop
   so images fill the wider container without becoming oversized.
   Keep masonry (column layout), don't impose uniform heights. */
body.page-id-1201 .eb-gallery-img-wrapper.masonry:not(.eb-filterable-img-gallery),
body.page-id-1201 [class*="eb-image-gallery-"].masonry:not(.eb-filterable-img-gallery) {
  column-count: 4 !important;
  -moz-column-count: 4 !important;
  -webkit-column-count: 4 !important;
  column-gap: 12px !important;
}

/* Each item: keep masonry float/column behaviour, just polish */
body.page-id-1201 .eb-gallery-img-wrapper .eb-gallery-img-content {
  break-inside: avoid !important;
  -webkit-column-break-inside: avoid !important;
  page-break-inside: avoid !important;
  margin-bottom: 12px !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  box-shadow:
    0 1px 3px rgba(15, 30, 61, 0.06),
    0 8px 18px -10px rgba(15, 30, 61, 0.18) !important;
  transition: transform .25s ease, box-shadow .25s ease !important;
}
body.page-id-1201 .eb-gallery-img-wrapper .eb-gallery-img-content:hover {
  transform: translateY(-2px) !important;
  box-shadow:
    0 3px 8px rgba(15, 30, 61, 0.08),
    0 14px 26px -10px rgba(15, 30, 61, 0.24) !important;
}

/* Images: natural aspect ratio (preserve masonry feel) */
body.page-id-1201 .eb-gallery-img-wrapper .eb-gallery-img-content img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  border-radius: 10px !important;
  transition: transform .35s ease !important;
}
body.page-id-1201 .eb-gallery-img-wrapper .eb-gallery-img-content:hover img {
  transform: scale(1.03) !important;
}

/* Extra-wide screens: 5 columns so the page is fully utilised */
@media (min-width: 1600px) {
  body.page-id-1201 .eb-gallery-img-wrapper.masonry:not(.eb-filterable-img-gallery),
  body.page-id-1201 [class*="eb-image-gallery-"].masonry:not(.eb-filterable-img-gallery) {
    column-count: 5 !important;
    -moz-column-count: 5 !important;
    -webkit-column-count: 5 !important;
  }
}

/* Tablet */
@media (max-width: 900px) {
  body.page-id-1201 .eb-gallery-img-wrapper.masonry:not(.eb-filterable-img-gallery),
  body.page-id-1201 [class*="eb-image-gallery-"].masonry:not(.eb-filterable-img-gallery) {
    column-count: 3 !important;
    -moz-column-count: 3 !important;
    -webkit-column-count: 3 !important;
  }
}

/* Mobile */
@media (max-width: 720px) {
  body.page-id-1201 .eb-gallery-img-wrapper.masonry:not(.eb-filterable-img-gallery),
  body.page-id-1201 [class*="eb-image-gallery-"].masonry:not(.eb-filterable-img-gallery) {
    column-count: 2 !important;
    -moz-column-count: 2 !important;
    -webkit-column-count: 2 !important;
    column-gap: 8px !important;
  }
  body.page-id-1201 .eb-gallery-img-wrapper .eb-gallery-img-content {
    margin-bottom: 8px !important;
  }
  body.page-id-1201 .wp-block-essential-blocks-image-gallery {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
}

/* ============================================================
   v1.3.7 — Photo Gallery: break Astra's 750px narrow clamp
   ============================================================ */

/* Astra constrains entry-content children to --ast-content-width-size: 750px
   via is-layout-constrained. Override the variable + direct max-widths. */
body.page-id-1201 {
  --wp--custom--ast-content-width-size: 100% !important;
  --wp--custom--ast-wide-width-size: 100% !important;
  --wp--style--global--content-size: 100% !important;
  --wp--style--global--wide-size: 100% !important;
}

/* Force every container in the chain to full width */
body.page-id-1201 #content,
body.page-id-1201 #content > .ast-container,
body.page-id-1201 #primary,
body.page-id-1201 #main,
body.page-id-1201 article.ast-article-single,
body.page-id-1201 .entry-content,
body.page-id-1201 .entry-content.is-layout-constrained,
body.page-id-1201 .entry-content > *,
body.page-id-1201 .entry-content .wp-block-essential-blocks-image-gallery,
body.page-id-1201 .eb-parent-wrapper,
body.page-id-1201 [class*="eb-parent-eb-image-gallery"],
body.page-id-1201 .eb-gallery-img-wrapper {
  max-width: 100% !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Reset Astra's ast-separate-container card padding on the article */
body.page-id-1201 article.ast-article-single {
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}

/* Page heading: keep it readable, don't stretch */
body.page-id-1201 .entry-header,
body.page-id-1201 .entry-content > h1,
body.page-id-1201 .entry-content > h2,
body.page-id-1201 .entry-content > p:not(:empty) {
  max-width: 1480px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 32px !important;
  padding-right: 32px !important;
  width: auto !important;
}

/* Gallery: small page margin, full bleed */
body.page-id-1201 .wp-block-essential-blocks-image-gallery {
  padding-left: 20px !important;
  padding-right: 20px !important;
  margin-top: 24px !important;
}

/* ============================================================
   v1.4.1 — Photo Gallery: full-bleed via 100vw negative margin
   ============================================================ */

/* Break the gallery container out of any parent's max-width.
   This is the canonical full-bleed trick. */
body.page-id-1201 .entry-content .wp-block-essential-blocks-image-gallery {
  position: relative !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
  box-sizing: border-box !important;
}

/* And ensure the inner wrappers actually use the freed width */
body.page-id-1201 .wp-block-essential-blocks-image-gallery .eb-parent-wrapper,
body.page-id-1201 .wp-block-essential-blocks-image-gallery [class*="eb-parent-eb-image-gallery"],
body.page-id-1201 .wp-block-essential-blocks-image-gallery .eb-gallery-img-wrapper {
  width: 100% !important;
  max-width: 100% !important;
}

/* ============================================================
   v1.5.4 — Force home-page menubar to match inner-page menubar
   ============================================================ */

body.home .ast-below-header-wrap,
body.page-id-1171 .ast-below-header-wrap,
body.home .site-below-header-wrap,
body.page-id-1171 .site-below-header-wrap {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 100%) !important;
  background-color: #0F1E3D !important;
  background-image: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 100%) !important;
  width: 100% !important;
  max-width: none !important;
  border-top: none !important;
  border-bottom: 3px solid #D4A24C !important;
  box-shadow: 0 4px 16px rgba(15, 30, 61, 0.18) !important;
  position: relative !important;
  z-index: 999 !important;
}

body.home .ast-theme-transparent-header .ast-below-header-wrap,
body.page-id-1171 .ast-theme-transparent-header .ast-below-header-wrap {
  background-color: #0F1E3D !important;
}

/* ============================================================
   v1.5.5 — Home slider: strip dark overlay + attractive animations
   ============================================================ */

/* The Essential-Blocks row + column wrapping the home slider had
   a purple-blue overlay (rgba(24,32,186,0.71)) and a near-black
   column bg (rgba(19,1,1,1)) baked into the block's per-instance
   CSS. Neutralise both so the slider sits on the clean page wash. */
body.page-id-1171 .eb-parent-eb-row-1u5jrmm,
body.page-id-1171 .eb-parent-eb-row-1u5jrmm .eb-row-root-container,
body.page-id-1171 .root-eb-row-1u5jrmm {
  background-color: transparent !important;
  background-image: none !important;
}
body.page-id-1171 .eb-parent-eb-row-1u5jrmm .eb-row-root-container:before {
  display: none !important;
  background: none !important;
  opacity: 0 !important;
}
body.page-id-1171 .eb-parent-eb-column-tjp7qmh,
body.page-id-1171 .root-eb-column-tjp7qmh {
  background-color: transparent !important;
  background-image: none !important;
}

/* Drop the row's min-height so the slider doesn't sit inside a
   dark void — the slider image dictates the height. */
body.page-id-1171 .eb-parent-eb-row-1u5jrmm .eb-row-inner,
body.page-id-1171 .eb-parent-eb-row-1u5jrmm .eb-row-inner > .wp-block-essential-blocks-column {
  min-height: 0 !important;
}

/* ---------- Slider polish ---------- */
body.page-id-1171 [class*="eb-parent-eb-slider-"],
body.page-id-1171 .eb-slider-wrapper {
  border-radius: 22px !important;
  overflow: hidden !important;
  box-shadow:
    0 6px 18px rgba(15, 30, 61, 0.10),
    0 28px 60px -24px rgba(15, 30, 61, 0.28) !important;
}

/* Ken Burns: very slow zoom on each active slide for cinematic feel.
   Targets the actual image inside the slide. */
body.page-id-1171 [class*="eb-parent-eb-slider-"] .swiper-slide-active img,
body.page-id-1171 [class*="eb-parent-eb-slider-"] .slick-active img,
body.page-id-1171 .eb-slider-wrapper .swiper-slide-active img {
  animation: cws-kenburns 9s ease-out forwards !important;
  transform-origin: center center !important;
}
@keyframes cws-kenburns {
  0%   { transform: scale(1.0);  }
  100% { transform: scale(1.07); }
}

/* Soft gradient fade at bottom for legibility if captions exist
   (and to anchor the image visually) — much lighter than v1.5.x */
body.page-id-1171 [class*="eb-parent-eb-slider-"]::after {
  content: "" !important;
  position: absolute !important;
  inset: auto 0 0 0 !important;
  height: 35% !important;
  background: linear-gradient(180deg,
    rgba(15, 30, 61, 0) 0%,
    rgba(15, 30, 61, 0.18) 100%) !important;
  pointer-events: none !important;
  z-index: 1 !important;
  border-bottom-left-radius: 22px !important;
  border-bottom-right-radius: 22px !important;
}

/* Dots: gold active + subtle scale */
body.page-id-1171 [class*="eb-parent-eb-slider-"] .swiper-pagination-bullet,
body.page-id-1171 [class*="eb-parent-eb-slider-"] .slick-dots li button {
  background: rgba(255, 255, 255, 0.55) !important;
  opacity: 1 !important;
  transition: transform .25s ease, background .25s ease, width .25s ease !important;
}
body.page-id-1171 [class*="eb-parent-eb-slider-"] .swiper-pagination-bullet-active,
body.page-id-1171 [class*="eb-parent-eb-slider-"] .slick-dots li.slick-active button {
  background: #D4A24C !important;
  transform: scale(1.25) !important;
}

/* Arrows: glassy circle, fade in on hover of the slider */
body.page-id-1171 [class*="eb-parent-eb-slider-"] .swiper-button-next,
body.page-id-1171 [class*="eb-parent-eb-slider-"] .swiper-button-prev,
body.page-id-1171 [class*="eb-parent-eb-slider-"] .slick-arrow {
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.18) !important;
  backdrop-filter: blur(6px) !important;
  -webkit-backdrop-filter: blur(6px) !important;
  color: #fff !important;
  opacity: 0 !important;
  transition: opacity .35s ease, background .25s ease, transform .25s ease !important;
}
body.page-id-1171 [class*="eb-parent-eb-slider-"]:hover .swiper-button-next,
body.page-id-1171 [class*="eb-parent-eb-slider-"]:hover .swiper-button-prev,
body.page-id-1171 [class*="eb-parent-eb-slider-"]:hover .slick-arrow {
  opacity: 1 !important;
}
body.page-id-1171 [class*="eb-parent-eb-slider-"] .swiper-button-next:hover,
body.page-id-1171 [class*="eb-parent-eb-slider-"] .swiper-button-prev:hover {
  background: rgba(212, 162, 76, 0.85) !important;
  transform: scale(1.08) !important;
}

/* Slider enters with a graceful rise on page load */
body.page-id-1171 [class*="eb-parent-eb-slider-"] {
  animation: cws-slider-rise .9s cubic-bezier(.22, .61, .36, 1) both !important;
  position: relative !important;
}
@keyframes cws-slider-rise {
  0%   { opacity: 0; transform: translateY(24px); }
  100% { opacity: 1; transform: translateY(0); }
}

/* ---------- Menubar: subtle hover lift + active indicator glow ---------- */
body.page-id-1171 .ast-below-header-wrap .main-header-bar-navigation .menu-item > .menu-link,
body.page-id-1171 .ast-below-header-wrap .main-header-bar-navigation a {
  transition: color .25s ease, transform .25s ease !important;
}
body.page-id-1171 .ast-below-header-wrap .menu-item:hover > .menu-link {
  color: #D4A24C !important;
  transform: translateY(-1px) !important;
}
body.page-id-1171 .ast-below-header-wrap .current-menu-item > .menu-link::after,
body.page-id-1171 .ast-below-header-wrap .menu-item.current-menu-item > a::after {
  animation: cws-active-glow 2.4s ease-in-out infinite !important;
}
@keyframes cws-active-glow {
  0%, 100% { box-shadow: 0 0 0 0 rgba(212, 162, 76, 0.55); }
  50%      { box-shadow: 0 0 0 6px rgba(212, 162, 76, 0); }
}

/* ============================================================
   v1.5.6 — Make home slider background transparent
   (kills the dark strip behind the pagination dots)
   ============================================================ */
body.page-id-1171 .eb-slider-wrapper.eb-slider-842b8e1,
body.page-id-1171 .eb-slider-wrapper[class*="eb-slider-"],
body.page-id-1171 .wp-block-essential-blocks-slider .eb-slider-wrapper {
  background-color: transparent !important;
  background-image: none !important;
}

/* Pagination dots sit at the bottom — pull them slightly inside
   the image so they read on the photo, not on empty bg. */
body.page-id-1171 .eb-slider-wrapper .slick-dots {
  bottom: 16px !important;
}

/* ============================================================
   v1.5.8 — Crop slider's bottom gap (the gray strip below image)
   Keeps image dimensions intact; just hides anything past the image.
   ============================================================ */
body.page-id-1171 .eb-slider-wrapper.eb-slider-842b8e1 {
  overflow: hidden !important;
  line-height: 0 !important;
}
body.page-id-1171 .eb-slider-wrapper.eb-slider-842b8e1 .slick-list {
  padding: 0 !important;
  margin: 0 !important;
}
body.page-id-1171 .eb-slider-wrapper.eb-slider-842b8e1 .slick-dots {
  position: absolute !important;
  bottom: 16px !important;
  left: 0 !important;
  right: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 5 !important;
}

/* ============================================================
   v1.5.9 — Flipbox back face: enforce rounded bottom corners
   The navy-back card was showing a square bottom because the
   back face / inner items-container weren't clipping to radius.
   ============================================================ */
body.page-id-1171 .eb-flipbox-container,
body.page-id-1171 .eb-flipbox-skamfqx,
body.page-id-1171 .eb-flipper,
body.page-id-1171 .eb-flipbox-front,
body.page-id-1171 .eb-flipbox-back,
body.page-id-1171 .eb-flipbox-items-container,
body.page-id-1171 .eb-flipbox-front .eb-flipbox-items-container,
body.page-id-1171 .eb-flipbox-back .eb-flipbox-items-container {
  border-radius: 18px !important;
  overflow: hidden !important;
}

/* The .eb-flipper preserves 3D — overflow:hidden would cut the
   flip animation. Keep it without overflow but with radius so the
   visible face shows rounded corners. */
body.page-id-1171 .eb-flipper {
  overflow: visible !important;
}

/* Make sure both faces fill the flipper and clip to its radius */
body.page-id-1171 .eb-flipbox-front,
body.page-id-1171 .eb-flipbox-back {
  height: 100% !important;
  width: 100% !important;
}

/* ============================================================
   v1.6.1 — Above-footer menu: dark text on light gray bg
   Links were invisible because the global rule sets all footer
   anchors to white, but this row has a light background.
   ============================================================ */
.site-above-footer-wrap .footer-navigation a,
.site-above-footer-wrap .footer-navigation .menu-link,
.site-above-footer-wrap .ast-builder-html-element a,
.site-above-footer-wrap a {
  color: #0F1E3D !important;
  font-weight: 600 !important;
}
.site-above-footer-wrap .footer-navigation a:hover,
.site-above-footer-wrap a:hover {
  color: #D4A24C !important;
}

/* ============================================================
   v1.7.0 — Principal's Message page (id 1359) redesign
   Pure CSS — content untouched. Adds hero, pull-quote, signature
   card, drop-cap, generous typography, subtle animations.
   ============================================================ */

/* Page-level wash: soft cream + faint navy/gold radial accents */
body.page-id-1359 .site-content {
  background:
    radial-gradient(900px 600px at 0% 0%, rgba(15, 30, 61, 0.05), transparent 60%),
    radial-gradient(900px 600px at 100% 30%, rgba(212, 162, 76, 0.08), transparent 60%),
    linear-gradient(180deg, #FAF7F2 0%, #ffffff 60%, #F7F5EF 100%) !important;
}

/* Page title hero band: navy gradient with the title centered */
body.page-id-1359 .ast-single-post-banner,
body.page-id-1359 .entry-banner-wrap,
body.page-id-1359 .ast-archive-description,
body.page-id-1359 .page-header,
body.page-id-1359 .ast-normal-title-enabled .entry-header {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 60%, #2A4080 100%) !important;
  padding: 60px 24px 70px !important;
  margin: 0 0 48px !important;
  position: relative !important;
  overflow: hidden !important;
  border-radius: 0 0 28px 28px !important;
  box-shadow: 0 24px 60px -28px rgba(15, 30, 61, 0.45) !important;
}

body.page-id-1359 .entry-header::before {
  content: "FAITH · EXCELLENCE · TRUTH" !important;
  display: block !important;
  text-align: center !important;
  font-family: "Plus Jakarta Sans", "Rubik", system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.32em !important;
  color: #D4A24C !important;
  margin-bottom: 14px !important;
}

body.page-id-1359 .entry-title {
  text-align: center !important;
  color: #ffffff !important;
  font-family: "Plus Jakarta Sans", "Rubik", system-ui, sans-serif !important;
  font-weight: 800 !important;
  font-size: clamp(32px, 4.5vw, 52px) !important;
  letter-spacing: -0.02em !important;
  margin: 0 !important;
  line-height: 1.15 !important;
}

body.page-id-1359 .entry-title::after {
  content: "" !important;
  display: block !important;
  width: 72px !important;
  height: 4px !important;
  margin: 18px auto 0 !important;
  background: linear-gradient(90deg, #D4A24C, #B6862F) !important;
  border-radius: 99px !important;
}

/* Content container: comfortable reading width, white card */
body.page-id-1359 .ast-container,
body.page-id-1359 #primary {
  max-width: 980px !important;
  margin: 0 auto !important;
}

body.page-id-1359 .entry-content {
  background: #ffffff !important;
  border-radius: 22px !important;
  padding: clamp(28px, 5vw, 64px) !important;
  box-shadow:
    0 1px 0 rgba(15, 30, 61, 0.04),
    0 24px 60px -28px rgba(15, 30, 61, 0.18) !important;
  border-top: 4px solid #D4A24C !important;
  position: relative !important;
}

/* Decorative monogram "DM" — top-right corner */
body.page-id-1359 .entry-content::before {
  content: "DM" !important;
  position: absolute !important;
  top: -34px !important;
  right: clamp(20px, 5vw, 48px) !important;
  width: 76px !important;
  height: 76px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #D4A24C 0%, #B6862F 100%) !important;
  color: #0F1E3D !important;
  font-family: "Plus Jakarta Sans", "Rubik", system-ui, sans-serif !important;
  font-weight: 800 !important;
  font-size: 28px !important;
  letter-spacing: 0.04em !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow:
    0 0 0 4px #ffffff,
    0 8px 24px rgba(15, 30, 61, 0.25) !important;
}

/* Typography for paragraphs */
body.page-id-1359 .entry-content p {
  font-family: "Karla", "Inter", system-ui, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.85 !important;
  color: #1F2D4D !important;
  margin: 0 0 20px !important;
}

/* First paragraph — pull-quote treatment with large opening quote */
body.page-id-1359 .entry-content > p:first-of-type {
  position: relative !important;
  font-size: 19px !important;
  line-height: 1.75 !important;
  font-weight: 500 !important;
  color: #0F1E3D !important;
  padding: 18px 0 22px 56px !important;
  margin-bottom: 28px !important;
  border-bottom: 1px solid rgba(15, 30, 61, 0.08) !important;
}

body.page-id-1359 .entry-content > p:first-of-type::before {
  content: "\201C" !important;
  position: absolute !important;
  left: 0 !important;
  top: -8px !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 78px !important;
  line-height: 1 !important;
  color: #D4A24C !important;
  opacity: 0.55 !important;
}

body.page-id-1359 .entry-content > p:first-of-type strong {
  color: #D4A24C !important;
  letter-spacing: 0.04em !important;
  font-weight: 800 !important;
}

/* Drop cap on the SECOND paragraph (first body paragraph) */
body.page-id-1359 .entry-content > p:nth-of-type(2)::first-letter {
  font-family: "Plus Jakarta Sans", Georgia, serif !important;
  font-size: 56px !important;
  line-height: 0.9 !important;
  font-weight: 800 !important;
  color: #0F1E3D !important;
  float: left !important;
  padding: 6px 12px 0 0 !important;
}

/* Signature block: last 2 paragraphs (italic name + "Principal") */
body.page-id-1359 .entry-content > p:nth-last-of-type(2) {
  margin-top: 40px !important;
  padding-top: 28px !important;
  border-top: 2px solid rgba(212, 162, 76, 0.35) !important;
  font-family: "Caveat", "Dancing Script", "Georgia", cursive !important;
  font-size: 32px !important;
  font-style: italic !important;
  color: #0F1E3D !important;
  font-weight: 600 !important;
  margin-bottom: 4px !important;
  line-height: 1.2 !important;
}

body.page-id-1359 .entry-content > p:last-of-type {
  font-family: "Plus Jakarta Sans", system-ui, sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: #D4A24C !important;
  margin-top: 0 !important;
}

body.page-id-1359 .entry-content > p:last-of-type::before {
  content: "" !important;
  display: inline-block !important;
  width: 24px !important;
  height: 2px !important;
  background: #D4A24C !important;
  margin-right: 10px !important;
  vertical-align: middle !important;
  border-radius: 99px !important;
}

/* Strong + em emphasis tuning */
body.page-id-1359 .entry-content strong {
  color: #0F1E3D !important;
}
body.page-id-1359 .entry-content em {
  color: #0F1E3D !important;
}

/* Subtle entrance animation on each paragraph */
body.page-id-1359 .entry-content > p {
  animation: pm-fade-up .7s ease-out both !important;
}
body.page-id-1359 .entry-content > p:nth-of-type(1)  { animation-delay: .05s !important; }
body.page-id-1359 .entry-content > p:nth-of-type(2)  { animation-delay: .12s !important; }
body.page-id-1359 .entry-content > p:nth-of-type(3)  { animation-delay: .18s !important; }
body.page-id-1359 .entry-content > p:nth-of-type(4)  { animation-delay: .24s !important; }
body.page-id-1359 .entry-content > p:nth-of-type(5)  { animation-delay: .30s !important; }
body.page-id-1359 .entry-content > p:nth-of-type(6)  { animation-delay: .36s !important; }
body.page-id-1359 .entry-content > p:nth-of-type(7)  { animation-delay: .42s !important; }
body.page-id-1359 .entry-content > p:nth-of-type(8)  { animation-delay: .48s !important; }
body.page-id-1359 .entry-content > p:nth-of-type(9)  { animation-delay: .54s !important; }
body.page-id-1359 .entry-content > p:nth-of-type(10) { animation-delay: .60s !important; }

@keyframes pm-fade-up {
  0%   { opacity: 0; transform: translateY(12px); }
  100% { opacity: 1; transform: translateY(0); }
}

/* Pull the entry-content card up slightly to overlap the hero band */
body.page-id-1359 .entry-content {
  margin-top: -36px !important;
}

/* Mobile tweaks */
@media (max-width: 720px) {
  body.page-id-1359 .entry-header {
    padding: 44px 18px 56px !important;
    margin-bottom: 32px !important;
  }
  body.page-id-1359 .entry-content {
    padding: 26px 20px !important;
    margin-top: -28px !important;
  }
  body.page-id-1359 .entry-content::before {
    width: 60px !important;
    height: 60px !important;
    font-size: 22px !important;
    top: -28px !important;
  }
  body.page-id-1359 .entry-content > p:first-of-type {
    padding-left: 42px !important;
    font-size: 17px !important;
  }
  body.page-id-1359 .entry-content > p:nth-of-type(2)::first-letter {
    font-size: 44px !important;
  }
}

/* ============================================================
   v1.7.1 — Principal's Message: full-page layout
   ============================================================ */
body.page-id-1359 .ast-container,
body.page-id-1359 #primary,
body.page-id-1359 #content,
body.page-id-1359 .site-content > .ast-container {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Banner spans the full viewport */
body.page-id-1359 .ast-single-post-banner,
body.page-id-1359 .entry-banner-wrap,
body.page-id-1359 .page-header,
body.page-id-1359 .ast-normal-title-enabled .entry-header {
  width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  border-radius: 0 !important;
  padding: 72px 24px 84px !important;
  margin-bottom: 0 !important;
}

/* Content card: edge-to-edge with generous internal padding */
body.page-id-1359 .entry-content {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  margin-top: 0 !important;
  border-radius: 0 !important;
  border-top: none !important;
  padding: clamp(40px, 6vw, 96px) clamp(20px, 8vw, 120px) !important;
  box-shadow: none !important;
}

/* Move the monogram into the corner of the page, not the card */
body.page-id-1359 .entry-content::before {
  top: 28px !important;
  right: clamp(24px, 6vw, 80px) !important;
}

/* Keep reading line-length comfortable inside the wide card */
body.page-id-1359 .entry-content > * {
  max-width: 980px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Astra page wrappers — kill any container max-width on this page */
body.page-id-1359 .ast-separate-container .ast-article-single,
body.page-id-1359 .ast-separate-container #primary {
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* ============================================================
   v1.8.0 — School Managing Committee page (id 1194) redesign
   ============================================================ */

/* Full-page layout — kill container max-widths */
body.page-id-1194 .ast-container,
body.page-id-1194 #primary {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body.page-id-1194 .ast-separate-container .ast-article-single,
body.page-id-1194 .ast-separate-container #primary {
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Page wash */
body.page-id-1194 .site-content {
  background:
    radial-gradient(900px 600px at 0% 0%, rgba(15, 30, 61, 0.05), transparent 60%),
    radial-gradient(900px 600px at 100% 30%, rgba(212, 162, 76, 0.07), transparent 60%),
    linear-gradient(180deg, #FAF7F2 0%, #ffffff 60%, #F7F5EF 100%) !important;
}

/* Hero banner */
body.page-id-1194 .entry-header,
body.page-id-1194 .ast-single-post-banner,
body.page-id-1194 .page-header {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 60%, #2A4080 100%) !important;
  width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: 64px 24px 76px !important;
  margin-bottom: 0 !important;
  border-radius: 0 !important;
  text-align: center !important;
}
body.page-id-1194 .entry-header::before {
  content: "GOVERNANCE" !important;
  display: block !important;
  font-family: "Plus Jakarta Sans", "Rubik", sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.32em !important;
  color: #D4A24C !important;
  margin-bottom: 14px !important;
}
body.page-id-1194 .entry-title {
  color: #ffffff !important;
  font-family: "Plus Jakarta Sans", "Rubik", sans-serif !important;
  font-weight: 800 !important;
  font-size: clamp(32px, 4.5vw, 52px) !important;
  letter-spacing: -0.02em !important;
  text-align: center !important;
  margin: 0 !important;
  line-height: 1.15 !important;
}
body.page-id-1194 .entry-title::after {
  content: "" !important;
  display: block !important;
  width: 72px !important;
  height: 4px !important;
  margin: 18px auto 0 !important;
  background: linear-gradient(90deg, #D4A24C, #B6862F) !important;
  border-radius: 99px !important;
}

/* SMC content section */
body.page-id-1194 .cws-smc {
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: clamp(40px, 6vw, 80px) clamp(20px, 4vw, 48px) !important;
}

/* Intro block */
body.page-id-1194 .cws-smc-intro {
  text-align: center;
  margin-bottom: 40px;
}
body.page-id-1194 .cws-smc-eyebrow {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.24em;
  color: #D4A24C;
  text-transform: uppercase;
  margin-bottom: 14px;
}
body.page-id-1194 .cws-smc-lead {
  font-family: "Plus Jakarta Sans", "Rubik", sans-serif;
  font-size: clamp(18px, 2.2vw, 24px);
  font-weight: 500;
  color: #0F1E3D;
  line-height: 1.45;
  max-width: 760px;
  margin: 0 auto;
}

/* Group photo */
body.page-id-1194 .cws-smc-photo {
  margin: 48px auto 56px;
  max-width: 1080px;
  text-align: center;
}
body.page-id-1194 .cws-smc-photo img {
  width: 100%;
  height: auto;
  border-radius: 22px;
  display: block;
  box-shadow:
    0 1px 0 rgba(15, 30, 61, 0.04),
    0 28px 60px -24px rgba(15, 30, 61, 0.30);
  transition: transform .6s cubic-bezier(.22, .61, .36, 1);
}
body.page-id-1194 .cws-smc-photo:hover img {
  transform: translateY(-4px);
}
body.page-id-1194 .cws-smc-photo figcaption {
  margin-top: 14px;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.12em;
  color: #6B7894;
  text-transform: uppercase;
}

/* Card grid */
body.page-id-1194 .cws-smc-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 24px;
}

/* Member card */
body.page-id-1194 .cws-member {
  position: relative;
  background: #ffffff;
  border-radius: 18px;
  padding: 26px 24px 24px;
  border: 1px solid rgba(15, 30, 61, 0.06);
  box-shadow:
    0 1px 0 rgba(15, 30, 61, 0.03),
    0 16px 30px -22px rgba(15, 30, 61, 0.18);
  transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
  overflow: hidden;
}
body.page-id-1194 .cws-member::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 4px;
  background: linear-gradient(90deg, #D4A24C, #B6862F);
  opacity: 0.9;
}
body.page-id-1194 .cws-member:hover {
  transform: translateY(-4px);
  box-shadow:
    0 1px 0 rgba(15, 30, 61, 0.04),
    0 28px 50px -24px rgba(15, 30, 61, 0.28);
  border-color: rgba(212, 162, 76, 0.35);
}

/* Role-tinted top accent */
body.page-id-1194 .cws-member[data-role="executive"]::before { background: linear-gradient(90deg, #D4A24C, #B6862F); }
body.page-id-1194 .cws-member[data-role="donor"]::before     { background: linear-gradient(90deg, #B91C1C, #7F1212); }
body.page-id-1194 .cws-member[data-role="nominated"]::before { background: linear-gradient(90deg, #1F4D2E, #2F6B3D); }
body.page-id-1194 .cws-member[data-role="member"]::before    { background: linear-gradient(90deg, #0F1E3D, #2A4080); }
body.page-id-1194 .cws-member[data-role="parent"]::before    { background: linear-gradient(90deg, #B45309, #D97706); }
body.page-id-1194 .cws-member[data-role="teacher"]::before   { background: linear-gradient(90deg, #6D28D9, #4C1D95); }

/* Designation badge */
body.page-id-1194 .cws-member header {
  margin-bottom: 14px;
}
body.page-id-1194 .cws-member-badge {
  display: inline-flex;
  align-items: center;
  padding: 5px 12px;
  border-radius: 999px;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  white-space: nowrap;
}
body.page-id-1194 .badge-secretary,
body.page-id-1194 .badge-president,
body.page-id-1194 .badge-vpresident { background: rgba(212, 162, 76, 0.14); color: #8C5A0F; }
body.page-id-1194 .badge-donor      { background: rgba(220, 38, 38, 0.10); color: #B91C1C; }
body.page-id-1194 .badge-nominated  { background: rgba(47, 107, 61, 0.12); color: #1F4D2E; }
body.page-id-1194 .badge-member     { background: rgba(15, 30, 61, 0.08); color: #0F1E3D; }
body.page-id-1194 .badge-parent     { background: rgba(217, 119, 6, 0.12); color: #B45309; }
body.page-id-1194 .badge-teacher    { background: rgba(109, 40, 217, 0.10); color: #6D28D9; }

/* Member text */
body.page-id-1194 .cws-member-name {
  font-family: "Plus Jakarta Sans", "Rubik", sans-serif !important;
  font-size: 19px !important;
  font-weight: 700 !important;
  color: #0F1E3D !important;
  margin: 0 0 4px !important;
  line-height: 1.25 !important;
}
body.page-id-1194 .cws-member-relation {
  font-size: 13px !important;
  color: #6B7894 !important;
  font-style: italic !important;
  margin: 0 0 14px !important;
}
body.page-id-1194 .cws-member-occupation {
  font-size: 14px !important;
  color: #1F2D4D !important;
  font-weight: 600 !important;
  margin: 0 0 8px !important;
  line-height: 1.45 !important;
}
body.page-id-1194 .cws-member-address {
  font-size: 13px !important;
  color: #64748B !important;
  margin: 0 0 16px !important;
  line-height: 1.5 !important;
  position: relative;
  padding-left: 18px;
}
body.page-id-1194 .cws-member-address::before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px;
  width: 12px;
  height: 12px;
  background:
    radial-gradient(circle at 50% 35%, #D4A24C 0 3px, transparent 4px),
    linear-gradient(180deg, transparent 50%, transparent 50%);
  border-radius: 50% 50% 50% 0;
  transform: rotate(-45deg);
  background-color: transparent;
  border: 2px solid #D4A24C;
  border-bottom: none;
  border-right: none;
  box-sizing: border-box;
}
body.page-id-1194 .cws-member-phone {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-family: "Plus Jakarta Sans", sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #0F1E3D !important;
  text-decoration: none !important;
  padding: 8px 14px !important;
  background: #F4F1E8 !important;
  border-radius: 999px !important;
  transition: background .25s ease, color .25s ease, transform .25s ease !important;
}
body.page-id-1194 .cws-member-phone::before {
  content: "\260E";
  font-size: 16px;
}
body.page-id-1194 .cws-member-phone:hover {
  background: #D4A24C !important;
  color: #0F1E3D !important;
  transform: translateY(-1px) !important;
}

/* Staggered entrance */
body.page-id-1194 .cws-member {
  animation: smc-rise .6s ease-out both;
}
body.page-id-1194 .cws-member:nth-of-type(1)  { animation-delay: .02s; }
body.page-id-1194 .cws-member:nth-of-type(2)  { animation-delay: .07s; }
body.page-id-1194 .cws-member:nth-of-type(3)  { animation-delay: .12s; }
body.page-id-1194 .cws-member:nth-of-type(4)  { animation-delay: .17s; }
body.page-id-1194 .cws-member:nth-of-type(5)  { animation-delay: .22s; }
body.page-id-1194 .cws-member:nth-of-type(6)  { animation-delay: .27s; }
body.page-id-1194 .cws-member:nth-of-type(7)  { animation-delay: .32s; }
body.page-id-1194 .cws-member:nth-of-type(8)  { animation-delay: .37s; }
body.page-id-1194 .cws-member:nth-of-type(9)  { animation-delay: .42s; }
body.page-id-1194 .cws-member:nth-of-type(10) { animation-delay: .47s; }
body.page-id-1194 .cws-member:nth-of-type(11) { animation-delay: .52s; }
@keyframes smc-rise {
  0%   { opacity: 0; transform: translateY(14px); }
  100% { opacity: 1; transform: translateY(0); }
}

@media (max-width: 720px) {
  body.page-id-1194 .entry-header { padding: 48px 18px 56px !important; }
  body.page-id-1194 .cws-smc { padding: 28px 18px !important; }
  body.page-id-1194 .cws-smc-photo { margin: 32px auto 40px; }
  body.page-id-1194 .cws-smc-grid { grid-template-columns: 1fr; gap: 16px; }
}

/* ============================================================
   v1.8.1 — SMC: shrink the page hero banner (smaller padding,
   smaller title, tighter eyebrow gap). Keeps the navy gradient.
   ============================================================ */

body.page-id-1194 .entry-header,
body.page-id-1194 .ast-single-post-banner,
body.page-id-1194 .page-header {
  padding: 32px 24px 38px !important;
}

body.page-id-1194 .entry-header::before {
  font-size: 11px !important;
  letter-spacing: 0.28em !important;
  margin-bottom: 8px !important;
}

body.page-id-1194 .entry-title {
  font-size: clamp(22px, 2.8vw, 32px) !important;
  line-height: 1.2 !important;
}

body.page-id-1194 .entry-title::after {
  width: 56px !important;
  height: 3px !important;
  margin: 10px auto 0 !important;
}

@media (max-width: 720px) {
  body.page-id-1194 .entry-header,
  body.page-id-1194 .ast-single-post-banner,
  body.page-id-1194 .page-header {
    padding: 24px 18px 28px !important;
  }
  body.page-id-1194 .entry-title {
    font-size: 22px !important;
  }
}

/* ============================================================
   v1.9.0 — Know Our Staff (page id 1975)
   Hero · featured group photo · department-grouped cards
   ============================================================ */

/* Hero banner */
body.page-id-1975 .entry-header,
body.page-id-1975 .ast-single-post-banner,
body.page-id-1975 .page-header {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 60%, #2A4080 100%) !important;
  width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: 32px 24px 38px !important;
  margin-bottom: 0 !important;
  border-radius: 0 !important;
  text-align: center !important;
}
body.page-id-1975 .entry-header::before {
  content: "OUR PEOPLE" !important;
  display: block !important;
  font-family: "Plus Jakarta Sans", "Rubik", sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.28em !important;
  color: #D4A24C !important;
  margin-bottom: 8px !important;
}
body.page-id-1975 .entry-title {
  color: #ffffff !important;
  font-family: "Plus Jakarta Sans", "Rubik", sans-serif !important;
  font-weight: 800 !important;
  font-size: clamp(22px, 2.8vw, 32px) !important;
  letter-spacing: -0.02em !important;
  text-align: center !important;
  margin: 0 !important;
  line-height: 1.2 !important;
}
body.page-id-1975 .entry-title::after {
  content: "" !important;
  display: block !important;
  width: 56px !important;
  height: 3px !important;
  margin: 10px auto 0 !important;
  background: linear-gradient(90deg, #D4A24C, #B6862F) !important;
  border-radius: 99px !important;
}

/* Content wrapper */
body.page-id-1975 .cws-staff {
  max-width: 1240px;
  margin: 0 auto;
  padding: 48px 24px 64px;
  font-family: "Plus Jakarta Sans", "Rubik", system-ui, sans-serif;
  color: #0F1E3D;
}

/* Intro */
body.page-id-1975 .cws-staff-intro {
  text-align: center;
  margin-bottom: 36px;
}
body.page-id-1975 .cws-staff-eyebrow {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #B6862F;
  margin: 0 0 12px;
}
body.page-id-1975 .cws-staff-lead {
  font-size: clamp(16px, 1.6vw, 19px);
  line-height: 1.65;
  max-width: 780px;
  margin: 0 auto;
  color: #1A2D5C;
}
body.page-id-1975 .cws-staff-lead em {
  color: #B6862F;
  font-style: normal;
  font-weight: 600;
}

/* Featured group photo */
body.page-id-1975 .cws-staff-photo {
  margin: 0 auto 56px;
  max-width: 1080px;
  border-radius: 18px;
  overflow: hidden;
  box-shadow:
    0 2px 0 rgba(15, 30, 61, 0.04),
    0 30px 60px -30px rgba(15, 30, 61, 0.28);
  background: #0F1E3D;
}
body.page-id-1975 .cws-staff-photo img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform .8s ease;
}
body.page-id-1975 .cws-staff-photo:hover img {
  transform: scale(1.02);
}
body.page-id-1975 .cws-staff-photo figcaption {
  text-align: center;
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #ffffff;
  background: linear-gradient(180deg, rgba(15,30,61,0) 0%, rgba(15,30,61,0.85) 100%);
  padding: 28px 16px 14px;
  margin-top: -56px;
  position: relative;
}

/* Section blocks */
body.page-id-1975 .cws-staff-section {
  margin: 56px 0;
}
body.page-id-1975 .cws-staff-section-title {
  font-family: "Plus Jakarta Sans", "Rubik", sans-serif;
  font-weight: 800;
  font-size: clamp(22px, 2.4vw, 30px);
  color: #0F1E3D;
  margin: 0 0 6px;
  letter-spacing: -0.01em;
  text-align: center;
}
body.page-id-1975 .cws-staff-section-title::after {
  content: "";
  display: block;
  width: 48px;
  height: 3px;
  background: linear-gradient(90deg, #D4A24C, #B6862F);
  border-radius: 99px;
  margin: 10px auto 0;
}
body.page-id-1975 .cws-staff-section-sub {
  text-align: center;
  color: #64748B;
  font-size: 14px;
  margin: 14px auto 28px;
  max-width: 620px;
}

/* Grid */
body.page-id-1975 .cws-staff-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 20px;
}

/* Card */
body.page-id-1975 .cws-staff-card {
  background: #ffffff;
  border-radius: 16px;
  padding: 24px 22px 22px;
  border: 1px solid rgba(15, 30, 61, 0.06);
  border-top: 3px solid #D4A24C;
  box-shadow:
    0 1px 0 rgba(15, 30, 61, 0.04),
    0 14px 28px -16px rgba(15, 30, 61, 0.18);
  transition: transform .3s ease, box-shadow .3s ease;
  position: relative;
  opacity: 0;
  transform: translateY(8px);
  animation: cws-staff-rise .5s ease forwards;
}
body.page-id-1975 .cws-staff-card:hover {
  transform: translateY(-4px);
  box-shadow:
    0 2px 0 rgba(15, 30, 61, 0.06),
    0 24px 40px -16px rgba(15, 30, 61, 0.28);
}
@keyframes cws-staff-rise {
  to { opacity: 1; transform: translateY(0); }
}
body.page-id-1975 .cws-staff-card:nth-child(2)  { animation-delay: .05s; }
body.page-id-1975 .cws-staff-card:nth-child(3)  { animation-delay: .10s; }
body.page-id-1975 .cws-staff-card:nth-child(4)  { animation-delay: .15s; }
body.page-id-1975 .cws-staff-card:nth-child(5)  { animation-delay: .20s; }
body.page-id-1975 .cws-staff-card:nth-child(6)  { animation-delay: .25s; }
body.page-id-1975 .cws-staff-card:nth-child(n+7){ animation-delay: .30s; }

/* Avatar disc (initials) */
body.page-id-1975 .cws-staff-avatar {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: linear-gradient(135deg, #0F1E3D, #2A4080);
  color: #D4A24C;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 800;
  font-size: 16px;
  letter-spacing: 0.04em;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 14px;
  box-shadow:
    inset 0 0 0 1px rgba(212, 162, 76, 0.35),
    0 8px 16px -8px rgba(15, 30, 61, 0.4);
}

/* Badge */
body.page-id-1975 .cws-staff-card header {
  margin-bottom: 10px;
}
body.page-id-1975 .cws-staff-badge {
  display: inline-block;
  padding: 4px 12px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
body.page-id-1975 .cws-staff-badge.badge-principal { background: rgba(15, 30, 61, 0.08); color: #0F1E3D; border-top-color: #0F1E3D; }
body.page-id-1975 .cws-staff-badge.badge-science   { background: rgba(47, 107, 61, 0.12);  color: #1F4D2E; }
body.page-id-1975 .cws-staff-badge.badge-math      { background: rgba(217, 119, 6, 0.12);  color: #B45309; }
body.page-id-1975 .cws-staff-badge.badge-english   { background: rgba(220, 38, 38, 0.10);  color: #B91C1C; }
body.page-id-1975 .cws-staff-badge.badge-social    { background: rgba(124, 58, 237, 0.10); color: #6D28D9; }
body.page-id-1975 .cws-staff-badge.badge-hindi     { background: rgba(212, 162, 76, 0.18); color: #8a6418; }
body.page-id-1975 .cws-staff-badge.badge-computer  { background: rgba(8, 145, 178, 0.10);  color: #0E7490; }
body.page-id-1975 .cws-staff-badge.badge-primary   { background: rgba(34, 197, 94, 0.10);  color: #166534; }
body.page-id-1975 .cws-staff-badge.badge-pre       { background: rgba(244, 114, 182, 0.12); color: #9D174D; }
body.page-id-1975 .cws-staff-badge.badge-music     { background: rgba(99, 102, 241, 0.10); color: #4338CA; }
body.page-id-1975 .cws-staff-badge.badge-dance     { background: rgba(236, 72, 153, 0.10); color: #BE185D; }
body.page-id-1975 .cws-staff-badge.badge-sports    { background: rgba(234, 88, 12, 0.10);  color: #C2410C; }
body.page-id-1975 .cws-staff-badge.badge-office    { background: rgba(15, 30, 61, 0.08);   color: #0F1E3D; }
body.page-id-1975 .cws-staff-badge.badge-library   { background: rgba(120, 53, 15, 0.10);  color: #78350F; }
body.page-id-1975 .cws-staff-badge.badge-lab       { background: rgba(8, 145, 178, 0.10);  color: #0E7490; }

/* Card top accent color matches the dept */
body.page-id-1975 .cws-staff-card[data-dept="leadership"] { border-top-color: #0F1E3D; }
body.page-id-1975 .cws-staff-card[data-dept="science"]    { border-top-color: #2F6B3D; }
body.page-id-1975 .cws-staff-card[data-dept="math"]       { border-top-color: #D97706; }
body.page-id-1975 .cws-staff-card[data-dept="english"]    { border-top-color: #DC2626; }
body.page-id-1975 .cws-staff-card[data-dept="social"]     { border-top-color: #7C3AED; }
body.page-id-1975 .cws-staff-card[data-dept="hindi"]      { border-top-color: #B6862F; }
body.page-id-1975 .cws-staff-card[data-dept="computer"]   { border-top-color: #0891B2; }
body.page-id-1975 .cws-staff-card[data-dept="primary"]    { border-top-color: #22C55E; }
body.page-id-1975 .cws-staff-card[data-dept="pre"]        { border-top-color: #F472B6; }
body.page-id-1975 .cws-staff-card[data-dept="music"]      { border-top-color: #6366F1; }
body.page-id-1975 .cws-staff-card[data-dept="dance"]      { border-top-color: #EC4899; }
body.page-id-1975 .cws-staff-card[data-dept="sports"]     { border-top-color: #EA580C; }
body.page-id-1975 .cws-staff-card[data-dept="office"]     { border-top-color: #0F1E3D; }
body.page-id-1975 .cws-staff-card[data-dept="library"]    { border-top-color: #78350F; }
body.page-id-1975 .cws-staff-card[data-dept="lab"]        { border-top-color: #0891B2; }

/* Name & role */
body.page-id-1975 .cws-staff-name {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 700;
  font-size: 17px;
  color: #0F1E3D;
  margin: 0 0 4px;
  letter-spacing: -0.01em;
}
body.page-id-1975 .cws-staff-role {
  font-size: 13px;
  color: #475569;
  margin: 0 0 8px;
  line-height: 1.5;
}
body.page-id-1975 .cws-staff-meta {
  font-size: 13px;
  color: #64748B;
  margin: 8px 0 0;
  padding-top: 10px;
  border-top: 1px dashed rgba(15, 30, 61, 0.10);
  line-height: 1.55;
}

/* CTA */
body.page-id-1975 .cws-staff-cta {
  background: linear-gradient(135deg, #FAF9F5 0%, #FFFFFF 100%);
  border: 1px solid rgba(15, 30, 61, 0.06);
  border-radius: 18px;
  padding: 32px 28px;
  text-align: center;
  margin-top: 48px;
  box-shadow: 0 14px 28px -16px rgba(15, 30, 61, 0.14);
}
body.page-id-1975 .cws-staff-cta p {
  color: #1A2D5C;
  margin: 0 0 16px;
  font-size: 15px;
}
body.page-id-1975 .cws-staff-cta-btn {
  display: inline-block;
  padding: 12px 26px;
  background: linear-gradient(135deg, #0F1E3D, #2A4080);
  color: #ffffff !important;
  text-decoration: none;
  font-weight: 600;
  border-radius: 999px;
  font-size: 14px;
  letter-spacing: 0.04em;
  box-shadow: 0 12px 24px -12px rgba(15, 30, 61, 0.5);
  transition: transform .25s ease, box-shadow .25s ease;
  border: 1px solid rgba(212, 162, 76, 0.35);
}
body.page-id-1975 .cws-staff-cta-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 28px -12px rgba(15, 30, 61, 0.55);
  color: #D4A24C !important;
}

/* Mobile */
@media (max-width: 720px) {
  body.page-id-1975 .entry-header,
  body.page-id-1975 .ast-single-post-banner,
  body.page-id-1975 .page-header {
    padding: 24px 18px 28px !important;
  }
  body.page-id-1975 .entry-title { font-size: 22px !important; }
  body.page-id-1975 .cws-staff { padding: 28px 18px; }
  body.page-id-1975 .cws-staff-photo { margin-bottom: 36px; }
  body.page-id-1975 .cws-staff-grid { grid-template-columns: 1fr; gap: 16px; }
  body.page-id-1975 .cws-staff-section { margin: 36px 0; }
}

/* ============================================================
   v2.0.0 — CBSE Corner (page id 1879)
   Hero · quick stats · grouped info cards
   ============================================================ */

/* Hero banner */
body.page-id-1879 .entry-header,
body.page-id-1879 .ast-single-post-banner,
body.page-id-1879 .page-header {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 60%, #2A4080 100%) !important;
  width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: 32px 24px 38px !important;
  margin-bottom: 0 !important;
  border-radius: 0 !important;
  text-align: center !important;
}
body.page-id-1879 .entry-header::before {
  content: "MANDATORY DISCLOSURE" !important;
  display: block !important;
  font-family: "Plus Jakarta Sans", "Rubik", sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.28em !important;
  color: #D4A24C !important;
  margin-bottom: 8px !important;
}
body.page-id-1879 .entry-title {
  color: #ffffff !important;
  font-family: "Plus Jakarta Sans", "Rubik", sans-serif !important;
  font-weight: 800 !important;
  font-size: clamp(22px, 2.8vw, 32px) !important;
  letter-spacing: -0.02em !important;
  text-align: center !important;
  margin: 0 !important;
  line-height: 1.2 !important;
}
body.page-id-1879 .entry-title::after {
  content: "" !important;
  display: block !important;
  width: 56px !important;
  height: 3px !important;
  margin: 10px auto 0 !important;
  background: linear-gradient(90deg, #D4A24C, #B6862F) !important;
  border-radius: 99px !important;
}

/* Content wrapper */
body.page-id-1879 .cws-cbse {
  max-width: 1240px;
  margin: 0 auto;
  padding: 48px 24px 64px;
  font-family: "Plus Jakarta Sans", "Rubik", system-ui, sans-serif;
  color: #0F1E3D;
}

/* Kill the old table styles bleed-through */
body.page-id-1879 .wp-block-table { display: none !important; }

/* Intro */
body.page-id-1879 .cws-cbse-intro {
  text-align: center;
  margin-bottom: 36px;
}
body.page-id-1879 .cws-cbse-eyebrow {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #B6862F;
  margin: 0 0 12px;
}
body.page-id-1879 .cws-cbse-lead {
  font-size: clamp(16px, 1.55vw, 18px);
  line-height: 1.65;
  max-width: 760px;
  margin: 0 auto;
  color: #1A2D5C;
}
body.page-id-1879 .cws-cbse-lead strong { color: #0F1E3D; }

/* Quick stats */
body.page-id-1879 .cws-cbse-quickstats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 16px;
  margin: 0 auto 48px;
  max-width: 1080px;
}
body.page-id-1879 .cws-cbse-stat {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 22px 18px;
  text-align: center;
  border: 1px solid rgba(212, 162, 76, 0.2);
  box-shadow: 0 14px 28px -16px rgba(15, 30, 61, 0.35);
  transition: transform .3s ease, box-shadow .3s ease;
}
body.page-id-1879 .cws-cbse-stat:hover {
  transform: translateY(-3px);
  box-shadow: 0 22px 36px -16px rgba(15, 30, 61, 0.5);
}
body.page-id-1879 .cws-cbse-stat-num {
  display: block;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: clamp(26px, 3vw, 34px);
  font-weight: 800;
  color: #D4A24C;
  letter-spacing: -0.02em;
  line-height: 1;
  margin-bottom: 6px;
}
body.page-id-1879 .cws-cbse-stat-label {
  display: block;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.78);
}

/* Card grid */
body.page-id-1879 .cws-cbse-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 22px;
}

/* Card */
body.page-id-1879 .cws-cbse-card {
  background: #ffffff;
  border-radius: 16px;
  padding: 26px 24px 22px;
  border: 1px solid rgba(15, 30, 61, 0.06);
  border-top: 3px solid #D4A24C;
  box-shadow:
    0 1px 0 rgba(15, 30, 61, 0.04),
    0 14px 28px -16px rgba(15, 30, 61, 0.16);
  transition: transform .3s ease, box-shadow .3s ease;
  opacity: 0;
  transform: translateY(8px);
  animation: cws-cbse-rise .5s ease forwards;
}
body.page-id-1879 .cws-cbse-card:hover {
  transform: translateY(-3px);
  box-shadow:
    0 2px 0 rgba(15, 30, 61, 0.06),
    0 22px 36px -16px rgba(15, 30, 61, 0.28);
}
body.page-id-1879 .cws-cbse-card--wide {
  grid-column: span 2;
}
@keyframes cws-cbse-rise {
  to { opacity: 1; transform: translateY(0); }
}
body.page-id-1879 .cws-cbse-card:nth-child(1)  { animation-delay: .00s; }
body.page-id-1879 .cws-cbse-card:nth-child(2)  { animation-delay: .05s; }
body.page-id-1879 .cws-cbse-card:nth-child(3)  { animation-delay: .10s; }
body.page-id-1879 .cws-cbse-card:nth-child(4)  { animation-delay: .15s; }
body.page-id-1879 .cws-cbse-card:nth-child(5)  { animation-delay: .20s; }
body.page-id-1879 .cws-cbse-card:nth-child(6)  { animation-delay: .25s; }
body.page-id-1879 .cws-cbse-card:nth-child(n+7){ animation-delay: .30s; }

/* Group accent colors */
body.page-id-1879 .cws-cbse-card[data-group="identity"]    { border-top-color: #0F1E3D; }
body.page-id-1879 .cws-cbse-card[data-group="affiliation"] { border-top-color: #DC2626; }
body.page-id-1879 .cws-cbse-card[data-group="trust"]       { border-top-color: #7C3AED; }
body.page-id-1879 .cws-cbse-card[data-group="campus"]      { border-top-color: #2F6B3D; }
body.page-id-1879 .cws-cbse-card[data-group="facilities"]  { border-top-color: #0891B2; }
body.page-id-1879 .cws-cbse-card[data-group="transport"]   { border-top-color: #D97706; }
body.page-id-1879 .cws-cbse-card[data-group="staff"]       { border-top-color: #B6862F; }
body.page-id-1879 .cws-cbse-card[data-group="salary"]      { border-top-color: #166534; }
body.page-id-1879 .cws-cbse-card[data-group="library"]     { border-top-color: #78350F; }
body.page-id-1879 .cws-cbse-card[data-group="grievance"]   { border-top-color: #B91C1C; }
body.page-id-1879 .cws-cbse-card[data-group="calendar"]    { border-top-color: #6366F1; }

/* Badge */
body.page-id-1879 .cws-cbse-badge {
  display: inline-block;
  padding: 4px 10px;
  background: rgba(15, 30, 61, 0.06);
  color: #0F1E3D;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  margin-bottom: 10px;
}

/* Headings */
body.page-id-1879 .cws-cbse-card h3 {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 700;
  color: #0F1E3D;
  margin: 0 0 14px;
  font-size: 18px;
  letter-spacing: -0.01em;
}
body.page-id-1879 .cws-cbse-card-note {
  font-size: 12px;
  color: #64748B;
  margin: -8px 0 14px;
  font-style: italic;
}

/* Definition lists */
body.page-id-1879 .cws-cbse-card dl {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
body.page-id-1879 .cws-cbse-card dl > div {
  display: grid;
  grid-template-columns: 38% 1fr;
  gap: 14px;
  align-items: baseline;
  padding-bottom: 10px;
  border-bottom: 1px dashed rgba(15, 30, 61, 0.08);
}
body.page-id-1879 .cws-cbse-card dl > div:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
body.page-id-1879 .cws-cbse-card dt {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: #64748B;
  margin: 0;
}
body.page-id-1879 .cws-cbse-card dd {
  font-size: 14px;
  color: #0F1E3D;
  margin: 0;
  line-height: 1.5;
  font-weight: 500;
}
body.page-id-1879 .cws-cbse-card dd a {
  color: #B6862F;
  text-decoration: none;
  border-bottom: 1px solid rgba(182, 134, 47, 0.3);
  transition: color .2s ease, border-color .2s ease;
}
body.page-id-1879 .cws-cbse-card dd a:hover {
  color: #0F1E3D;
  border-bottom-color: #0F1E3D;
}

/* Inline status tag */
body.page-id-1879 .cws-cbse-tag {
  display: inline-block;
  padding: 2px 8px;
  margin-left: 6px;
  background: rgba(47, 107, 61, 0.10);
  color: #166534;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  vertical-align: middle;
}

/* Staff list */
body.page-id-1879 .cws-cbse-stafflist {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 10px;
}
body.page-id-1879 .cws-cbse-stafflist li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: linear-gradient(135deg, rgba(15, 30, 61, 0.03), rgba(212, 162, 76, 0.06));
  padding: 12px 14px;
  border-radius: 10px;
  border: 1px solid rgba(15, 30, 61, 0.06);
}
body.page-id-1879 .cws-cbse-rolename {
  font-size: 13px;
  font-weight: 600;
  color: #1A2D5C;
}
body.page-id-1879 .cws-cbse-rolecount {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 18px;
  font-weight: 800;
  color: #B6862F;
  line-height: 1;
  padding-left: 10px;
}

/* Committee list (grievance card) */
body.page-id-1879 .cws-cbse-committee {
  list-style: none;
  margin: 14px 0 0;
  padding: 14px 0 0;
  border-top: 1px dashed rgba(15, 30, 61, 0.10);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 10px;
}
body.page-id-1879 .cws-cbse-committee li {
  background: #FAF9F5;
  border-radius: 10px;
  padding: 12px 14px;
  border: 1px solid rgba(15, 30, 61, 0.06);
}
body.page-id-1879 .cws-cbse-role-label {
  display: block;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #B6862F;
  margin-bottom: 4px;
}
body.page-id-1879 .cws-cbse-role-person {
  display: block;
  font-size: 14px;
  font-weight: 600;
  color: #0F1E3D;
}

/* Footnote */
body.page-id-1879 .cws-cbse-footnote {
  margin-top: 40px;
  text-align: center;
  font-size: 12px;
  color: #64748B;
  font-style: italic;
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}

/* Mobile */
@media (max-width: 820px) {
  body.page-id-1879 .cws-cbse-card--wide {
    grid-column: span 1;
  }
}
@media (max-width: 720px) {
  body.page-id-1879 .entry-header,
  body.page-id-1879 .ast-single-post-banner,
  body.page-id-1879 .page-header {
    padding: 24px 18px 28px !important;
  }
  body.page-id-1879 .entry-title { font-size: 22px !important; }
  body.page-id-1879 .cws-cbse { padding: 28px 18px; }
  body.page-id-1879 .cws-cbse-grid { grid-template-columns: 1fr; gap: 16px; }
  body.page-id-1879 .cws-cbse-quickstats { grid-template-columns: repeat(2, 1fr); }
  body.page-id-1879 .cws-cbse-card dl > div {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}

/* ============================================================
   v2.1.0 — Our Infrastructure (page id 1512)
   Hero · quick stats · image facility cards · safety icon grid
   ============================================================ */

/* Hero banner */
body.page-id-1512 .entry-header,
body.page-id-1512 .ast-single-post-banner,
body.page-id-1512 .page-header {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 60%, #2A4080 100%) !important;
  width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: 32px 24px 38px !important;
  margin-bottom: 0 !important;
  border-radius: 0 !important;
  text-align: center !important;
}
body.page-id-1512 .entry-header::before {
  content: "FACILITIES" !important;
  display: block !important;
  font-family: "Plus Jakarta Sans", "Rubik", sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.28em !important;
  color: #D4A24C !important;
  margin-bottom: 8px !important;
}
body.page-id-1512 .entry-title {
  color: #ffffff !important;
  font-family: "Plus Jakarta Sans", "Rubik", sans-serif !important;
  font-weight: 800 !important;
  font-size: clamp(22px, 2.8vw, 32px) !important;
  letter-spacing: -0.02em !important;
  text-align: center !important;
  margin: 0 !important;
  line-height: 1.2 !important;
}
body.page-id-1512 .entry-title::after {
  content: "" !important;
  display: block !important;
  width: 56px !important;
  height: 3px !important;
  margin: 10px auto 0 !important;
  background: linear-gradient(90deg, #D4A24C, #B6862F) !important;
  border-radius: 99px !important;
}

/* Wrapper */
body.page-id-1512 .cws-infra {
  max-width: 1240px;
  margin: 0 auto;
  padding: 48px 24px 64px;
  font-family: "Plus Jakarta Sans", "Rubik", system-ui, sans-serif;
  color: #0F1E3D;
}

/* Intro */
body.page-id-1512 .cws-infra-intro {
  text-align: center;
  margin-bottom: 40px;
}
body.page-id-1512 .cws-infra-eyebrow {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #B6862F;
  margin: 0 0 12px;
}
body.page-id-1512 .cws-infra-lead {
  font-size: clamp(16px, 1.55vw, 19px);
  line-height: 1.7;
  max-width: 820px;
  margin: 0 auto;
  color: #1A2D5C;
}
body.page-id-1512 .cws-infra-lead strong { color: #0F1E3D; }

/* Quick stats */
body.page-id-1512 .cws-infra-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 16px;
  margin: 0 auto 56px;
  max-width: 1080px;
}
body.page-id-1512 .cws-infra-stat {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 22px 18px;
  text-align: center;
  border: 1px solid rgba(212, 162, 76, 0.2);
  box-shadow: 0 14px 28px -16px rgba(15, 30, 61, 0.35);
  transition: transform .3s ease, box-shadow .3s ease;
}
body.page-id-1512 .cws-infra-stat:hover {
  transform: translateY(-3px);
  box-shadow: 0 22px 36px -16px rgba(15, 30, 61, 0.5);
}
body.page-id-1512 .cws-infra-stat-num {
  display: block;
  font-size: clamp(26px, 3vw, 36px);
  font-weight: 800;
  color: #D4A24C;
  letter-spacing: -0.02em;
  line-height: 1;
  margin-bottom: 6px;
}
body.page-id-1512 .cws-infra-stat-label {
  display: block;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.78);
}

/* Facility grid */
body.page-id-1512 .cws-infra-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 24px;
  margin-bottom: 64px;
}

/* Card */
body.page-id-1512 .cws-infra-card {
  background: #ffffff;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid rgba(15, 30, 61, 0.06);
  box-shadow:
    0 1px 0 rgba(15, 30, 61, 0.04),
    0 18px 36px -20px rgba(15, 30, 61, 0.22);
  transition: transform .35s ease, box-shadow .35s ease;
  display: flex;
  flex-direction: column;
  opacity: 0;
  transform: translateY(10px);
  animation: cws-infra-rise .55s ease forwards;
}
body.page-id-1512 .cws-infra-card:hover {
  transform: translateY(-5px);
  box-shadow:
    0 2px 0 rgba(15, 30, 61, 0.06),
    0 30px 50px -20px rgba(15, 30, 61, 0.32);
}
@keyframes cws-infra-rise {
  to { opacity: 1; transform: translateY(0); }
}
body.page-id-1512 .cws-infra-card:nth-child(1) { animation-delay: .00s; }
body.page-id-1512 .cws-infra-card:nth-child(2) { animation-delay: .08s; }
body.page-id-1512 .cws-infra-card:nth-child(3) { animation-delay: .16s; }
body.page-id-1512 .cws-infra-card:nth-child(4) { animation-delay: .24s; }
body.page-id-1512 .cws-infra-card:nth-child(5) { animation-delay: .32s; }
body.page-id-1512 .cws-infra-card:nth-child(6) { animation-delay: .40s; }

/* Feature card (first) spans two cols on wide screens */
@media (min-width: 980px) {
  body.page-id-1512 .cws-infra-card--feature {
    grid-column: span 2;
    flex-direction: row;
  }
  body.page-id-1512 .cws-infra-card--feature .cws-infra-media {
    flex: 1.1;
    min-width: 0;
  }
  body.page-id-1512 .cws-infra-card--feature .cws-infra-body {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}

/* Media */
body.page-id-1512 .cws-infra-media {
  overflow: hidden;
  position: relative;
  background: #0F1E3D;
  aspect-ratio: 16 / 10;
}
body.page-id-1512 .cws-infra-card--feature .cws-infra-media {
  aspect-ratio: auto;
  min-height: 280px;
}
body.page-id-1512 .cws-infra-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .6s ease;
}
body.page-id-1512 .cws-infra-card:hover .cws-infra-media img {
  transform: scale(1.06);
}
body.page-id-1512 .cws-infra-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(15,30,61,0) 60%, rgba(15,30,61,0.35) 100%);
  pointer-events: none;
}

/* Body */
body.page-id-1512 .cws-infra-body {
  padding: 22px 22px 24px;
}
body.page-id-1512 .cws-infra-pill {
  display: inline-block;
  padding: 4px 12px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  background: rgba(212, 162, 76, 0.12);
  color: #8a6418;
  margin-bottom: 10px;
}
body.page-id-1512 .cws-infra-body h3 {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 800;
  font-size: clamp(18px, 1.6vw, 22px);
  color: #0F1E3D;
  margin: 0 0 10px;
  letter-spacing: -0.01em;
}
body.page-id-1512 .cws-infra-body p {
  font-size: 14px;
  line-height: 1.65;
  color: #475569;
  margin: 0;
}
body.page-id-1512 .cws-infra-body p strong { color: #0F1E3D; }

/* Per-facility pill color */
body.page-id-1512 .cws-infra-card[data-facility="classroom"] .cws-infra-pill { background: rgba(99, 102, 241, 0.10); color: #4338CA; }
body.page-id-1512 .cws-infra-card[data-facility="library"]   .cws-infra-pill { background: rgba(120, 53, 15, 0.10);  color: #78350F; }
body.page-id-1512 .cws-infra-card[data-facility="lab"]       .cws-infra-pill { background: rgba(8, 145, 178, 0.10);  color: #0E7490; }
body.page-id-1512 .cws-infra-card[data-facility="sports"]    .cws-infra-pill { background: rgba(234, 88, 12, 0.10);  color: #C2410C; }
body.page-id-1512 .cws-infra-card[data-facility="dance"]     .cws-infra-pill { background: rgba(236, 72, 153, 0.10); color: #BE185D; }
body.page-id-1512 .cws-infra-card[data-facility="transport"] .cws-infra-pill { background: rgba(47, 107, 61, 0.12);  color: #166534; }

/* Subtitle */
body.page-id-1512 .cws-infra-subtitle {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 800;
  font-size: clamp(22px, 2.4vw, 30px);
  color: #0F1E3D;
  margin: 0 0 6px;
  letter-spacing: -0.01em;
  text-align: center;
}
body.page-id-1512 .cws-infra-subtitle::after {
  content: "";
  display: block;
  width: 48px;
  height: 3px;
  background: linear-gradient(90deg, #D4A24C, #B6862F);
  border-radius: 99px;
  margin: 10px auto 28px;
}

/* Icon grid */
body.page-id-1512 .cws-infra-icongrid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 18px;
  margin-bottom: 56px;
}
body.page-id-1512 .cws-infra-iconcard {
  background: linear-gradient(135deg, #FAF9F5 0%, #FFFFFF 100%);
  border: 1px solid rgba(15, 30, 61, 0.06);
  border-radius: 14px;
  padding: 24px 20px 22px;
  text-align: center;
  transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
body.page-id-1512 .cws-infra-iconcard:hover {
  transform: translateY(-3px);
  border-color: rgba(212, 162, 76, 0.4);
  box-shadow: 0 18px 30px -16px rgba(15, 30, 61, 0.22);
}
body.page-id-1512 .cws-infra-icon {
  width: 52px;
  height: 52px;
  border-radius: 14px;
  background: rgba(212, 162, 76, 0.12);
  color: #B6862F;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 14px;
  transition: background .3s ease, color .3s ease, transform .3s ease;
}
body.page-id-1512 .cws-infra-icon svg {
  width: 26px;
  height: 26px;
}
body.page-id-1512 .cws-infra-iconcard:hover .cws-infra-icon {
  background: #0F1E3D;
  color: #D4A24C;
  transform: scale(1.05);
}
body.page-id-1512 .cws-infra-iconcard h4 {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 700;
  font-size: 15px;
  color: #0F1E3D;
  margin: 0 0 6px;
}
body.page-id-1512 .cws-infra-iconcard p {
  font-size: 13px;
  line-height: 1.55;
  color: #64748B;
  margin: 0;
}

/* CTA */
body.page-id-1512 .cws-infra-cta {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 100%);
  border-radius: 18px;
  padding: 36px 28px;
  text-align: center;
  margin-top: 24px;
  border: 1px solid rgba(212, 162, 76, 0.25);
  box-shadow: 0 22px 36px -18px rgba(15, 30, 61, 0.35);
}
body.page-id-1512 .cws-infra-cta p {
  color: rgba(255, 255, 255, 0.92);
  margin: 0 0 18px;
  font-size: 15px;
  line-height: 1.6;
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}
body.page-id-1512 .cws-infra-cta-btn {
  display: inline-block;
  padding: 12px 28px;
  background: linear-gradient(135deg, #D4A24C, #B6862F);
  color: #0F1E3D !important;
  text-decoration: none;
  font-weight: 700;
  border-radius: 999px;
  font-size: 14px;
  letter-spacing: 0.04em;
  box-shadow: 0 12px 24px -10px rgba(212, 162, 76, 0.6);
  transition: transform .25s ease, box-shadow .25s ease;
}
body.page-id-1512 .cws-infra-cta-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 28px -10px rgba(212, 162, 76, 0.75);
}

/* Mobile */
@media (max-width: 720px) {
  body.page-id-1512 .entry-header,
  body.page-id-1512 .ast-single-post-banner,
  body.page-id-1512 .page-header {
    padding: 24px 18px 28px !important;
  }
  body.page-id-1512 .entry-title { font-size: 22px !important; }
  body.page-id-1512 .cws-infra { padding: 28px 18px; }
  body.page-id-1512 .cws-infra-stats { grid-template-columns: repeat(2, 1fr); }
  body.page-id-1512 .cws-infra-grid { grid-template-columns: 1fr; gap: 18px; }
  body.page-id-1512 .cws-infra-icongrid { grid-template-columns: repeat(2, 1fr); }
}

/* ============================================================
   v2.2.0 — Admission Procedure (page id 1196)
   Hero · stats · 4-step process · policy cards · CTA
   ============================================================ */

/* Hero banner */
body.page-id-1196 .entry-header,
body.page-id-1196 .ast-single-post-banner,
body.page-id-1196 .page-header {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 60%, #2A4080 100%) !important;
  width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: 32px 24px 38px !important;
  margin-bottom: 0 !important;
  border-radius: 0 !important;
  text-align: center !important;
}
body.page-id-1196 .entry-header::before {
  content: "ADMISSIONS" !important;
  display: block !important;
  font-family: "Plus Jakarta Sans", "Rubik", sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.28em !important;
  color: #D4A24C !important;
  margin-bottom: 8px !important;
}
body.page-id-1196 .entry-title {
  color: #ffffff !important;
  font-family: "Plus Jakarta Sans", "Rubik", sans-serif !important;
  font-weight: 800 !important;
  font-size: clamp(22px, 2.8vw, 32px) !important;
  letter-spacing: -0.02em !important;
  text-align: center !important;
  margin: 0 !important;
  line-height: 1.2 !important;
}
body.page-id-1196 .entry-title::after {
  content: "" !important;
  display: block !important;
  width: 56px !important;
  height: 3px !important;
  margin: 10px auto 0 !important;
  background: linear-gradient(90deg, #D4A24C, #B6862F) !important;
  border-radius: 99px !important;
}

/* Wrapper */
body.page-id-1196 .cws-adm {
  max-width: 1240px;
  margin: 0 auto;
  padding: 48px 24px 64px;
  font-family: "Plus Jakarta Sans", "Rubik", system-ui, sans-serif;
  color: #0F1E3D;
}

/* Intro */
body.page-id-1196 .cws-adm-intro {
  text-align: center;
  margin-bottom: 40px;
}
body.page-id-1196 .cws-adm-eyebrow {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #B6862F;
  margin: 0 0 12px;
}
body.page-id-1196 .cws-adm-lead {
  font-size: clamp(16px, 1.55vw, 19px);
  line-height: 1.7;
  max-width: 820px;
  margin: 0 auto;
  color: #1A2D5C;
}
body.page-id-1196 .cws-adm-lead strong { color: #0F1E3D; }

/* Quick stats */
body.page-id-1196 .cws-adm-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 16px;
  margin: 0 auto 56px;
  max-width: 1080px;
}
body.page-id-1196 .cws-adm-stat {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 22px 18px;
  text-align: center;
  border: 1px solid rgba(212, 162, 76, 0.2);
  box-shadow: 0 14px 28px -16px rgba(15, 30, 61, 0.35);
  transition: transform .3s ease, box-shadow .3s ease;
}
body.page-id-1196 .cws-adm-stat:hover {
  transform: translateY(-3px);
  box-shadow: 0 22px 36px -16px rgba(15, 30, 61, 0.5);
}
body.page-id-1196 .cws-adm-stat-num {
  display: block;
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 800;
  color: #D4A24C;
  letter-spacing: -0.01em;
  line-height: 1.1;
  margin-bottom: 6px;
}
body.page-id-1196 .cws-adm-stat-label {
  display: block;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.78);
}

/* Subtitle */
body.page-id-1196 .cws-adm-subtitle {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 800;
  font-size: clamp(22px, 2.4vw, 30px);
  color: #0F1E3D;
  margin: 0 0 6px;
  letter-spacing: -0.01em;
  text-align: center;
}
body.page-id-1196 .cws-adm-subtitle::after {
  content: "";
  display: block;
  width: 48px;
  height: 3px;
  background: linear-gradient(90deg, #D4A24C, #B6862F);
  border-radius: 99px;
  margin: 10px auto 28px;
}

/* 4-step process */
body.page-id-1196 .cws-adm-steps {
  list-style: none;
  margin: 0 0 56px;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 18px;
  counter-reset: cws-adm-step;
}
body.page-id-1196 .cws-adm-step {
  background: #ffffff;
  border-radius: 16px;
  padding: 28px 22px 22px;
  border: 1px solid rgba(15, 30, 61, 0.06);
  box-shadow: 0 14px 28px -16px rgba(15, 30, 61, 0.18);
  position: relative;
  transition: transform .3s ease, box-shadow .3s ease;
  opacity: 0;
  transform: translateY(8px);
  animation: cws-adm-rise .5s ease forwards;
}
body.page-id-1196 .cws-adm-step:nth-child(1) { animation-delay: .00s; }
body.page-id-1196 .cws-adm-step:nth-child(2) { animation-delay: .10s; }
body.page-id-1196 .cws-adm-step:nth-child(3) { animation-delay: .20s; }
body.page-id-1196 .cws-adm-step:nth-child(4) { animation-delay: .30s; }
body.page-id-1196 .cws-adm-step:hover {
  transform: translateY(-4px);
  box-shadow: 0 24px 40px -16px rgba(15, 30, 61, 0.3);
}
@keyframes cws-adm-rise {
  to { opacity: 1; transform: translateY(0); }
}
body.page-id-1196 .cws-adm-step-num {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 36px;
  font-weight: 800;
  color: #D4A24C;
  letter-spacing: -0.02em;
  line-height: 1;
  margin-bottom: 10px;
  display: inline-block;
  position: relative;
}
body.page-id-1196 .cws-adm-step-num::after {
  content: "";
  display: block;
  width: 32px;
  height: 2px;
  background: linear-gradient(90deg, #D4A24C, #B6862F);
  margin-top: 8px;
  border-radius: 99px;
}
body.page-id-1196 .cws-adm-step h3 {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 700;
  font-size: 16px;
  color: #0F1E3D;
  margin: 0 0 8px;
  letter-spacing: -0.01em;
}
body.page-id-1196 .cws-adm-step p {
  font-size: 13.5px;
  line-height: 1.6;
  color: #475569;
  margin: 0;
}
body.page-id-1196 .cws-adm-step p strong { color: #0F1E3D; }
body.page-id-1196 .cws-adm-step p em { color: #B6862F; font-style: normal; font-weight: 600; }

/* Connector arrow between steps (large screens) */
@media (min-width: 980px) {
  body.page-id-1196 .cws-adm-step:not(:last-child)::before {
    content: "→";
    position: absolute;
    right: -16px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 22px;
    color: rgba(212, 162, 76, 0.5);
    font-weight: 700;
    z-index: 1;
  }
}

/* Policy cards grid */
body.page-id-1196 .cws-adm-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 22px;
  margin-bottom: 56px;
}
body.page-id-1196 .cws-adm-card {
  background: #ffffff;
  border-radius: 18px;
  padding: 28px 26px 24px;
  border: 1px solid rgba(15, 30, 61, 0.06);
  border-top: 3px solid #D4A24C;
  box-shadow:
    0 1px 0 rgba(15, 30, 61, 0.04),
    0 18px 32px -18px rgba(15, 30, 61, 0.2);
  transition: transform .3s ease, box-shadow .3s ease;
  opacity: 0;
  transform: translateY(8px);
  animation: cws-adm-rise .5s ease forwards;
}
body.page-id-1196 .cws-adm-card:hover {
  transform: translateY(-3px);
  box-shadow:
    0 2px 0 rgba(15, 30, 61, 0.06),
    0 24px 40px -18px rgba(15, 30, 61, 0.3);
}
body.page-id-1196 .cws-adm-card:nth-child(1) { animation-delay: .00s; }
body.page-id-1196 .cws-adm-card:nth-child(2) { animation-delay: .06s; }
body.page-id-1196 .cws-adm-card:nth-child(3) { animation-delay: .12s; }
body.page-id-1196 .cws-adm-card:nth-child(4) { animation-delay: .18s; }
body.page-id-1196 .cws-adm-card:nth-child(5) { animation-delay: .24s; }
body.page-id-1196 .cws-adm-card:nth-child(6) { animation-delay: .30s; }

/* Section accent colors */
body.page-id-1196 .cws-adm-card[data-section="registration"] { border-top-color: #2F6B3D; }
body.page-id-1196 .cws-adm-card[data-section="admission"]    { border-top-color: #DC2626; }
body.page-id-1196 .cws-adm-card[data-section="test"]         { border-top-color: #6366F1; }
body.page-id-1196 .cws-adm-card[data-section="session"]      { border-top-color: #0891B2; }
body.page-id-1196 .cws-adm-card[data-section="notification"] { border-top-color: #D97706; }
body.page-id-1196 .cws-adm-card[data-section="rules"]        { border-top-color: #0F1E3D; }

body.page-id-1196 .cws-adm-card header {
  margin-bottom: 14px;
}
body.page-id-1196 .cws-adm-pill {
  display: inline-block;
  padding: 4px 12px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  background: rgba(15, 30, 61, 0.06);
  color: #0F1E3D;
  margin-bottom: 8px;
}
body.page-id-1196 .cws-adm-card[data-section="registration"] .cws-adm-pill { background: rgba(47, 107, 61, 0.10); color: #166534; }
body.page-id-1196 .cws-adm-card[data-section="admission"]    .cws-adm-pill { background: rgba(220, 38, 38, 0.10); color: #B91C1C; }
body.page-id-1196 .cws-adm-card[data-section="test"]         .cws-adm-pill { background: rgba(99, 102, 241, 0.10); color: #4338CA; }
body.page-id-1196 .cws-adm-card[data-section="session"]      .cws-adm-pill { background: rgba(8, 145, 178, 0.10); color: #0E7490; }
body.page-id-1196 .cws-adm-card[data-section="notification"] .cws-adm-pill { background: rgba(217, 119, 6, 0.12); color: #B45309; }

body.page-id-1196 .cws-adm-card h3 {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 700;
  color: #0F1E3D;
  margin: 0;
  font-size: 18px;
  letter-spacing: -0.01em;
}
body.page-id-1196 .cws-adm-card ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
body.page-id-1196 .cws-adm-card li {
  position: relative;
  padding-left: 22px;
  font-size: 14px;
  line-height: 1.6;
  color: #475569;
}
body.page-id-1196 .cws-adm-card li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 9px;
  width: 6px;
  height: 6px;
  background: #D4A24C;
  border-radius: 50%;
}
body.page-id-1196 .cws-adm-card li strong { color: #0F1E3D; }

/* Terms inline (academic session card) */
body.page-id-1196 .cws-adm-terms {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px dashed rgba(15, 30, 61, 0.10);
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
body.page-id-1196 .cws-adm-terms > div {
  background: #FAF9F5;
  border: 1px solid rgba(15, 30, 61, 0.06);
  border-radius: 10px;
  padding: 10px 12px;
  font-size: 13px;
  color: #0F1E3D;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
body.page-id-1196 .cws-adm-termlabel {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #B6862F;
}

/* CTA */
body.page-id-1196 .cws-adm-cta {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 100%);
  border-radius: 18px;
  padding: 36px 32px;
  margin-top: 8px;
  border: 1px solid rgba(212, 162, 76, 0.25);
  box-shadow: 0 22px 36px -18px rgba(15, 30, 61, 0.35);
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 24px;
  align-items: center;
}
body.page-id-1196 .cws-adm-cta h3 {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 800;
  font-size: 22px;
  color: #ffffff;
  margin: 0 0 6px;
}
body.page-id-1196 .cws-adm-cta p {
  color: rgba(255, 255, 255, 0.85);
  margin: 0;
  font-size: 14px;
  line-height: 1.6;
}
body.page-id-1196 .cws-adm-cta-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
body.page-id-1196 .cws-adm-cta-btn {
  display: inline-block;
  padding: 12px 24px;
  text-decoration: none;
  font-weight: 700;
  border-radius: 999px;
  font-size: 13.5px;
  letter-spacing: 0.04em;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
  white-space: nowrap;
}
body.page-id-1196 .cws-adm-cta-btn--primary {
  background: linear-gradient(135deg, #D4A24C, #B6862F);
  color: #0F1E3D !important;
  box-shadow: 0 12px 24px -10px rgba(212, 162, 76, 0.6);
}
body.page-id-1196 .cws-adm-cta-btn--primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 28px -10px rgba(212, 162, 76, 0.8);
}
body.page-id-1196 .cws-adm-cta-btn--ghost {
  background: transparent;
  color: #D4A24C !important;
  border: 1px solid rgba(212, 162, 76, 0.45);
}
body.page-id-1196 .cws-adm-cta-btn--ghost:hover {
  background: rgba(212, 162, 76, 0.10);
  transform: translateY(-2px);
}

/* Mobile */
@media (max-width: 820px) {
  body.page-id-1196 .cws-adm-cta {
    grid-template-columns: 1fr;
    text-align: center;
  }
  body.page-id-1196 .cws-adm-cta-actions { justify-content: center; }
}
@media (max-width: 720px) {
  body.page-id-1196 .entry-header,
  body.page-id-1196 .ast-single-post-banner,
  body.page-id-1196 .page-header {
    padding: 24px 18px 28px !important;
  }
  body.page-id-1196 .entry-title { font-size: 22px !important; }
  body.page-id-1196 .cws-adm { padding: 28px 18px; }
  body.page-id-1196 .cws-adm-stats { grid-template-columns: repeat(2, 1fr); }
  body.page-id-1196 .cws-adm-grid { grid-template-columns: 1fr; gap: 16px; }
  body.page-id-1196 .cws-adm-steps { grid-template-columns: 1fr; }
}

/* ============================================================
   v2.3.0 — Holiday List (page id 1198)
   Hero · featured current year (PDF preview) · archive list
   ============================================================ */

/* Hero banner */
body.page-id-1198 .entry-header,
body.page-id-1198 .ast-single-post-banner,
body.page-id-1198 .page-header {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 60%, #2A4080 100%) !important;
  width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: 32px 24px 38px !important;
  margin-bottom: 0 !important;
  border-radius: 0 !important;
  text-align: center !important;
}
body.page-id-1198 .entry-header::before {
  content: "ACADEMIC CALENDAR" !important;
  display: block !important;
  font-family: "Plus Jakarta Sans", "Rubik", sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.28em !important;
  color: #D4A24C !important;
  margin-bottom: 8px !important;
}
body.page-id-1198 .entry-title {
  color: #ffffff !important;
  font-family: "Plus Jakarta Sans", "Rubik", sans-serif !important;
  font-weight: 800 !important;
  font-size: clamp(22px, 2.8vw, 32px) !important;
  letter-spacing: -0.02em !important;
  text-align: center !important;
  margin: 0 !important;
  line-height: 1.2 !important;
}
body.page-id-1198 .entry-title::after {
  content: "" !important;
  display: block !important;
  width: 56px !important;
  height: 3px !important;
  margin: 10px auto 0 !important;
  background: linear-gradient(90deg, #D4A24C, #B6862F) !important;
  border-radius: 99px !important;
}

/* Wrapper */
body.page-id-1198 .cws-hol {
  max-width: 1180px;
  margin: 0 auto;
  padding: 48px 24px 64px;
  font-family: "Plus Jakarta Sans", "Rubik", system-ui, sans-serif;
  color: #0F1E3D;
}

/* Intro */
body.page-id-1198 .cws-hol-intro {
  text-align: center;
  margin-bottom: 40px;
}
body.page-id-1198 .cws-hol-eyebrow {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #B6862F;
  margin: 0 0 12px;
}
body.page-id-1198 .cws-hol-lead {
  font-size: clamp(16px, 1.5vw, 18px);
  line-height: 1.65;
  max-width: 720px;
  margin: 0 auto;
  color: #1A2D5C;
}

/* Current session featured card */
body.page-id-1198 .cws-hol-current {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 100%);
  border-radius: 22px;
  padding: 36px;
  margin-bottom: 32px;
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 32px;
  align-items: stretch;
  border: 1px solid rgba(212, 162, 76, 0.25);
  box-shadow: 0 28px 48px -22px rgba(15, 30, 61, 0.4);
  position: relative;
  overflow: hidden;
}
body.page-id-1198 .cws-hol-current::before {
  content: "";
  position: absolute;
  top: -120px;
  right: -120px;
  width: 320px;
  height: 320px;
  background: radial-gradient(circle, rgba(212, 162, 76, 0.18), transparent 70%);
  pointer-events: none;
}
body.page-id-1198 .cws-hol-current-meta {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #ffffff;
}
body.page-id-1198 .cws-hol-current-tag {
  display: inline-block;
  padding: 5px 12px;
  border-radius: 999px;
  background: rgba(212, 162, 76, 0.18);
  color: #D4A24C;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  margin-bottom: 14px;
  align-self: flex-start;
  border: 1px solid rgba(212, 162, 76, 0.35);
}
body.page-id-1198 .cws-hol-current-title {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 700;
  font-size: clamp(22px, 2.4vw, 30px);
  letter-spacing: -0.01em;
  margin: 0 0 10px;
  color: #ffffff;
  line-height: 1.2;
}
body.page-id-1198 .cws-hol-current-title strong {
  color: #D4A24C;
  font-weight: 800;
}
body.page-id-1198 .cws-hol-current-sub {
  font-size: 14px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.82);
  margin: 0 0 20px;
}
body.page-id-1198 .cws-hol-current-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

/* Buttons */
body.page-id-1198 .cws-hol-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 20px;
  text-decoration: none;
  font-weight: 700;
  border-radius: 999px;
  font-size: 13.5px;
  letter-spacing: 0.04em;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
  white-space: nowrap;
}
body.page-id-1198 .cws-hol-btn svg {
  width: 16px;
  height: 16px;
}
body.page-id-1198 .cws-hol-btn--primary {
  background: linear-gradient(135deg, #D4A24C, #B6862F);
  color: #0F1E3D !important;
  box-shadow: 0 12px 24px -10px rgba(212, 162, 76, 0.6);
}
body.page-id-1198 .cws-hol-btn--primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 28px -10px rgba(212, 162, 76, 0.8);
}
body.page-id-1198 .cws-hol-btn--ghost {
  background: transparent;
  color: #D4A24C !important;
  border: 1px solid rgba(212, 162, 76, 0.45);
}
body.page-id-1198 .cws-hol-btn--ghost:hover {
  background: rgba(212, 162, 76, 0.12);
  transform: translateY(-2px);
}

/* PDF preview */
body.page-id-1198 .cws-hol-current-preview {
  background: #ffffff;
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid rgba(212, 162, 76, 0.2);
  box-shadow: 0 18px 32px -16px rgba(0, 0, 0, 0.35);
  min-height: 380px;
  position: relative;
  z-index: 1;
}
body.page-id-1198 .cws-hol-pdf {
  width: 100%;
  height: 100%;
  min-height: 380px;
  display: block;
  border: none;
}
body.page-id-1198 .cws-hol-pdf-fallback {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 40px 24px;
  color: #64748B;
  min-height: 380px;
}
body.page-id-1198 .cws-hol-pdf-fallback svg {
  width: 56px;
  height: 56px;
  color: #D4A24C;
  margin-bottom: 14px;
}
body.page-id-1198 .cws-hol-pdf-fallback p {
  font-size: 14px;
  margin: 0;
  max-width: 300px;
}

/* Quick info row */
body.page-id-1198 .cws-hol-quickinfo {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
  margin-bottom: 56px;
}
body.page-id-1198 .cws-hol-info {
  background: #ffffff;
  border-radius: 14px;
  padding: 18px 20px;
  border: 1px solid rgba(15, 30, 61, 0.06);
  display: flex;
  align-items: center;
  gap: 14px;
  box-shadow: 0 12px 24px -16px rgba(15, 30, 61, 0.15);
  transition: transform .3s ease, box-shadow .3s ease;
}
body.page-id-1198 .cws-hol-info:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 30px -16px rgba(15, 30, 61, 0.22);
}
body.page-id-1198 .cws-hol-info-icon {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: rgba(212, 162, 76, 0.12);
  color: #B6862F;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
body.page-id-1198 .cws-hol-info-icon svg {
  width: 22px;
  height: 22px;
}
body.page-id-1198 .cws-hol-info h4 {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 700;
  font-size: 14px;
  color: #0F1E3D;
  margin: 0 0 2px;
}
body.page-id-1198 .cws-hol-info p {
  font-size: 13px;
  color: #475569;
  margin: 0;
  line-height: 1.45;
}

/* Archive */
body.page-id-1198 .cws-hol-archive-title {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 800;
  font-size: clamp(20px, 2.2vw, 26px);
  color: #0F1E3D;
  margin: 0 0 6px;
  letter-spacing: -0.01em;
  text-align: center;
}
body.page-id-1198 .cws-hol-archive-title::after {
  content: "";
  display: block;
  width: 44px;
  height: 3px;
  background: linear-gradient(90deg, #D4A24C, #B6862F);
  border-radius: 99px;
  margin: 10px auto 24px;
}
body.page-id-1198 .cws-hol-archive {
  display: flex;
  flex-direction: column;
  gap: 12px;
  max-width: 820px;
  margin: 0 auto 32px;
}
body.page-id-1198 .cws-hol-archive-item {
  background: #ffffff;
  border-radius: 14px;
  padding: 18px 22px;
  border: 1px solid rgba(15, 30, 61, 0.06);
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 18px;
  align-items: center;
  box-shadow: 0 12px 24px -16px rgba(15, 30, 61, 0.15);
  transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
body.page-id-1198 .cws-hol-archive-item:hover {
  transform: translateY(-2px);
  border-color: rgba(212, 162, 76, 0.4);
  box-shadow: 0 18px 30px -16px rgba(15, 30, 61, 0.22);
}
body.page-id-1198 .cws-hol-archive-icon {
  width: 46px;
  height: 46px;
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(15, 30, 61, 0.04), rgba(212, 162, 76, 0.10));
  color: #B6862F;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
body.page-id-1198 .cws-hol-archive-icon svg {
  width: 22px;
  height: 22px;
}
body.page-id-1198 .cws-hol-archive-meta {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
body.page-id-1198 .cws-hol-archive-year {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 700;
  font-size: 16px;
  color: #0F1E3D;
  letter-spacing: -0.01em;
}
body.page-id-1198 .cws-hol-archive-type {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: #64748B;
}
body.page-id-1198 .cws-hol-archive-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 9px 16px;
  background: rgba(212, 162, 76, 0.12);
  color: #8a6418 !important;
  text-decoration: none;
  font-weight: 700;
  border-radius: 999px;
  font-size: 12.5px;
  letter-spacing: 0.04em;
  transition: background .25s ease, color .25s ease, transform .25s ease;
  white-space: nowrap;
}
body.page-id-1198 .cws-hol-archive-link svg {
  width: 14px;
  height: 14px;
}
body.page-id-1198 .cws-hol-archive-link:hover {
  background: #0F1E3D;
  color: #D4A24C !important;
  transform: translateY(-2px);
}

/* Footnote */
body.page-id-1198 .cws-hol-footnote {
  text-align: center;
  font-size: 12px;
  color: #64748B;
  font-style: italic;
  max-width: 680px;
  margin: 32px auto 0;
}

/* Mobile */
@media (max-width: 880px) {
  body.page-id-1198 .cws-hol-current {
    grid-template-columns: 1fr;
    padding: 28px 24px;
  }
  body.page-id-1198 .cws-hol-current-preview {
    min-height: 320px;
  }
  body.page-id-1198 .cws-hol-pdf,
  body.page-id-1198 .cws-hol-pdf-fallback {
    min-height: 320px;
  }
}
@media (max-width: 720px) {
  body.page-id-1198 .entry-header,
  body.page-id-1198 .ast-single-post-banner,
  body.page-id-1198 .page-header {
    padding: 24px 18px 28px !important;
  }
  body.page-id-1198 .entry-title { font-size: 22px !important; }
  body.page-id-1198 .cws-hol { padding: 28px 18px; }
  body.page-id-1198 .cws-hol-archive-item {
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
  }
  body.page-id-1198 .cws-hol-archive-link {
    grid-column: 1 / -1;
    justify-self: stretch;
    justify-content: center;
  }
}

/* ============================================================
   v2.4.0 — Transfer Certificate Format (page id 1915)
   Hero · download card with PDF preview · policy grid · help
   ============================================================ */

/* Hero banner */
body.page-id-1915 .entry-header,
body.page-id-1915 .ast-single-post-banner,
body.page-id-1915 .page-header {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 60%, #2A4080 100%) !important;
  width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: 32px 24px 38px !important;
  margin-bottom: 0 !important;
  border-radius: 0 !important;
  text-align: center !important;
}
body.page-id-1915 .entry-header::before {
  content: "TRANSFER CERTIFICATE" !important;
  display: block !important;
  font-family: "Plus Jakarta Sans", "Rubik", sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.28em !important;
  color: #D4A24C !important;
  margin-bottom: 8px !important;
}
body.page-id-1915 .entry-title {
  color: #ffffff !important;
  font-family: "Plus Jakarta Sans", "Rubik", sans-serif !important;
  font-weight: 800 !important;
  font-size: clamp(22px, 2.8vw, 32px) !important;
  letter-spacing: -0.02em !important;
  text-align: center !important;
  margin: 0 !important;
  line-height: 1.2 !important;
}
body.page-id-1915 .entry-title::after {
  content: "" !important;
  display: block !important;
  width: 56px !important;
  height: 3px !important;
  margin: 10px auto 0 !important;
  background: linear-gradient(90deg, #D4A24C, #B6862F) !important;
  border-radius: 99px !important;
}

/* Wrapper */
body.page-id-1915 .cws-tc {
  max-width: 1180px;
  margin: 0 auto;
  padding: 48px 24px 64px;
  font-family: "Plus Jakarta Sans", "Rubik", system-ui, sans-serif;
  color: #0F1E3D;
}

/* Intro */
body.page-id-1915 .cws-tc-intro {
  text-align: center;
  margin-bottom: 36px;
}
body.page-id-1915 .cws-tc-eyebrow {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #B6862F;
  margin: 0 0 12px;
}
body.page-id-1915 .cws-tc-lead {
  font-size: clamp(16px, 1.5vw, 18px);
  line-height: 1.65;
  max-width: 760px;
  margin: 0 auto;
  color: #1A2D5C;
}
body.page-id-1915 .cws-tc-lead strong { color: #0F1E3D; }

/* Featured download card */
body.page-id-1915 .cws-tc-card {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 100%);
  border-radius: 22px;
  padding: 36px;
  margin-bottom: 48px;
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 32px;
  align-items: stretch;
  border: 1px solid rgba(212, 162, 76, 0.25);
  box-shadow: 0 28px 48px -22px rgba(15, 30, 61, 0.4);
  position: relative;
  overflow: hidden;
}
body.page-id-1915 .cws-tc-card::before {
  content: "";
  position: absolute;
  top: -120px;
  right: -120px;
  width: 320px;
  height: 320px;
  background: radial-gradient(circle, rgba(212, 162, 76, 0.18), transparent 70%);
  pointer-events: none;
}
body.page-id-1915 .cws-tc-card-meta {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #ffffff;
}
body.page-id-1915 .cws-tc-tag {
  display: inline-block;
  padding: 5px 12px;
  border-radius: 999px;
  background: rgba(212, 162, 76, 0.18);
  color: #D4A24C;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  margin-bottom: 14px;
  align-self: flex-start;
  border: 1px solid rgba(212, 162, 76, 0.35);
}
body.page-id-1915 .cws-tc-card-title {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 800;
  font-size: clamp(22px, 2.4vw, 30px);
  letter-spacing: -0.01em;
  margin: 0 0 10px;
  color: #ffffff;
  line-height: 1.2;
}
body.page-id-1915 .cws-tc-card-sub {
  font-size: 14px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.82);
  margin: 0 0 16px;
}
body.page-id-1915 .cws-tc-card-meta-row {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
body.page-id-1915 .cws-tc-meta-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 11px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: rgba(255, 255, 255, 0.85);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
}
body.page-id-1915 .cws-tc-meta-pill svg {
  width: 13px;
  height: 13px;
}
body.page-id-1915 .cws-tc-card-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

/* Buttons */
body.page-id-1915 .cws-tc-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 20px;
  text-decoration: none;
  font-weight: 700;
  border-radius: 999px;
  font-size: 13.5px;
  letter-spacing: 0.04em;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
  white-space: nowrap;
}
body.page-id-1915 .cws-tc-btn svg {
  width: 16px;
  height: 16px;
}
body.page-id-1915 .cws-tc-btn--primary {
  background: linear-gradient(135deg, #D4A24C, #B6862F);
  color: #0F1E3D !important;
  box-shadow: 0 12px 24px -10px rgba(212, 162, 76, 0.6);
}
body.page-id-1915 .cws-tc-btn--primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 28px -10px rgba(212, 162, 76, 0.8);
}
body.page-id-1915 .cws-tc-btn--ghost {
  background: transparent;
  color: #D4A24C !important;
  border: 1px solid rgba(212, 162, 76, 0.45);
}
body.page-id-1915 .cws-tc-btn--ghost:hover {
  background: rgba(212, 162, 76, 0.12);
  transform: translateY(-2px);
}

/* PDF preview */
body.page-id-1915 .cws-tc-card-preview {
  background: #ffffff;
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid rgba(212, 162, 76, 0.2);
  box-shadow: 0 18px 32px -16px rgba(0, 0, 0, 0.35);
  min-height: 420px;
  position: relative;
  z-index: 1;
}
body.page-id-1915 .cws-tc-pdf {
  width: 100%;
  height: 100%;
  min-height: 420px;
  display: block;
  border: none;
}
body.page-id-1915 .cws-tc-pdf-fallback {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 40px 24px;
  color: #64748B;
  min-height: 420px;
}
body.page-id-1915 .cws-tc-pdf-fallback svg {
  width: 56px;
  height: 56px;
  color: #D4A24C;
  margin-bottom: 14px;
}
body.page-id-1915 .cws-tc-pdf-fallback p {
  font-size: 14px;
  margin: 0;
  max-width: 300px;
}

/* Policy section */
body.page-id-1915 .cws-tc-subtitle {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 800;
  font-size: clamp(22px, 2.4vw, 28px);
  color: #0F1E3D;
  margin: 0 0 4px;
  letter-spacing: -0.01em;
  text-align: center;
}
body.page-id-1915 .cws-tc-subtitle::after {
  content: "";
  display: block;
  width: 44px;
  height: 3px;
  background: linear-gradient(90deg, #D4A24C, #B6862F);
  border-radius: 99px;
  margin: 10px auto 14px;
}
body.page-id-1915 .cws-tc-subtitle-note {
  text-align: center;
  color: #64748B;
  font-size: 13px;
  margin: 0 0 28px;
}
body.page-id-1915 .cws-tc-subtitle-note a {
  color: #B6862F;
  text-decoration: none;
  border-bottom: 1px solid rgba(182, 134, 47, 0.3);
}
body.page-id-1915 .cws-tc-subtitle-note a:hover {
  color: #0F1E3D;
  border-bottom-color: #0F1E3D;
}

/* Policy grid */
body.page-id-1915 .cws-tc-policy {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 18px;
  margin-bottom: 48px;
}
body.page-id-1915 .cws-tc-policy-card {
  background: #ffffff;
  border-radius: 16px;
  padding: 24px 22px 22px;
  border: 1px solid rgba(15, 30, 61, 0.06);
  border-top: 3px solid #D4A24C;
  box-shadow: 0 14px 28px -16px rgba(15, 30, 61, 0.16);
  transition: transform .3s ease, box-shadow .3s ease;
  opacity: 0;
  transform: translateY(8px);
  animation: cws-tc-rise .5s ease forwards;
}
body.page-id-1915 .cws-tc-policy-card:nth-child(1) { animation-delay: .00s; }
body.page-id-1915 .cws-tc-policy-card:nth-child(2) { animation-delay: .06s; }
body.page-id-1915 .cws-tc-policy-card:nth-child(3) { animation-delay: .12s; }
body.page-id-1915 .cws-tc-policy-card:nth-child(4) { animation-delay: .18s; }
body.page-id-1915 .cws-tc-policy-card:nth-child(5) { animation-delay: .24s; }
body.page-id-1915 .cws-tc-policy-card:nth-child(6) { animation-delay: .30s; }
@keyframes cws-tc-rise {
  to { opacity: 1; transform: translateY(0); }
}
body.page-id-1915 .cws-tc-policy-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 24px 40px -16px rgba(15, 30, 61, 0.28);
}
body.page-id-1915 .cws-tc-policy-card[data-policy="when"]   { border-top-color: #2F6B3D; }
body.page-id-1915 .cws-tc-policy-card[data-policy="notice"] { border-top-color: #6366F1; }
body.page-id-1915 .cws-tc-policy-card[data-policy="fee"]    { border-top-color: #B6862F; }
body.page-id-1915 .cws-tc-policy-card[data-policy="dues"]   { border-top-color: #0891B2; }
body.page-id-1915 .cws-tc-policy-card[data-policy="late"]   { border-top-color: #D97706; }
body.page-id-1915 .cws-tc-policy-card[data-policy="refund"] { border-top-color: #DC2626; }

body.page-id-1915 .cws-tc-policy-icon {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: rgba(212, 162, 76, 0.12);
  color: #B6862F;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 14px;
  transition: background .3s ease, color .3s ease, transform .3s ease;
}
body.page-id-1915 .cws-tc-policy-icon svg {
  width: 22px;
  height: 22px;
}
body.page-id-1915 .cws-tc-policy-card:hover .cws-tc-policy-icon {
  background: #0F1E3D;
  color: #D4A24C;
  transform: scale(1.05);
}
body.page-id-1915 .cws-tc-policy-card h4 {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 700;
  font-size: 16px;
  color: #0F1E3D;
  margin: 0 0 6px;
  letter-spacing: -0.01em;
}
body.page-id-1915 .cws-tc-policy-card p {
  font-size: 13.5px;
  line-height: 1.6;
  color: #475569;
  margin: 0;
}
body.page-id-1915 .cws-tc-policy-card p strong { color: #0F1E3D; }

/* Help CTA */
body.page-id-1915 .cws-tc-help {
  background: linear-gradient(135deg, #FAF9F5 0%, #FFFFFF 100%);
  border: 1px solid rgba(15, 30, 61, 0.08);
  border-radius: 18px;
  padding: 32px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 24px;
  align-items: center;
  box-shadow: 0 14px 28px -16px rgba(15, 30, 61, 0.12);
}
body.page-id-1915 .cws-tc-help h3 {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 800;
  font-size: 20px;
  color: #0F1E3D;
  margin: 0 0 6px;
  letter-spacing: -0.01em;
}
body.page-id-1915 .cws-tc-help p {
  font-size: 14px;
  line-height: 1.6;
  color: #475569;
  margin: 0;
}
body.page-id-1915 .cws-tc-help-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
body.page-id-1915 .cws-tc-help .cws-tc-btn--ghost {
  color: #0F1E3D !important;
  border-color: rgba(15, 30, 61, 0.25);
}
body.page-id-1915 .cws-tc-help .cws-tc-btn--ghost:hover {
  background: rgba(15, 30, 61, 0.04);
}

/* Mobile */
@media (max-width: 880px) {
  body.page-id-1915 .cws-tc-card {
    grid-template-columns: 1fr;
    padding: 28px 24px;
  }
  body.page-id-1915 .cws-tc-card-preview { min-height: 360px; }
  body.page-id-1915 .cws-tc-pdf,
  body.page-id-1915 .cws-tc-pdf-fallback { min-height: 360px; }
  body.page-id-1915 .cws-tc-help {
    grid-template-columns: 1fr;
    text-align: center;
  }
  body.page-id-1915 .cws-tc-help-actions { justify-content: center; }
}
@media (max-width: 720px) {
  body.page-id-1915 .entry-header,
  body.page-id-1915 .ast-single-post-banner,
  body.page-id-1915 .page-header {
    padding: 24px 18px 28px !important;
  }
  body.page-id-1915 .entry-title { font-size: 22px !important; }
  body.page-id-1915 .cws-tc { padding: 28px 18px; }
}

/* ============================================================
   v2.5.0 — Student Council (page id 1199)
   Hero · group photo · responsibilities · executive · houses · archive
   ============================================================ */

/* Hero */
body.page-id-1199 .entry-header,
body.page-id-1199 .ast-single-post-banner,
body.page-id-1199 .page-header {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 60%, #2A4080 100%) !important;
  width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: 32px 24px 38px !important;
  margin-bottom: 0 !important;
  border-radius: 0 !important;
  text-align: center !important;
}
body.page-id-1199 .entry-header::before {
  content: "STUDENT LEADERSHIP" !important;
  display: block !important;
  font-family: "Plus Jakarta Sans", "Rubik", sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.28em !important;
  color: #D4A24C !important;
  margin-bottom: 8px !important;
}
body.page-id-1199 .entry-title {
  color: #ffffff !important;
  font-family: "Plus Jakarta Sans", "Rubik", sans-serif !important;
  font-weight: 800 !important;
  font-size: clamp(22px, 2.8vw, 32px) !important;
  letter-spacing: -0.02em !important;
  text-align: center !important;
  margin: 0 !important;
  line-height: 1.2 !important;
}
body.page-id-1199 .entry-title::after {
  content: "" !important;
  display: block !important;
  width: 56px !important;
  height: 3px !important;
  margin: 10px auto 0 !important;
  background: linear-gradient(90deg, #D4A24C, #B6862F) !important;
  border-radius: 99px !important;
}

/* Wrapper */
body.page-id-1199 .cws-sc {
  max-width: 1180px;
  margin: 0 auto;
  padding: 48px 24px 64px;
  font-family: "Plus Jakarta Sans", "Rubik", system-ui, sans-serif;
  color: #0F1E3D;
}

/* Intro */
body.page-id-1199 .cws-sc-intro {
  text-align: center;
  margin-bottom: 36px;
}
body.page-id-1199 .cws-sc-eyebrow {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #B6862F;
  margin: 0 0 12px;
}
body.page-id-1199 .cws-sc-lead {
  font-size: clamp(16px, 1.55vw, 18px);
  line-height: 1.65;
  max-width: 780px;
  margin: 0 auto;
  color: #1A2D5C;
}
body.page-id-1199 .cws-sc-lead strong { color: #0F1E3D; }

/* Group photo */
body.page-id-1199 .cws-sc-photo {
  margin: 0 auto 56px;
  max-width: 1000px;
  border-radius: 18px;
  overflow: hidden;
  box-shadow:
    0 2px 0 rgba(15, 30, 61, 0.04),
    0 28px 56px -28px rgba(15, 30, 61, 0.28);
  background: #0F1E3D;
}
body.page-id-1199 .cws-sc-photo img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform .8s ease;
}
body.page-id-1199 .cws-sc-photo:hover img {
  transform: scale(1.02);
}
body.page-id-1199 .cws-sc-photo figcaption {
  text-align: center;
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #ffffff;
  background: linear-gradient(180deg, rgba(15,30,61,0) 0%, rgba(15,30,61,0.85) 100%);
  padding: 28px 16px 14px;
  margin-top: -56px;
  position: relative;
}

/* Subtitle */
body.page-id-1199 .cws-sc-subtitle {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 800;
  font-size: clamp(22px, 2.4vw, 30px);
  color: #0F1E3D;
  margin: 0 0 4px;
  letter-spacing: -0.01em;
  text-align: center;
}
body.page-id-1199 .cws-sc-subtitle::after {
  content: "";
  display: block;
  width: 48px;
  height: 3px;
  background: linear-gradient(90deg, #D4A24C, #B6862F);
  border-radius: 99px;
  margin: 10px auto 24px;
}
body.page-id-1199 .cws-sc-session-note {
  text-align: center;
  color: #64748B;
  font-size: 14px;
  margin: 0 0 28px;
}

/* Responsibilities */
body.page-id-1199 .cws-sc-resp { margin-bottom: 56px; }
body.page-id-1199 .cws-sc-resp-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 18px;
  max-width: 820px;
  margin: 0 auto;
}
body.page-id-1199 .cws-sc-resp-card {
  background: #ffffff;
  border-radius: 16px;
  padding: 24px 22px 22px;
  border: 1px solid rgba(15, 30, 61, 0.06);
  border-top: 3px solid #D4A24C;
  box-shadow: 0 14px 28px -16px rgba(15, 30, 61, 0.16);
  transition: transform .3s ease, box-shadow .3s ease;
  text-align: center;
}
body.page-id-1199 .cws-sc-resp-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 24px 40px -16px rgba(15, 30, 61, 0.28);
}
body.page-id-1199 .cws-sc-resp-icon {
  width: 52px;
  height: 52px;
  border-radius: 14px;
  background: rgba(212, 162, 76, 0.12);
  color: #B6862F;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 14px;
  transition: background .3s ease, color .3s ease, transform .3s ease;
}
body.page-id-1199 .cws-sc-resp-icon svg { width: 26px; height: 26px; }
body.page-id-1199 .cws-sc-resp-card:hover .cws-sc-resp-icon {
  background: #0F1E3D;
  color: #D4A24C;
  transform: scale(1.05);
}
body.page-id-1199 .cws-sc-resp-card h4 {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 700;
  font-size: 16px;
  color: #0F1E3D;
  margin: 0 0 8px;
}
body.page-id-1199 .cws-sc-resp-card p {
  font-size: 14px;
  line-height: 1.6;
  color: #475569;
  margin: 0;
}
body.page-id-1199 .cws-sc-resp-card p strong { color: #0F1E3D; }

/* Executive cards (Head Boy/Girl + Asst) */
body.page-id-1199 .cws-sc-exec {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 18px;
  margin-bottom: 48px;
}
body.page-id-1199 .cws-sc-exec-card {
  background: linear-gradient(135deg, #0F1E3D 0%, #1A2D5C 100%);
  color: #ffffff;
  border-radius: 18px;
  padding: 28px 22px 24px;
  text-align: center;
  border: 1px solid rgba(212, 162, 76, 0.25);
  box-shadow: 0 18px 36px -18px rgba(15, 30, 61, 0.4);
  transition: transform .3s ease, box-shadow .3s ease;
  position: relative;
  overflow: hidden;
  opacity: 0;
  transform: translateY(8px);
  animation: cws-sc-rise .5s ease forwards;
}
body.page-id-1199 .cws-sc-exec-card:nth-child(1) { animation-delay: .00s; }
body.page-id-1199 .cws-sc-exec-card:nth-child(2) { animation-delay: .08s; }
body.page-id-1199 .cws-sc-exec-card:nth-child(3) { animation-delay: .16s; }
body.page-id-1199 .cws-sc-exec-card:nth-child(4) { animation-delay: .24s; }
@keyframes cws-sc-rise { to { opacity: 1; transform: translateY(0); } }
body.page-id-1199 .cws-sc-exec-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 28px 48px -18px rgba(15, 30, 61, 0.55);
}
body.page-id-1199 .cws-sc-exec-card::before {
  content: "";
  position: absolute;
  top: -80px;
  right: -80px;
  width: 200px;
  height: 200px;
  background: radial-gradient(circle, rgba(212, 162, 76, 0.18), transparent 70%);
  pointer-events: none;
}
body.page-id-1199 .cws-sc-exec-avatar {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: linear-gradient(135deg, #D4A24C, #B6862F);
  color: #0F1E3D;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 800;
  font-size: 20px;
  letter-spacing: 0.04em;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 14px;
  box-shadow: 0 12px 24px -8px rgba(212, 162, 76, 0.45);
  position: relative;
  z-index: 1;
}
body.page-id-1199 .cws-sc-exec-badge {
  display: inline-block;
  padding: 4px 12px;
  border-radius: 999px;
  background: rgba(212, 162, 76, 0.18);
  color: #D4A24C;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  margin-bottom: 10px;
  border: 1px solid rgba(212, 162, 76, 0.35);
}
body.page-id-1199 .cws-sc-exec-card h3 {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 700;
  font-size: 16px;
  color: #ffffff;
  margin: 0;
  letter-spacing: -0.01em;
  line-height: 1.3;
  position: relative;
  z-index: 1;
}

/* Houses */
body.page-id-1199 .cws-sc-houses-title {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 700;
  font-size: 18px;
  color: #0F1E3D;
  text-align: center;
  margin: 0 0 24px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
body.page-id-1199 .cws-sc-houses {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
  margin-bottom: 56px;
}
body.page-id-1199 .cws-sc-house {
  background: #ffffff;
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid rgba(15, 30, 61, 0.06);
  box-shadow: 0 14px 28px -16px rgba(15, 30, 61, 0.18);
  transition: transform .3s ease, box-shadow .3s ease;
}
body.page-id-1199 .cws-sc-house:hover {
  transform: translateY(-4px);
  box-shadow: 0 24px 40px -16px rgba(15, 30, 61, 0.28);
}
body.page-id-1199 .cws-sc-house-banner {
  padding: 14px 18px;
  color: #ffffff;
  text-align: center;
}
body.page-id-1199 .cws-sc-house[data-house="red"]    .cws-sc-house-banner { background: linear-gradient(135deg, #DC2626, #991B1B); }
body.page-id-1199 .cws-sc-house[data-house="blue"]   .cws-sc-house-banner { background: linear-gradient(135deg, #1D4ED8, #1E3A8A); }
body.page-id-1199 .cws-sc-house[data-house="green"]  .cws-sc-house-banner { background: linear-gradient(135deg, #16A34A, #166534); }
body.page-id-1199 .cws-sc-house[data-house="yellow"] .cws-sc-house-banner { background: linear-gradient(135deg, #EAB308, #A16207); }
body.page-id-1199 .cws-sc-house-name {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 800;
  font-size: 16px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
body.page-id-1199 .cws-sc-house-body {
  padding: 18px 18px 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
body.page-id-1199 .cws-sc-house-role {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding-bottom: 10px;
  border-bottom: 1px dashed rgba(15, 30, 61, 0.10);
}
body.page-id-1199 .cws-sc-house-role:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
body.page-id-1199 .cws-sc-house-role-label {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #B6862F;
}
body.page-id-1199 .cws-sc-house-role-person {
  font-size: 14px;
  font-weight: 600;
  color: #0F1E3D;
  line-height: 1.4;
}
body.page-id-1199 .cws-sc-house-role-person em {
  color: #64748B;
  font-style: normal;
  font-weight: 500;
  font-size: 12px;
}

/* Archive (collapsible) */
body.page-id-1199 .cws-sc-archive {
  display: flex;
  flex-direction: column;
  gap: 12px;
  max-width: 880px;
  margin: 0 auto;
}
body.page-id-1199 .cws-sc-archive-item {
  background: #ffffff;
  border-radius: 14px;
  border: 1px solid rgba(15, 30, 61, 0.06);
  box-shadow: 0 12px 24px -16px rgba(15, 30, 61, 0.15);
  overflow: hidden;
  transition: box-shadow .3s ease, border-color .3s ease;
}
body.page-id-1199 .cws-sc-archive-item[open] {
  border-color: rgba(212, 162, 76, 0.35);
  box-shadow: 0 22px 36px -16px rgba(15, 30, 61, 0.22);
}
body.page-id-1199 .cws-sc-archive-item summary {
  list-style: none;
  cursor: pointer;
  padding: 18px 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  user-select: none;
}
body.page-id-1199 .cws-sc-archive-item summary::-webkit-details-marker { display: none; }
body.page-id-1199 .cws-sc-archive-year {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 700;
  font-size: 16px;
  color: #0F1E3D;
  letter-spacing: -0.01em;
}
body.page-id-1199 .cws-sc-archive-hint {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #B6862F;
  position: relative;
  padding-right: 22px;
}
body.page-id-1199 .cws-sc-archive-hint::after {
  content: "+";
  position: absolute;
  right: 0;
  top: -2px;
  font-size: 18px;
  font-weight: 800;
  line-height: 1;
  color: #B6862F;
  transition: transform .3s ease;
}
body.page-id-1199 .cws-sc-archive-item[open] .cws-sc-archive-hint::after {
  transform: rotate(45deg);
}
body.page-id-1199 .cws-sc-archive-body {
  padding: 4px 22px 22px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 22px;
  border-top: 1px dashed rgba(15, 30, 61, 0.08);
  padding-top: 18px;
}
body.page-id-1199 .cws-sc-archive-group h5 {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 700;
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #B6862F;
  margin: 0 0 12px;
}
body.page-id-1199 .cws-sc-archive-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
body.page-id-1199 .cws-sc-archive-list li {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 10px;
  font-size: 13px;
  color: #0F1E3D;
  padding: 8px 10px;
  background: #FAF9F5;
  border-radius: 8px;
  border-left: 3px solid #D4A24C;
}
body.page-id-1199 .cws-sc-archive-list li[data-house="red"]    { border-left-color: #DC2626; }
body.page-id-1199 .cws-sc-archive-list li[data-house="blue"]   { border-left-color: #1D4ED8; }
body.page-id-1199 .cws-sc-archive-list li[data-house="green"]  { border-left-color: #16A34A; }
body.page-id-1199 .cws-sc-archive-list li[data-house="yellow"] { border-left-color: #EAB308; }
body.page-id-1199 .cws-sc-archive-role {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #64748B;
  white-space: nowrap;
}
body.page-id-1199 .cws-sc-archive-list li > span:last-child {
  font-weight: 600;
  text-align: right;
  flex: 1;
  min-width: 0;
}

/* Mobile */
@media (max-width: 720px) {
  body.page-id-1199 .entry-header,
  body.page-id-1199 .ast-single-post-banner,
  body.page-id-1199 .page-header {
    padding: 24px 18px 28px !important;
  }
  body.page-id-1199 .entry-title { font-size: 22px !important; }
  body.page-id-1199 .cws-sc { padding: 28px 18px; }
  body.page-id-1199 .cws-sc-photo { margin-bottom: 36px; }
  body.page-id-1199 .cws-sc-archive-list li {
    flex-direction: column;
    align-items: stretch;
    gap: 4px;
  }
  body.page-id-1199 .cws-sc-archive-list li > span:last-child { text-align: left; }
}

/* === MANDATORY PUBLIC DISCLOSURE · v2.6.0 (page-id-1261) === */
body.page-id-1261 .entry-header,
body.page-id-1261 .ast-page-header,
body.page-id-1261 .page-header{
  background:linear-gradient(135deg,#0F1E3D 0%,#1A2D5C 55%,#2A4080 100%)!important;
  color:#fff!important;
  padding:32px 24px 38px!important;
  margin:0 0 36px!important;
  width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  text-align:center;
  position:relative;
  overflow:hidden;
}
body.page-id-1261 .entry-header::before{
  content:"MANDATORY PUBLIC DISCLOSURE";
  display:block;
  font:600 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.28em;
  color:#D4A24C;
  margin-bottom:10px;
}
body.page-id-1261 .entry-header .entry-title,
body.page-id-1261 .ast-page-header .page-title,
body.page-id-1261 .page-header h1{
  font:700 clamp(22px,2.8vw,32px)/1.15 'Plus Jakarta Sans',sans-serif!important;
  color:#fff!important;
  margin:0 auto!important;
  position:relative;
  padding-bottom:14px;
  max-width:760px;
}
body.page-id-1261 .entry-header .entry-title::after{
  content:"";
  position:absolute;
  bottom:0;left:50%;
  width:56px;height:3px;
  background:#D4A24C;
  transform:translateX(-50%);
  border-radius:2px;
}

body.page-id-1261 .cws-mpd{
  font-family:'Plus Jakarta Sans',sans-serif;
  color:#1F2937;
  max-width:1180px;
  margin:0 auto;
  padding:0 18px 64px;
}

body.page-id-1261 .cws-mpd-intro{
  background:#F8FAFC;
  border:1px solid #E5E7EB;
  border-left:4px solid #D4A24C;
  border-radius:14px;
  padding:24px 26px;
  margin-bottom:32px;
}
body.page-id-1261 .cws-mpd-eyebrow{
  font:600 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.22em;
  color:#8a6418;
  text-transform:uppercase;
  margin:0 0 8px;
}
body.page-id-1261 .cws-mpd-lead{
  font:500 15.5px/1.65 'Plus Jakarta Sans',sans-serif;
  color:#374151;
  margin:0 0 16px;
}
body.page-id-1261 .cws-mpd-stats{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}
body.page-id-1261 .cws-mpd-stats li{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:#fff;
  border:1px solid #E5E7EB;
  padding:8px 14px;
  border-radius:999px;
  font:600 13px/1 'Plus Jakarta Sans',sans-serif;
  color:#0F1E3D;
}
body.page-id-1261 .cws-mpd-stats b{
  color:#D4A24C;
  font-weight:800;
}

body.page-id-1261 .cws-mpd-group{
  background:#fff;
  border:1px solid #E5E7EB;
  border-radius:16px;
  padding:24px 26px;
  margin-bottom:18px;
  box-shadow:0 1px 2px rgba(15,30,61,.04);
  transition:box-shadow .2s ease,transform .2s ease;
}
body.page-id-1261 .cws-mpd-group:hover{
  box-shadow:0 8px 22px rgba(15,30,61,.08);
  transform:translateY(-2px);
}
body.page-id-1261 .cws-mpd-group-head{
  display:flex;
  align-items:center;
  gap:16px;
  padding-bottom:16px;
  margin-bottom:16px;
  border-bottom:1px dashed #E5E7EB;
}
body.page-id-1261 .cws-mpd-group-num{
  flex-shrink:0;
  width:48px;height:48px;
  display:grid;place-items:center;
  border-radius:50%;
  font:800 16px/1 'Plus Jakarta Sans',sans-serif;
  color:#fff;
  background:#0F1E3D;
  letter-spacing:.02em;
}
body.page-id-1261 .cws-mpd-group[data-group="affiliation"] .cws-mpd-group-num{background:linear-gradient(135deg,#0F1E3D,#2A4080);}
body.page-id-1261 .cws-mpd-group[data-group="compliance"] .cws-mpd-group-num{background:linear-gradient(135deg,#B91C1C,#DC2626);}
body.page-id-1261 .cws-mpd-group[data-group="academics"] .cws-mpd-group-num{background:linear-gradient(135deg,#0E7490,#06B6D4);}
body.page-id-1261 .cws-mpd-group[data-group="governance"] .cws-mpd-group-num{background:linear-gradient(135deg,#6D28D9,#8B5CF6);}
body.page-id-1261 .cws-mpd-group[data-group="forms"] .cws-mpd-group-num{background:linear-gradient(135deg,#B6862F,#D4A24C);}

body.page-id-1261 .cws-mpd-group-head h2{
  margin:0 0 4px;
  font:700 19px/1.25 'Plus Jakarta Sans',sans-serif;
  color:#0F1E3D;
}
body.page-id-1261 .cws-mpd-group-head p{
  margin:0;
  font:500 13px/1.5 'Plus Jakarta Sans',sans-serif;
  color:#6B7280;
}

body.page-id-1261 .cws-mpd-doc-list{
  list-style:none;
  margin:0;padding:0;
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(320px,1fr));
  gap:10px;
}
body.page-id-1261 .cws-mpd-doc{
  display:flex;
  align-items:center;
  gap:14px;
  padding:12px 14px;
  background:#F8FAFC;
  border:1px solid #E5E7EB;
  border-radius:12px;
  transition:background .15s ease,border-color .15s ease,transform .15s ease;
}
body.page-id-1261 .cws-mpd-doc:hover{
  background:#fff;
  border-color:#D4A24C;
  transform:translateX(2px);
}
body.page-id-1261 .cws-mpd-doc-icon{
  flex-shrink:0;
  width:36px;height:36px;
  display:grid;place-items:center;
  border-radius:9px;
  background:#fff;
  border:1px solid #E5E7EB;
  color:#0F1E3D;
}
body.page-id-1261 .cws-mpd-group[data-group="compliance"] .cws-mpd-doc-icon{color:#B91C1C;}
body.page-id-1261 .cws-mpd-group[data-group="academics"] .cws-mpd-doc-icon{color:#0E7490;}
body.page-id-1261 .cws-mpd-group[data-group="governance"] .cws-mpd-doc-icon{color:#6D28D9;}
body.page-id-1261 .cws-mpd-group[data-group="forms"] .cws-mpd-doc-icon{color:#B6862F;}
body.page-id-1261 .cws-mpd-doc-icon svg{width:18px;height:18px;}
body.page-id-1261 .cws-mpd-doc-meta{
  flex:1;
  min-width:0;
}
body.page-id-1261 .cws-mpd-doc-name{
  display:block;
  font:600 14px/1.35 'Plus Jakarta Sans',sans-serif;
  color:#0F1E3D;
  margin-bottom:2px;
}
body.page-id-1261 .cws-mpd-doc-type{
  display:block;
  font:500 11px/1 'Plus Jakarta Sans',sans-serif;
  color:#9CA3AF;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.page-id-1261 .cws-mpd-doc-btn{
  flex-shrink:0;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 12px;
  font:700 12px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.04em;
  color:#0F1E3D;
  background:#fff;
  border:1.5px solid #0F1E3D;
  border-radius:8px;
  text-decoration:none;
  transition:background .15s ease,color .15s ease;
}
body.page-id-1261 .cws-mpd-doc-btn:hover{
  background:#0F1E3D;
  color:#fff;
}
body.page-id-1261 .cws-mpd-doc-btn svg{width:12px;height:12px;}

@media (max-width:720px){
  body.page-id-1261 .cws-mpd-group{padding:18px;}
  body.page-id-1261 .cws-mpd-group-num{width:40px;height:40px;font-size:14px;}
  body.page-id-1261 .cws-mpd-group-head h2{font-size:17px;}
  body.page-id-1261 .cws-mpd-doc{flex-wrap:wrap;}
  body.page-id-1261 .cws-mpd-doc-btn{margin-left:auto;}
}

/* === AISSE RESULTS (CLASS-X) · v2.7.0 (page-id-1200) === */
body.page-id-1200 .entry-header,
body.page-id-1200 .ast-page-header,
body.page-id-1200 .page-header{
  background:linear-gradient(135deg,#0F1E3D 0%,#1A2D5C 55%,#2A4080 100%)!important;
  color:#fff!important;
  padding:32px 24px 38px!important;
  margin:0 0 36px!important;
  width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  text-align:center;
  position:relative;
  overflow:hidden;
}
body.page-id-1200 .entry-header::before{
  content:"AISSE · CLASS X";
  display:block;
  font:600 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.28em;
  color:#D4A24C;
  margin-bottom:10px;
}
body.page-id-1200 .entry-header .entry-title,
body.page-id-1200 .ast-page-header .page-title,
body.page-id-1200 .page-header h1{
  font:700 clamp(22px,2.8vw,32px)/1.15 'Plus Jakarta Sans',sans-serif!important;
  color:#fff!important;
  margin:0 auto!important;
  position:relative;
  padding-bottom:14px;
  max-width:760px;
}
body.page-id-1200 .entry-header .entry-title::after{
  content:"";
  position:absolute;
  bottom:0;left:50%;
  width:56px;height:3px;
  background:#D4A24C;
  transform:translateX(-50%);
  border-radius:2px;
}

body.page-id-1200 .wp-block-essential-blocks-image-gallery{display:none!important;}

body.page-id-1200 .cws-aisse{
  font-family:'Plus Jakarta Sans',sans-serif;
  color:#1F2937;
  max-width:1180px;
  margin:0 auto;
  padding:0 18px 64px;
}

body.page-id-1200 .cws-aisse-intro{
  background:#F8FAFC;
  border:1px solid #E5E7EB;
  border-left:4px solid #D4A24C;
  border-radius:14px;
  padding:24px 26px;
  margin-bottom:32px;
}
body.page-id-1200 .cws-aisse-eyebrow{
  font:600 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.22em;
  color:#8a6418;
  text-transform:uppercase;
  margin:0 0 8px;
}
body.page-id-1200 .cws-aisse-lead{
  font:500 15.5px/1.65 'Plus Jakarta Sans',sans-serif;
  color:#374151;
  margin:0 0 16px;
}
body.page-id-1200 .cws-aisse-stats{
  display:flex;flex-wrap:wrap;gap:10px;
  margin:0;padding:0;list-style:none;
}
body.page-id-1200 .cws-aisse-stats li{
  background:#fff;
  border:1px solid #E5E7EB;
  padding:8px 14px;
  border-radius:999px;
  font:600 13px/1 'Plus Jakarta Sans',sans-serif;
  color:#0F1E3D;
}
body.page-id-1200 .cws-aisse-stats b{color:#D4A24C;font-weight:800;margin-right:4px;}

body.page-id-1200 .cws-aisse-featured{
  display:grid;
  grid-template-columns:1fr 1.4fr;
  gap:0;
  background:linear-gradient(135deg,#0F1E3D 0%,#1A2D5C 100%);
  border-radius:18px;
  overflow:hidden;
  margin-bottom:48px;
  box-shadow:0 14px 36px rgba(15,30,61,.18);
}
body.page-id-1200 .cws-aisse-featured-meta{
  padding:38px 36px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  color:#fff;
}
body.page-id-1200 .cws-aisse-tag{
  display:inline-block;
  align-self:flex-start;
  padding:5px 12px;
  background:rgba(212,162,76,.18);
  border:1px solid rgba(212,162,76,.45);
  color:#D4A24C;
  font:700 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.18em;
  text-transform:uppercase;
  border-radius:999px;
  margin-bottom:14px;
}
body.page-id-1200 .cws-aisse-featured-meta h2{
  font:800 32px/1.1 'Plus Jakarta Sans',sans-serif;
  margin:0 0 10px;
  color:#fff;
}
body.page-id-1200 .cws-aisse-featured-meta p{
  font:500 15px/1.6 'Plus Jakarta Sans',sans-serif;
  color:#CBD5E1;
  margin:0 0 22px;
}
body.page-id-1200 .cws-aisse-btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  align-self:flex-start;
  padding:12px 22px;
  background:#D4A24C;
  color:#0F1E3D;
  font:700 13px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.08em;
  text-transform:uppercase;
  border-radius:10px;
  text-decoration:none;
  transition:background .2s ease,transform .2s ease;
}
body.page-id-1200 .cws-aisse-btn:hover{background:#E5B25C;transform:translateX(3px);}
body.page-id-1200 .cws-aisse-btn svg{width:14px;height:14px;}

body.page-id-1200 .cws-aisse-featured-img{
  display:block;
  overflow:hidden;
  background:#fff;
  position:relative;
}
body.page-id-1200 .cws-aisse-featured-img img{
  width:100%;
  height:100%;
  min-height:340px;
  object-fit:cover;
  object-position:center top;
  display:block;
  transition:transform .4s ease;
}
body.page-id-1200 .cws-aisse-featured-img:hover img{transform:scale(1.03);}

body.page-id-1200 .cws-aisse-archive-title{
  font:700 22px/1.2 'Plus Jakarta Sans',sans-serif;
  color:#0F1E3D;
  margin:0 0 6px;
  position:relative;
  padding-bottom:10px;
}
body.page-id-1200 .cws-aisse-archive-title::after{
  content:"";
  display:block;
  position:absolute;
  bottom:0;left:0;
  width:44px;height:3px;
  background:#D4A24C;
  border-radius:2px;
}

body.page-id-1200 .cws-aisse-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
  gap:18px;
  margin-top:22px;
}
body.page-id-1200 .cws-aisse-card{
  display:flex;
  flex-direction:column;
  background:#fff;
  border:1px solid #E5E7EB;
  border-radius:14px;
  overflow:hidden;
  text-decoration:none;
  color:inherit;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
body.page-id-1200 .cws-aisse-card:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 30px rgba(15,30,61,.12);
  border-color:#D4A24C;
}
body.page-id-1200 .cws-aisse-card-img{
  aspect-ratio:4/3;
  overflow:hidden;
  background:#F1F5F9;
}
body.page-id-1200 .cws-aisse-card-img img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  display:block;
  transition:transform .4s ease;
}
body.page-id-1200 .cws-aisse-card:hover .cws-aisse-card-img img{transform:scale(1.06);}
body.page-id-1200 .cws-aisse-card-body{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 18px;
  border-top:1px solid #E5E7EB;
}
body.page-id-1200 .cws-aisse-card-year{
  font:800 22px/1 'Plus Jakarta Sans',sans-serif;
  color:#0F1E3D;
  letter-spacing:-.01em;
}
body.page-id-1200 .cws-aisse-card-label{
  font:700 11px/1 'Plus Jakarta Sans',sans-serif;
  color:#8a6418;
  letter-spacing:.16em;
  text-transform:uppercase;
}

@media (max-width:780px){
  body.page-id-1200 .cws-aisse-featured{grid-template-columns:1fr;}
  body.page-id-1200 .cws-aisse-featured-meta{padding:28px 24px;order:2;}
  body.page-id-1200 .cws-aisse-featured-img{order:1;}
  body.page-id-1200 .cws-aisse-featured-img img{min-height:240px;}
  body.page-id-1200 .cws-aisse-featured-meta h2{font-size:26px;}
}

/* === NOTIFICATIONS · v2.8.0 (page-id-1737) === */
body.page-id-1737 .entry-header,
body.page-id-1737 .ast-page-header,
body.page-id-1737 .page-header{
  background:linear-gradient(135deg,#0F1E3D 0%,#1A2D5C 55%,#2A4080 100%)!important;
  color:#fff!important;
  padding:32px 24px 38px!important;
  margin:0 0 36px!important;
  width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  text-align:center;
  position:relative;
  overflow:hidden;
}
body.page-id-1737 .entry-header::before{
  content:"SCHOOL NOTIFICATIONS";
  display:block;
  font:600 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.28em;
  color:#D4A24C;
  margin-bottom:10px;
}
body.page-id-1737 .entry-header .entry-title,
body.page-id-1737 .ast-page-header .page-title,
body.page-id-1737 .page-header h1{
  font:700 clamp(22px,2.8vw,32px)/1.15 'Plus Jakarta Sans',sans-serif!important;
  color:#fff!important;
  margin:0 auto!important;
  position:relative;
  padding-bottom:14px;
  max-width:760px;
}
body.page-id-1737 .entry-header .entry-title::after{
  content:"";
  position:absolute;
  bottom:0;left:50%;
  width:56px;height:3px;
  background:#D4A24C;
  transform:translateX(-50%);
  border-radius:2px;
}

body.page-id-1737 .cws-notif{
  font-family:'Plus Jakarta Sans',sans-serif;
  color:#1F2937;
  max-width:1180px;
  margin:0 auto;
  padding:0 18px 0;
}

body.page-id-1737 .cws-notif-intro{
  background:#F8FAFC;
  border:1px solid #E5E7EB;
  border-left:4px solid #D4A24C;
  border-radius:14px;
  padding:24px 26px;
  margin-bottom:30px;
}
body.page-id-1737 .cws-notif-eyebrow{
  font:600 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.22em;
  color:#8a6418;
  text-transform:uppercase;
  margin:0 0 8px;
}
body.page-id-1737 .cws-notif-lead{
  font:500 15.5px/1.65 'Plus Jakarta Sans',sans-serif;
  color:#374151;
  margin:0 0 16px;
}
body.page-id-1737 .cws-notif-meta-pills{
  display:flex;flex-wrap:wrap;gap:10px;
  margin:0;padding:0;list-style:none;
}
body.page-id-1737 .cws-notif-meta-pills li{
  display:inline-flex;align-items:center;gap:8px;
  background:#fff;
  border:1px solid #E5E7EB;
  padding:8px 14px;
  border-radius:999px;
  font:600 13px/1 'Plus Jakarta Sans',sans-serif;
  color:#0F1E3D;
}
body.page-id-1737 .cws-notif-meta-pills svg{
  width:14px;height:14px;color:#D4A24C;
}

body.page-id-1737 .cws-notif-feed-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:16px;
  margin:0 0 20px;
  padding-bottom:12px;
  border-bottom:1px solid #E5E7EB;
  position:relative;
}
body.page-id-1737 .cws-notif-feed-head::after{
  content:"";
  position:absolute;
  bottom:-1px;left:0;
  width:54px;height:3px;
  background:#D4A24C;
  border-radius:2px;
}
body.page-id-1737 .cws-notif-feed-head h2{
  margin:0;
  font:700 22px/1.2 'Plus Jakarta Sans',sans-serif;
  color:#0F1E3D;
}
body.page-id-1737 .cws-notif-feed-hint{
  font:600 12px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#9CA3AF;
}

/* Content Views grid override */
body.page-id-1737 .pt-cv-wrapper,
body.page-id-1737 .pt-cv-view{
  margin:0!important;
  padding:0!important;
}
body.page-id-1737 .pt-cv-content-item{
  background:#fff;
  border:1px solid #E5E7EB;
  border-radius:14px;
  overflow:hidden;
  margin-bottom:18px!important;
  padding:0!important;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
  display:flex;
  flex-direction:column;
}
body.page-id-1737 .pt-cv-content-item:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 30px rgba(15,30,61,.12);
  border-color:#D4A24C;
}
body.page-id-1737 .pt-cv-content-item .pt-cv-thumbnail,
body.page-id-1737 .pt-cv-content-item .pt-cv-thumb-wrapper{
  margin:0!important;
  overflow:hidden;
  background:#F1F5F9;
}
body.page-id-1737 .pt-cv-content-item .pt-cv-thumbnail img,
body.page-id-1737 .pt-cv-content-item .pt-cv-thumb-wrapper img{
  width:100%;
  height:220px;
  object-fit:cover;
  display:block;
  transition:transform .4s ease;
}
body.page-id-1737 .pt-cv-content-item:hover img{transform:scale(1.04);}

body.page-id-1737 .pt-cv-content-item .pt-cv-title{
  padding:16px 20px 4px;
  margin:0!important;
}
body.page-id-1737 .pt-cv-content-item .pt-cv-title a{
  font:700 17px/1.35 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  text-decoration:none;
}
body.page-id-1737 .pt-cv-content-item .pt-cv-title a:hover{color:#8a6418!important;}
body.page-id-1737 .pt-cv-content-item .pt-cv-meta-fields,
body.page-id-1737 .pt-cv-content-item .pt-cv-cfs{
  padding:0 20px 16px;
  margin:0!important;
  font:500 12px/1.4 'Plus Jakarta Sans',sans-serif!important;
  color:#6B7280!important;
}
body.page-id-1737 .pt-cv-content-item .pt-cv-meta-fields a{color:#8a6418!important;text-decoration:none;}

body.page-id-1737 .pt-cv-content-item::before{
  content:"";
  display:block;
  height:3px;
  background:linear-gradient(90deg,#D4A24C 0%,#B6862F 100%);
}

body.page-id-1737 .cws-notif-empty-note{
  display:flex;
  align-items:flex-start;
  gap:14px;
  padding:18px 22px;
  background:#FEF8EA;
  border:1px solid #F3DEAA;
  border-radius:12px;
  margin:30px 0 40px;
}
body.page-id-1737 .cws-notif-empty-note svg{
  flex-shrink:0;
  width:22px;height:22px;
  color:#8a6418;
  margin-top:2px;
}
body.page-id-1737 .cws-notif-empty-note p{
  margin:0;
  font:500 14.5px/1.55 'Plus Jakarta Sans',sans-serif;
  color:#5C4514;
}
body.page-id-1737 .cws-notif-empty-note a{
  color:#0F1E3D;
  font-weight:700;
  text-decoration:underline;
  text-decoration-color:#D4A24C;
  text-underline-offset:3px;
}

@media (max-width:720px){
  body.page-id-1737 .cws-notif-intro{padding:20px;}
  body.page-id-1737 .cws-notif-feed-head{flex-direction:column;align-items:flex-start;gap:4px;}
  body.page-id-1737 .pt-cv-content-item .pt-cv-thumbnail img{height:180px;}
}

/* === BLOGS · v2.9.0 (page-id-2102) === */
body.page-id-2102 .entry-header,
body.page-id-2102 .ast-page-header,
body.page-id-2102 .page-header{
  background:linear-gradient(135deg,#0F1E3D 0%,#1A2D5C 55%,#2A4080 100%)!important;
  color:#fff!important;
  padding:32px 24px 38px!important;
  margin:0 0 36px!important;
  width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  text-align:center;
  position:relative;
  overflow:hidden;
}
body.page-id-2102 .entry-header::before{
  content:"FROM THE CAMPUS";
  display:block;
  font:600 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.28em;
  color:#D4A24C;
  margin-bottom:10px;
}
body.page-id-2102 .entry-header .entry-title,
body.page-id-2102 .ast-page-header .page-title,
body.page-id-2102 .page-header h1{
  font:700 clamp(22px,2.8vw,32px)/1.15 'Plus Jakarta Sans',sans-serif!important;
  color:#fff!important;
  margin:0 auto!important;
  position:relative;
  padding-bottom:14px;
  max-width:760px;
}
body.page-id-2102 .entry-header .entry-title::after{
  content:"";
  position:absolute;
  bottom:0;left:50%;
  width:56px;height:3px;
  background:#D4A24C;
  transform:translateX(-50%);
  border-radius:2px;
}

body.page-id-2102 .cws-blogs{
  font-family:'Plus Jakarta Sans',sans-serif;
  color:#1F2937;
  max-width:1180px;
  margin:0 auto;
  padding:0 18px 0;
}

body.page-id-2102 .cws-blogs-intro{
  background:#F8FAFC;
  border:1px solid #E5E7EB;
  border-left:4px solid #D4A24C;
  border-radius:14px;
  padding:24px 26px;
  margin-bottom:30px;
}
body.page-id-2102 .cws-blogs-eyebrow{
  font:600 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.22em;
  color:#8a6418;
  text-transform:uppercase;
  margin:0 0 8px;
}
body.page-id-2102 .cws-blogs-lead{
  font:500 15.5px/1.65 'Plus Jakarta Sans',sans-serif;
  color:#374151;
  margin:0 0 16px;
}
body.page-id-2102 .cws-blogs-meta-pills{
  display:flex;flex-wrap:wrap;gap:10px;
  margin:0;padding:0;list-style:none;
}
body.page-id-2102 .cws-blogs-meta-pills li{
  display:inline-flex;align-items:center;gap:8px;
  background:#fff;
  border:1px solid #E5E7EB;
  padding:8px 14px;
  border-radius:999px;
  font:600 13px/1 'Plus Jakarta Sans',sans-serif;
  color:#0F1E3D;
}
body.page-id-2102 .cws-blogs-meta-pills svg{
  width:14px;height:14px;color:#D4A24C;
}

body.page-id-2102 .cws-blogs-feed-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:16px;
  margin:0 0 22px;
  padding-bottom:12px;
  border-bottom:1px solid #E5E7EB;
  position:relative;
}
body.page-id-2102 .cws-blogs-feed-head::after{
  content:"";
  position:absolute;
  bottom:-1px;left:0;
  width:54px;height:3px;
  background:#D4A24C;
  border-radius:2px;
}
body.page-id-2102 .cws-blogs-feed-head h2{
  margin:0;
  font:700 22px/1.2 'Plus Jakarta Sans',sans-serif;
  color:#0F1E3D;
}
body.page-id-2102 .cws-blogs-feed-hint{
  font:600 12px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#9CA3AF;
}

/* Core query block grid override */
body.page-id-2102 .wp-block-query{
  margin:0!important;
}
body.page-id-2102 .wp-block-post-template{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(300px,1fr))!important;
  gap:22px!important;
  list-style:none!important;
  padding:0!important;
  margin:0 0 30px!important;
}
body.page-id-2102 .wp-block-post-template > li,
body.page-id-2102 .wp-block-post{
  background:#fff;
  border:1px solid #E5E7EB;
  border-radius:14px;
  overflow:hidden;
  padding:0!important;
  margin:0!important;
  display:flex!important;
  flex-direction:column;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
  position:relative;
}
body.page-id-2102 .wp-block-post::before{
  content:"";
  position:absolute;top:0;left:0;right:0;
  height:3px;
  background:linear-gradient(90deg,#D4A24C 0%,#B6862F 100%);
  z-index:2;
}
body.page-id-2102 .wp-block-post:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 30px rgba(15,30,61,.12);
  border-color:#D4A24C;
}
body.page-id-2102 .wp-block-post .wp-block-post-featured-image{
  margin:0!important;
  overflow:hidden;
  background:#F1F5F9;
  aspect-ratio:16/10;
}
body.page-id-2102 .wp-block-post .wp-block-post-featured-image a,
body.page-id-2102 .wp-block-post .wp-block-post-featured-image{display:block;height:100%;}
body.page-id-2102 .wp-block-post .wp-block-post-featured-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .4s ease;
}
body.page-id-2102 .wp-block-post:hover .wp-block-post-featured-image img{transform:scale(1.05);}

body.page-id-2102 .wp-block-post .wp-block-post-title{
  margin:18px 22px 6px!important;
  font:700 17px/1.35 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
}
body.page-id-2102 .wp-block-post .wp-block-post-title a{
  color:#0F1E3D!important;
  text-decoration:none!important;
  background:none!important;
}
body.page-id-2102 .wp-block-post .wp-block-post-title a:hover{color:#8a6418!important;}

body.page-id-2102 .wp-block-post .wp-block-post-date,
body.page-id-2102 .wp-block-post .wp-block-post-date time{
  margin:0 22px 12px!important;
  font:600 11px/1 'Plus Jakarta Sans',sans-serif!important;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#8a6418!important;
}

body.page-id-2102 .wp-block-post .wp-block-post-excerpt{
  margin:0 22px 18px!important;
  padding:0!important;
  font:500 14px/1.6 'Plus Jakarta Sans',sans-serif!important;
  color:#4B5563!important;
}
body.page-id-2102 .wp-block-post .wp-block-post-excerpt p{
  margin:0 0 10px!important;
  color:#4B5563!important;
}
body.page-id-2102 .wp-block-post .wp-block-post-excerpt__more-text,
body.page-id-2102 .wp-block-post .wp-block-post-excerpt__more-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font:700 12px/1 'Plus Jakarta Sans',sans-serif!important;
  letter-spacing:.06em;
  color:#0F1E3D!important;
  text-decoration:none!important;
  border-bottom:1.5px solid #D4A24C;
  padding-bottom:2px;
}
body.page-id-2102 .wp-block-post .wp-block-post-excerpt__more-link:hover{color:#8a6418!important;}

/* Pagination */
body.page-id-2102 .wp-block-query-pagination{
  display:flex;
  justify-content:center;
  gap:10px;
  margin:24px 0 50px!important;
  flex-wrap:wrap;
}
body.page-id-2102 .wp-block-query-pagination .page-numbers,
body.page-id-2102 .wp-block-query-pagination a,
body.page-id-2102 .wp-block-query-pagination span{
  display:inline-flex;
  align-items:center;
  padding:8px 14px;
  border-radius:8px;
  font:700 13px/1 'Plus Jakarta Sans',sans-serif!important;
  background:#fff;
  border:1px solid #E5E7EB;
  color:#0F1E3D!important;
  text-decoration:none!important;
  transition:background .15s ease,color .15s ease,border-color .15s ease;
}
body.page-id-2102 .wp-block-query-pagination .page-numbers.current,
body.page-id-2102 .wp-block-query-pagination .current{
  background:#0F1E3D;
  color:#fff!important;
  border-color:#0F1E3D;
}
body.page-id-2102 .wp-block-query-pagination a:hover{
  border-color:#D4A24C;
  color:#8a6418!important;
}

@media (max-width:720px){
  body.page-id-2102 .cws-blogs-intro{padding:20px;}
  body.page-id-2102 .cws-blogs-feed-head{flex-direction:column;align-items:flex-start;gap:4px;}
  body.page-id-2102 .wp-block-post-template{grid-template-columns:1fr!important;gap:16px!important;}
}

/* === HOME · WELCOME + ABOUT BLOCK · v3.0.0 (page-id-1171) === */
body.page-id-1171 .root-eb-row-cd177tq{
  padding:64px 24px 56px!important;
  background:
    radial-gradient(ellipse 60% 80% at 50% 0%,rgba(212,162,76,.08) 0%,transparent 70%),
    linear-gradient(180deg,#FDFCF8 0%,#F8FAFC 100%)!important;
  position:relative;
  overflow:hidden;
}
body.page-id-1171 .root-eb-row-cd177tq::before{
  content:"";
  position:absolute;
  top:0;left:50%;
  transform:translateX(-50%);
  width:80px;height:4px;
  background:linear-gradient(90deg,#D4A24C,#B6862F);
  border-radius:0 0 4px 4px;
}

body.page-id-1171 .eb-column-up0j1l4 .eb-column-inner{
  max-width:840px;
  margin:0 auto;
  text-align:center;
}

body.page-id-1171 .eb-column-up0j1l4 h1.wp-block-heading{
  font:800 clamp(28px,4vw,44px)/1.15 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:0 auto 14px!important;
  letter-spacing:-.02em;
  position:relative;
  padding-bottom:18px;
}
body.page-id-1171 .eb-column-up0j1l4 h1.wp-block-heading::after{
  content:"";
  position:absolute;
  bottom:0;left:50%;
  transform:translateX(-50%);
  width:64px;height:3px;
  background:#D4A24C;
  border-radius:2px;
}

body.page-id-1171 .cws-home-tagline{
  font:700 13px/1 'Plus Jakarta Sans',sans-serif!important;
  letter-spacing:.32em!important;
  text-transform:uppercase;
  color:#8a6418!important;
  margin:0 auto 26px!important;
  padding:0!important;
  display:inline-block;
  position:relative;
}
body.page-id-1171 .has-text-align-center.cws-home-tagline{
  display:block;
}

body.page-id-1171 .eb-column-up0j1l4 p:not(.cws-home-tagline){
  font:500 16px/1.75 'Plus Jakarta Sans',sans-serif!important;
  color:#374151!important;
  margin:0 auto 18px!important;
  max-width:720px;
  letter-spacing:.005em;
}

body.page-id-1171 hr.cws-home-divider{
  border:none!important;
  height:auto!important;
  background:none!important;
  margin:36px auto 30px!important;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  max-width:240px;
}
body.page-id-1171 hr.cws-home-divider::before,
body.page-id-1171 hr.cws-home-divider::after{
  content:"";
  flex:1;
  height:1px;
  background:linear-gradient(90deg,transparent,#D4A24C,transparent);
}
body.page-id-1171 hr.cws-home-divider::after{
  background:linear-gradient(90deg,transparent,#D4A24C,transparent);
}
body.page-id-1171 hr.cws-home-divider{
  position:relative;
}
body.page-id-1171 hr.cws-home-divider+*{margin-top:0;}

/* diamond ornament in the centre of the divider */
body.page-id-1171 .eb-column-up0j1l4 hr.cws-home-divider{
  background:
    linear-gradient(90deg,transparent 0%,rgba(212,162,76,.6) 30%,rgba(212,162,76,.6) 70%,transparent 100%) center/100% 1px no-repeat!important;
  height:18px!important;
}
body.page-id-1171 .eb-column-up0j1l4 hr.cws-home-divider::before,
body.page-id-1171 .eb-column-up0j1l4 hr.cws-home-divider::after{
  display:none;
}
body.page-id-1171 .eb-column-up0j1l4 hr.cws-home-divider{
  display:block;
}
body.page-id-1171 .eb-column-up0j1l4 hr.cws-home-divider{
  position:relative;
}
body.page-id-1171 .eb-column-up0j1l4 hr.cws-home-divider::before{
  display:block;
  content:"";
  position:absolute;
  top:50%;left:50%;
  transform:translate(-50%,-50%) rotate(45deg);
  width:12px;height:12px;
  background:#D4A24C;
  border:2px solid #FDFCF8;
}

body.page-id-1171 .eb-column-up0j1l4 h2.wp-block-heading{
  font:700 clamp(22px,2.8vw,30px)/1.25 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:0 auto 22px!important;
  position:relative;
  padding-top:8px;
}
body.page-id-1171 .eb-column-up0j1l4 h2.wp-block-heading::before{
  content:"OUR INSTITUTION";
  display:block;
  font:600 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.28em;
  color:#8a6418;
  text-transform:uppercase;
  margin-bottom:10px;
}

@media (max-width:720px){
  body.page-id-1171 .root-eb-row-cd177tq{padding:42px 18px 38px!important;}
  body.page-id-1171 .eb-column-up0j1l4 h1.wp-block-heading{font-size:26px!important;}
  body.page-id-1171 .cws-home-tagline{font-size:11px!important;letter-spacing:.26em!important;}
  body.page-id-1171 .eb-column-up0j1l4 p:not(.cws-home-tagline){font-size:14.5px!important;}
}

/* === HOME · WELCOME + ABOUT (SEPARATE CARDS) · v3.1.0 (page-id-1171) === */

/* Remove the previous shared background so each card stands on its own */
body.page-id-1171 .root-eb-row-cd177tq{
  padding:56px 18px 36px!important;
  background:#F1F3F8!important;
}
body.page-id-1171 .root-eb-row-cd177tq::before{display:none;}

body.page-id-1171 .eb-column-up0j1l4 .eb-column-inner{
  max-width:1100px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:26px;
  text-align:left;
}

/* Shared card chrome */
body.page-id-1171 .cws-welcome-card,
body.page-id-1171 .cws-about-card{
  position:relative;
  border-radius:18px;
  padding:38px 34px 34px!important;
  box-shadow:0 14px 36px rgba(15,30,61,.10);
  overflow:hidden;
}

/* === WELCOME CARD : navy with subtle gold === */
body.page-id-1171 .cws-welcome-card{
  background:
    radial-gradient(ellipse 60% 80% at 0% 0%,rgba(212,162,76,.12) 0%,transparent 60%),
    linear-gradient(135deg,#0F1E3D 0%,#1A2D5C 60%,#2A4080 100%);
  color:#fff;
  border:1px solid rgba(212,162,76,.25);
}
body.page-id-1171 .cws-welcome-card::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:4px;
  background:linear-gradient(90deg,#D4A24C 0%,#B6862F 100%);
}
body.page-id-1171 .cws-welcome-card h1.wp-block-heading{
  font:800 clamp(22px,2.6vw,30px)/1.2 'Plus Jakarta Sans',sans-serif!important;
  color:#fff!important;
  margin:8px auto 14px!important;
  letter-spacing:-.01em;
  padding-bottom:14px;
  position:relative;
}
body.page-id-1171 .cws-welcome-card h1.wp-block-heading::after{
  content:"";
  position:absolute;
  bottom:0;left:50%;
  transform:translateX(-50%);
  width:54px;height:3px;
  background:#D4A24C;
  border-radius:2px;
}
body.page-id-1171 .cws-welcome-card p.cws-home-tagline{
  font:700 12px/1 'Plus Jakarta Sans',sans-serif!important;
  letter-spacing:.32em!important;
  text-transform:uppercase;
  color:#D4A24C!important;
  margin:0 auto 24px!important;
  padding:0!important;
}
body.page-id-1171 .cws-welcome-card p:not(.cws-home-tagline){
  font:500 15px/1.7 'Plus Jakarta Sans',sans-serif!important;
  color:#E2E8F0!important;
  margin:0 auto 14px!important;
  max-width:none!important;
  text-align:left!important;
}
body.page-id-1171 .cws-welcome-card p:not(.cws-home-tagline).has-text-align-center{text-align:left!important;}

/* === ABOUT CARD : cream with navy text === */
body.page-id-1171 .cws-about-card{
  background:
    radial-gradient(ellipse 80% 70% at 100% 0%,rgba(212,162,76,.10) 0%,transparent 60%),
    linear-gradient(180deg,#FFFDF6 0%,#FAF4E5 100%);
  border:1px solid #EDDFB6;
  color:#1F2937;
}
body.page-id-1171 .cws-about-card::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:4px;
  background:linear-gradient(90deg,#0F1E3D 0%,#2A4080 100%);
}
body.page-id-1171 .cws-about-card h2.wp-block-heading{
  font:700 clamp(20px,2.4vw,26px)/1.25 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:6px auto 18px!important;
  position:relative;
  padding-top:6px;
  padding-bottom:14px;
  text-align:center!important;
}
body.page-id-1171 .cws-about-card h2.wp-block-heading::before{
  content:"OUR INSTITUTION";
  display:block;
  font:600 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.28em;
  color:#8a6418;
  text-transform:uppercase;
  margin-bottom:8px;
}
body.page-id-1171 .cws-about-card h2.wp-block-heading::after{
  content:"";
  position:absolute;
  bottom:0;left:50%;
  transform:translateX(-50%);
  width:46px;height:3px;
  background:#0F1E3D;
  border-radius:2px;
}
body.page-id-1171 .cws-about-card p{
  font:500 15px/1.7 'Plus Jakarta Sans',sans-serif!important;
  color:#374151!important;
  margin:0 auto 14px!important;
  max-width:none!important;
  text-align:left!important;
}
body.page-id-1171 .cws-about-card p.has-text-align-center{text-align:left!important;}

/* hide leftover divider styling from v3.0 (separator block was removed) */
body.page-id-1171 hr.cws-home-divider{display:none!important;}

@media (max-width:780px){
  body.page-id-1171 .eb-column-up0j1l4 .eb-column-inner{
    grid-template-columns:1fr;
    gap:20px;
  }
  body.page-id-1171 .cws-welcome-card,
  body.page-id-1171 .cws-about-card{padding:28px 22px!important;}
  body.page-id-1171 .cws-welcome-card h1.wp-block-heading{font-size:22px!important;}
  body.page-id-1171 .cws-about-card h2.wp-block-heading{font-size:20px!important;}
}

/* === HOME · WELCOME CARD HEADING COLOUR FIX · v3.1.1 (page-id-1171) === */
body.page-id-1171 .eb-column-up0j1l4 .eb-column-inner .cws-welcome-card,
body.page-id-1171 .eb-column-up0j1l4 .eb-column-inner .cws-welcome-card *{
  color:#fff;
}
body.page-id-1171 .eb-column-up0j1l4 .eb-column-inner .cws-welcome-card h1.wp-block-heading,
body.page-id-1171 .eb-column-up0j1l4 .eb-column-inner .cws-welcome-card h1{
  color:#FFFFFF!important;
}
body.page-id-1171 .eb-column-up0j1l4 .eb-column-inner .cws-welcome-card p.cws-home-tagline{
  color:#D4A24C!important;
}
body.page-id-1171 .eb-column-up0j1l4 .eb-column-inner .cws-welcome-card p:not(.cws-home-tagline){
  color:#E2E8F0!important;
}

/* Make sure About card heading + ::before remain navy/gold even with global resets */
body.page-id-1171 .eb-column-up0j1l4 .eb-column-inner .cws-about-card h2.wp-block-heading{
  color:#0F1E3D!important;
}
body.page-id-1171 .eb-column-up0j1l4 .eb-column-inner .cws-about-card p{
  color:#374151!important;
}

/* === HOME · FORCE WELCOME HEADING WHITE · v3.1.2 (page-id-1171) === */
body.page-id-1171 .cws-welcome-card h1,
body.page-id-1171 .cws-welcome-card h1.wp-block-heading,
body.page-id-1171 .cws-welcome-card h1.wp-block-heading.has-text-color,
body.page-id-1171 .eb-column-up0j1l4 .cws-welcome-card h1,
body.page-id-1171 .eb-column-up0j1l4 .eb-column-inner .cws-welcome-card h1,
body.page-id-1171 .entry-content .cws-welcome-card h1{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}

/* === HOME · VISION/MISSION/MOTTO · v3.2.0 (page-id-1171) === */
body.page-id-1171 .cws-vmm{
  font-family:'Plus Jakarta Sans',sans-serif;
  max-width:1180px;
  margin:0 auto;
  padding:64px 18px 56px;
  color:#1F2937;
  position:relative;
}

body.page-id-1171 .cws-vmm-head{
  text-align:center;
  margin-bottom:38px;
}
body.page-id-1171 .cws-vmm-eyebrow{
  font:600 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.32em;
  color:#8a6418;
  text-transform:uppercase;
  margin:0 0 12px;
}
body.page-id-1171 .cws-vmm-head h2{
  font:800 clamp(24px,3vw,34px)/1.15 'Plus Jakarta Sans',sans-serif;
  color:#0F1E3D;
  margin:0 0 14px;
  letter-spacing:-.01em;
  position:relative;
  padding-bottom:14px;
  display:inline-block;
}
body.page-id-1171 .cws-vmm-head h2::after{
  content:"";
  position:absolute;
  bottom:0;left:50%;
  transform:translateX(-50%);
  width:54px;height:3px;
  background:#D4A24C;
  border-radius:2px;
}
body.page-id-1171 .cws-vmm-lead{
  font:500 15.5px/1.65 'Plus Jakarta Sans',sans-serif;
  color:#4B5563;
  max-width:620px;
  margin:0 auto;
}

body.page-id-1171 .cws-vmm-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
  align-items:stretch;
}

body.page-id-1171 .cws-vmm-card{
  position:relative;
  padding:42px 30px 34px;
  border-radius:18px;
  background:#fff;
  border:1px solid #E5E7EB;
  box-shadow:0 14px 36px rgba(15,30,61,.08);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  transition:transform .3s ease,box-shadow .3s ease;
}
body.page-id-1171 .cws-vmm-card:hover{
  transform:translateY(-6px);
  box-shadow:0 22px 50px rgba(15,30,61,.14);
}
body.page-id-1171 .cws-vmm-card::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:5px;
}

body.page-id-1171 .cws-vmm-icon{
  width:62px;height:62px;
  border-radius:18px;
  display:grid;place-items:center;
  margin-bottom:22px;
  position:relative;
}
body.page-id-1171 .cws-vmm-icon::after{
  content:"";
  position:absolute;
  inset:-8px;
  border-radius:24px;
  border:1px dashed currentColor;
  opacity:.25;
}
body.page-id-1171 .cws-vmm-icon svg{
  width:28px;height:28px;
  color:#fff;
}

body.page-id-1171 .cws-vmm-tag{
  display:inline-block;
  align-self:flex-start;
  font:700 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#8a6418;
  margin-bottom:6px;
}
body.page-id-1171 .cws-vmm-card h3{
  font:800 22px/1.2 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:0 0 16px!important;
  letter-spacing:-.01em;
}

body.page-id-1171 .cws-vmm-card p{
  font:500 14.5px/1.7 'Plus Jakarta Sans',sans-serif!important;
  color:#374151!important;
  margin:0 0 14px!important;
}

body.page-id-1171 .cws-vmm-list,
body.page-id-1171 .cws-vmm-values{
  list-style:none;
  padding:0;
  margin:0;
  display:flex;
  flex-direction:column;
  gap:10px;
}
body.page-id-1171 .cws-vmm-list li{
  position:relative;
  padding:0 0 0 26px;
  font:500 14px/1.55 'Plus Jakarta Sans',sans-serif;
  color:#374151;
}
body.page-id-1171 .cws-vmm-list li::before{
  content:"";
  position:absolute;
  left:0;top:9px;
  width:14px;height:14px;
  background:
    linear-gradient(45deg,transparent 47%,#D4A24C 47%,#D4A24C 53%,transparent 53%),
    linear-gradient(-45deg,transparent 47%,#D4A24C 47%,#D4A24C 53%,transparent 53%);
  border-radius:50%;
  background-color:rgba(212,162,76,.15);
}
body.page-id-1171 .cws-vmm-list li::after{
  content:"";
  position:absolute;
  left:3px;top:12px;
  width:8px;height:4px;
  border-left:2px solid #D4A24C;
  border-bottom:2px solid #D4A24C;
  transform:rotate(-45deg);
}

body.page-id-1171 .cws-vmm-values li{
  padding:12px 14px;
  background:#FAF6EC;
  border-left:3px solid #D4A24C;
  border-radius:8px;
  font:500 13.5px/1.55 'Plus Jakarta Sans',sans-serif;
  color:#374151;
}
body.page-id-1171 .cws-vmm-values li b{
  color:#0F1E3D;
  font-weight:800;
  letter-spacing:.02em;
}

/* Vision card — navy gradient on icon */
body.page-id-1171 .cws-vmm-card[data-card="vision"]::before{
  background:linear-gradient(90deg,#0F1E3D,#2A4080);
}
body.page-id-1171 .cws-vmm-card[data-card="vision"] .cws-vmm-icon{
  background:linear-gradient(135deg,#0F1E3D,#2A4080);
}
body.page-id-1171 .cws-vmm-card[data-card="vision"] .cws-vmm-tag{color:#2A4080;}

/* Mission card — gold gradient on icon */
body.page-id-1171 .cws-vmm-card[data-card="mission"]::before{
  background:linear-gradient(90deg,#D4A24C,#B6862F);
}
body.page-id-1171 .cws-vmm-card[data-card="mission"] .cws-vmm-icon{
  background:linear-gradient(135deg,#D4A24C,#B6862F);
}
body.page-id-1171 .cws-vmm-card[data-card="mission"] .cws-vmm-tag{color:#8a6418;}

/* Motto card — navy → gold gradient on icon */
body.page-id-1171 .cws-vmm-card[data-card="motto"]::before{
  background:linear-gradient(90deg,#0F1E3D,#D4A24C);
}
body.page-id-1171 .cws-vmm-card[data-card="motto"] .cws-vmm-icon{
  background:linear-gradient(135deg,#0F1E3D 0%,#2A4080 50%,#D4A24C 100%);
}
body.page-id-1171 .cws-vmm-card[data-card="motto"] .cws-vmm-tag{color:#8a6418;}

body.page-id-1171 .cws-vmm-motto-quote{
  font:800 22px/1.3 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  text-align:center;
  padding:18px 20px!important;
  margin:0 0 18px!important;
  background:linear-gradient(135deg,rgba(212,162,76,.10),rgba(15,30,61,.04));
  border-radius:12px;
  border:1px dashed rgba(212,162,76,.5);
  position:relative;
  letter-spacing:.02em;
}
body.page-id-1171 .cws-vmm-motto-sub{
  font:600 13px/1.5 'Plus Jakarta Sans',sans-serif!important;
  color:#6B7280!important;
  margin:0 0 12px!important;
}

@media (max-width:980px){
  body.page-id-1171 .cws-vmm-grid{grid-template-columns:1fr;gap:18px;}
  body.page-id-1171 .cws-vmm{padding:48px 18px 36px;}
  body.page-id-1171 .cws-vmm-card{padding:32px 24px 28px;}
}

/* === HOME · 6 PILLAR SECTIONS · v3.3.0 (page-id-1171) === */

body.page-id-1171 .cws-x{
  font-family:'Plus Jakarta Sans',sans-serif;
  color:#1F2937;
  padding:64px 18px 56px;
  position:relative;
}
body.page-id-1171 .cws-x > *{
  max-width:1180px;
  margin-left:auto;
  margin-right:auto;
}

body.page-id-1171 .cws-x-head{
  margin-bottom:32px;
}
body.page-id-1171 .cws-x-head-center{text-align:center;}
body.page-id-1171 .cws-x-eyebrow{
  display:inline-block;
  font:600 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.32em;
  color:#8a6418;
  text-transform:uppercase;
  margin-bottom:12px;
}
body.page-id-1171 .cws-x-eyebrow-light{color:#D4A24C!important;}
body.page-id-1171 .cws-x-head h2{
  font:800 clamp(24px,3.2vw,34px)/1.15 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:0 0 12px!important;
  letter-spacing:-.01em;
}
body.page-id-1171 .cws-x-rule{
  display:block;
  width:54px;height:3px;
  background:#D4A24C;
  border-radius:2px;
  margin:0 0 18px;
}
body.page-id-1171 .cws-x-rule-c{margin-left:auto;margin-right:auto;}
body.page-id-1171 .cws-x-sub{
  font:500 15.5px/1.65 'Plus Jakarta Sans',sans-serif!important;
  color:#4B5563!important;
  max-width:680px;
  margin:0 auto!important;
}

/* ── 01 ACADEMIC EXCELLENCE & 02 LEARNING ENVIRONMENT ─────── */
body.page-id-1171 .cws-x-academic{
  background:#fff;
}
body.page-id-1171 .cws-x-learning{
  background:linear-gradient(180deg,#F8FAFC 0%,#F1F3F8 100%);
}
body.page-id-1171 .cws-x-split{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:36px;
  align-items:center;
}
body.page-id-1171 .cws-x-prose p{
  font:500 16px/1.75 'Plus Jakarta Sans',sans-serif!important;
  color:#374151!important;
  margin:0 0 16px!important;
}
body.page-id-1171 .cws-x-prose p:last-child{margin-bottom:0!important;}
body.page-id-1171 .cws-x-prose strong{color:#0F1E3D;font-weight:700;}
body.page-id-1171 .cws-x-prose em{font-style:normal;color:#8a6418;font-weight:600;}

body.page-id-1171 .cws-x-feature{
  background:#0F1E3D;
  color:#fff;
  border-radius:18px;
  padding:32px 30px;
  box-shadow:0 14px 36px rgba(15,30,61,.12);
  position:relative;
  overflow:hidden;
}
body.page-id-1171 .cws-x-feature::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:4px;
  background:linear-gradient(90deg,#D4A24C,#B6862F);
}
body.page-id-1171 .cws-x-feature-alt{
  background:linear-gradient(135deg,#FFFDF6 0%,#FAF4E5 100%);
  color:#0F1E3D;
  border:1px solid #EDDFB6;
}
body.page-id-1171 .cws-x-feature-alt::before{
  background:linear-gradient(90deg,#0F1E3D,#2A4080);
}
body.page-id-1171 .cws-x-feature-label{
  font:700 11px/1 'Plus Jakarta Sans',sans-serif!important;
  letter-spacing:.28em;
  color:#D4A24C!important;
  text-transform:uppercase;
  margin:0 0 18px!important;
}
body.page-id-1171 .cws-x-feature-alt .cws-x-feature-label{color:#8a6418!important;}

body.page-id-1171 .cws-x-check{
  list-style:none;
  padding:0;margin:0;
  display:flex;
  flex-direction:column;
  gap:10px;
}
body.page-id-1171 .cws-x-check li{
  position:relative;
  padding:0 0 0 30px;
  font:500 14.5px/1.55 'Plus Jakarta Sans',sans-serif;
  color:#E2E8F0;
}
body.page-id-1171 .cws-x-check li::before{
  content:"";
  position:absolute;
  left:0;top:2px;
  width:20px;height:20px;
  border-radius:50%;
  background:rgba(212,162,76,.18);
  border:1.5px solid #D4A24C;
}
body.page-id-1171 .cws-x-check li::after{
  content:"";
  position:absolute;
  left:6px;top:7px;
  width:8px;height:4px;
  border-left:2px solid #D4A24C;
  border-bottom:2px solid #D4A24C;
  transform:rotate(-45deg);
}
body.page-id-1171 .cws-x-check-alt li{color:#374151;}
body.page-id-1171 .cws-x-check-alt li::before{
  background:rgba(15,30,61,.06);
  border-color:#0F1E3D;
}
body.page-id-1171 .cws-x-check-alt li::after{
  border-left-color:#0F1E3D;
  border-bottom-color:#0F1E3D;
}

/* ── 03 FACILITIES ─────────────────────────────────────────── */
body.page-id-1171 .cws-x-facilities{
  background:#fff;
}
body.page-id-1171 .cws-x-fac-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(240px,1fr));
  gap:20px;
}
body.page-id-1171 .cws-x-fac{
  background:#F8FAFC;
  border:1px solid #E5E7EB;
  border-radius:14px;
  padding:26px 24px 22px;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease;
  position:relative;
}
body.page-id-1171 .cws-x-fac:hover{
  background:#fff;
  border-color:#D4A24C;
  transform:translateY(-4px);
  box-shadow:0 16px 32px rgba(15,30,61,.10);
}
body.page-id-1171 .cws-x-fac-icon{
  width:48px;height:48px;
  border-radius:12px;
  display:grid;place-items:center;
  background:#FAF6EC;
  color:#8a6418;
  margin-bottom:16px;
  transition:background .25s ease,color .25s ease;
}
body.page-id-1171 .cws-x-fac:hover .cws-x-fac-icon{
  background:linear-gradient(135deg,#D4A24C,#B6862F);
  color:#fff;
}
body.page-id-1171 .cws-x-fac-icon svg{width:22px;height:22px;}
body.page-id-1171 .cws-x-fac h4{
  font:700 16px/1.3 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:0 0 8px!important;
}
body.page-id-1171 .cws-x-fac p{
  font:500 13.5px/1.55 'Plus Jakarta Sans',sans-serif!important;
  color:#4B5563!important;
  margin:0!important;
}

/* alternate fac accent colours */
body.page-id-1171 .cws-x-fac[data-fac="smart"] .cws-x-fac-icon{background:#EEF2FF;color:#2A4080;}
body.page-id-1171 .cws-x-fac[data-fac="science"] .cws-x-fac-icon{background:#ECFDF5;color:#047857;}
body.page-id-1171 .cws-x-fac[data-fac="computer"] .cws-x-fac-icon{background:#FEF3F2;color:#B91C1C;}
body.page-id-1171 .cws-x-fac[data-fac="library"] .cws-x-fac-icon{background:#FFF7ED;color:#C2410C;}
body.page-id-1171 .cws-x-fac[data-fac="sports"] .cws-x-fac-icon{background:#EFF6FF;color:#1D4ED8;}
body.page-id-1171 .cws-x-fac[data-fac="culture"] .cws-x-fac-icon{background:#FAF5FF;color:#6D28D9;}
body.page-id-1171 .cws-x-fac[data-fac="safe"] .cws-x-fac-icon{background:#FAF6EC;color:#8a6418;}

/* ── 04 CO-CURRICULAR ──────────────────────────────────────── */
body.page-id-1171 .cws-x-cocurr{
  background:linear-gradient(180deg,#F8FAFC 0%,#F1F3F8 100%);
}
body.page-id-1171 .cws-x-pill-grid{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  justify-content:center;
  margin-bottom:24px;
}
body.page-id-1171 .cws-x-pill{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:12px 20px;
  background:#fff;
  border:1px solid #E5E7EB;
  border-radius:999px;
  font:600 14px/1 'Plus Jakarta Sans',sans-serif;
  color:#0F1E3D;
  transition:all .2s ease;
  cursor:default;
}
body.page-id-1171 .cws-x-pill:hover{
  background:#0F1E3D;
  color:#fff;
  border-color:#0F1E3D;
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(15,30,61,.15);
}
body.page-id-1171 .cws-x-pill svg{width:16px;height:16px;color:#D4A24C;flex-shrink:0;}
body.page-id-1171 .cws-x-pill:hover svg{color:#D4A24C;}
body.page-id-1171 .cws-x-foot{
  text-align:center;
  font:500 14.5px/1.65 'Plus Jakarta Sans',sans-serif!important;
  color:#4B5563!important;
  font-style:italic;
  max-width:720px;
  margin:0 auto!important;
}

/* ── 05 AI & FUTURE-READY ──────────────────────────────────── */
body.page-id-1171 .cws-x-ai{
  background:#fff;
}
body.page-id-1171 .cws-x-ai-card{
  position:relative;
  background:linear-gradient(135deg,#0F1E3D 0%,#1A2D5C 60%,#2A4080 100%);
  color:#fff;
  border-radius:22px;
  padding:50px 44px 44px;
  overflow:hidden;
  box-shadow:0 24px 56px rgba(15,30,61,.22);
}
body.page-id-1171 .cws-x-ai-card::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:5px;
  background:linear-gradient(90deg,#D4A24C 0%,#B6862F 50%,#D4A24C 100%);
}
body.page-id-1171 .cws-x-ai-glow{
  position:absolute;
  top:-100px;right:-100px;
  width:340px;height:340px;
  background:radial-gradient(circle,rgba(212,162,76,.30) 0%,transparent 70%);
  pointer-events:none;
}
body.page-id-1171 .cws-x-ai-meta{
  position:relative;
  max-width:780px;
  margin-bottom:30px;
}
body.page-id-1171 .cws-x-ai-card h2{
  font:800 clamp(22px,3vw,30px)/1.2 'Plus Jakarta Sans',sans-serif!important;
  color:#fff!important;
  margin:0 0 16px!important;
  letter-spacing:-.01em;
}
body.page-id-1171 .cws-x-ai-card p{
  font:500 15.5px/1.7 'Plus Jakarta Sans',sans-serif!important;
  color:#CBD5E1!important;
  margin:0 0 14px!important;
}
body.page-id-1171 .cws-x-ai-card strong{color:#D4A24C;font-weight:700;}
body.page-id-1171 .cws-x-ai-sub{
  color:#fff!important;
  font-weight:600!important;
  margin-top:18px!important;
}
body.page-id-1171 .cws-x-ai-grid{
  list-style:none;
  padding:0;margin:0 0 22px;
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(200px,1fr));
  gap:14px;
  position:relative;
}
body.page-id-1171 .cws-x-ai-grid li{
  display:flex;
  align-items:center;
  gap:12px;
  padding:14px 18px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(212,162,76,.30);
  border-radius:12px;
  backdrop-filter:blur(8px);
  font:600 14px/1.3 'Plus Jakarta Sans',sans-serif;
  color:#fff;
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
body.page-id-1171 .cws-x-ai-grid li:hover{
  background:rgba(212,162,76,.15);
  border-color:#D4A24C;
  transform:translateY(-2px);
}
body.page-id-1171 .cws-x-ai-grid li svg{
  width:20px;height:20px;
  color:#D4A24C;
  flex-shrink:0;
}
body.page-id-1171 .cws-x-ai-foot{
  font-size:14px!important;
  color:#94A3B8!important;
  font-style:italic;
  margin:0!important;
  padding-top:20px;
  border-top:1px solid rgba(212,162,76,.25);
}

/* ── 06 DISCIPLINE & VALUES ────────────────────────────────── */
body.page-id-1171 .cws-x-discipline{
  background:linear-gradient(180deg,#FFFDF6 0%,#FAF4E5 100%);
}
body.page-id-1171 .cws-x-val-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
  gap:18px;
  max-width:1080px;
}
body.page-id-1171 .cws-x-val{
  background:#fff;
  border:1px solid #EDDFB6;
  border-radius:14px;
  padding:26px 22px;
  text-align:center;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
body.page-id-1171 .cws-x-val:hover{
  transform:translateY(-4px);
  box-shadow:0 16px 32px rgba(138,100,24,.18);
  border-color:#D4A24C;
}
body.page-id-1171 .cws-x-val svg{
  width:30px;height:30px;
  color:#8a6418;
  margin-bottom:14px;
}
body.page-id-1171 .cws-x-val h4{
  font:800 16px/1.2 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:0 0 4px!important;
  letter-spacing:.01em;
}
body.page-id-1171 .cws-x-val p{
  font:500 13px/1.4 'Plus Jakarta Sans',sans-serif!important;
  color:#6B7280!important;
  margin:0!important;
}

@media (max-width:880px){
  body.page-id-1171 .cws-x{padding:48px 18px 40px;}
  body.page-id-1171 .cws-x-split{grid-template-columns:1fr;gap:24px;}
  body.page-id-1171 .cws-x-split-rev .cws-x-feature-alt{order:2;}
  body.page-id-1171 .cws-x-split-rev .cws-x-prose{order:1;}
  body.page-id-1171 .cws-x-ai-card{padding:34px 24px 28px;}
  body.page-id-1171 .cws-x-ai-grid{grid-template-columns:1fr;}
}

/* === HOME · PILLAR 07 SAFETY & SECURITY · v3.4.0 (page-id-1171) === */
body.page-id-1171 .cws-x-safety{
  background:#fff;
}
body.page-id-1171 .cws-x-safe-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(240px,1fr));
  gap:20px;
}
body.page-id-1171 .cws-x-safe{
  position:relative;
  background:#F8FAFC;
  border:1px solid #E5E7EB;
  border-radius:14px;
  padding:28px 26px 24px;
  overflow:hidden;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease;
}
body.page-id-1171 .cws-x-safe::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:3px;
  background:linear-gradient(90deg,#D4A24C,#B6862F);
  opacity:0;
  transition:opacity .25s ease;
}
body.page-id-1171 .cws-x-safe:hover{
  background:#fff;
  border-color:#D4A24C;
  transform:translateY(-4px);
  box-shadow:0 16px 32px rgba(15,30,61,.10);
}
body.page-id-1171 .cws-x-safe:hover::before{opacity:1;}

body.page-id-1171 .cws-x-safe-icon{
  width:54px;height:54px;
  border-radius:14px;
  display:grid;place-items:center;
  margin-bottom:16px;
  background:linear-gradient(135deg,#0F1E3D,#2A4080);
  color:#fff;
  position:relative;
  transition:transform .3s ease;
}
body.page-id-1171 .cws-x-safe:hover .cws-x-safe-icon{transform:scale(1.06) rotate(-3deg);}
body.page-id-1171 .cws-x-safe-icon::after{
  content:"";
  position:absolute;
  inset:-6px;
  border-radius:18px;
  border:1px dashed rgba(212,162,76,.4);
  opacity:0;
  transition:opacity .25s ease;
}
body.page-id-1171 .cws-x-safe:hover .cws-x-safe-icon::after{opacity:1;}
body.page-id-1171 .cws-x-safe-icon svg{width:24px;height:24px;}

body.page-id-1171 .cws-x-safe-icon[data-safe="fire"]{
  background:linear-gradient(135deg,#B91C1C,#DC2626);
}
body.page-id-1171 .cws-x-safe-icon[data-safe="water"]{
  background:linear-gradient(135deg,#0E7490,#06B6D4);
}
body.page-id-1171 .cws-x-safe-icon[data-safe="guard"]{
  background:linear-gradient(135deg,#047857,#10B981);
}

body.page-id-1171 .cws-x-safe h4{
  font:700 16px/1.3 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:0 0 8px!important;
}
body.page-id-1171 .cws-x-safe p{
  font:500 13.5px/1.6 'Plus Jakarta Sans',sans-serif!important;
  color:#4B5563!important;
  margin:0!important;
}

/* === HOME · PILLAR 08 WHY CHOOSE · v3.5.0 (page-id-1171) === */
body.page-id-1171 .cws-x-why{
  background:linear-gradient(180deg,#FAF6EC 0%,#FFFFFF 100%);
}
body.page-id-1171 .cws-x-why-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
body.page-id-1171 .cws-x-why-card{
  position:relative;
  background:#fff;
  border:1px solid #E5E7EB;
  border-radius:16px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;
}
body.page-id-1171 .cws-x-why-card:hover{
  transform:translateY(-6px);
  border-color:#D4A24C;
  box-shadow:0 22px 44px rgba(15,30,61,.14);
}
body.page-id-1171 .cws-x-why-media{
  position:relative;
  aspect-ratio:16/10;
  overflow:hidden;
  background:#0F1E3D;
}
body.page-id-1171 .cws-x-why-media img{
  width:100%;height:100%;
  object-fit:cover;
  display:block;
  transition:transform .5s ease,filter .5s ease;
  filter:saturate(.95);
}
body.page-id-1171 .cws-x-why-card:hover .cws-x-why-media img{
  transform:scale(1.08);
  filter:saturate(1.1);
}
body.page-id-1171 .cws-x-why-media::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(15,30,61,0) 50%,rgba(15,30,61,.55) 100%);
  pointer-events:none;
}
body.page-id-1171 .cws-x-why-tag{
  position:absolute;
  top:14px;left:14px;
  z-index:2;
  font:800 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.18em;
  color:#0F1E3D;
  background:#D4A24C;
  padding:8px 12px;
  border-radius:999px;
  box-shadow:0 6px 14px rgba(212,162,76,.45);
}
body.page-id-1171 .cws-x-why-body{
  padding:22px 22px 24px;
  position:relative;
  flex:1;
  display:flex;
  flex-direction:column;
}
body.page-id-1171 .cws-x-why-body::before{
  content:"";
  position:absolute;
  top:0;left:22px;right:22px;
  height:3px;
  background:linear-gradient(90deg,#D4A24C,#B6862F);
  border-radius:0 0 4px 4px;
  transform:scaleX(.35);
  transform-origin:left;
  transition:transform .35s ease;
}
body.page-id-1171 .cws-x-why-card:hover .cws-x-why-body::before{
  transform:scaleX(1);
}
body.page-id-1171 .cws-x-why-body h4{
  font:800 17px/1.25 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:0 0 10px!important;
  letter-spacing:-.005em;
}
body.page-id-1171 .cws-x-why-body p{
  font:500 14px/1.65 'Plus Jakarta Sans',sans-serif!important;
  color:#4B5563!important;
  margin:0!important;
}

@media (max-width:980px){
  body.page-id-1171 .cws-x-why-grid{grid-template-columns:repeat(2,1fr);gap:18px;}
}
@media (max-width:600px){
  body.page-id-1171 .cws-x-why-grid{grid-template-columns:1fr;}
}

/* === HOME · PILLAR 09 CO-CURRICULAR EVENTS · v3.6.0 (page-id-1171) === */
body.page-id-1171 .cws-x-coevents{background:#fff;}

body.page-id-1171 .cws-x-co-groups{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
  margin-bottom:28px;
}
body.page-id-1171 .cws-x-co-group{
  position:relative;
  padding:26px 24px 22px;
  border-radius:16px;
  background:#F8FAFC;
  border:1px solid #E5E7EB;
  overflow:hidden;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease;
}
body.page-id-1171 .cws-x-co-group::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:3px;
  background:linear-gradient(90deg,#D4A24C,#B6862F);
  opacity:.55;
  transition:opacity .25s ease;
}
body.page-id-1171 .cws-x-co-group:hover{
  background:#fff;
  border-color:#D4A24C;
  transform:translateY(-4px);
  box-shadow:0 18px 36px rgba(15,30,61,.10);
}
body.page-id-1171 .cws-x-co-group:hover::before{opacity:1;}

body.page-id-1171 .cws-x-co-ghead{
  display:flex;
  gap:14px;
  align-items:center;
  margin-bottom:18px;
}
body.page-id-1171 .cws-x-co-gicon{
  flex:0 0 auto;
  width:46px;height:46px;
  border-radius:12px;
  display:grid;place-items:center;
  color:#fff;
  background:linear-gradient(135deg,#0F1E3D,#2A4080);
}
body.page-id-1171 .cws-x-co-gicon svg{width:22px;height:22px;}

body.page-id-1171 .cws-x-co-group[data-co="arts"] .cws-x-co-gicon{
  background:linear-gradient(135deg,#D4A24C,#B6862F);
}
body.page-id-1171 .cws-x-co-group[data-co="stem"] .cws-x-co-gicon{
  background:linear-gradient(135deg,#047857,#10B981);
}

body.page-id-1171 .cws-x-co-ghead h4{
  font:800 16px/1.25 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:0 0 3px!important;
  letter-spacing:-.005em;
}
body.page-id-1171 .cws-x-co-ghead span{
  font:500 12px/1.3 'Plus Jakarta Sans',sans-serif;
  color:#6B7280;
}

body.page-id-1171 .cws-x-co-chips{
  list-style:none;
  padding:0;margin:0;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
body.page-id-1171 .cws-x-co-chips li{
  font:600 13px/1 'Plus Jakarta Sans',sans-serif;
  color:#0F1E3D;
  background:#fff;
  border:1px solid #E5E7EB;
  padding:9px 14px;
  border-radius:999px;
  transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease;
}
body.page-id-1171 .cws-x-co-group:hover .cws-x-co-chips li{
  background:#FAF6EC;
  border-color:rgba(212,162,76,.5);
}
body.page-id-1171 .cws-x-co-chips li:hover{
  transform:translateY(-2px);
  background:#0F1E3D;
  border-color:#0F1E3D;
  color:#fff;
}

body.page-id-1171 .cws-x-co-events{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:20px;
}
body.page-id-1171 .cws-x-co-event{
  display:flex;
  gap:18px;
  align-items:flex-start;
  padding:24px 24px 22px;
  border-radius:16px;
  background:linear-gradient(135deg,#0F1E3D 0%,#1A2D5C 100%);
  color:#fff;
  position:relative;
  overflow:hidden;
  transition:transform .25s ease,box-shadow .25s ease;
}
body.page-id-1171 .cws-x-co-event:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 40px rgba(15,30,61,.22);
}
body.page-id-1171 .cws-x-co-event::after{
  content:"";
  position:absolute;
  right:-40px;bottom:-40px;
  width:160px;height:160px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(212,162,76,.22) 0%,rgba(212,162,76,0) 70%);
  pointer-events:none;
}
body.page-id-1171 .cws-x-co-evicon{
  flex:0 0 auto;
  width:52px;height:52px;
  border-radius:14px;
  display:grid;place-items:center;
  background:linear-gradient(135deg,#D4A24C,#B6862F);
  color:#0F1E3D;
}
body.page-id-1171 .cws-x-co-evicon svg{width:24px;height:24px;}
body.page-id-1171 .cws-x-co-evbody{flex:1;}
body.page-id-1171 .cws-x-co-evtag{
  display:inline-block;
  font:700 10.5px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:#D4A24C;
  background:rgba(212,162,76,.12);
  border:1px solid rgba(212,162,76,.35);
  padding:6px 10px;
  border-radius:999px;
  margin-bottom:10px;
}
body.page-id-1171 .cws-x-co-evbody h4{
  font:800 17px/1.25 'Plus Jakarta Sans',sans-serif!important;
  color:#fff!important;
  margin:0 0 8px!important;
  letter-spacing:-.005em;
}
body.page-id-1171 .cws-x-co-evbody p{
  font:500 13.5px/1.65 'Plus Jakarta Sans',sans-serif!important;
  color:rgba(255,255,255,.82)!important;
  margin:0!important;
}

@media (max-width:980px){
  body.page-id-1171 .cws-x-co-groups{grid-template-columns:1fr;gap:16px;}
  body.page-id-1171 .cws-x-co-events{grid-template-columns:1fr;}
}

/* === HOME · PILLAR 10 MISSION & CWES SOCIETY · v3.7.0 (page-id-1171) === */
body.page-id-1171 .cws-x-found{
  background:linear-gradient(180deg,#FFFFFF 0%,#FAF6EC 100%);
}
body.page-id-1171 .cws-x-found-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:26px;
  align-items:stretch;
}
body.page-id-1171 .cws-x-found-card{
  position:relative;
  padding:36px 32px 32px;
  border-radius:20px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  transition:transform .3s ease,box-shadow .3s ease;
}
body.page-id-1171 .cws-x-found-card:hover{
  transform:translateY(-5px);
  box-shadow:0 24px 50px rgba(15,30,61,.16);
}

body.page-id-1171 .cws-x-found-card[data-found="mission"]{
  background:linear-gradient(135deg,#0F1E3D 0%,#1A2D5C 60%,#2A4080 100%);
  color:#fff;
  box-shadow:0 18px 40px rgba(15,30,61,.18);
}
body.page-id-1171 .cws-x-found-card[data-found="mission"]::before{
  content:"";
  position:absolute;
  right:-80px;top:-80px;
  width:260px;height:260px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(212,162,76,.22) 0%,rgba(212,162,76,0) 70%);
  pointer-events:none;
}
body.page-id-1171 .cws-x-found-card[data-found="society"]{
  background:#fff;
  border:1px solid #E5E7EB;
  box-shadow:0 14px 32px rgba(15,30,61,.08);
}
body.page-id-1171 .cws-x-found-card[data-found="society"]::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:5px;
  background:linear-gradient(90deg,#D4A24C,#B6862F);
}

body.page-id-1171 .cws-x-found-tag{
  display:inline-block;
  align-self:flex-start;
  font:700 10.5px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.22em;
  text-transform:uppercase;
  padding:7px 12px;
  border-radius:999px;
  margin-bottom:18px;
}
body.page-id-1171 .cws-x-found-card[data-found="mission"] .cws-x-found-tag{
  color:#D4A24C;
  background:rgba(212,162,76,.12);
  border:1px solid rgba(212,162,76,.35);
}
body.page-id-1171 .cws-x-found-card[data-found="society"] .cws-x-found-tag{
  color:#8a6418;
  background:#FAF6EC;
  border:1px solid rgba(212,162,76,.4);
}

body.page-id-1171 .cws-x-found-icon{
  width:60px;height:60px;
  border-radius:16px;
  display:grid;place-items:center;
  margin-bottom:20px;
  position:relative;
}
body.page-id-1171 .cws-x-found-card[data-found="mission"] .cws-x-found-icon{
  background:linear-gradient(135deg,#D4A24C,#B6862F);
  color:#0F1E3D;
}
body.page-id-1171 .cws-x-found-card[data-found="society"] .cws-x-found-icon{
  background:linear-gradient(135deg,#0F1E3D,#2A4080);
  color:#fff;
}
body.page-id-1171 .cws-x-found-icon svg{width:28px;height:28px;}

body.page-id-1171 .cws-x-found-card h3{
  font:800 22px/1.2 'Plus Jakarta Sans',sans-serif!important;
  margin:0 0 14px!important;
  letter-spacing:-.01em;
}
body.page-id-1171 .cws-x-found-card[data-found="mission"] h3{color:#fff!important;}
body.page-id-1171 .cws-x-found-card[data-found="society"] h3{color:#0F1E3D!important;}

body.page-id-1171 .cws-x-found-card p{
  font:500 14.5px/1.7 'Plus Jakarta Sans',sans-serif!important;
  margin:0 0 18px!important;
}
body.page-id-1171 .cws-x-found-card[data-found="mission"] p{color:rgba(255,255,255,.86)!important;}
body.page-id-1171 .cws-x-found-card[data-found="society"] p{color:#4B5563!important;}

body.page-id-1171 .cws-x-found-pills{
  list-style:none;
  padding:0;margin:0;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:auto;
}
body.page-id-1171 .cws-x-found-pills li{
  font:600 12.5px/1 'Plus Jakarta Sans',sans-serif;
  color:#fff;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(212,162,76,.4);
  padding:9px 13px;
  border-radius:999px;
  transition:background .2s ease,border-color .2s ease;
}
body.page-id-1171 .cws-x-found-pills li:hover{
  background:rgba(212,162,76,.18);
  border-color:#D4A24C;
}

body.page-id-1171 .cws-x-found-meta{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-top:auto;
  padding-top:16px;
  border-top:1px dashed rgba(212,162,76,.4);
}
body.page-id-1171 .cws-x-found-meta-item{
  display:flex;
  flex-direction:column;
  gap:3px;
}
body.page-id-1171 .cws-x-found-meta-k{
  font:700 10.5px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#8a6418;
}
body.page-id-1171 .cws-x-found-meta-v{
  font:600 13.5px/1.5 'Plus Jakarta Sans',sans-serif;
  color:#0F1E3D;
}

@media (max-width:980px){
  body.page-id-1171 .cws-x-found-grid{grid-template-columns:1fr;gap:18px;}
  body.page-id-1171 .cws-x-found-card{padding:28px 24px 26px;}
}

/* === HOME · FOUNDER TRIBUTE · v3.8.0 (page-id-1171) === */
body.page-id-1171 .cws-x-founder{
  position:relative;
  padding:80px 18px 70px;
  background:
    radial-gradient(ellipse at 20% 15%,rgba(212,162,76,.16) 0%,rgba(212,162,76,0) 50%),
    radial-gradient(ellipse at 85% 90%,rgba(42,64,128,.22) 0%,rgba(42,64,128,0) 55%),
    linear-gradient(135deg,#0F1E3D 0%,#1A2D5C 60%,#0F1E3D 100%);
  color:#fff;
  overflow:hidden;
}
body.page-id-1171 .cws-x-founder::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(212,162,76,.06) 1px,transparent 1px),
    linear-gradient(90deg,rgba(212,162,76,.06) 1px,transparent 1px);
  background-size:48px 48px;
  pointer-events:none;
  mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%);
  -webkit-mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%);
}

body.page-id-1171 .cws-x-founder-inner{
  position:relative;
  max-width:1100px;
  margin:0 auto;
  display:grid;
  grid-template-columns:320px 1fr;
  gap:56px;
  align-items:center;
}

body.page-id-1171 .cws-x-founder-portrait{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:18px;
}
body.page-id-1171 .cws-x-founder-frame{
  position:relative;
  width:240px;height:300px;
  border-radius:140px;
  overflow:hidden;
  background:#0F1E3D;
  box-shadow:
    0 0 0 4px rgba(212,162,76,.7),
    0 0 0 10px rgba(212,162,76,.15),
    0 30px 60px rgba(0,0,0,.45);
}
body.page-id-1171 .cws-x-founder-frame::before{
  content:"";
  position:absolute;
  inset:-20px;
  border-radius:160px;
  border:1px dashed rgba(212,162,76,.4);
  pointer-events:none;
}
body.page-id-1171 .cws-x-founder-frame img{
  width:100%;height:100%;
  object-fit:cover;
  display:block;
  filter:saturate(.95) contrast(1.02);
}
body.page-id-1171 .cws-x-founder-badge{
  display:inline-block;
  font:700 10.5px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:#D4A24C;
  padding:9px 16px;
  border-radius:999px;
  background:rgba(212,162,76,.12);
  border:1px solid rgba(212,162,76,.4);
}

body.page-id-1171 .cws-x-founder-body{
  position:relative;
}
body.page-id-1171 .cws-x-founder-body .cws-x-eyebrow{
  display:inline-block;
  color:#D4A24C;
  margin-bottom:18px;
}

body.page-id-1171 .cws-x-founder-quote{
  position:relative;
  margin:0 0 28px;
  padding:0;
}
body.page-id-1171 .cws-x-founder-mark{
  position:absolute;
  top:-40px;left:-14px;
  font:800 140px/1 'Plus Jakarta Sans',Georgia,serif;
  color:rgba(212,162,76,.28);
  pointer-events:none;
  line-height:1;
}
body.page-id-1171 .cws-x-founder-quote p{
  font:600 clamp(22px,2.6vw,32px)/1.4 'Plus Jakarta Sans',sans-serif!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  margin:0!important;
  letter-spacing:-.005em;
  font-style:italic;
  position:relative;
}

body.page-id-1171 .cws-x-founder-attrib{
  display:flex;
  gap:18px;
  align-items:flex-start;
  padding-top:8px;
}
body.page-id-1171 .cws-x-founder-rule{
  flex:0 0 auto;
  width:56px;height:3px;
  background:linear-gradient(90deg,#D4A24C,#B6862F);
  border-radius:2px;
  margin-top:14px;
}
body.page-id-1171 .cws-x-founder-attrib h3{
  font:800 18px/1.3 'Plus Jakarta Sans',sans-serif!important;
  color:#fff!important;
  margin:0 0 6px!important;
  letter-spacing:.005em;
}
body.page-id-1171 .cws-x-founder-attrib p{
  font:500 13.5px/1.65 'Plus Jakarta Sans',sans-serif!important;
  color:rgba(255,255,255,.78)!important;
  margin:0!important;
  max-width:520px;
}

@media (max-width:880px){
  body.page-id-1171 .cws-x-founder{padding:60px 18px 56px;}
  body.page-id-1171 .cws-x-founder-inner{
    grid-template-columns:1fr;
    gap:32px;
    text-align:center;
  }
  body.page-id-1171 .cws-x-founder-mark{left:50%;transform:translateX(-50%);top:-32px;font-size:100px;}
  body.page-id-1171 .cws-x-founder-attrib{
    flex-direction:column;
    align-items:center;
    gap:14px;
  }
  body.page-id-1171 .cws-x-founder-rule{margin-top:0;}
  body.page-id-1171 .cws-x-founder-attrib p{max-width:none;}
}

/* === HOME · CTA + PRESS · v3.9.0 (page-id-1171) === */
body.page-id-1171 .cws-x-cta{
  background:linear-gradient(180deg,#FAF6EC 0%,#FFFFFF 60%);
  padding-top:64px;
  padding-bottom:60px;
}
body.page-id-1171 .cws-x-cta-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  max-width:1100px;
  margin:0 auto 48px;
}
body.page-id-1171 a.cws-x-cta-card{
  display:flex;
  gap:20px;
  align-items:flex-start;
  padding:28px 26px;
  border-radius:18px;
  text-decoration:none!important;
  position:relative;
  overflow:hidden;
  transition:transform .3s ease,box-shadow .3s ease,background .3s ease;
}
body.page-id-1171 a.cws-x-cta-card[data-cta="admission"]{
  background:linear-gradient(135deg,#0F1E3D 0%,#1A2D5C 60%,#2A4080 100%);
  color:#fff;
  box-shadow:0 20px 44px rgba(15,30,61,.22);
}
body.page-id-1171 a.cws-x-cta-card[data-cta="contact"]{
  background:#fff;
  border:1px solid #E5E7EB;
  color:#0F1E3D;
  box-shadow:0 14px 32px rgba(15,30,61,.08);
}
body.page-id-1171 a.cws-x-cta-card[data-cta="contact"]::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:5px;
  background:linear-gradient(90deg,#D4A24C,#B6862F);
}
body.page-id-1171 a.cws-x-cta-card:hover{
  transform:translateY(-5px);
}
body.page-id-1171 a.cws-x-cta-card[data-cta="admission"]:hover{
  box-shadow:0 28px 56px rgba(15,30,61,.32);
}
body.page-id-1171 a.cws-x-cta-card[data-cta="contact"]:hover{
  box-shadow:0 22px 44px rgba(15,30,61,.14);
  border-color:#D4A24C;
}

body.page-id-1171 .cws-x-cta-icon{
  flex:0 0 auto;
  width:56px;height:56px;
  border-radius:14px;
  display:grid;place-items:center;
}
body.page-id-1171 a.cws-x-cta-card[data-cta="admission"] .cws-x-cta-icon{
  background:linear-gradient(135deg,#D4A24C,#B6862F);
  color:#0F1E3D;
}
body.page-id-1171 a.cws-x-cta-card[data-cta="contact"] .cws-x-cta-icon{
  background:linear-gradient(135deg,#0F1E3D,#2A4080);
  color:#fff;
}
body.page-id-1171 .cws-x-cta-icon svg{width:26px;height:26px;}

body.page-id-1171 .cws-x-cta-body{flex:1;}
body.page-id-1171 .cws-x-cta-tag{
  display:inline-block;
  font:700 10.5px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.22em;
  text-transform:uppercase;
  padding:6px 10px;
  border-radius:999px;
  margin-bottom:10px;
}
body.page-id-1171 a.cws-x-cta-card[data-cta="admission"] .cws-x-cta-tag{
  color:#D4A24C;
  background:rgba(212,162,76,.12);
  border:1px solid rgba(212,162,76,.35);
}
body.page-id-1171 a.cws-x-cta-card[data-cta="contact"] .cws-x-cta-tag{
  color:#8a6418;
  background:#FAF6EC;
  border:1px solid rgba(212,162,76,.4);
}

body.page-id-1171 .cws-x-cta-body h3{
  font:800 20px/1.25 'Plus Jakarta Sans',sans-serif!important;
  margin:0 0 8px!important;
  letter-spacing:-.005em;
}
body.page-id-1171 a.cws-x-cta-card[data-cta="admission"] .cws-x-cta-body h3{color:#fff!important;}
body.page-id-1171 a.cws-x-cta-card[data-cta="contact"] .cws-x-cta-body h3{color:#0F1E3D!important;}

body.page-id-1171 .cws-x-cta-body p{
  font:500 13.5px/1.6 'Plus Jakarta Sans',sans-serif!important;
  margin:0!important;
}
body.page-id-1171 a.cws-x-cta-card[data-cta="admission"] .cws-x-cta-body p{color:rgba(255,255,255,.82)!important;}
body.page-id-1171 a.cws-x-cta-card[data-cta="contact"] .cws-x-cta-body p{color:#4B5563!important;}

body.page-id-1171 .cws-x-cta-arrow{
  flex:0 0 auto;
  width:44px;height:44px;
  border-radius:50%;
  display:grid;place-items:center;
  transition:transform .3s ease,background .3s ease;
}
body.page-id-1171 a.cws-x-cta-card[data-cta="admission"] .cws-x-cta-arrow{
  background:rgba(212,162,76,.18);
  color:#D4A24C;
  border:1px solid rgba(212,162,76,.4);
}
body.page-id-1171 a.cws-x-cta-card[data-cta="contact"] .cws-x-cta-arrow{
  background:#0F1E3D;
  color:#fff;
}
body.page-id-1171 a.cws-x-cta-card:hover .cws-x-cta-arrow{
  transform:translateX(4px) rotate(-3deg);
}
body.page-id-1171 .cws-x-cta-arrow svg{width:20px;height:20px;}

/* Press strip */
body.page-id-1171 .cws-x-press{
  max-width:1100px;
  margin:0 auto;
  padding:28px 28px 24px;
  border-radius:18px;
  background:#fff;
  border:1px solid #E5E7EB;
  box-shadow:0 10px 26px rgba(15,30,61,.06);
}
body.page-id-1171 .cws-x-press-head{
  text-align:center;
  margin-bottom:18px;
}
body.page-id-1171 .cws-x-press-eyebrow{
  display:inline-block;
  font:700 10.5px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:#8a6418;
  margin-bottom:8px;
}
body.page-id-1171 .cws-x-press-head h4{
  font:800 18px/1.25 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:0!important;
  letter-spacing:-.005em;
}

body.page-id-1171 .cws-x-press-list{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
body.page-id-1171 a.cws-x-press-item{
  display:flex;
  align-items:center;
  gap:14px;
  padding:14px 18px;
  border-radius:14px;
  background:#F8FAFC;
  border:1px solid #E5E7EB;
  text-decoration:none!important;
  color:#0F1E3D;
  transition:border-color .25s ease,background .25s ease,transform .25s ease;
}
body.page-id-1171 a.cws-x-press-item:hover{
  background:#fff;
  border-color:#D4A24C;
  transform:translateY(-2px);
}
body.page-id-1171 .cws-x-press-logo{
  flex:0 0 auto;
  width:44px;height:44px;
  border-radius:12px;
  display:grid;place-items:center;
  background:#0F1E3D;
  color:#fff;
}
body.page-id-1171 .cws-x-press-logo[data-net="linkedin"]{
  background:#0A66C2;
}
body.page-id-1171 .cws-x-press-logo svg{width:22px;height:22px;}

body.page-id-1171 a.cws-x-press-item > div{
  flex:1;
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}
body.page-id-1171 .cws-x-press-source{
  font:800 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#8a6418;
}
body.page-id-1171 .cws-x-press-title{
  font:600 13.5px/1.4 'Plus Jakarta Sans',sans-serif;
  color:#0F1E3D;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body.page-id-1171 .cws-x-press-ext{
  flex:0 0 auto;
  color:#6B7280;
  opacity:.6;
  transition:opacity .25s ease,color .25s ease;
}
body.page-id-1171 a.cws-x-press-item:hover .cws-x-press-ext{
  opacity:1;
  color:#D4A24C;
}
body.page-id-1171 .cws-x-press-ext svg{width:16px;height:16px;}

@media (max-width:880px){
  body.page-id-1171 .cws-x-cta-grid{grid-template-columns:1fr;gap:16px;}
  body.page-id-1171 a.cws-x-cta-card{padding:24px 22px;gap:16px;}
  body.page-id-1171 .cws-x-press-list{grid-template-columns:1fr;}
  body.page-id-1171 .cws-x-press{padding:24px 20px;}
}

/* === PRINCIPAL'S MESSAGE · v1.0.0 (page-id-1359) === */
body.page-id-1359 .cws-pm{
  font-family:'Plus Jakarta Sans',sans-serif;
  max-width:880px;
  margin:0 auto;
  padding:64px 22px 60px;
  color:#1F2937;
}

body.page-id-1359 .cws-pm-head{
  text-align:center;
  margin-bottom:36px;
}
body.page-id-1359 .cws-pm-eyebrow{
  display:inline-block;
  font:700 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.32em;
  text-transform:uppercase;
  color:#8a6418;
  margin-bottom:14px;
}
body.page-id-1359 .cws-pm-head h1{
  font:800 clamp(28px,4vw,42px)/1.15 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:0 0 16px!important;
  letter-spacing:-.015em;
}
body.page-id-1359 .cws-pm-rule{
  display:block;
  width:64px;height:3px;
  background:linear-gradient(90deg,#D4A24C,#B6862F);
  border-radius:2px;
  margin:0 auto;
}

body.page-id-1359 .cws-pm-body{
  position:relative;
  background:#fff;
  border:1px solid #E5E7EB;
  border-radius:18px;
  padding:44px 44px 34px;
  box-shadow:0 18px 40px rgba(15,30,61,.08);
  overflow:hidden;
}
body.page-id-1359 .cws-pm-body::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:5px;
  background:linear-gradient(90deg,#0F1E3D,#2A4080 50%,#D4A24C);
}
body.page-id-1359 .cws-pm-body::after{
  content:"\201C";
  position:absolute;
  top:6px;right:28px;
  font:800 140px/1 Georgia,'Plus Jakarta Sans',serif;
  color:rgba(212,162,76,.16);
  pointer-events:none;
}

body.page-id-1359 .cws-pm-greeting{
  font:700 17px/1.4 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:0 0 6px!important;
  letter-spacing:-.005em;
}
body.page-id-1359 .cws-pm-lead{
  font:600 19px/1.5 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:0 0 22px!important;
}

body.page-id-1359 .cws-pm-body p{
  font:500 15.5px/1.8 'Plus Jakarta Sans',sans-serif!important;
  color:#374151!important;
  margin:0 0 18px!important;
}

body.page-id-1359 .cws-pm-closing{
  font:600 16px/1.65 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:24px 0 4px!important;
  padding:18px 22px!important;
  background:linear-gradient(135deg,rgba(212,162,76,.10),rgba(15,30,61,.04));
  border-left:3px solid #D4A24C;
  border-radius:0 12px 12px 0;
}

body.page-id-1359 .cws-pm-sign{
  display:flex;
  align-items:center;
  gap:18px;
  margin-top:28px;
  padding-top:22px;
  border-top:1px dashed rgba(212,162,76,.5);
}
body.page-id-1359 .cws-pm-sign-rule{
  flex:0 0 auto;
  width:48px;height:3px;
  background:linear-gradient(90deg,#D4A24C,#B6862F);
  border-radius:2px;
}
body.page-id-1359 .cws-pm-sign div{flex:1;}
body.page-id-1359 .cws-pm-sign-name{
  font:800 17px/1.2 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:0 0 4px!important;
  letter-spacing:-.005em;
}
body.page-id-1359 .cws-pm-sign-title{
  font:600 12.5px/1.3 'Plus Jakarta Sans',sans-serif!important;
  color:#8a6418!important;
  margin:0!important;
  letter-spacing:.12em;
  text-transform:uppercase;
}

@media (max-width:720px){
  body.page-id-1359 .cws-pm{padding:44px 18px 40px;}
  body.page-id-1359 .cws-pm-body{padding:30px 24px 26px;}
  body.page-id-1359 .cws-pm-body::after{font-size:96px;top:0;right:14px;}
  body.page-id-1359 .cws-pm-sign{flex-direction:column;align-items:flex-start;gap:12px;}
}

/* === PRINCIPAL'S MESSAGE · v1.1.0 (page-id-1359) — larger card === */
body.page-id-1359 .cws-pm{
  max-width:1180px;
  padding:80px 22px 80px;
}
body.page-id-1359 .cws-pm-head{margin-bottom:48px;}
body.page-id-1359 .cws-pm-head h1{
  font:800 clamp(34px,4.6vw,52px)/1.12 'Plus Jakarta Sans',sans-serif!important;
}
body.page-id-1359 .cws-pm-rule{width:80px;height:4px;}

body.page-id-1359 .cws-pm-body{
  padding:64px 72px 56px;
  border-radius:24px;
  box-shadow:0 28px 60px rgba(15,30,61,.12);
}
body.page-id-1359 .cws-pm-body::before{height:7px;}
body.page-id-1359 .cws-pm-body::after{
  top:10px;right:40px;
  font-size:200px;
}

body.page-id-1359 .cws-pm-greeting{
  font-size:20px!important;
  line-height:1.4!important;
  margin:0 0 8px!important;
}
body.page-id-1359 .cws-pm-lead{
  font-size:24px!important;
  line-height:1.45!important;
  margin:0 0 30px!important;
}
body.page-id-1359 .cws-pm-body p{
  font-size:17.5px!important;
  line-height:1.85!important;
  margin:0 0 22px!important;
}
body.page-id-1359 .cws-pm-closing{
  font-size:18.5px!important;
  line-height:1.65!important;
  padding:22px 28px!important;
  margin:30px 0 6px!important;
  border-left-width:4px!important;
  border-radius:0 14px 14px 0!important;
}

body.page-id-1359 .cws-pm-sign{
  margin-top:36px;
  padding-top:28px;
  gap:22px;
}
body.page-id-1359 .cws-pm-sign-rule{width:64px;height:4px;}
body.page-id-1359 .cws-pm-sign-name{
  font-size:20px!important;
  margin:0 0 5px!important;
}
body.page-id-1359 .cws-pm-sign-title{
  font-size:13.5px!important;
}

@media (max-width:980px){
  body.page-id-1359 .cws-pm{padding:60px 20px 60px;}
  body.page-id-1359 .cws-pm-body{padding:46px 36px 40px;}
  body.page-id-1359 .cws-pm-body::after{font-size:140px;top:4px;right:20px;}
}
@media (max-width:720px){
  body.page-id-1359 .cws-pm{padding:44px 18px 44px;}
  body.page-id-1359 .cws-pm-body{padding:32px 24px 28px;}
  body.page-id-1359 .cws-pm-body::after{font-size:100px;top:0;right:14px;}
  body.page-id-1359 .cws-pm-lead{font-size:20px!important;}
  body.page-id-1359 .cws-pm-body p{font-size:16px!important;line-height:1.75!important;}
  body.page-id-1359 .cws-pm-closing{font-size:16.5px!important;padding:18px 22px!important;}
  body.page-id-1359 .cws-pm-sign{flex-direction:column;align-items:flex-start;gap:12px;}
}

/* === PRINCIPAL'S MESSAGE · v1.1.1 (page-id-1359) — reduced side margin === */
body.page-id-1359 .cws-pm{
  max-width:1480px;
  padding:80px 12px 80px;
}
body.page-id-1359 .cws-pm-body{
  padding:64px 52px 56px;
}
@media (max-width:980px){
  body.page-id-1359 .cws-pm{padding:60px 10px 60px;}
  body.page-id-1359 .cws-pm-body{padding:46px 28px 40px;}
}
@media (max-width:720px){
  body.page-id-1359 .cws-pm{padding:44px 8px 44px;}
  body.page-id-1359 .cws-pm-body{padding:32px 20px 28px;}
}

/* === PRINCIPAL'S MESSAGE · v1.1.2 (page-id-1359) — hide theme entry-header === */
body.page-id-1359 .site-main > article > .entry-header{
  display:none!important;
}

/* === PRINCIPAL'S MESSAGE · v1.1.3 (page-id-1359) — reduce top margin === */
body.page-id-1359 .cws-pm{
  padding-top:24px;
}
body.page-id-1359 .cws-pm-head{
  margin-bottom:28px;
}
@media (max-width:980px){
  body.page-id-1359 .cws-pm{padding-top:18px;}
}
@media (max-width:720px){
  body.page-id-1359 .cws-pm{padding-top:14px;}
}

/* === ADMISSION INTRO · v2.1.0 (page-id-1196) — new lead + checklist === */
body.page-id-1196 .cws-adm-intro p.cws-adm-lead{
  font:700 clamp(20px,2.4vw,28px)/1.4 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:0 0 16px!important;
  letter-spacing:-.005em;
}
body.page-id-1196 .cws-adm-intro p.cws-adm-invite{
  font:600 16px/1.55 'Plus Jakarta Sans',sans-serif!important;
  color:#374151!important;
  margin:0 0 14px!important;
}
body.page-id-1196 ul.cws-adm-learn{
  list-style:none;
  padding:0;margin:0 0 18px;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:10px 18px;
}
body.page-id-1196 ul.cws-adm-learn li{
  position:relative;
  padding:10px 14px 10px 38px;
  font:600 14px/1.5 'Plus Jakarta Sans',sans-serif;
  color:#0F1E3D;
  background:#FAF6EC;
  border:1px solid rgba(212,162,76,.4);
  border-radius:10px;
}
body.page-id-1196 ul.cws-adm-learn li::before{
  content:"";
  position:absolute;
  left:12px;top:50%;
  width:18px;height:18px;
  margin-top:-9px;
  border-radius:50%;
  background:#D4A24C;
}
body.page-id-1196 ul.cws-adm-learn li::after{
  content:"";
  position:absolute;
  left:17px;top:50%;
  width:9px;height:5px;
  margin-top:-2px;
  border-left:2px solid #0F1E3D;
  border-bottom:2px solid #0F1E3D;
  transform:rotate(-45deg) translateY(-2px);
}
body.page-id-1196 .cws-adm-intro p.cws-adm-assist{
  font:500 15px/1.6 'Plus Jakarta Sans',sans-serif!important;
  color:#4B5563!important;
  margin:0!important;
  padding:14px 18px!important;
  background:linear-gradient(135deg,rgba(212,162,76,.10),rgba(15,30,61,.04));
  border-left:3px solid #D4A24C;
  border-radius:0 10px 10px 0;
}

@media (max-width:720px){
  body.page-id-1196 ul.cws-adm-learn{grid-template-columns:1fr;}
}

/* === ADMISSION INTRO · v2.1.1 (page-id-1196) — single-line lead === */
body.page-id-1196 .cws-adm-intro p.cws-adm-lead{
  font-size:clamp(18px,1.9vw,24px)!important;
  line-height:1.35!important;
  max-width:none!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
@media (max-width:780px){
  body.page-id-1196 .cws-adm-intro p.cws-adm-lead{
    white-space:normal;
    font-size:18px!important;
  }
}

/* === PHOTO GALLERY INTRO · v1.0.0 (page-id-1201) === */
body.page-id-1201 .cws-gal-intro{
  font-family:'Plus Jakarta Sans',sans-serif;
  padding:48px 18px 32px;
  background:linear-gradient(180deg,#FAF6EC 0%,#FFFFFF 100%);
  text-align:center;
  margin-bottom:24px;
  border-radius:18px;
}
body.page-id-1201 .cws-gal-intro-inner{
  max-width:880px;
  margin:0 auto;
}
body.page-id-1201 .cws-gal-intro-eyebrow{
  display:inline-block;
  font:700 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.32em;
  text-transform:uppercase;
  color:#8a6418;
  margin-bottom:14px;
}
body.page-id-1201 .cws-gal-intro-title{
  font:800 clamp(24px,3.2vw,36px)/1.18 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:0 0 14px!important;
  letter-spacing:-.012em;
}
body.page-id-1201 .cws-gal-intro-rule{
  display:block;
  width:64px;height:3px;
  margin:0 auto 22px;
  background:linear-gradient(90deg,#D4A24C,#B6862F);
  border-radius:2px;
}
body.page-id-1201 .cws-gal-intro-lead{
  font:500 16.5px/1.7 'Plus Jakarta Sans',sans-serif!important;
  color:#374151!important;
  margin:0 auto 14px!important;
  max-width:760px;
}
body.page-id-1201 .cws-gal-intro-sub{
  font:500 15px/1.7 'Plus Jakarta Sans',sans-serif!important;
  color:#4B5563!important;
  margin:0 auto 22px!important;
  max-width:720px;
}
body.page-id-1201 ul.cws-gal-intro-chips{
  list-style:none;
  padding:0;margin:0;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  justify-content:center;
}
body.page-id-1201 ul.cws-gal-intro-chips li{
  font:700 12px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#0F1E3D;
  background:#fff;
  border:1px solid rgba(212,162,76,.4);
  padding:10px 14px;
  border-radius:999px;
  transition:background .2s ease,color .2s ease,border-color .2s ease;
}
body.page-id-1201 ul.cws-gal-intro-chips li:hover{
  background:#0F1E3D;
  color:#fff;
  border-color:#0F1E3D;
}

@media (max-width:720px){
  body.page-id-1201 .cws-gal-intro{padding:36px 16px 24px;}
}

/* === PHOTO GALLERY · v1.0.1 (page-id-1201) — hide theme page title === */
body.page-id-1201 .site-main > article > .entry-header{
  display:none!important;
}

/* === PHOTO GALLERY · THEMED SECTIONS · v1.1.0 (page-id-1201) === */
body.page-id-1201 .cws-gal-themes{
  font-family:'Plus Jakarta Sans',sans-serif;
  max-width:1180px;
  margin:0 auto 32px;
  padding:24px 4px 32px;
}
body.page-id-1201 .cws-gal-themes-head{
  text-align:center;
  margin-bottom:32px;
}
body.page-id-1201 .cws-gal-themes-eyebrow{
  display:inline-block;
  font:700 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.32em;
  text-transform:uppercase;
  color:#8a6418;
  margin-bottom:12px;
}
body.page-id-1201 .cws-gal-themes-head h2{
  font:800 clamp(22px,2.8vw,32px)/1.2 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:0 0 14px!important;
  letter-spacing:-.012em;
}
body.page-id-1201 .cws-gal-themes-rule{
  display:block;
  width:60px;height:3px;
  margin:0 auto;
  background:linear-gradient(90deg,#D4A24C,#B6862F);
  border-radius:2px;
}

body.page-id-1201 .cws-gal-themes-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-bottom:36px;
}
body.page-id-1201 .cws-gal-theme{
  position:relative;
  padding:24px 22px 22px;
  border-radius:14px;
  background:#F8FAFC;
  border:1px solid #E5E7EB;
  transition:transform .25s ease,border-color .25s ease,background .25s ease,box-shadow .25s ease;
  overflow:hidden;
}
body.page-id-1201 .cws-gal-theme::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:3px;
  background:linear-gradient(90deg,#D4A24C,#B6862F);
  opacity:.5;
  transition:opacity .25s ease;
}
body.page-id-1201 .cws-gal-theme:hover{
  background:#fff;
  border-color:#D4A24C;
  transform:translateY(-4px);
  box-shadow:0 16px 32px rgba(15,30,61,.10);
}
body.page-id-1201 .cws-gal-theme:hover::before{opacity:1;}

body.page-id-1201 .cws-gal-theme-icon{
  width:46px;height:46px;
  border-radius:12px;
  display:grid;place-items:center;
  margin-bottom:14px;
  background:linear-gradient(135deg,#0F1E3D,#2A4080);
  color:#fff;
  transition:transform .3s ease;
}
body.page-id-1201 .cws-gal-theme:hover .cws-gal-theme-icon{transform:scale(1.06) rotate(-3deg);}
body.page-id-1201 .cws-gal-theme-icon svg{width:22px;height:22px;}

/* Per-theme icon accents */
body.page-id-1201 .cws-gal-theme[data-theme="sports"] .cws-gal-theme-icon{background:linear-gradient(135deg,#B91C1C,#DC2626);}
body.page-id-1201 .cws-gal-theme[data-theme="cultural"] .cws-gal-theme-icon{background:linear-gradient(135deg,#D4A24C,#B6862F);color:#0F1E3D;}
body.page-id-1201 .cws-gal-theme[data-theme="achievements"] .cws-gal-theme-icon{background:linear-gradient(135deg,#D4A24C,#8a6418);color:#0F1E3D;}
body.page-id-1201 .cws-gal-theme[data-theme="ai"] .cws-gal-theme-icon{background:linear-gradient(135deg,#2A4080,#0E7490);}
body.page-id-1201 .cws-gal-theme[data-theme="community"] .cws-gal-theme-icon{background:linear-gradient(135deg,#047857,#10B981);}
body.page-id-1201 .cws-gal-theme[data-theme="campus"] .cws-gal-theme-icon{background:linear-gradient(135deg,#0F1E3D,#D4A24C);}

body.page-id-1201 .cws-gal-theme h3{
  font:800 16px/1.25 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:0 0 8px!important;
  letter-spacing:-.005em;
}
body.page-id-1201 .cws-gal-theme p{
  font:500 13.5px/1.65 'Plus Jakarta Sans',sans-serif!important;
  color:#4B5563!important;
  margin:0!important;
}

/* Photo & Video Highlights */
body.page-id-1201 .cws-gal-highlights{
  padding:32px 32px 28px;
  border-radius:18px;
  background:linear-gradient(135deg,#0F1E3D 0%,#1A2D5C 100%);
  color:#fff;
  position:relative;
  overflow:hidden;
  margin-bottom:32px;
}
body.page-id-1201 .cws-gal-highlights::after{
  content:"";
  position:absolute;
  right:-60px;bottom:-60px;
  width:220px;height:220px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(212,162,76,.22) 0%,rgba(212,162,76,0) 70%);
  pointer-events:none;
}
body.page-id-1201 .cws-gal-highlights-head{
  position:relative;
  margin-bottom:18px;
}
body.page-id-1201 .cws-gal-highlights-eyebrow{
  display:inline-block;
  font:700 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:#D4A24C;
  padding:7px 12px;
  background:rgba(212,162,76,.12);
  border:1px solid rgba(212,162,76,.35);
  border-radius:999px;
  margin-bottom:14px;
}
body.page-id-1201 .cws-gal-highlights-head h3{
  font:800 22px/1.2 'Plus Jakarta Sans',sans-serif!important;
  color:#fff!important;
  margin:0 0 8px!important;
  letter-spacing:-.005em;
}
body.page-id-1201 .cws-gal-highlights-head p{
  font:500 14.5px/1.6 'Plus Jakarta Sans',sans-serif!important;
  color:rgba(255,255,255,.82)!important;
  margin:0!important;
}
body.page-id-1201 ul.cws-gal-highlights-list{
  position:relative;
  list-style:none;
  padding:0;margin:0;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}
body.page-id-1201 ul.cws-gal-highlights-list li{
  position:relative;
  padding:11px 14px 11px 36px;
  font:600 13.5px/1.4 'Plus Jakarta Sans',sans-serif;
  color:#fff;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(212,162,76,.32);
  border-radius:10px;
}
body.page-id-1201 ul.cws-gal-highlights-list li::before{
  content:"";
  position:absolute;
  left:12px;top:50%;
  width:14px;height:14px;
  margin-top:-7px;
  border-radius:50%;
  background:#D4A24C;
}
body.page-id-1201 ul.cws-gal-highlights-list li::after{
  content:"";
  position:absolute;
  left:16px;top:50%;
  width:6px;height:3px;
  margin-top:-1px;
  border-left:2px solid #0F1E3D;
  border-bottom:2px solid #0F1E3D;
  transform:rotate(-45deg) translateY(-1px);
}

/* Closing quote */
body.page-id-1201 blockquote.cws-gal-quote{
  position:relative;
  margin:0;
  padding:30px 36px 28px 70px;
  border-radius:18px;
  background:linear-gradient(135deg,rgba(212,162,76,.12),rgba(15,30,61,.04));
  border:1px dashed rgba(212,162,76,.55);
  text-align:left;
}
body.page-id-1201 .cws-gal-quote-mark{
  position:absolute;
  left:22px;top:6px;
  font:800 90px/1 Georgia,'Plus Jakarta Sans',serif;
  color:rgba(212,162,76,.45);
  line-height:1;
  pointer-events:none;
}
body.page-id-1201 blockquote.cws-gal-quote p{
  font:700 clamp(16px,1.9vw,22px)/1.5 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:0!important;
  font-style:italic;
  letter-spacing:-.005em;
}

@media (max-width:980px){
  body.page-id-1201 .cws-gal-themes-grid{grid-template-columns:repeat(2,1fr);}
  body.page-id-1201 ul.cws-gal-highlights-list{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:600px){
  body.page-id-1201 .cws-gal-themes-grid{grid-template-columns:1fr;}
  body.page-id-1201 ul.cws-gal-highlights-list{grid-template-columns:1fr;}
  body.page-id-1201 .cws-gal-highlights{padding:24px 22px;}
  body.page-id-1201 blockquote.cws-gal-quote{padding:22px 22px 22px 56px;}
  body.page-id-1201 .cws-gal-quote-mark{font-size:64px;left:14px;top:0;}
}

/* === PHOTO GALLERY · EVENT SECTION · v1.2.0 (page-id-1201) === */
body.page-id-1201 .cws-gal-event{
  font-family:'Plus Jakarta Sans',sans-serif;
  max-width:1180px;
  margin:0 auto 36px;
  padding:8px 4px 32px;
}
body.page-id-1201 .cws-gal-event-head{
  text-align:center;
  margin-bottom:24px;
}
body.page-id-1201 .cws-gal-event-eyebrow{
  display:inline-block;
  font:700 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:#8a6418;
  padding:7px 12px;
  background:rgba(212,162,76,.10);
  border:1px solid rgba(212,162,76,.35);
  border-radius:999px;
  margin-bottom:14px;
}
body.page-id-1201 .cws-gal-event-head h2{
  font:800 clamp(22px,2.8vw,32px)/1.2 'Plus Jakarta Sans',sans-serif!important;
  color:#0F1E3D!important;
  margin:0 0 14px!important;
  letter-spacing:-.012em;
}
body.page-id-1201 .cws-gal-event-rule{
  display:block;
  width:60px;height:3px;
  margin:0 auto 16px;
  background:linear-gradient(90deg,#D4A24C,#B6862F);
  border-radius:2px;
}
body.page-id-1201 .cws-gal-event-sub{
  font:500 14.5px/1.6 'Plus Jakarta Sans',sans-serif!important;
  color:#4B5563!important;
  margin:0 auto!important;
  max-width:680px;
}

body.page-id-1201 .cws-gal-event-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}
body.page-id-1201 .cws-gal-event-item{
  position:relative;
  margin:0;
  border-radius:14px;
  overflow:hidden;
  background:#0F1E3D;
  border:1px solid rgba(212,162,76,.30);
  box-shadow:0 6px 18px rgba(15,30,61,.10);
  transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;
  aspect-ratio:4/3;
}
body.page-id-1201 .cws-gal-event-item img{
  display:block;
  width:100%;height:100%;
  object-fit:cover;
  transition:transform .5s ease,filter .3s ease;
}
body.page-id-1201 .cws-gal-event-item:hover{
  transform:translateY(-4px);
  border-color:#D4A24C;
  box-shadow:0 18px 36px rgba(15,30,61,.18);
}
body.page-id-1201 .cws-gal-event-item:hover img{
  transform:scale(1.05);
}

@media (max-width:980px){
  body.page-id-1201 .cws-gal-event-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:600px){
  body.page-id-1201 .cws-gal-event-grid{grid-template-columns:1fr;}
}

/* === CWS Lightbox · v1.2.1 === */
.cws-lb{
  position:fixed;inset:0;
  background:rgba(15,30,61,.92);
  z-index:9999;
  display:none;
  align-items:center;justify-content:center;
  font-family:'Plus Jakarta Sans',sans-serif;
  padding:40px 60px;
  box-sizing:border-box;
}
.cws-lb.open{display:flex;}
.cws-lb-stage{
  margin:0;
  max-width:100%;max-height:100%;
  display:flex;flex-direction:column;
  align-items:center;justify-content:center;
  gap:12px;
}
.cws-lb-stage img{
  max-width:100%;
  max-height:calc(100vh - 140px);
  border-radius:10px;
  box-shadow:0 30px 80px rgba(0,0,0,.5);
  border:1px solid rgba(212,162,76,.4);
  background:#0F1E3D;
}
.cws-lb-stage figcaption{
  color:rgba(255,255,255,.78);
  font:500 13.5px/1.5 'Plus Jakarta Sans',sans-serif;
  text-align:center;
  max-width:680px;
}
.cws-lb-close,.cws-lb-prev,.cws-lb-next{
  position:absolute;
  background:rgba(255,255,255,.08);
  color:#fff;
  border:1px solid rgba(212,162,76,.4);
  border-radius:50%;
  cursor:pointer;
  display:grid;place-items:center;
  font-family:inherit;
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.cws-lb-close{
  top:18px;right:18px;
  width:44px;height:44px;
  font-size:26px;line-height:1;
}
.cws-lb-prev,.cws-lb-next{
  top:50%;
  width:48px;height:48px;
  font-size:18px;
  margin-top:-24px;
}
.cws-lb-prev{left:18px;}
.cws-lb-next{right:18px;}
.cws-lb-close:hover,.cws-lb-prev:hover,.cws-lb-next:hover{
  background:#D4A24C;
  border-color:#D4A24C;
  color:#0F1E3D;
  transform:scale(1.06);
}
.cws-lb-counter{
  position:absolute;
  bottom:18px;left:50%;
  transform:translateX(-50%);
  color:rgba(255,255,255,.7);
  font:700 12px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.18em;
  text-transform:uppercase;
  padding:8px 14px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(212,162,76,.3);
  border-radius:999px;
}
@media (max-width:640px){
  .cws-lb{padding:24px 12px;}
  .cws-lb-prev,.cws-lb-next{width:40px;height:40px;}
  .cws-lb-prev{left:8px;}
  .cws-lb-next{right:8px;}
  .cws-lb-close{top:10px;right:10px;}
}

/* === PHOTO GALLERY · EVENT THUMBNAILS · v1.2.2 — smaller initial display === */
body.page-id-1201 .cws-gal-event-grid{
  grid-template-columns:repeat(6,1fr)!important;
  gap:10px!important;
  max-width:880px;
  margin:0 auto;
}
body.page-id-1201 .cws-gal-event-item{
  aspect-ratio:1/1!important;
  border-radius:10px;
}
@media (max-width:980px){
  body.page-id-1201 .cws-gal-event-grid{grid-template-columns:repeat(3,1fr)!important;}
}
@media (max-width:600px){
  body.page-id-1201 .cws-gal-event-grid{grid-template-columns:repeat(2,1fr)!important;}
}

/* === HOME SLIDER · v3.9.1 — show full image (no edge crop) === */
.eb-slider-wrapper.eb-slider-842b8e1 .slick-slider .eb-slider-item img:not(.slick-loading){
  object-fit:contain!important;
  width:100%!important;
  background:#0F1E3D;
}

/* === HOME SLIDER · v3.9.2 — ambient blurred backdrop fills letterbox gaps === */
.eb-slider-wrapper.eb-slider-842b8e1 .slick-slider .eb-slider-item{
  position:relative;
  overflow:hidden;
  background:#0F1E3D;
}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-slider .eb-slider-item::before{
  content:"";
  position:absolute;
  inset:-30px;
  background-image:var(--cws-slide-bg);
  background-size:cover;
  background-position:center;
  filter:blur(38px) saturate(1.15) brightness(.85);
  transform:scale(1.18);
  z-index:0;
  pointer-events:none;
}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-slider .eb-slider-item::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(15,30,61,.20) 0%,rgba(15,30,61,.05) 35%,rgba(15,30,61,.05) 65%,rgba(15,30,61,.45) 100%);
  z-index:1;
  pointer-events:none;
}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-slider .eb-slider-item > div,
.eb-slider-wrapper.eb-slider-842b8e1 .slick-slider .eb-slider-item .eb-slider-image{
  position:relative;
  z-index:2;
}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-slider .eb-slider-item img:not(.slick-loading){
  object-fit:contain!important;
  width:100%!important;
  background:transparent!important;
  filter:drop-shadow(0 18px 36px rgba(0,0,0,.35));
}

/* Refined arrows */
.eb-slider-wrapper.eb-slider-842b8e1 .slick-prev,
.eb-slider-wrapper.eb-slider-842b8e1 .slick-next{
  z-index:5;
  width:44px!important;height:44px!important;
  background:rgba(255,255,255,.85)!important;
  border-radius:50%!important;
  box-shadow:0 6px 16px rgba(0,0,0,.25);
  transition:background .2s ease,transform .2s ease;
}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-prev{left:16px!important;}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-next{right:16px!important;}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-prev:hover,
.eb-slider-wrapper.eb-slider-842b8e1 .slick-next:hover{
  background:#D4A24C!important;
  transform:scale(1.06);
}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-prev i,
.eb-slider-wrapper.eb-slider-842b8e1 .slick-next i,
.eb-slider-wrapper.eb-slider-842b8e1 .slick-prev svg,
.eb-slider-wrapper.eb-slider-842b8e1 .slick-next svg{
  color:#0F1E3D!important;fill:#0F1E3D!important;font-size:18px!important;
}

/* Dots — gold accent */
.eb-slider-wrapper.eb-slider-842b8e1 .slick-dots{
  bottom:14px!important;
}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-dots li button:before{
  color:rgba(255,255,255,.55)!important;
  opacity:1!important;
  font-size:10px!important;
}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-dots li.slick-active button:before{
  color:#D4A24C!important;
}

/* === HOME SLIDER · v3.9.3 — refined arrows + pill dots === */

/* Arrows: frosted-glass capsule, gold accent ring, gold chevron */
.eb-slider-wrapper.eb-slider-842b8e1 .slick-prev,
.eb-slider-wrapper.eb-slider-842b8e1 .slick-next{
  position:absolute;
  top:50%!important;
  transform:translateY(-50%);
  width:54px!important;height:54px!important;
  background:rgba(15,30,61,.55)!important;
  backdrop-filter:blur(10px) saturate(1.2);
  -webkit-backdrop-filter:blur(10px) saturate(1.2);
  border:1.5px solid rgba(212,162,76,.55)!important;
  border-radius:50%!important;
  box-shadow:0 8px 24px rgba(0,0,0,.30),inset 0 0 0 1px rgba(255,255,255,.06);
  display:grid!important;
  place-items:center!important;
  cursor:pointer;
  opacity:.82;
  transition:opacity .25s ease,transform .25s ease,background .25s ease,border-color .25s ease,box-shadow .25s ease;
  z-index:5;
}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-prev{left:22px!important;}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-next{right:22px!important;}
.eb-slider-wrapper.eb-slider-842b8e1:hover .slick-prev,
.eb-slider-wrapper.eb-slider-842b8e1:hover .slick-next{opacity:1;}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-prev:hover,
.eb-slider-wrapper.eb-slider-842b8e1 .slick-next:hover{
  background:#D4A24C!important;
  border-color:#D4A24C!important;
  box-shadow:0 14px 32px rgba(212,162,76,.45);
}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-prev:hover{transform:translateY(-50%) translateX(-3px);}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-next:hover{transform:translateY(-50%) translateX(3px);}

/* Replace any inner icon with clean CSS chevron */
.eb-slider-wrapper.eb-slider-842b8e1 .slick-prev i,
.eb-slider-wrapper.eb-slider-842b8e1 .slick-next i,
.eb-slider-wrapper.eb-slider-842b8e1 .slick-prev svg,
.eb-slider-wrapper.eb-slider-842b8e1 .slick-next svg,
.eb-slider-wrapper.eb-slider-842b8e1 .slick-prev span,
.eb-slider-wrapper.eb-slider-842b8e1 .slick-next span{
  display:none!important;
}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-prev::before,
.eb-slider-wrapper.eb-slider-842b8e1 .slick-next::before{
  content:""!important;
  width:12px;height:12px;
  border-top:2.5px solid #D4A24C;
  border-right:2.5px solid #D4A24C;
  opacity:1!important;
  font-size:0!important;
  color:transparent!important;
  display:block;
  transition:border-color .25s ease;
}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-prev::before{
  transform:rotate(-135deg);
  margin-left:4px;
}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-next::before{
  transform:rotate(45deg);
  margin-right:4px;
}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-prev:hover::before,
.eb-slider-wrapper.eb-slider-842b8e1 .slick-next:hover::before{
  border-top-color:#0F1E3D;
  border-right-color:#0F1E3D;
}
@media (max-width:600px){
  .eb-slider-wrapper.eb-slider-842b8e1 .slick-prev,
  .eb-slider-wrapper.eb-slider-842b8e1 .slick-next{
    width:44px!important;height:44px!important;
  }
  .eb-slider-wrapper.eb-slider-842b8e1 .slick-prev{left:10px!important;}
  .eb-slider-wrapper.eb-slider-842b8e1 .slick-next{right:10px!important;}
}

/* Dots: pill bars; active is wider + gold */
.eb-slider-wrapper.eb-slider-842b8e1 .slick-dots{
  bottom:18px!important;
  display:flex!important;
  justify-content:center;
  gap:8px;
  padding:0!important;
  margin:0!important;
}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-dots li{
  width:auto!important;height:auto!important;
  margin:0!important;
  list-style:none;
}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-dots li button{
  width:22px!important;height:6px!important;
  padding:0!important;
  border:none!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.45)!important;
  cursor:pointer;
  transition:width .35s ease,background .25s ease,box-shadow .25s ease;
  font-size:0!important;
  line-height:0!important;
  color:transparent!important;
}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-dots li button::before{
  content:none!important;
  display:none!important;
}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-dots li button:hover{
  background:rgba(255,255,255,.85)!important;
}
.eb-slider-wrapper.eb-slider-842b8e1 .slick-dots li.slick-active button{
  width:38px!important;
  background:#D4A24C!important;
  box-shadow:0 0 0 1px rgba(212,162,76,.4),0 4px 10px rgba(212,162,76,.45);
}


/* ============================================================
   === CWS GLOBAL MOBILE PASS · v3.13.0 ========================
   Tightens padding/margins and stacks layouts on small screens.
   Scope: all custom cws-* sections across every page.
   ============================================================ */

/* -------- Tablet & small desktop ( <= 980px ) -------- */
@media (max-width:980px){
  [class*="cws-"]{
    box-sizing:border-box;
  }
  /* Section roots — every pillar/section uses one of these prefixes */
  .cws-x,
  .cws-vmm,
  .cws-about,
  .cws-pm,
  .cws-adm,
  .cws-adm-intro,
  .cws-gal-intro,
  .cws-gal-themes,
  .cws-gal-highlights,
  .cws-gal-event,
  .cws-aisse,
  .cws-blogs,
  .cws-cbse,
  .cws-cta,
  .cws-press{
    padding-left:18px!important;
    padding-right:18px!important;
    padding-top:28px!important;
    padding-bottom:28px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    margin-top:0!important;
    margin-bottom:22px!important;
    max-width:100%!important;
    border-radius:14px!important;
  }
  /* Head blocks */
  .cws-x-head,
  .cws-gal-themes-head,
  .cws-gal-event-head,
  .cws-gal-highlights-head,
  .cws-adm-intro .cws-adm-eyebrow + *,
  .cws-pm-head{
    margin-bottom:18px!important;
  }
  /* Grids → 2 columns at tablet width */
  .cws-features-grid,
  .cws-gal-themes-grid,
  .cws-gal-event-grid,
  .cws-gal-highlights-list,
  .cws-aisse-grid,
  .cws-cbse-grid,
  .cws-adm-grid,
  .cws-adm-steps,
  .cws-adm-stats,
  .cws-adm-terms{
    grid-template-columns:repeat(2,1fr)!important;
    gap:12px!important;
  }
  /* Card-style interior padding */
  .cws-card,
  .cws-feature,
  .cws-about-card,
  .cws-adm-card,
  .cws-adm-step,
  .cws-adm-stat,
  .cws-aisse-card,
  .cws-cbse-card,
  .cws-gal-theme{
    padding:18px!important;
    border-radius:12px!important;
  }
  /* Headings */
  .cws-x h2,
  .cws-pm h1,
  .cws-adm-intro h1,
  .cws-gal-intro-title,
  .cws-gal-themes-head h2,
  .cws-gal-event-head h2,
  .cws-gal-highlights-head h3,
  .cws-aisse h2,
  .cws-cbse h2,
  .cws-blogs h2{
    font-size:clamp(20px,4.2vw,26px)!important;
    line-height:1.25!important;
    margin-bottom:10px!important;
  }
  /* Lead/sub copy */
  .cws-x-sub,
  .cws-adm-lead,
  .cws-pm-lead,
  .cws-gal-intro-lead,
  .cws-gal-intro-sub,
  .cws-gal-event-sub,
  .cws-gal-themes p,
  .cws-aisse-lead,
  .cws-cbse-lead,
  .cws-blogs-lead{
    font-size:14px!important;
    line-height:1.6!important;
    margin-bottom:10px!important;
  }
}

/* -------- Phone ( <= 600px ) — aggressive tightening -------- */
@media (max-width:600px){
  .cws-x,
  .cws-vmm,
  .cws-about,
  .cws-pm,
  .cws-adm,
  .cws-adm-intro,
  .cws-gal-intro,
  .cws-gal-themes,
  .cws-gal-highlights,
  .cws-gal-event,
  .cws-aisse,
  .cws-blogs,
  .cws-cbse,
  .cws-cta,
  .cws-press{
    padding-left:14px!important;
    padding-right:14px!important;
    padding-top:22px!important;
    padding-bottom:22px!important;
    margin-bottom:16px!important;
    border-radius:12px!important;
  }
  /* All custom grids collapse to 1 column */
  .cws-features-grid,
  .cws-gal-themes-grid,
  .cws-gal-event-grid,
  .cws-gal-highlights-list,
  .cws-aisse-grid,
  .cws-cbse-grid,
  .cws-adm-grid,
  .cws-adm-steps,
  .cws-adm-stats,
  .cws-adm-terms,
  .cws-cta-cards,
  .cws-x-found-grid,
  .cws-x-founder-grid{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  /* Cards */
  .cws-card,
  .cws-feature,
  .cws-about-card,
  .cws-adm-card,
  .cws-adm-step,
  .cws-adm-stat,
  .cws-aisse-card,
  .cws-cbse-card,
  .cws-gal-theme{
    padding:16px!important;
    border-radius:10px!important;
  }
  /* Headings */
  .cws-x h2,
  .cws-pm h1,
  .cws-adm-intro h1,
  .cws-gal-intro-title,
  .cws-gal-themes-head h2,
  .cws-gal-event-head h2,
  .cws-gal-highlights-head h3,
  .cws-aisse h2,
  .cws-cbse h2,
  .cws-blogs h2{
    font-size:clamp(18px,5.2vw,22px)!important;
    margin-bottom:8px!important;
  }
  .cws-x-eyebrow,
  .cws-adm-eyebrow,
  .cws-gal-intro-eyebrow,
  .cws-gal-themes-eyebrow,
  .cws-gal-event-eyebrow,
  .cws-gal-highlights-eyebrow,
  .cws-aisse-eyebrow,
  .cws-cbse-eyebrow,
  .cws-blogs-eyebrow{
    font-size:10px!important;
    letter-spacing:.2em!important;
    padding:5px 9px!important;
    margin-bottom:8px!important;
  }
  /* Buttons & CTAs */
  .cws-btn,
  .cws-adm-cta-btn,
  .cws-aisse-btn{
    width:100%!important;
    justify-content:center!important;
    padding:11px 14px!important;
    font-size:13.5px!important;
  }
  .cws-adm-cta-actions{
    flex-direction:column!important;
    gap:8px!important;
  }
  /* Lead paragraph length */
  .cws-x-sub,
  .cws-adm-lead,
  .cws-pm-lead,
  .cws-gal-intro-lead,
  .cws-gal-intro-sub,
  .cws-gal-event-sub,
  .cws-aisse-lead,
  .cws-cbse-lead,
  .cws-blogs-lead{
    font-size:13.5px!important;
    line-height:1.55!important;
  }
  .cws-x-rule-c{
    margin-left:auto;margin-right:auto;
  }
  /* Principal page */
  .cws-pm{padding:18px!important;}
  .cws-pm-head{margin-bottom:14px!important;}
  .cws-pm-body p{font-size:14px!important;line-height:1.65!important;margin-bottom:10px!important;}
  /* Gallery event grid: 2 cols feels better than 1 for thumbnails */
  body.page-id-1201 .cws-gal-event-grid{
    grid-template-columns:repeat(2,1fr)!important;
    gap:8px!important;
  }
  /* Quote panel */
  blockquote.cws-gal-quote{
    padding:18px 16px 16px 48px!important;
    border-radius:12px!important;
  }
  .cws-gal-quote-mark{
    font-size:54px!important;
    left:10px!important;top:-4px!important;
  }
  /* Press strip */
  .cws-press,
  .cws-x-press{
    text-align:center!important;
  }
}

/* -------- Tiny phones ( <= 380px ) -------- */
@media (max-width:380px){
  .cws-x,
  .cws-vmm,
  .cws-pm,
  .cws-adm-intro,
  .cws-gal-intro,
  .cws-gal-themes,
  .cws-gal-highlights,
  .cws-gal-event{
    padding-left:12px!important;
    padding-right:12px!important;
  }
  .cws-card,
  .cws-feature,
  .cws-gal-theme{padding:14px!important;}
}


/* === CWS FOOTER · v1.0.0 (replaces Astra footer) === */
footer#colophon.cws-ft{
  position:relative;
  background:linear-gradient(180deg,#0B1730 0%,#0F1E3D 60%,#091227 100%)!important;
  color:#fff;
  font-family:'Plus Jakarta Sans',sans-serif;
  padding:0!important;
  overflow:hidden;
  margin-top:40px;
}
footer#colophon.cws-ft .cws-ft-glow{
  position:absolute;
  inset:auto -120px -180px auto;
  width:520px;height:520px;
  background:radial-gradient(circle,rgba(212,162,76,.18) 0%,rgba(212,162,76,0) 65%);
  pointer-events:none;
}
footer#colophon.cws-ft .cws-ft-inner{
  position:relative;
  max-width:1200px;
  margin:0 auto;
  padding:54px 24px 22px;
}

/* Top grid */
footer#colophon.cws-ft .cws-ft-top{
  display:grid;
  grid-template-columns:1.5fr 1fr 1fr 1.2fr;
  gap:36px;
  padding-bottom:34px;
  border-bottom:1px solid rgba(212,162,76,.20);
}

/* Brand column */
footer#colophon.cws-ft .cws-ft-brand{display:block;}
footer#colophon.cws-ft .cws-ft-logo{
  display:inline-flex;align-items:center;gap:12px;
  text-decoration:none;color:#fff;
  margin-bottom:16px;
}
footer#colophon.cws-ft .cws-ft-logo img{
  width:54px;height:54px;
  object-fit:contain;
  background:#fff;
  border-radius:12px;
  padding:6px;
  border:1px solid rgba(212,162,76,.35);
}
footer#colophon.cws-ft .cws-ft-logo-text{
  display:flex;flex-direction:column;line-height:1.2;
}
footer#colophon.cws-ft .cws-ft-logo-text strong{
  font:800 17px/1.2 'Plus Jakarta Sans',sans-serif;
  color:#fff;letter-spacing:-.005em;
}
footer#colophon.cws-ft .cws-ft-logo-text em{
  font:600 11px/1.2 'Plus Jakarta Sans',sans-serif;
  font-style:normal;
  letter-spacing:.18em;text-transform:uppercase;
  color:#D4A24C;margin-top:5px;
}
footer#colophon.cws-ft .cws-ft-tagline{
  font:500 13.5px/1.7 'Plus Jakarta Sans',sans-serif;
  color:rgba(255,255,255,.75);
  margin:0 0 18px;
  max-width:380px;
}
footer#colophon.cws-ft .cws-ft-social{
  list-style:none;padding:0;margin:0;
  display:flex;gap:10px;
}
footer#colophon.cws-ft .cws-ft-social a{
  display:grid;place-items:center;
  width:38px;height:38px;
  border-radius:10px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(212,162,76,.30);
  color:#D4A24C;
  transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;
}
footer#colophon.cws-ft .cws-ft-social a:hover{
  background:#D4A24C;color:#0F1E3D;border-color:#D4A24C;
  transform:translateY(-2px);
}
footer#colophon.cws-ft .cws-ft-social svg{width:18px;height:18px;}

/* Link columns */
footer#colophon.cws-ft .cws-ft-col h4{
  font:800 13px/1 'Plus Jakarta Sans',sans-serif!important;
  letter-spacing:.18em;text-transform:uppercase;
  color:#D4A24C!important;
  margin:0 0 18px!important;
  padding-bottom:10px;
  border-bottom:1px dashed rgba(212,162,76,.30);
}
footer#colophon.cws-ft .cws-ft-col ul{
  list-style:none;padding:0;margin:0;
  display:flex;flex-direction:column;gap:9px;
}
footer#colophon.cws-ft .cws-ft-col li{
  font:500 13.5px/1.5 'Plus Jakarta Sans',sans-serif;
  color:rgba(255,255,255,.82);
}
footer#colophon.cws-ft .cws-ft-col a{
  color:rgba(255,255,255,.82);
  text-decoration:none;
  transition:color .2s ease,padding-left .2s ease;
  display:inline-block;
}
footer#colophon.cws-ft .cws-ft-col a:hover{
  color:#D4A24C;
  padding-left:4px;
}

/* Contact column rows */
footer#colophon.cws-ft .cws-ft-contact ul{gap:12px;}
footer#colophon.cws-ft .cws-ft-row{
  display:grid!important;
  grid-template-columns:32px 1fr;
  align-items:start;
  gap:10px;
}
footer#colophon.cws-ft .cws-ft-ico{
  display:grid;place-items:center;
  width:32px;height:32px;
  border-radius:8px;
  background:rgba(212,162,76,.12);
  border:1px solid rgba(212,162,76,.30);
  color:#D4A24C;
  margin-top:1px;
}
footer#colophon.cws-ft .cws-ft-ico svg{width:15px;height:15px;}
footer#colophon.cws-ft .cws-ft-row a{
  font:600 13.5px/1.55 'Plus Jakarta Sans',sans-serif;
  color:rgba(255,255,255,.92);
}
footer#colophon.cws-ft .cws-ft-row a:hover{padding-left:0;color:#D4A24C;}
footer#colophon.cws-ft .cws-ft-affil{
  margin-top:18px;
  display:inline-block;
  font:700 11px/1 'Plus Jakarta Sans',sans-serif;
  letter-spacing:.20em;text-transform:uppercase;
  color:#D4A24C;
  padding:8px 12px;
  background:rgba(212,162,76,.10);
  border:1px solid rgba(212,162,76,.32);
  border-radius:999px;
}
footer#colophon.cws-ft .cws-ft-affil strong{color:#fff;letter-spacing:.08em;margin-left:4px;}

/* Bottom strip */
footer#colophon.cws-ft .cws-ft-bottom{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;
  padding-top:18px;
}
footer#colophon.cws-ft .cws-ft-copy{
  margin:0!important;
  font:500 12.5px/1.5 'Plus Jakarta Sans',sans-serif!important;
  color:rgba(255,255,255,.62)!important;
}
footer#colophon.cws-ft .cws-ft-meta{
  margin:0!important;
  display:flex;flex-wrap:wrap;gap:8px;align-items:center;
  font:500 12.5px/1 'Plus Jakarta Sans',sans-serif!important;
  color:rgba(255,255,255,.55)!important;
}
footer#colophon.cws-ft .cws-ft-meta a{
  color:rgba(255,255,255,.78);
  text-decoration:none;
  border-bottom:1px solid rgba(212,162,76,.35);
  padding-bottom:1px;
}
footer#colophon.cws-ft .cws-ft-meta a:hover{color:#D4A24C;border-color:#D4A24C;}
footer#colophon.cws-ft .cws-ft-meta span{opacity:.4;}

/* Responsive */
@media (max-width:1024px){
  footer#colophon.cws-ft .cws-ft-top{
    grid-template-columns:1fr 1fr;
    gap:32px;
  }
}
@media (max-width:600px){
  footer#colophon.cws-ft .cws-ft-inner{padding:36px 18px 18px;}
  footer#colophon.cws-ft .cws-ft-top{
    grid-template-columns:1fr;
    gap:28px;
    padding-bottom:24px;
  }
  footer#colophon.cws-ft .cws-ft-bottom{
    flex-direction:column;align-items:flex-start;gap:8px;
  }
}
