
/* Legacy GPIS content compatibility inside the new template */
.legacy-content{background:#fff;}
.legacy-content .innerpage{padding:40px 0;}
.legacy-content .breacrum,.legacy-content .breadcrumb{list-style:none;padding:0;margin:0 0 18px;display:flex;gap:8px;flex-wrap:wrap;color:#666;font-size:14px}
.legacy-content .breacrum li:after{content:"/";margin-left:8px;color:#aaa}.legacy-content .breacrum li:last-child:after{content:""}
.legacy-content .main_heading,.legacy-content h1{font-weight:800;color:#10294f;margin:0 0 24px;line-height:1.2}
.legacy-content h2,.legacy-content h3{color:#10294f;margin-top:22px}
.legacy-content p,.legacy-content li{font-size:16px;line-height:1.75;color:#333}
.legacy-content img{max-width:100%;height:auto}
.legacy-content table{width:100%;border-collapse:collapse;margin:20px 0;background:#fff}
.legacy-content table td,.legacy-content table th{border:1px solid #e5e7eb;padding:10px;vertical-align:top}
.legacy-content .fullwidth{width:100%}
.legacy-content .row:after,.legacy-content .fullwidth:after{content:"";display:block;clear:both}
.legacy-content .col-sm-6{width:50%;float:left;padding:0 15px}
.legacy-content .aboutcontent{width:58%;float:left;padding-right:24px}.legacy-content .aboutimg{width:42%;float:left}
.legacy-content .view-certificate,.legacy-content a.btn,.legacy-content button{display:inline-block;padding:10px 18px;border-radius:8px;background:#dc3545;color:#fff!important;text-decoration:none;border:0}
@media(max-width:768px){.legacy-content .col-sm-6,.legacy-content .aboutcontent,.legacy-content .aboutimg{width:100%;float:none;padding:0}.legacy-content iframe{height:300px!important}}

/* Clean readable internal content styling */
.legacy-content{
 background:#ffffff !important;
 color:#263548;
}

.legacy-content .innerpage{
 padding:30px 0 44px;
 background:#ffffff;
}

.legacy-content .breacrum,
.legacy-content .breadcrumb{
 margin:0 0 22px;
 color:#667085;
 font-size:14px;
 line-height:1.5;
}

.legacy-content .breacrum a,
.legacy-content .breadcrumb a{
 color:#d72835;
 text-decoration:none;
 font-weight:600;
}

.legacy-content .breacrum a:hover,
.legacy-content .breadcrumb a:hover{
 text-decoration:underline;
}

.legacy-content .main_heading,
.legacy-content h1{
 color:#10294f;
 font-size:clamp(30px,3vw,42px);
 line-height:1.18;
 font-weight:800;
 letter-spacing:-.02em;
 margin:0 0 22px;
}

.legacy-content h2{
 color:#172b4d;
 font-size:clamp(24px,2.2vw,32px);
 line-height:1.25;
 font-weight:750;
 margin:26px 0 14px;
}

.legacy-content h3{
 color:#172b4d;
 font-size:22px;
 line-height:1.35;
 font-weight:700;
 margin:22px 0 10px;
}

.legacy-content p,
.legacy-content li{
 color:#344054;
 font-size:16.5px;
 line-height:1.85;
 font-weight:400;
}

.legacy-content ul,
.legacy-content ol{
 padding-left:22px;
}

.legacy-content li{
 margin-bottom:8px;
}

.legacy-content table{
 border:1px solid #e5e7eb;
 border-radius:12px;
 overflow:hidden;
 font-size:15.5px;
}

.legacy-content table td,
.legacy-content table th{
 border:1px solid #e5e7eb;
 padding:12px 14px;
 color:#344054;
}

.legacy-content img{
 border-radius:14px;
}

@media(max-width:768px){
 .premium-content-page .premium-page-hero{padding:28px 0 24px !important;}
 .legacy-content .innerpage{padding:24px 0 34px;}
 .legacy-content p,.legacy-content li{font-size:16px;line-height:1.75;}
}

/* SEO + Lead Readability Typography Standard for legacy internal pages */
.legacy-content{
 background:#ffffff !important;
 color:#27364a !important;
 -webkit-font-smoothing:antialiased;
 text-rendering:optimizeLegibility;
}

.legacy-content .innerpage{
 padding:32px 0 46px !important;
}

.legacy-content .main_heading,
.legacy-content h1{
 color:#0f2747 !important;
 font-size:clamp(30px,3vw,40px) !important;
 line-height:1.2 !important;
 font-weight:800 !important;
 letter-spacing:-0.02em !important;
 margin-bottom:22px !important;
}

.legacy-content h2{
 color:#0f2747 !important;
 font-size:clamp(25px,2.3vw,34px) !important;
 line-height:1.28 !important;
 font-weight:800 !important;
 letter-spacing:-0.015em !important;
 margin:28px 0 16px !important;
}

.legacy-content h3{
 color:#18345a !important;
 font-size:clamp(21px,1.7vw,25px) !important;
 line-height:1.35 !important;
 font-weight:750 !important;
 margin:24px 0 12px !important;
}

.legacy-content p,
.legacy-content li,
.legacy-content td,
.legacy-content th{
 color:#27364a !important;
 font-size:16.75px !important;
 line-height:1.78 !important;
 font-weight:400 !important;
}

.legacy-content p{
 margin-bottom:15px !important;
}

.legacy-content ul,
.legacy-content ol{
 padding-left:22px !important;
 margin-bottom:18px !important;
}

.legacy-content li{
 margin-bottom:7px !important;
}

.legacy-content .breacrum,
.legacy-content .breadcrumb{
 color:#667085 !important;
 font-size:14.5px !important;
 line-height:1.5 !important;
 margin-bottom:22px !important;
}

.legacy-content .breacrum a,
.legacy-content .breadcrumb a,
.legacy-content a:not(.btn):not(.nav-link):not(.dropdown-item):not(.navbar-brand):not(.about-primary-btn):not(.about-outline-btn):not(.btnlink):not(.applybtn):not(.disclosure-download):not(.school-map-directions):not(.holiday-btn):not(.prospectus-btn):not(.prospectus-open-link){
 color:#c82032 !important;
 font-weight:650 !important;
 text-decoration:none !important;
}

.legacy-content .breacrum a:hover,
.legacy-content .breadcrumb a:hover,
.legacy-content a:not(.btn):not(.nav-link):not(.dropdown-item):not(.navbar-brand):not(.about-primary-btn):not(.about-outline-btn):not(.btnlink):not(.applybtn):not(.disclosure-download):not(.school-map-directions):not(.holiday-btn):not(.prospectus-btn):not(.prospectus-open-link):hover{
 text-decoration:underline !important;
}

.legacy-content table{
 font-size:15.75px !important;
 border-color:#e7edf5 !important;
}

.legacy-content table td,
.legacy-content table th{
 padding:12px 14px !important;
 border-color:#e7edf5 !important;
}

@media(max-width:768px){
 .legacy-content .innerpage{padding:26px 0 36px !important;}
 .legacy-content .main_heading,
 .legacy-content h1{font-size:26px !important;line-height:1.25 !important;}
 .legacy-content h2{font-size:23px !important;}
 .legacy-content h3{font-size:20px !important;}
 .legacy-content p,
 .legacy-content li,
 .legacy-content td,
 .legacy-content th{font-size:16px !important;line-height:1.7 !important;}
}


/* =========================================================
  About page: compact, simple and mobile-first
  ========================================================= */
.about-school-page{
 --about-navy:#10294f;
 --about-red:#d92334;
 --about-text:#334155;
 --about-muted:#64748b;
 --about-line:#e5eaf1;
 --about-soft:#f7f9fc;
 background:#fff !important;
 color:var(--about-text);
 font-family:"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
 -webkit-font-smoothing:antialiased;
 text-rendering:optimizeLegibility;
}

.about-school-page .about-title-section{
 padding:22px 0 24px;
 background:#f8fafc;
 border-bottom:1px solid var(--about-line);
}

.about-school-page .about-breadcrumb{
 display:flex;
 align-items:center;
 gap:8px;
 margin:0 0 9px;
 color:var(--about-muted);
 font-size:13.5px;
 line-height:1.4;
}

.about-school-page .about-breadcrumb a{
 color:var(--about-red) !important;
 font-weight:700 !important;
 text-decoration:none !important;
}

.about-school-page .about-breadcrumb a:hover{
 text-decoration:underline !important;
}

.about-school-page .about-title-section h1{
 max-width:900px;
 margin:0 0 7px !important;
 color:var(--about-navy) !important;
 font-size:clamp(30px,3vw,40px) !important;
 line-height:1.16 !important;
 font-weight:800 !important;
 letter-spacing:-.025em !important;
}

.about-school-page .about-title-intro{
 max-width:820px;
 margin:0 !important;
 color:#526176 !important;
 font-size:17px !important;
 line-height:1.55 !important;
}

.about-school-page .about-content-section{
 padding:34px 0 48px !important;
 background:#fff;
}

.about-school-page .about-intro-copy{
 padding-right:18px;
}

.about-school-page .about-intro-copy h2,
.about-school-page .about-development-copy h2,
.about-school-page .about-contact-strip h2{
 color:var(--about-navy) !important;
 font-weight:800 !important;
 letter-spacing:-.018em !important;
}

.about-school-page .about-intro-copy h2,
.about-school-page .about-development-copy h2{
 margin:0 0 16px !important;
 font-size:clamp(26px,2.35vw,33px) !important;
 line-height:1.24 !important;
}

.about-school-page .about-intro-copy p,
.about-school-page .about-development-copy p{
 margin:0 0 15px !important;
 color:var(--about-text) !important;
 font-size:16.5px !important;
 line-height:1.75 !important;
}

.about-school-page .about-intro-copy strong,
.about-school-page .about-development-copy strong{
 color:#172f52;
 font-weight:750;
}

.about-school-page .about-contact-row{
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:18px;
 margin-top:22px;
 padding:14px 16px;
 border:1px solid var(--about-line);
 border-left:4px solid var(--about-red);
 background:var(--about-soft);
}

.about-school-page .about-contact-row span{
 display:block;
 margin-bottom:2px;
 color:var(--about-muted);
 font-size:13px;
 line-height:1.35;
 font-weight:650;
}

.about-school-page .about-contact-row strong{
 display:block;
 color:var(--about-navy);
 font-size:17px;
 line-height:1.35;
}

.about-school-page .about-contact-row a{
 flex:0 0 auto;
 color:var(--about-red) !important;
 font-size:14.5px;
 font-weight:800 !important;
 text-decoration:none !important;
}

.about-school-page .about-contact-row a:hover{
 text-decoration:underline !important;
}

.about-school-page .about-video-block{
 border:1px solid var(--about-line);
 background:#fff;
}

.about-school-page .about-video-wrap{
 position:relative;
 aspect-ratio:16 / 9;
 background:#111827;
}

.about-school-page .about-video-wrap iframe{
 position:absolute;
 inset:0;
 width:100%;
 height:100%;
 border:0;
}

.about-school-page .about-video-block > p{
 margin:0 !important;
 padding:12px 14px;
 color:var(--about-muted) !important;
 font-size:14px !important;
 line-height:1.5 !important;
}

.about-school-page .about-section-divider{
 margin:40px 0;
 border-top:1px solid var(--about-line);
}

.about-school-page .about-campus-image img{
 display:block;
 width:100%;
 height:360px;
 object-fit:cover;
 border-radius:10px;
}

.about-school-page .about-development-copy{
 padding-left:18px;
}

.about-school-page .about-development-copy h3{
 margin:20px 0 10px !important;
 color:var(--about-navy) !important;
 font-size:20px !important;
 line-height:1.35 !important;
 font-weight:800 !important;
}

.about-school-page .about-learning-list{
 margin:0 0 17px !important;
 padding:0 !important;
 list-style:none;
}

.about-school-page .about-learning-list li{
 position:relative;
 margin:0 0 9px !important;
 padding-left:24px;
 color:var(--about-text) !important;
 font-size:16px !important;
 line-height:1.58 !important;
}

.about-school-page .about-learning-list li::before{
 content:"✓";
 position:absolute;
 left:0;
 top:0;
 color:var(--about-red);
 font-weight:900;
}

.about-school-page .about-contact-strip{
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:28px;
 margin-top:40px;
 padding:22px 24px;
 border:1px solid var(--about-line);
 border-top:3px solid var(--about-red);
 background:var(--about-soft);
}

.about-school-page .about-contact-strip h2{
 margin:0 0 5px !important;
 font-size:24px !important;
 line-height:1.25 !important;
}

.about-school-page .about-contact-strip p{
 margin:0 !important;
 color:var(--about-muted) !important;
 font-size:15px !important;
 line-height:1.55 !important;
}

.about-school-page .about-contact-actions{
 display:flex;
 flex-wrap:wrap;
 justify-content:flex-end;
 gap:10px;
 flex:0 0 auto;
}

.about-school-page .about-primary-btn,
.about-school-page .about-outline-btn{
 display:inline-flex;
 align-items:center;
 justify-content:center;
 min-height:44px;
 padding:10px 17px;
 border-radius:7px;
 font-size:14.5px;
 line-height:1.2;
 font-weight:800 !important;
 text-align:center;
 text-decoration:none !important;
}

.about-school-page .about-primary-btn{
 border:1px solid var(--about-red);
 background:var(--about-red);
 color:#fff !important;
}

.about-school-page .about-primary-btn:hover{
 background:#bb1e2d;
 border-color:#bb1e2d;
 color:#fff !important;
}

.about-school-page .about-outline-btn{
 border:1px solid #cbd5e1;
 background:#fff;
 color:var(--about-navy) !important;
}

.about-school-page .about-outline-btn:hover{
 border-color:var(--about-navy);
 color:var(--about-navy) !important;
}

@media (max-width:991.98px){
 .about-school-page .about-content-section{padding:28px 0 42px !important;}
 .about-school-page .about-intro-copy{padding-right:0;}
 .about-school-page .about-development-copy{padding-left:0;}
 .about-school-page .about-section-divider{margin:32px 0;}
 .about-school-page .about-campus-image img{height:330px;}
 .about-school-page .about-contact-strip{align-items:flex-start;flex-direction:column;}
 .about-school-page .about-contact-actions{justify-content:flex-start;}
}

@media (max-width:767.98px){
 .about-school-page .about-title-section{padding:16px 0 18px;}
 .about-school-page .about-breadcrumb{margin-bottom:7px;font-size:12.5px;}
 .about-school-page .about-title-section h1{font-size:28px !important;line-height:1.18 !important;margin-bottom:6px !important;}
 .about-school-page .about-title-intro{font-size:15.5px !important;line-height:1.5 !important;}
 .about-school-page .about-content-section{padding:22px 0 34px !important;}
 .about-school-page .about-intro-copy h2,
 .about-school-page .about-development-copy h2{font-size:24px !important;line-height:1.28 !important;}
 .about-school-page .about-intro-copy p,
 .about-school-page .about-development-copy p{font-size:16px !important;line-height:1.68 !important;}
 .about-school-page .about-contact-row{align-items:flex-start;flex-direction:column;gap:8px;margin-top:18px;padding:13px 14px;}
 .about-school-page .about-section-divider{margin:26px 0;}
 .about-school-page .about-campus-image img{height:250px;}
 .about-school-page .about-development-copy h3{font-size:19px !important;}
 .about-school-page .about-learning-list li{font-size:15.5px !important;line-height:1.55 !important;}
 .about-school-page .about-contact-strip{margin-top:28px;padding:18px;}
 .about-school-page .about-contact-strip h2{font-size:22px !important;}
 .about-school-page .about-contact-actions{width:100%;}
 .about-school-page .about-primary-btn,
 .about-school-page .about-outline-btn{width:100%;}
}

@media (max-width:420px){
 .about-school-page .about-title-section h1{font-size:26px !important;}
 .about-school-page .about-campus-image img{height:220px;}
}

/* =====================================================
  APPROVED INTERNAL PAGE HERO WITH BREADCRUMBS
  Matches the approved About page on desktop and mobile.
  Page body content and functions are not affected.
===================================================== */
.premium-content-page .premium-page-hero.approved-inner-hero{
 position:relative !important;
 min-height:0 !important;
 margin:0 !important;
 padding:22px 0 24px !important;
 overflow:visible !important;
 background:#f8fafc !important;
 background-image:none !important;
 border:0 !important;
 border-bottom:1px solid #dfe6ef !important;
 border-radius:0 !important;
 box-shadow:none !important;
}

.premium-content-page .premium-page-hero.approved-inner-hero::before,
.premium-content-page .premium-page-hero.approved-inner-hero::after,
.premium-content-page .premium-page-hero.approved-inner-hero .container::before,
.premium-content-page .premium-page-hero.approved-inner-hero .container::after,
.premium-content-page .premium-page-hero.approved-inner-hero h1::before,
.premium-content-page .premium-page-hero.approved-inner-hero h1::after{
 display:none !important;
 content:none !important;
}

.premium-content-page .premium-page-hero.approved-inner-hero .container,
.premium-content-page .premium-page-hero.approved-inner-hero .container-fluid{
 display:block !important;
 width:100% !important;
 margin:0 auto !important;
 padding-top:0 !important;
 padding-bottom:0 !important;
 background:transparent !important;
 background-image:none !important;
 border:0 !important;
 border-radius:0 !important;
 box-shadow:none !important;
}

.premium-content-page .premium-page-hero.approved-inner-hero .inner-page-breadcrumb{
 display:flex !important;
 align-items:center !important;
 flex-wrap:wrap !important;
 gap:8px !important;
 max-width:980px !important;
 margin:0 0 9px !important;
 padding:0 !important;
 color:#64748b !important;
 font-family:"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif !important;
 font-size:13.5px !important;
 line-height:1.4 !important;
 font-weight:400 !important;
}

.premium-content-page .premium-page-hero.approved-inner-hero .inner-page-breadcrumb a{
 color:#d92334 !important;
 font-weight:700 !important;
 text-decoration:none !important;
}

.premium-content-page .premium-page-hero.approved-inner-hero .inner-page-breadcrumb a:hover,
.premium-content-page .premium-page-hero.approved-inner-hero .inner-page-breadcrumb a:focus{
 color:#b91c2b !important;
 text-decoration:underline !important;
}

.premium-content-page .premium-page-hero.approved-inner-hero .inner-page-breadcrumb span[aria-current="page"]{
 color:#64748b !important;
 font-weight:400 !important;
}

.premium-content-page .premium-page-hero.approved-inner-hero h1{
 max-width:980px !important;
 margin:0 0 7px !important;
 padding:0 !important;
 color:#0f2d57 !important;
 font-family:"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif !important;
 font-size:clamp(30px,3vw,40px) !important;
 line-height:1.16 !important;
 font-weight:800 !important;
 letter-spacing:-.025em !important;
 text-transform:none !important;
 text-shadow:none !important;
}

.premium-content-page .premium-page-hero.approved-inner-hero .lead{
 max-width:900px !important;
 margin:0 !important;
 padding:0 !important;
 color:#526176 !important;
 font-family:"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif !important;
 font-size:17px !important;
 line-height:1.55 !important;
 font-weight:400 !important;
 letter-spacing:0 !important;
 text-shadow:none !important;
}

/* Existing functional elements are retained below the approved title content. */
.premium-content-page .premium-page-hero.approved-inner-hero .btn{
 display:inline-flex !important;
 align-items:center !important;
 justify-content:center !important;
 width:auto !important;
 max-width:100% !important;
 min-height:40px !important;
 margin:13px 0 0 !important;
 padding:8px 16px !important;
 border-radius:7px !important;
 font-size:14.5px !important;
 line-height:1.35 !important;
 font-weight:700 !important;
 box-shadow:none !important;
}

.premium-content-page .premium-page-hero.approved-inner-hero .alert{
 max-width:900px !important;
 margin-top:14px !important;
 margin-bottom:0 !important;
 padding:11px 14px !important;
 border-radius:7px !important;
 font-size:14.5px !important;
 line-height:1.5 !important;
 box-shadow:none !important;
}

.premium-content-page .premium-page-hero.approved-inner-hero .gallery-album-info,
.premium-content-page .premium-page-hero.approved-inner-hero .event-detail-date,
.premium-content-page .premium-page-hero.approved-inner-hero .award-detail-date{
 color:#526176 !important;
 font-size:14px !important;
 line-height:1.45 !important;
 font-weight:600 !important;
}

@media (max-width:767.98px){
 .premium-content-page .premium-page-hero.approved-inner-hero{
  padding:16px 0 18px !important;
 }

 .premium-content-page .premium-page-hero.approved-inner-hero .inner-page-breadcrumb{
  margin-bottom:7px !important;
  gap:7px !important;
  font-size:12.5px !important;
 }

 .premium-content-page .premium-page-hero.approved-inner-hero h1{
  margin-bottom:6px !important;
  font-size:28px !important;
  line-height:1.18 !important;
  letter-spacing:-.02em !important;
 }

 .premium-content-page .premium-page-hero.approved-inner-hero .lead{
  font-size:15.5px !important;
  line-height:1.5 !important;
 }

 .premium-content-page .premium-page-hero.approved-inner-hero .btn{
  min-height:38px !important;
  margin-top:10px !important;
  padding:7px 14px !important;
  font-size:14px !important;
 }
}

@media (max-width:420px){
 .premium-content-page .premium-page-hero.approved-inner-hero h1{
  font-size:26px !important;
 }
}

/* Neutralise page-specific decorative hero wrappers so every internal page
  keeps the same approved compact presentation. */
.premium-content-page .premium-page-hero.approved-inner-hero .hero-inner{
 position:static !important;
 display:block !important;
 width:100% !important;
 max-width:none !important;
 margin:0 !important;
 padding:0 !important;
 background:transparent !important;
 background-image:none !important;
 border:0 !important;
 border-radius:0 !important;
 box-shadow:none !important;
 text-align:left !important;
}

.premium-content-page .premium-page-hero.approved-inner-hero .hero-inner::before,
.premium-content-page .premium-page-hero.approved-inner-hero .hero-inner::after{
 display:none !important;
 content:none !important;
}

.premium-content-page .premium-page-hero.approved-inner-hero .page-kicker{
 display:none !important;
}

.premium-content-page .premium-page-hero.approved-inner-hero .hero-actions{
 display:flex !important;
 flex-wrap:wrap !important;
 gap:10px !important;
 margin:0 !important;
 padding:0 !important;
}

/* ==========================================================
  FINAL APPROVED INNER-PAGE STANDARD — 23 JUN 2026
  One breadcrumb in the hero, one H1 per rendered page,
  aligned content width, readable typography and mobile spacing.
  Homepage, header, footer, forms and PHP functions are untouched.
========================================================== */

/* Use the same system font stack and colour hierarchy as the approved About page. */
.premium-content-page{
 --inner-navy:#10294f;
 --inner-red:#d92334;
 --inner-text:#334155;
 --inner-muted:#64748b;
 --inner-line:#e5eaf1;
 --inner-soft:#f8fafc;
 font-family:"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif !important;
 color:var(--inner-text) !important;
 background:#fff !important;
 -webkit-font-smoothing:antialiased;
 text-rendering:optimizeLegibility;
}

/* Approved hero: same horizontal grid as the About page content. */
.premium-content-page .premium-page-hero.approved-inner-hero{
 padding:22px 0 24px !important;
 background:var(--inner-soft) !important;
 border-bottom:1px solid var(--inner-line) !important;
}

.premium-content-page .premium-page-hero.approved-inner-hero .container,
.premium-content-page .premium-page-hero.approved-inner-hero .container-fluid{
 width:100% !important;
 max-width:1320px !important;
 margin-right:auto !important;
 margin-left:auto !important;
 padding-right:12px !important;
 padding-left:12px !important;
}

.premium-content-page .premium-page-hero.approved-inner-hero .inner-page-breadcrumb{
 max-width:none !important;
 margin:0 0 9px !important;
 color:var(--inner-muted) !important;
 font-family:inherit !important;
 font-size:13.5px !important;
 line-height:1.4 !important;
}

.premium-content-page .premium-page-hero.approved-inner-hero h1{
 max-width:1050px !important;
 margin:0 0 7px !important;
 color:var(--inner-navy) !important;
 font-family:inherit !important;
 font-size:clamp(30px,3vw,40px) !important;
 line-height:1.16 !important;
 font-weight:800 !important;
 letter-spacing:-.025em !important;
}

.premium-content-page .premium-page-hero.approved-inner-hero .lead{
 max-width:900px !important;
 margin:0 !important;
 color:#526176 !important;
 font-family:inherit !important;
 font-size:17px !important;
 line-height:1.55 !important;
 font-weight:400 !important;
}

/* Align ordinary legacy page content with the approved hero. */
.premium-content-page.legacy-content:not(.about-school-page) > section:not(.premium-page-hero){
 padding:34px 0 46px !important;
 background:#fff !important;
}

.premium-content-page.legacy-content:not(.about-school-page) > section:not(.premium-page-hero) > .container{
 width:100% !important;
 max-width:1320px !important;
 margin-right:auto !important;
 margin-left:auto !important;
 padding-right:12px !important;
 padding-left:12px !important;
}

.legacy-content .innerpage{
 width:100% !important;
 margin:0 !important;
 padding:0 !important;
 color:var(--inner-text) !important;
}

/* Remove double Bootstrap indentation inside old page templates. */
.legacy-content .innerpage > .container,
.legacy-content .innerpage > .wrapper > .container,
.legacy-content .innerpage > .fullwidth > .container{
 width:100% !important;
 max-width:none !important;
 margin-right:0 !important;
 margin-left:0 !important;
 padding-right:0 !important;
 padding-left:0 !important;
}

/* Safety fallback: old breadcrumbs are no longer visually repeated. */
.legacy-content .innerpage .breacrum,
.legacy-content .innerpage .breadcrumb:not(.inner-page-breadcrumb){
 display:none !important;
}

/* Clean, restrained typography similar to the approved About page. */
.legacy-content .innerpage h2,
.legacy-content .innerpage .main_heading{
 margin:0 0 16px !important;
 color:var(--inner-navy) !important;
 font-family:inherit !important;
 font-size:clamp(26px,2.35vw,33px) !important;
 line-height:1.24 !important;
 font-weight:800 !important;
 letter-spacing:-.018em !important;
 text-transform:none !important;
}

.legacy-content .innerpage h3{
 margin:22px 0 10px !important;
 color:#18345a !important;
 font-family:inherit !important;
 font-size:22px !important;
 line-height:1.35 !important;
 font-weight:800 !important;
 letter-spacing:-.01em !important;
 text-transform:none !important;
}

.legacy-content .innerpage h4,
.legacy-content .innerpage h5,
.legacy-content .innerpage h6{
 margin:18px 0 8px !important;
 color:#18345a !important;
 font-family:inherit !important;
 line-height:1.4 !important;
 font-weight:750 !important;
}

.legacy-content .innerpage p,
.legacy-content .innerpage li{
 color:var(--inner-text) !important;
 font-family:inherit !important;
 font-size:16.5px !important;
 line-height:1.75 !important;
 font-weight:400 !important;
}

.legacy-content .innerpage p{
 margin:0 0 15px !important;
}

.legacy-content .innerpage ul,
.legacy-content .innerpage ol{
 margin-top:0 !important;
 margin-bottom:18px !important;
}

.legacy-content .innerpage li{
 margin-bottom:7px !important;
}

.legacy-content .innerpage strong,
.legacy-content .innerpage b{
 color:#172f52;
 font-weight:750;
}

.legacy-content .innerpage > :first-child,
.legacy-content .innerpage > .fullwidth:first-child > :first-child{
 margin-top:0 !important;
}

/* Keep long reading lines comfortable without restricting tables, forms or grids. */
.legacy-content .innerpage > p,
.legacy-content .innerpage > ul,
.legacy-content .innerpage > ol,
.legacy-content .innerpage > h2,
.legacy-content .innerpage > h3{
 max-width:1080px;
}

/* Old vision/mission and facilities lists become clean responsive two-column rows. */
.legacy-content .infra > ul{
 display:block !important;
 margin:0 !important;
 padding:0 !important;
 list-style:none !important;
}

.legacy-content .infra > ul > li{
 display:grid !important;
 grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr) !important;
 gap:36px !important;
 align-items:start !important;
 margin:0 0 34px !important;
 padding:0 0 34px !important;
 border-bottom:1px solid var(--inner-line);
 list-style:none !important;
}

.legacy-content .infra > ul > li:last-child{
 margin-bottom:0 !important;
 padding-bottom:0 !important;
 border-bottom:0;
}

.legacy-content .infra .textbox,
.legacy-content .infra .imgbox{
 float:none !important;
 width:auto !important;
 min-width:0 !important;
 margin:0 !important;
 padding:0 !important;
}

.legacy-content .infra .textbox.left{
 grid-column:1;
}

.legacy-content .infra .imgbox.right{
 grid-column:2;
}

.legacy-content .infra .imgbox.left{
 grid-column:1;
 grid-row:1;
}

.legacy-content .infra .textbox.right{
 grid-column:2;
 grid-row:1;
}

.legacy-content .infra .imgbox img{
 display:block;
 width:100% !important;
 height:auto !important;
 max-height:420px;
 object-fit:cover;
 border-radius:10px;
}

/* Old location-page sub-heroes become normal content introductions. */
.legacy-content .innerpage .hero{
 margin:0 0 24px !important;
 padding:0 0 20px !important;
 background:transparent !important;
 border:0 !important;
 border-bottom:1px solid var(--inner-line) !important;
 border-radius:0 !important;
 box-shadow:none !important;
 text-align:left !important;
}

.legacy-content .innerpage .hero h2{
 margin-bottom:8px !important;
}

.legacy-content .innerpage .hero p{
 margin-bottom:0 !important;
 color:var(--inner-muted) !important;
}

/* Images, video and tables remain responsive. */
.legacy-content .innerpage img,
.legacy-content .innerpage iframe{
 max-width:100% !important;
}

.legacy-content .innerpage table{
 margin-top:18px !important;
 margin-bottom:24px !important;
 color:var(--inner-text) !important;
 font-family:inherit !important;
 font-size:15.5px !important;
 line-height:1.55 !important;
}

.legacy-content .innerpage table th{
 color:var(--inner-navy) !important;
 font-weight:800 !important;
 background:#f8fafc;
}

@media (max-width:991.98px){
 .premium-content-page .premium-page-hero.approved-inner-hero .container,
 .premium-content-page .premium-page-hero.approved-inner-hero .container-fluid,
 .premium-content-page.legacy-content:not(.about-school-page) > section:not(.premium-page-hero) > .container{
  max-width:960px !important;
 }

 .legacy-content .infra > ul > li{
  grid-template-columns:minmax(0,1fr) minmax(260px,.8fr) !important;
  gap:26px !important;
 }
}

@media (max-width:767.98px){
 .premium-content-page .premium-page-hero.approved-inner-hero{
  padding:16px 0 18px !important;
 }

 .premium-content-page .premium-page-hero.approved-inner-hero .container,
 .premium-content-page .premium-page-hero.approved-inner-hero .container-fluid,
 .premium-content-page.legacy-content:not(.about-school-page) > section:not(.premium-page-hero) > .container{
  max-width:720px !important;
  padding-right:16px !important;
  padding-left:16px !important;
 }

 .premium-content-page .premium-page-hero.approved-inner-hero .inner-page-breadcrumb{
  margin-bottom:7px !important;
  font-size:12.5px !important;
 }

 .premium-content-page .premium-page-hero.approved-inner-hero h1{
  margin-bottom:6px !important;
  font-size:28px !important;
  line-height:1.18 !important;
 }

 .premium-content-page .premium-page-hero.approved-inner-hero .lead{
  font-size:15.5px !important;
  line-height:1.5 !important;
 }

 .premium-content-page.legacy-content:not(.about-school-page) > section:not(.premium-page-hero){
  padding:24px 0 34px !important;
 }

 .legacy-content .innerpage h2,
 .legacy-content .innerpage .main_heading{
  font-size:24px !important;
  line-height:1.28 !important;
 }

 .legacy-content .innerpage h3{
  margin-top:19px !important;
  font-size:20px !important;
 }

 .legacy-content .innerpage p,
 .legacy-content .innerpage li{
  font-size:16px !important;
  line-height:1.68 !important;
 }

 .legacy-content .infra > ul > li{
  display:flex !important;
  flex-direction:column !important;
  gap:18px !important;
  margin-bottom:26px !important;
  padding-bottom:26px !important;
 }

 .legacy-content .infra .textbox,
 .legacy-content .infra .imgbox{
  order:initial !important;
  width:100% !important;
 }

 .legacy-content .infra .textbox{
  order:1 !important;
 }

 .legacy-content .infra .imgbox{
  order:2 !important;
 }

 .legacy-content .infra .imgbox img{
  max-height:none;
 }

 .legacy-content .innerpage table{
  font-size:14.5px !important;
 }
}

@media (max-width:420px){
 .premium-content-page .premium-page-hero.approved-inner-hero h1{
  font-size:26px !important;
 }
}

/* GPIS DISTINCT THEME UPDATE - INDIGO, TEAL & GOLD */
.legacy-content,.about-premium-page,.inner-page-modern{
 --about-red:#4f2fae;
 --inner-red:#4f2fae;
 --about-gold:#f9c74f;
 --inner-gold:#f9c74f;
 --about-blue:#00a6a6;
 --inner-blue:#00a6a6;
}
.legacy-content h1,.legacy-content h2,.legacy-content h3{color:#2c1764 !important;}
.legacy-content a{color:#006d77;}
.legacy-content .main_heading{color:#2c1764 !important;}
.legacy-content .btn-danger,.legacy-content .btn-primary{background:linear-gradient(135deg,#4f2fae,#006d77) !important;border:0 !important;}
