﻿/* =====================================================================
   SHIS â€” About Us sub pages
   Shared shell (hero + About Us section strip + article body) used by every
   page under the "About Us" sub menu. Loaded after style.css.
   ===================================================================== */

/* ---- Reading progress bar (sits flush under the fixed header) ---- */
.pg-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:96;background:transparent;pointer-events:none}
.pg-progress::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#c9a227,#e8cf6f 45%,#bc2e31);transform:scaleX(0);transform-origin:0 50%;transition:transform .12s linear}
@media(prefers-reduced-motion:reduce){.pg-progress::after{transition:none}}

/* =============================== HERO =============================== */
.pg-hero{position:relative;overflow:hidden;color:#fff;padding:clamp(84px,11vw,150px) 0 clamp(46px,6vw,78px);background:linear-gradient(158deg,rgba(26,47,99,.93) 0%,rgba(16,33,71,.95) 45%,rgba(11,23,48,.97) 100%),url('../assets/img/school.jpg') center 32%/cover no-repeat #0b1730}
.pg-hero::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#8e1f22,#bc2e31 25%,var(--gold) 50%,#bc2e31 75%,#8e1f22)}
.pg-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(201,162,39,.55),transparent)}
.pg-hero-glow{position:absolute;right:-14%;top:-40%;width:min(46rem,68vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(201,162,39,.20),transparent 66%);pointer-events:none}
.pg-hero-glow::after{content:"";position:absolute;left:-70%;top:60%;width:70%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(0,154,252,.16),transparent 68%)}
.pg-hero .wrap{position:relative;z-index:1}
.pg-hero .crumbs{margin-bottom:20px}
.pg-kicker{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:#1a1500;background:linear-gradient(135deg,#e8cf6f,var(--gold));border-radius:999px;padding:7px 16px;margin-bottom:16px;box-shadow:0 10px 24px -12px rgba(201,162,39,.8)}
.pg-hero h1{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(28px,4.4vw,54px);font-weight:800;line-height:1.12;letter-spacing:-.015em;margin:0 0 14px;max-width:22ch}
.pg-hero h1 em{font-style:italic;color:var(--gold)}
.pg-lead{font-size:clamp(14px,1.5vw,17px);line-height:1.75;color:rgba(255,255,255,.84);max-width:62ch;margin:0}
.pg-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.pg-pills span{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;font-weight:700;letter-spacing:.03em;color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:8px 15px;backdrop-filter:blur(3px)}
.pg-pills i{color:var(--gold);font-size:12px}

.pg-hero-inner{position:relative;z-index:1}

/* ---- Optional hero visual (e.g. about.php): campus card + crest medallion ---- */
.pg-hero-inner--aside{display:grid;gap:clamp(26px,3.6vw,54px);align-items:center}
@media(min-width:1024px){.pg-hero-inner--aside{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}}
.pg-hero-media{position:relative;margin:0;padding:0 0 clamp(24px,2.8vw,42px) clamp(24px,2.8vw,42px)}
.pg-hero-shot{position:relative;display:block;overflow:hidden;border-radius:22px;border:1px solid rgba(255,255,255,.2);box-shadow:0 46px 90px -44px rgba(0,0,0,.9)}
.pg-hero-shot::after{content:"";position:absolute;inset:0;background:linear-gradient(155deg,rgba(11,23,48,.04),rgba(11,23,48,.46));pointer-events:none}
.pg-hero-shot img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.pg-hero-crest{position:absolute;left:0;bottom:0;width:clamp(92px,8.4vw,124px);aspect-ratio:1;display:grid;place-items:center;padding:9px;border-radius:50%;background:radial-gradient(circle at 32% 26%,#fff,#e9eef8);box-shadow:0 0 0 1px rgba(201,162,39,.85),0 0 0 7px rgba(201,162,39,.16),0 24px 44px -18px rgba(0,0,0,.75)}
.pg-hero-crest img{width:100%;height:100%;object-fit:contain;display:block}

/* ---- Editorial letter (chairman / principal messages) ---- */
.pg-letter{position:relative;overflow:hidden;background:#fff;border:1px solid rgba(16,33,71,.1);border-radius:22px;padding:clamp(24px,3.2vw,46px);box-shadow:0 44px 84px -62px rgba(16,33,71,.8)}
.pg-letter::before{content:"";position:absolute;right:-2.5rem;bottom:-3rem;width:min(19rem,46%);aspect-ratio:1;background:url('../assets/img/shis-crest.png') center/contain no-repeat;opacity:.065;pointer-events:none}
.pg-letter::after{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent,var(--gold) 45%,transparent)}
.pg-letter>*{position:relative}
.pg-dropcap>p:first-of-type::first-letter{float:left;font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:3.3em;line-height:.82;color:#a32427;padding:.06em .12em 0 0}
.pg-sign{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:26px;padding-top:20px;border-top:1px dashed rgba(16,33,71,.18)}
.pg-sign-mark{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:clamp(25px,3vw,36px);line-height:1;color:var(--navy)}
.pg-sign-role{font-size:10.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#8a6d1c;line-height:1.7}

.pg-sticky-col{position:sticky;top:96px}
.pg-sticky-col.is-static{position:static}  /* set by JS when the column is taller than the viewport */
@media(max-width:1024px){.pg-sticky-col{position:static}}
/* ---- Asymmetric split: wide copy + a narrower leading media column ---- */
.pg-split--aside{display:grid;gap:clamp(1.2rem,2.4vw,2.4rem);align-items:start;grid-template-columns:minmax(0,1fr)}
@media(min-width:1024px){
  /* the portrait column leads, the letter keeps the wider reading measure */
  .pg-split--aside{grid-template-columns:minmax(0,.82fr) minmax(0,1.6fr)}
  .pg-split--aside>aside{order:-1}
}

/* ---- Profile card: full-bleed cover photo, caption laid over the foot ---- */
.pg-profile{position:relative;overflow:hidden;margin:0;padding:0;border:0;display:flex;align-items:flex-end;aspect-ratio:1/1;border-radius:20px;background:#0b1730;box-shadow:0 34px 70px -42px rgba(11,23,48,.85)}
.pg-profile-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center;display:block}
.pg-profile::after{content:"";position:absolute;left:0;right:0;bottom:0;height:60%;background:linear-gradient(180deg,rgba(11,23,48,0) 0%,rgba(11,23,48,.5) 42%,rgba(8,17,30,.95) 100%);pointer-events:none}
.pg-profile-cap{position:relative;z-index:1;width:100%;text-align:center;padding:22px 18px 20px}
.pg-profile-name{margin:0;font-family:'Playfair Display',Georgia,serif;font-size:clamp(18px,2vw,22px);font-weight:700;line-height:1.25;color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.55)}
.pg-profile-rule{display:flex;align-items:center;justify-content:center;gap:9px;margin:12px 0}
.pg-profile-rule::before,.pg-profile-rule::after{content:"";height:1px;width:32px}
.pg-profile-rule::before{background:linear-gradient(90deg,transparent,rgba(201,162,39,.75))}
.pg-profile-rule::after{background:linear-gradient(270deg,transparent,rgba(201,162,39,.75))}
.pg-profile-rule i{font-size:6px;color:var(--gold)}
@media(max-width:640px){.pg-profile-cap{padding:18px 14px 16px}}

/* ---- Year badge pinned on a media figure ---- */
.pg-media-year{position:absolute;left:16px;top:16px;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;background:linear-gradient(135deg,#e8cf6f,var(--gold));color:#231a00;border-radius:14px;padding:10px 18px;box-shadow:0 16px 32px -16px rgba(0,0,0,.55)}
.pg-media-year strong{font-size:21px;font-weight:800;line-height:1}
.pg-media-year small{margin-top:2px;font-size:9.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}

/* ---- "Read more" link inside a card ---- */
.pg-more{display:inline-flex;align-items:center;gap:8px;margin-top:14px;font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#a32427;text-decoration:none}
.pg-more i{font-size:10px;transition:transform .25s}
.pg-more:hover i{transform:translateX(3px)}
@media(prefers-reduced-motion:reduce){.pg-more:hover i{transform:none}}

/* ---- Crest watermark on dark bands ---- */
.pg-band--crest::after{content:"";position:absolute;right:-2rem;bottom:-3.5rem;width:15rem;aspect-ratio:1;background:url('../assets/img/shis-crest.png') center/contain no-repeat;opacity:.1;pointer-events:none}

/* ---- Pull quote with gold rule ---- */
.pg-pull{margin:0;padding-left:20px;border-left:4px solid var(--gold);font-family:'Lora',Georgia,serif;font-style:italic;font-size:clamp(15.5px,1.9vw,21px);line-height:1.7;color:var(--navy)}
.pg-pull cite{display:block;margin-top:10px;font-family:'Plus Jakarta Sans',sans-serif;font-size:11.5px;font-style:normal;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#8a6d1c}

/* ============================== SHELL =============================== */
.pg-body{background:#fff}
/* Every About Us sub page is a single-column shell: the old sticky section rail
   is gone, so the article simply fills the shared measure. */
.pg-shell{padding-top:clamp(36px,4.4vw,64px);padding-bottom:clamp(48px,6vw,96px)}

/* style.css ends with a `.wrap{width:100%}` guard which drops the side gutter
   between 641px and 1535px â€” that would push the hero, body, CTA and footer
   flush to the viewport edge while other blocks stayed inset. Restore the
   intended measure so every band on these pages shares one left edge. */
@media(min-width:641px) and (max-width:1535.98px){
  .pg-body .wrap{width:min(100% - 2rem,87.5rem);margin-inline:auto}
}
.pg-main{min-width:0}


/* ======================= ABOUT PAGE SHOWCASES ======================== */
/* Dark showcase band for the School Quality Policy */
.pg-policy{position:relative;overflow:hidden;background:linear-gradient(140deg,#16295a,#0b1730);color:#fff;border-radius:22px;padding:clamp(26px,3.4vw,48px);box-shadow:0 36px 74px -46px rgba(11,23,48,.9)}
.pg-policy::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.pg-policy-grid{display:grid;gap:clamp(22px,3vw,44px);grid-template-columns:minmax(0,1fr);align-items:center}
@media(min-width:1024px){.pg-policy-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}}
.pg-policy .pg-head{max-width:none;margin-bottom:0}
.pg-policy .pg-head h2{color:#fff}
.pg-policy .pg-head h2 em{color:var(--gold)}
.pg-policy .pg-head p{color:rgba(255,255,255,.82)}
.pg-policy-quote{margin:0;position:relative;background:rgba(255,255,255,.06);border:1px solid rgba(201,162,39,.4);border-left:5px solid var(--gold);border-radius:0 18px 18px 0;padding:clamp(22px,2.8vw,36px);font-family:'Lora',Georgia,serif;font-size:clamp(14.5px,1.7vw,18.5px);font-style:italic;line-height:1.85;color:#fff;backdrop-filter:blur(2px)}

/* ---- Founder cards (about.php) ---- */
.pg-fnd-grid{display:grid;gap:clamp(.9rem,.7rem + 1vw,1.4rem);grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr))}
@media(min-width:900px){.pg-fnd-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pg-fnd{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;background:linear-gradient(180deg,#fff, #f7f9ff);border:1px solid rgba(16,33,71,.1);border-radius:20px;padding:clamp(24px,3vw,38px) 20px clamp(18px,2.2vw,26px);box-shadow:0 22px 50px -38px rgba(16,33,71,.5);transition:transform .28s,box-shadow .28s,border-color .28s}
.pg-fnd:hover{transform:translateY(-4px);border-color:rgba(201,162,39,.5);box-shadow:0 28px 58px -30px rgba(16,33,71,.45)}
.pg-fnd::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent,var(--gold),#a32427,transparent)}
.pg-fnd-img{position:relative;display:grid;place-items:center;width:clamp(128px,13vw,164px);aspect-ratio:1;border-radius:50%;background:linear-gradient(135deg,var(--gold),#a32427);padding:5px}
.pg-fnd-img::before{content:"";position:absolute;inset:5px;border-radius:50%;border:2px dashed rgba(255,255,255,.55)}
.pg-fnd-img img{position:relative;width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:top;display:block}
.pg-fnd strong{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(16px,1.8vw,19px);font-weight:800;color:var(--navy)}
.pg-fnd-rule{width:54px;height:3px;border-radius:99px;background:linear-gradient(90deg,var(--gold),#a32427)}

/* ---- Memorial cards (about.php, parent-school founders) ---- */
.pg-mem-grid{display:grid;gap:clamp(.9rem,.7rem + 1vw,1.4rem);grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr))}
@media(min-width:900px){.pg-mem-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pg-mem{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;background:linear-gradient(180deg,#fffaf0,#fff);border:1px solid rgba(201,162,39,.38);border-radius:20px;padding:clamp(26px,3.2vw,40px) 20px clamp(20px,2.4vw,28px);box-shadow:0 22px 50px -38px rgba(16,33,71,.5);transition:transform .28s,box-shadow .28s}
.pg-mem:hover{transform:translateY(-4px);box-shadow:0 28px 58px -30px rgba(16,33,71,.45)}
.pg-mem::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--gold),#a32427,var(--gold))}
.pg-mem-img{position:relative;display:grid;place-items:center;width:clamp(104px,10.5vw,132px);aspect-ratio:1;border-radius:50%;background:linear-gradient(135deg,#e8cf6f,var(--gold));padding:4px}
.pg-mem-img::before{content:"";position:absolute;inset:4px;border-radius:50%;border:2px dashed rgba(138,109,28,.5)}
.pg-mem-img img{position:relative;width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:top;display:block}
.pg-mem strong{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(15.5px,1.7vw,18px);font-weight:800;color:var(--navy);margin-top:6px}
.pg-mem small{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#8a6d1c}

/* ---- Elevated stat strip (about.php fact row) ---- */
.pg-stats--dark{position:relative;background:linear-gradient(140deg,#16295a,#0b1730);border-radius:20px;padding:clamp(8px,1.2vw,14px);box-shadow:0 30px 62px -42px rgba(11,23,48,.85);gap:10px}
.pg-stats--dark>div{position:relative;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:clamp(16px,2vw,24px) 12px}
.pg-stats--dark>div::after{content:"";position:absolute;left:50%;bottom:0;width:0;height:3px;border-radius:99px;background:linear-gradient(90deg,var(--gold),#e8cf6f);transform:translateX(-50%);transition:width .3s}
.pg-stats--dark>div:hover::after{width:56%}
.pg-stats--dark strong{color:#fff}
.pg-stats--dark span{color:rgba(255,255,255,.72)}
@media(prefers-reduced-motion:reduce){.pg-fnd,.pg-mem{transition:none}.pg-fnd:hover,.pg-mem:hover{transform:none}.pg-stats--dark>div::after{transition:none}}

/* ================================================================
   ABOUT LANDING PAGE â€” about.php
   Layout only: an at-a-glance rail over the hero edge, an asymmetric
   story split with a sticky photo, a policy showcase, horizontal
   founder profile cards and a label + two-column parent school band.
   ================================================================ */

/* ---- At-a-glance fact rail (straddles the hero / body edge) ---- */
.ab-glance{position:relative;z-index:2;margin-top:calc(-1 * clamp(74px,8vw,112px));margin-bottom:clamp(30px,4vw,56px)}
.ab-glance-inner{display:grid;gap:1px;grid-template-columns:repeat(2,minmax(0,1fr));background:rgba(16,33,71,.1);border:1px solid rgba(16,33,71,.1);border-radius:20px;overflow:hidden;box-shadow:0 34px 70px -40px rgba(11,23,48,.55)}
@media(min-width:760px){.ab-glance-inner{grid-template-columns:repeat(4,minmax(0,1fr))}}
.ab-glance-item{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;background:#fff;padding:clamp(18px,2.2vw,26px) 12px clamp(16px,2vw,22px)}
.ab-glance-item::after{content:"";position:absolute;left:50%;bottom:0;width:0;height:3px;border-radius:99px;background:linear-gradient(90deg,var(--gold),#e8cf6f);transform:translateX(-50%);transition:width .3s}
.ab-glance-item:hover::after{width:56%}
.ab-glance-ico{display:grid;place-items:center;width:38px;height:38px;margin-bottom:9px;border-radius:12px;background:linear-gradient(135deg,#16295a,#0b1730);color:var(--gold);font-size:14px}
.ab-glance-item strong{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(19px,2.4vw,28px);font-weight:800;line-height:1.05;color:var(--navy)}
.ab-glance-label{margin-top:5px;font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
@media(max-width:960px){.ab-glance{margin-top:calc(-1 * clamp(44px,6vw,64px))}}
@media(prefers-reduced-motion:reduce){.ab-glance-item::after{transition:none}}

/* ---- Section index (anchor chips under the fact rail) ---- */
.ab-index{margin:0 0 clamp(30px,4vw,54px)}

/* ---- Story: justified long-form measure ---- */
.ab-story .pg-prose p{font-size:clamp(14.5px,1.05vw + .62rem,16.5px);line-height:1.9;text-align:justify;text-justify:inter-word;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}
.ab-story .pg-prose p:last-child{text-align:start}
.ab-story .pg-prose>p:first-of-type{font-size:clamp(15.5px,1.05vw + .72rem,17.5px);color:#3f4a5c}
@media(min-width:960px){.ab-story-copy .pg-head h2{margin-bottom:14px}}
/* drop cap sits flush with the justified edge, without clumping the second line */
.ab-story .pg-dropcap>p:first-of-type::first-letter{padding:.06em .16em .06em 0}
.ab-story .pg-dropcap>p:first-of-type::after{content:"";display:block;float:none;clear:both}
@media(prefers-reduced-motion:reduce){.ab-figure{transition:none}.ab-story-grid>.ab-story-aside .ab-figure:hover{transform:none}}

/* ---- Soft tinted panel that carries the founders ---- */
.ab-panel{background:linear-gradient(180deg,#f7f9fc,#f1f5fb);border:1px solid rgba(16,33,71,.07);border-radius:26px;padding:clamp(24px,3vw,44px)}

/* ---- Story: sticky campus photo beside the prose measure ---- */
.ab-story-grid{display:grid;gap:clamp(1.4rem,3vw,3rem);grid-template-columns:minmax(0,1fr);align-items:start}
@media(min-width:960px){.ab-story-grid{grid-template-columns:minmax(0,.84fr) minmax(0,1.36fr)}}
.ab-story-aside,.ab-story-copy{min-width:0}
/* the aside stretches so the sticky photo has the full story height to travel */
.ab-story-aside{align-self:stretch}
.ab-figure{position:relative;margin:0;padding:10px;border-radius:22px;background:#fff;border:1px solid rgba(16,33,71,.1);box-shadow:0 32px 66px -38px rgba(16,33,71,.7);transition:transform .3s,box-shadow .3s}
.ab-story-grid>.ab-story-aside .ab-figure:hover{transform:translateY(-5px);box-shadow:0 42px 80px -38px rgba(16,33,71,.62)}
.ab-figure::before{content:"";position:absolute;inset:6px;border-radius:14px;border:1px solid rgba(201,162,39,.5);pointer-events:none;z-index:1}
.ab-figure img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;border-radius:14px}
.ab-figure figcaption{position:absolute;left:10px;right:10px;bottom:10px;z-index:1;padding:44px 20px 16px;border-radius:0 0 12px 12px;font-size:12px;font-weight:700;letter-spacing:.01em;color:#fff;background:linear-gradient(180deg,rgba(11,23,48,0),rgba(11,23,48,.86) 55%)}
.ab-figure .pg-media-year{left:24px;top:24px;z-index:2;border-radius:16px}
/* stacked story: a wide crop keeps the photo from dominating the scroll */
@media(max-width:959.98px){.ab-figure img{aspect-ratio:16/9}.ab-figure figcaption{padding:36px 16px 13px}}

/* ---- Quality policy showcase ---- */
.ab-policy{display:grid;gap:clamp(20px,2.8vw,34px)}
.ab-policy-top{display:grid;gap:clamp(14px,2vw,30px);grid-template-columns:minmax(0,1fr);align-items:end}
@media(min-width:900px){.ab-policy-top{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)}}
.ab-policy-note{margin:0;padding-left:16px;border-left:2px solid rgba(201,162,39,.55);font-size:clamp(13px,1.45vw,15px);line-height:1.8;color:rgba(255,255,255,.82)}
.ab-policy .pg-policy-quote{max-width:70ch}

/* ---- Founders: horizontal profile cards ---- */
.ab-fnd-grid{display:grid;gap:clamp(.9rem,.7rem + 1vw,1.4rem);grid-template-columns:minmax(0,1fr)}
@media(min-width:900px){.ab-fnd-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ab-profile{position:relative;overflow:hidden;display:flex;align-items:center;gap:clamp(16px,2.2vw,28px);background:linear-gradient(115deg,#fff,#f6f9ff);border:1px solid rgba(16,33,71,.1);border-radius:20px;padding:clamp(18px,2.2vw,26px) clamp(20px,2.6vw,32px);box-shadow:0 24px 52px -40px rgba(16,33,71,.55);transition:transform .28s,box-shadow .28s,border-color .28s}
.ab-profile::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--gold),#a32427)}
.ab-profile:hover{transform:translateY(-4px);border-color:rgba(201,162,39,.5);box-shadow:0 30px 60px -32px rgba(16,33,71,.5)}
.ab-profile .pg-fnd-img{width:clamp(96px,9.5vw,124px);flex:0 0 auto}
.ab-profile-body{display:flex;flex-direction:column;gap:10px;min-width:0}
.ab-profile-body strong{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(16.5px,1.9vw,21px);font-weight:800;line-height:1.25;color:var(--navy)}
@media(prefers-reduced-motion:reduce){.ab-profile{transition:none}.ab-profile:hover{transform:none}}

/* ---- Parent school: vertical label + two-column copy ---- */
.ab-parent-inner{display:grid;gap:clamp(14px,2vw,32px);grid-template-columns:minmax(0,1fr)}
@media(min-width:1100px){.ab-parent-inner{grid-template-columns:auto minmax(0,1fr);align-items:start}}
.ab-parent-inner>.pg-kick{margin-bottom:0}
.ab-parent-copy{min-width:0}
.ab-parent-copy p{margin:0}
@media(min-width:900px){
  .ab-parent-copy{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(22px,2.8vw,48px)}
  .ab-parent-copy>p:first-child{border-right:1px solid rgba(201,162,39,.28);padding-right:clamp(22px,2.8vw,48px)}
}
.ab-mem-head{margin-top:clamp(30px,3.8vw,52px)}
/* the centrepiece heading stays plain red italic â€” the highlighter swash under
   the centred variant reads as a smudge at this size */
#parent-school .ab-mem-head h2 em{background:none;padding:0}
/* keep the memorial pair a tight, centred tribute rather than two wide plates */
#parent-school .pg-mem-grid{max-width:54rem;margin-inline:auto}


/* ============================ ARTICLE =============================== */
.pg-sec{margin-bottom:clamp(38px,4.6vw,68px)}

/* ---- Editorial story: campus photo floats, copy wraps it (about.php) ---- */
.pg-story{display:flow-root;max-width:1010px}
.pg-prose.pg-story>p{max-width:none}
.pg-story-media{float:left;width:min(40%,470px);margin:6px clamp(20px,2.6vw,34px) 14px 0;border-radius:18px;overflow:hidden;box-shadow:0 30px 60px -32px rgba(16,33,71,.6);position:relative}
.pg-story-media img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.pg-story-media figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 18px 14px;font-size:12px;font-weight:700;color:#fff;background:linear-gradient(transparent,rgba(11,23,48,.82))}
.pg-story-media+.pg-story-media{float:none;width:auto;margin:18px 0}
@media(max-width:960px){
  .pg-story-media{float:none;width:min(100%,620px);margin:0 auto 20px}
}
.pg-sec:last-child{margin-bottom:0}
.pg-head{margin-bottom:22px;max-width:72ch}
.pg-head--center{text-align:center;margin-inline:auto}
.pg-head--center .pg-kick::before{display:none}
.pg-head--center h2 em{background:linear-gradient(transparent 60%,rgba(201,162,39,.5) 60%);padding:0 .08em}
#founders .pg-head--center h2{display:inline-block;background:linear-gradient(135deg,#16295a 20%,#a32427 90%);-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:.12em}
.pg-head--center h2.grad{display:inline-block;background:linear-gradient(135deg,#16295a 20%,#a32427 90%);-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:.12em}
.pg-head--center h2.grad::after{content:"";display:block;width:72px;height:4px;margin:12px auto 0;border-radius:99px;background:linear-gradient(90deg,var(--gold),#a32427)}
#parent-school .pg-band .pg-kick{background:linear-gradient(135deg,#e8cf6f,var(--gold));color:#231a00;font-size:12px;padding:9px 18px;border-radius:999px;box-shadow:0 10px 24px -10px rgba(201,162,39,.7)}
#parent-school .pg-band .pg-kick::before{display:none}
.pg-kick{display:inline-flex;align-items:center;gap:9px;font-size:10.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#8a6d1c;margin-bottom:9px}
.pg-kick::before{content:"";width:22px;height:2px;border-radius:99px;background:linear-gradient(90deg,var(--gold),transparent)}
.pg-head h2{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(21px,2.6vw,33px);font-weight:800;line-height:1.2;letter-spacing:-.01em;color:var(--navy);margin:0 0 10px}
.pg-head h2 em{font-style:italic;color:#a32427}
.pg-head p{font-size:clamp(13.5px,1.4vw,15.5px);line-height:1.8;color:#4b5563;margin:0}
.pg-prose p{font-size:clamp(13.5px,1.4vw,15.5px);line-height:1.85;color:#4b5563;margin:0 0 15px}
/* Long-form copy spans the full content width and wraps automatically. */
.pg-prose>p,.pg-prose>ul,.pg-prose>ol{max-width:none}
.pg-prose p:last-child{margin-bottom:0}
.pg-prose strong{color:var(--navy)}
.pg-prose a{color:#a32427;font-weight:700;text-decoration:none;border-bottom:1px solid rgba(163,36,39,.35)}
.pg-prose a:hover{border-bottom-color:#a32427}
.pg-prose h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(16px,1.8vw,20px);font-weight:800;color:var(--navy);margin:26px 0 10px}
.pg-prose h4{font-size:14.5px;font-weight:800;color:var(--navy);margin:20px 0 8px}

/* Cards & bands */
.pg-card{background:#fff;border:1px solid rgba(16,33,71,.1);border-radius:18px;padding:clamp(20px,2.4vw,30px);box-shadow:0 22px 50px -38px rgba(16,33,71,.5)}
.pg-card+.pg-card{margin-top:16px}
.pg-card--soft{background:#f7f5ef;border-color:rgba(201,162,39,.3);box-shadow:none}
.pg-band{position:relative;overflow:hidden;background:linear-gradient(140deg,#16295a,#0b1730);color:#fff;border-radius:20px;padding:clamp(24px,3vw,40px)}
.pg-band::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.pg-band h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(17px,2vw,23px);margin:0 0 8px;color:#fff}
.pg-band p{color:rgba(255,255,255,.84);font-size:14px;line-height:1.8;margin:0 0 12px}
.pg-band p:last-child{margin-bottom:0}
.pg-band .pg-kick{color:#e8cf6f}
.pg-band h2{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(21px,2.6vw,33px);font-weight:800;line-height:1.2;letter-spacing:-.01em;color:#fff;margin:0 0 12px}
.pg-band h2 em{font-style:italic;color:var(--gold)}
.pg-band strong{color:#fff}
/* keep band copy on a comfortable measure now that bands span the full shell */
.pg-band>:is(p,ul,ol){max-width:64ch}
.pg-quote{position:relative;background:#fff;border-left:5px solid var(--gold);border-radius:0 18px 18px 0;padding:clamp(20px,2.6vw,34px);font-family:'Lora',Georgia,serif;font-size:clamp(14.5px,1.7vw,18.5px);font-style:italic;line-height:1.8;color:var(--navy);box-shadow:0 24px 50px -34px rgba(16,33,71,.45)}
.pg-quote footer{margin-top:14px;font-family:'Plus Jakarta Sans',sans-serif;font-size:12px;font-style:normal;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#8a6d1c}

/* Lists */
.pg-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.pg-list li{position:relative;padding-left:30px;font-size:14px;line-height:1.72;color:#4b5563}
.pg-list li::before{content:"\f00c";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;left:0;top:2px;width:19px;height:19px;display:grid;place-items:center;border-radius:50%;background:rgba(201,162,39,.18);color:#8a6d1c;font-size:9px}
.pg-list--two{grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr))}
.pg-list--num{counter-reset:pgl}
.pg-list--num li{counter-increment:pgl}
.pg-list--num li::before{content:counter(pgl);font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:10.5px;background:linear-gradient(135deg,#16295a,#0b1730);color:var(--gold)}
.pg-list li strong{color:var(--navy)}
.pg-dots{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pg-dots li{position:relative;padding-left:18px;font-size:14px;line-height:1.72;color:#4b5563}
.pg-dots li::before{content:"";position:absolute;left:2px;top:9px;width:6px;height:6px;border-radius:50%;background:var(--gold)}

/* Grids */
.pg-grid{display:grid;gap:clamp(.9rem,.7rem + 1vw,1.4rem);grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr))}
.pg-grid--2{grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr))}
.pg-grid--3{grid-template-columns:repeat(auto-fit,minmax(min(100%,13.5rem),1fr))}
.pg-grid--4{grid-template-columns:repeat(auto-fit,minmax(min(100%,13.5rem),1fr))}
/* Cap the intentional 2-up / 3-up compositions once there is room for them. */
@media(min-width:900px){
  .pg-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pg-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pg-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .pg-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
}
.pg-tile{background:#fff;border:1px solid rgba(16,33,71,.1);border-radius:16px;padding:20px;box-shadow:0 20px 44px -38px rgba(16,33,71,.5);transition:transform .28s,box-shadow .28s,border-color .28s}
.pg-tile:hover{transform:translateY(-4px);border-color:rgba(201,162,39,.45);box-shadow:0 26px 54px -30px rgba(16,33,71,.45)}
.pg-tile-ico{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,#16295a,#0b1730);color:var(--gold);font-size:16px;margin-bottom:13px}
.pg-tile h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:15px;font-weight:800;color:var(--navy);margin:0 0 7px}
.pg-tile p{font-size:13.5px;line-height:1.7;color:#4b5563;margin:0}

/* Stat tiles */
.pg-stats{display:grid;gap:1px;background:rgba(16,33,71,.12);border-radius:18px;overflow:hidden;grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr))}
.pg-stats>div{background:#fff;padding:clamp(18px,2.4vw,28px) 14px;text-align:center}
.pg-stats strong{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(21px,2.8vw,32px);font-weight:800;color:var(--navy);line-height:1}
.pg-stats span{display:block;margin-top:7px;font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}

/* Person cards */
.pg-person{display:flex;gap:16px;align-items:center;background:#fff;border:1px solid rgba(16,33,71,.1);border-radius:16px;padding:18px;box-shadow:0 20px 44px -38px rgba(16,33,71,.5)}
.pg-person img{width:auto;height:auto;flex:0 0 74px;border-radius:50%;object-fit:cover;object-position:top;border:3px solid var(--gold);box-shadow:0 0 0 4px rgba(201,162,39,.16)}
.pg-person strong{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:15px;font-weight:800;color:var(--navy)}
.pg-person small{display:block;margin-top:3px;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#8a6d1c}
.pg-person p{font-size:12.5px;color:var(--muted);margin:6px 0 0;line-height:1.6}

/* Avatar grid (management / committees) */
.pg-person--stack{flex-direction:column;text-align:center;align-items:center;gap:0;padding:22px 16px}
.pg-person--stack img{width:auto;height:auto;flex:none;margin-bottom:12px}
.pg-person--stack p{margin-top:8px;max-width:44ch;margin-inline:auto}

/* Tables */
.pg-table-scroll{overflow-x:auto;border:1px solid rgba(16,33,71,.12);border-radius:16px;background:#fff;-webkit-overflow-scrolling:touch}
.pg-table{width:100%;border-collapse:collapse;min-width:34rem}
.pg-table caption{caption-side:top;text-align:left;padding:16px 18px 12px;font-family:'Plus Jakarta Sans',sans-serif;font-size:14.5px;font-weight:800;color:var(--navy)}
.pg-table th{background:linear-gradient(135deg,#16295a,#0b1730);color:#fff;font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;text-align:left;padding:12px 15px;white-space:nowrap}
.pg-table td{padding:11px 15px;font-size:13.5px;color:#3c4759;border-top:1px solid #eef1f7;vertical-align:top}
.pg-table tbody tr:nth-child(even){background:#fafbfe}
.pg-table tbody tr:hover{background:#f4f7fd}
.pg-table td:first-child{font-weight:700;color:var(--navy);width:3.4rem}
.pg-table a{color:#a32427;font-weight:600;text-decoration:none}
.pg-table a:hover{text-decoration:underline}

/* Split (media + copy) */
.pg-split{display:grid;gap:clamp(1.2rem,1rem + 2vw,2.5rem);grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));align-items:center}
.pg-media{position:relative;border-radius:18px;overflow:hidden;box-shadow:0 30px 60px -32px rgba(16,33,71,.6)}
.pg-media img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.pg-media--wide img{aspect-ratio:16/10}
.pg-media figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 18px 14px;font-size:12px;font-weight:700;color:#fff;background:linear-gradient(transparent,rgba(11,23,48,.82))}

/* Accordion (policies / guidelines) */
.pg-acc{display:grid;gap:12px}
.pg-acc details{background:#fff;border:1px solid rgba(16,33,71,.12);border-radius:16px;overflow:hidden;transition:border-color .25s,box-shadow .25s}
.pg-acc details[open]{border-color:rgba(201,162,39,.5);box-shadow:0 24px 54px -36px rgba(16,33,71,.5)}
.pg-acc summary{display:flex;align-items:center;gap:14px;padding:16px 18px;cursor:pointer;list-style:none;font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(14px,1.5vw,16px);font-weight:800;color:var(--navy)}
.pg-acc summary::-webkit-details-marker{display:none}
.pg-acc summary::after{content:"\f067";font-family:"Font Awesome 6 Free";font-weight:900;margin-left:auto;font-size:11px;color:#8a6d1c;transition:transform .28s}
.pg-acc details[open] summary::after{transform:rotate(135deg)}
.pg-acc summary:hover{background:#fafbfe}
.pg-acc-num{flex:0 0 auto;width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:linear-gradient(135deg,#16295a,#0b1730);color:var(--gold);font-size:12px}
.pg-acc-body{padding:0 18px 20px;border-top:1px dashed rgba(16,33,71,.14);margin-top:2px}
.pg-acc-body>*:first-child{margin-top:16px}

/* Useful web links — table */
.ul-table-wrap{overflow-x:auto;border:1px solid rgba(16,33,71,.12);border-radius:18px;background:#fff;box-shadow:0 24px 54px -42px rgba(16,33,71,.5)}
.ul-empty{padding:26px;text-align:center;color:#6b7280;font-size:14px;background:#fff;border:1px solid rgba(16,33,71,.12);border-radius:18px}
.ul-table{width:100%;border-collapse:collapse;min-width:720px}
.ul-table thead th{background:linear-gradient(135deg,#16295a,#0b1730);color:#fff;font-family:'Plus Jakarta Sans',sans-serif;font-size:10.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;text-align:left;padding:14px 18px;white-space:nowrap}
.ul-table tbody tr{border-top:1px solid rgba(16,33,71,.09);transition:background .2s}
.ul-table tbody tr:hover{background:#faf7ee}
.ul-table td{padding:14px 18px;vertical-align:middle}
.ul-table td.ul-num{width:58px;color:#8a6d1c;font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:12px}
.ul-table th:nth-child(3),.ul-table td:nth-child(3){width:180px}
.ul-res{display:flex;align-items:flex-start;gap:12px;min-width:0}
.ul-ico{flex:0 0 auto;width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:linear-gradient(135deg,#16295a,#0b1730);color:var(--gold);font-size:14px}
.ul-res h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;font-weight:800;color:var(--navy);margin:0 0 3px;line-height:1.35}
.ul-res h3 a{color:inherit;text-decoration:none;transition:color .2s}
.ul-res h3 a:hover{color:#a32427}
.ul-res p{margin:0;font-size:12.5px;line-height:1.55;color:#5b6472}
.ul-site{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:800;color:#8a6d1c;text-decoration:none;white-space:nowrap;transition:color .2s}
.ul-site:hover{color:#a32427}
.ul-site i{font-size:10px;opacity:.7}
@media(max-width:680px){
  .ul-table{min-width:0}
  .ul-table thead th:nth-child(1),.ul-table td:nth-child(1){display:none}
  .ul-table td{padding:12px 14px}
  .ul-res p{display:none}
}
.pg-acc details[open] .pg-acc-body{animation:pgFade .35s ease both}
@keyframes pgFade{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

/* Anchor chip row */
.pg-jump{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.pg-jump a{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700;color:var(--navy);text-decoration:none;background:#f6f8fc;border:1px solid rgba(16,33,71,.12);border-radius:999px;padding:8px 14px;transition:.22s}
.pg-jump a:hover{background:var(--navy);color:#fff;border-color:var(--navy);transform:translateY(-2px)}
.pg-jump a i{font-size:9px;color:var(--gold)}

/* Note callout */
.pg-note{display:flex;gap:13px;align-items:flex-start;background:#fffaf0;border:1px solid rgba(201,162,39,.42);border-radius:14px;padding:16px 18px}
.pg-note i{color:#8a6d1c;margin-top:2px}
.pg-note p{font-size:13.5px;line-height:1.75;color:#5b4a12;margin:0}
.pg-note p strong{color:#7a5f10}
.pg-note--person{align-items:center}
.pg-note--person img{width:72px;height:72px;object-fit:cover;border-radius:50%;flex-shrink:0;border:2px solid rgba(201,162,39,.55)}
.pg-note--person p strong{font-size:15px}

/* Reveal on scroll */
.pg-rise{opacity:0;transform:translateY(18px);transition:opacity .6s cubic-bezier(.22,.9,.3,1),transform .6s cubic-bezier(.22,.9,.3,1)}
.pg-rise.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.pg-rise{opacity:1;transform:none;transition:none}.pg-tile:hover{transform:none}}

/* ============================ RESPONSIVE ============================ */
@media(max-width:960px){
  .pg-shell{padding-top:clamp(26px,3.6vw,40px)}
}
@media(max-width:640px){
  .pg-hero{padding-top:clamp(74px,20vw,110px);padding-bottom:clamp(34px,5vw,52px)}
  .pg-hero h1{max-width:none}
  .pg-letter{padding:22px 18px;border-radius:18px}
  .pg-sign{gap:12px}
  .pg-pills span{font-size:11px;padding:7px 13px}
  .pg-head h2{font-size:clamp(20px,6vw,26px)}
  .pg-person{flex-direction:column;text-align:center;align-items:center}
  .pg-person p{margin-top:8px}
  .pg-acc summary{padding:14px 14px;gap:11px}
  .pg-acc-body{padding:0 14px 18px}
}
@media(max-width:400px){
  .pg-table th,.pg-table td{padding:10px 12px}
  .pg-stats strong{font-size:20px}
}
