/* Refreshed inner pages: Admissions, Curriculum, Facilities, Open Day (pr- prefix).
   Same tokens as the homepage (hm-): DM Sans / Cairo, weights 400/500/700, px sizes, 2px shapes, navy + gold.
   The site body is 24px, so every element sets its own size. Bump ?v= on the <link> when this file changes. */
:root {
    --pr-navy: #272555;
    --pr-gold: #E3A81F;
    --pr-text: #434A62;
    --pr-ink: #303B57;
    --pr-tint: #F6F6F8;
    --pr-line: #E6E6EE;
    --pr-shadow: 2px 4px 24px rgb(46 44 111 / 10%);
    --pr-shadow-up: 4px 12px 32px rgb(46 44 111 / 18%);
    --pr-ease: cubic-bezier(.2, .7, .2, 1);
}

/* ---------- reveal on scroll (only once JS ran, so no-JS visitors still see everything) ---------- */
.pr-js .pr-reveal { opacity: 0; transform: translateY(26px); transition: opacity .7s var(--pr-ease), transform .7s var(--pr-ease); transition-delay: var(--pr-d, 0s); }
.pr-js .pr-reveal.is-in { opacity: 1; transform: none; }

/* ---------- banner (the existing banner markup, restyled; its own background + overlay are left untouched) ---------- */
.pr-banner { position: relative; overflow: hidden; padding: 118px 0 108px; isolation: isolate; }
.pr-banner .banner-head__cs { margin-bottom: 0; animation: pr-up .8s var(--pr-ease) both; }
.pr-banner .banner-head__cs::after { content: ''; display: block; width: 56px; height: 3px; margin: 18px auto 0; background: var(--pr-gold); }
.pr-banner .banner-head__cs_1, .pr-banner .banner-head__cs_2 { margin-top: 16px; margin-bottom: 0; animation: pr-up .8s .1s var(--pr-ease) both; }
.pr-banner .breadcrubs-wrpr { display: inline-flex; width: auto; margin: 26px auto 0; padding: 4px 18px; border-radius: 2px; background: rgb(255 255 255 / 12%); backdrop-filter: blur(6px); animation: pr-up .8s .2s var(--pr-ease) both; }
.pr-banner { text-align: center; }
.pr-banner .breadcrubs-wrpr a, .pr-banner .breadcrubs-wrpr span { font-size: 16px; line-height: 30px; }
@keyframes pr-up { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }

/* ---------- sections ---------- */
.pr-section { padding: 80px 0; overflow-x: clip; }
.pr-section--tint { background: var(--pr-tint); }
.pr-anchor { scroll-margin-top: 150px; }
.pr-h2 { position: relative; margin: 0 0 26px; padding-bottom: 16px; font-size: clamp(26px, 3vw, 36px); line-height: 1.25; font-weight: 700; color: var(--pr-navy); display: block; }
.pr-h2::after { content: ''; position: absolute; bottom: 0; inset-inline-start: 0; width: 48px; height: 3px; background: var(--pr-gold); }
.pr-h2--center { text-align: center; }
.pr-h2--center::after { inset-inline-start: 50%; margin-inline-start: -24px; }
.pr-prose p { font-size: 18px; line-height: 32px; color: var(--pr-text); margin: 0 0 18px; opacity: 1; }
.pr-prose p:last-child { margin-bottom: 0; }
.pr-center-lead { max-width: 760px; margin: 0 auto 44px; text-align: center; font-size: 18px; line-height: 32px; color: var(--pr-text); }
.pr-lead { margin: 0 0 18px; padding-inline-start: 22px; border-inline-start: 4px solid var(--pr-gold); font-size: 18px; line-height: 32px; font-weight: 500; color: var(--pr-navy); }
.pr-prose p.pr-lead { font-size: 18px; line-height: 32px; color: var(--pr-navy); margin-bottom: 18px; }
/* intro photo beside the Admissions intro: slightly taller than its natural 3:2 so it balances the text */
.pr-figure--intro img { aspect-ratio: 5 / 4; object-fit: cover; }
.pr-cta-row.pr-cta-row--start { justify-content: flex-start; }
.pr-figure--crop img { aspect-ratio: 4 / 3; object-fit: cover; object-position: center 30%; }
.pr-figure { position: relative; margin: 0; }
.pr-figure img { position: relative; z-index: 1; display: block; width: 100%; height: auto; border-radius: 2px; box-shadow: var(--pr-shadow); }
.pr-figure::before { content: ''; position: absolute; inset: 20px -16px -16px 20px; border: 3px solid var(--pr-gold); border-radius: 2px; transition: transform .6s var(--pr-ease); }
[dir="rtl"] .pr-figure::before { inset: 20px 20px -16px -16px; }
.pr-figure:hover::before { transform: translate(6px, 6px); }
[dir="rtl"] .pr-figure:hover::before { transform: translate(-6px, 6px); }

/* ---------- jump bar ---------- */
.pr-pills { position: sticky; top: 84px; z-index: 20; background: #fff; border-bottom: 1px solid var(--pr-line); box-shadow: 0 4px 14px rgb(46 44 111 / 6%); }
.pr-pills-in { display: flex; gap: 8px; overflow-x: auto; padding: 12px 0; scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; }
.pr-pills-in::-webkit-scrollbar { display: none; }
.pr-pills a { flex: 0 0 auto; padding: 8px 18px; border-radius: 2px; font-size: 14px; line-height: 22px; font-weight: 500; color: var(--pr-text); text-decoration: none; background: var(--pr-tint); transition: background-color .3s, color .3s; }
.pr-pills a:hover, .pr-pills a.is-on { background: var(--pr-navy); color: #fff; }

/* ---------- cards ---------- */
.pr-card { position: relative; height: 100%; background: #fff; border-radius: 2px; border-top: 3px solid transparent; box-shadow: var(--pr-shadow); padding: 30px 26px 26px; transition: transform .45s var(--pr-ease), box-shadow .45s var(--pr-ease), border-color .3s; }
.pr-card:hover { transform: translateY(-6px); box-shadow: var(--pr-shadow-up); border-top-color: var(--pr-gold); }
.pr-card h3, .pr-card h4 { font-size: 19px; line-height: 29px; font-weight: 700; color: var(--pr-navy); margin: 0 0 12px; text-align: start; }
.pr-card p { font-size: 16px; line-height: 27px; color: var(--pr-text); margin: 0 0 18px; opacity: 1; text-align: start; }
.pr-card--steps { display: flex; flex-direction: column; }
.pr-card--steps .pr-link { margin-top: auto; }
.pr-num { position: absolute; top: 14px; inset-inline-end: 20px; font-size: 56px; line-height: 1; font-weight: 700; color: rgb(39 37 85 / 7%); pointer-events: none; }
.pr-icon { display: flex; align-items: center; justify-content: center; width: 64px; height: 64px; margin-bottom: 20px; border-radius: 50%; background: rgb(227 168 31 / 14%); }
.pr-icon img { width: 30px; height: 30px; object-fit: contain; }
.pr-icon i { font-size: 28px; line-height: 1; color: var(--pr-gold); }
.pr-card--intent img { height: 44px; width: auto; margin-bottom: 14px; }

.pr-link { display: inline-flex; align-items: center; gap: 8px; font-size: 16px; line-height: 24px; font-weight: 700; color: var(--pr-navy); text-decoration: none; transition: color .3s, gap .3s; }
.pr-link i { font-size: 16px; color: var(--pr-gold); transition: transform .3s var(--pr-ease); }
.pr-link:hover { color: var(--pr-navy); gap: 12px; }
.pr-link:hover i { transform: translateX(3px); }
[dir="rtl"] .pr-link i { transform: scaleX(-1); }
[dir="rtl"] .pr-link:hover i { transform: scaleX(-1) translateX(3px); }

/* ---------- check lists ---------- */
.pr-checks { list-style: none; margin: 0; padding: 0; }
.pr-checks li { position: relative; padding: 5px 0; padding-inline-start: 36px; font-size: 18px; line-height: 30px; color: var(--pr-text); opacity: 1; break-inside: avoid; }
.pr-checks li::before { content: ''; position: absolute; top: 10px; inset-inline-start: 0; width: 20px; height: 20px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Ccircle cx='10' cy='10' r='10' fill='%23E3A81F'/%3E%3Cpath d='M5.5 10.5l3 3 6-6.5' fill='none' stroke='%23272555' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.pr-checks--2 { column-count: 2; column-gap: 48px; }
.pr-panel { background: #fff; border-radius: 2px; box-shadow: var(--pr-shadow); padding: 28px 32px; }
.pr-checks--tight li { font-size: 16px; line-height: 27px; padding: 7px 0; padding-inline-start: 34px; }
.pr-checks--tight li::before { top: 10px; }

/* ---------- admissions: step timeline ---------- */
.pr-steps { position: relative; }
.pr-step { position: relative; display: grid; grid-template-columns: 56px minmax(0, 1fr); gap: 24px; padding-bottom: 32px; }
.pr-step:last-child { padding-bottom: 0; }
.pr-step::before { content: ''; position: absolute; top: 56px; bottom: 0; inset-inline-start: 27px; width: 2px; background: linear-gradient(var(--pr-gold), rgb(227 168 31 / 18%)); }
.pr-step:last-child::before { display: none; }
.pr-step-mark { position: relative; z-index: 1; width: 56px; height: 56px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: var(--pr-navy); color: var(--pr-gold); font-size: 22px; line-height: 1; font-weight: 700; box-shadow: 0 0 0 6px #fff, 0 0 0 8px rgb(227 168 31 / 40%); }
.pr-step-body { background: #fff; border-radius: 2px; box-shadow: var(--pr-shadow); padding: 30px 32px; }
.pr-step-body h3 { margin: 0 0 12px; font-size: 25px; line-height: 34px; font-weight: 700; color: var(--pr-navy); }
.pr-step-body h5 { margin: 0 0 8px; font-size: 18px; line-height: 28px; font-weight: 700; color: var(--pr-navy); }
.pr-step-body p { margin: 0 0 14px; font-size: 16px; line-height: 27px; color: var(--pr-text); opacity: 1; }
.pr-label { margin: 22px 0 10px; font-size: 14px; line-height: 22px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--pr-gold); }
.pr-minis { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 20px 0 0; }
.pr-mini { padding: 20px; background: var(--pr-tint); border-radius: 2px; border-top: 3px solid var(--pr-gold); }
.pr-mini p:last-child { margin-bottom: 0; }
.pr-notice--warn { background: #FFF8E6; box-shadow: none; }
.pr-notice--tip { background: var(--pr-tint); box-shadow: none; border-inline-start-color: var(--pr-navy); }
.pr-notice--tip i, .pr-notice--info i { color: var(--pr-navy); }
.pr-step-body .pr-notice { margin-top: 20px; box-shadow: none; }
.pr-step-body .pr-notice + .pr-notice { margin-top: 12px; }
.pr-step-body .pr-notice--info { background: #fff; border: 1px solid var(--pr-line); border-inline-start: 4px solid var(--pr-navy); }
@media (max-width: 991px) { .pr-minis { grid-template-columns: 1fr; } }
@media (max-width: 576px) {
    .pr-step { grid-template-columns: 1fr; gap: 14px; }
    .pr-step::before { display: none; }
    .pr-step-mark { width: 48px; height: 48px; font-size: 20px; }
    .pr-step-body { padding: 22px 18px; }
}

/* ---------- CTA band ---------- */
.pr-cta { position: relative; overflow: hidden; padding: 76px 0; text-align: center; background: var(--pr-navy); }
.pr-cta::before, .pr-cta::after { content: ''; position: absolute; border-radius: 50%; border: 2px solid rgb(227 168 31 / 28%); pointer-events: none; }
.pr-cta::before { width: 340px; height: 340px; inset-inline-start: -110px; top: -130px; }
.pr-cta::after { width: 220px; height: 220px; inset-inline-end: -50px; bottom: -90px; }
.pr-cta h2 { position: relative; z-index: 1; margin: 0 0 30px; color: #fff; font-size: clamp(26px, 3.4vw, 40px); line-height: 1.25; font-weight: 700; }
.pr-cta p { position: relative; z-index: 1; max-width: 640px; margin: 0 auto 28px; font-size: 18px; line-height: 30px; color: rgb(255 255 255 / 88%); }
.pr-cta--photo { background: linear-gradient(rgb(39 37 85 / 88%), rgb(39 37 85 / 88%)), var(--pr-photo) center / cover no-repeat; }
.pr-cta-row { position: relative; z-index: 1; display: flex; flex-wrap: wrap; justify-content: center; gap: 14px; }
.pr-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 52px; padding: 0 32px; border: 2px solid transparent; border-radius: 2px; font-size: 16px; line-height: 1; font-weight: 700; text-decoration: none; transition: transform .3s var(--pr-ease), background-color .3s, color .3s, box-shadow .3s; }
.pr-btn:hover { transform: translateY(-3px); }
.pr-btn:focus-visible, .pr-link:focus-visible, .pr-pills a:focus-visible { outline: 3px solid var(--pr-gold); outline-offset: 3px; }
.pr-btn--gold { background: var(--pr-gold); color: var(--pr-navy); box-shadow: 0 8px 22px rgb(227 168 31 / 35%); }
.pr-btn--gold:hover { background: #f0b82d; color: var(--pr-navy); box-shadow: 0 12px 28px rgb(227 168 31 / 45%); }
.pr-btn--ghost { color: #fff; border-color: rgb(255 255 255 / 70%); }
.pr-btn--ghost:hover { background: #fff; color: var(--pr-navy); border-color: #fff; }
.pr-btn--line { color: var(--pr-navy); border-color: var(--pr-navy); }
.pr-btn--line:hover { background: var(--pr-navy); color: #fff; }
/* the site forces direction:ltr on every wa.me link (phone digits); an icon + label row must follow the page language */
html[dir="rtl"] a.pr-btn[href^="https://wa.me/"] { direction: rtl; }
.pr-btn--navy { background: var(--pr-navy); color: #fff; }
.pr-btn--navy:hover { background: #3a3777; color: #fff; }

/* ---------- curriculum: stages + subjects ---------- */
.pr-stage { display: flex; align-items: center; gap: 18px; height: 100%; padding: 26px 24px; background: #fff; border-radius: 2px; border-bottom: 3px solid transparent; box-shadow: var(--pr-shadow); text-decoration: none; transition: transform .45s var(--pr-ease), box-shadow .45s var(--pr-ease), border-color .3s; }
.pr-stage:hover { transform: translateY(-6px); box-shadow: var(--pr-shadow-up); border-bottom-color: var(--pr-gold); }
.pr-stage .pr-icon { margin: 0; flex: 0 0 auto; }
.pr-stage span { flex: 1; font-size: 19px; line-height: 28px; font-weight: 700; color: var(--pr-navy); }
.pr-stage > i { font-size: 20px; color: var(--pr-gold); transition: transform .3s var(--pr-ease); }
.pr-stage:hover > i { transform: translateX(4px); }
[dir="rtl"] .pr-stage > i { transform: scaleX(-1); }
[dir="rtl"] .pr-stage:hover > i { transform: scaleX(-1) translateX(4px); }
.pr-subnav { display: flex; flex-direction: column; gap: 4px; position: sticky; top: 108px; }
.pr-subnav button { display: block; width: 100%; padding: 12px 18px; border: 0; border-inline-start: 3px solid transparent; border-radius: 2px; background: transparent; text-align: start; font-family: inherit; font-size: 16px; line-height: 24px; font-weight: 500; color: var(--pr-text); cursor: pointer; transition: background-color .3s, color .3s, border-color .3s; }
.pr-subnav button:hover { background: #fff; color: var(--pr-navy); }
.pr-subnav button[aria-selected="true"] { background: #fff; color: var(--pr-navy); font-weight: 700; border-inline-start-color: var(--pr-gold); box-shadow: var(--pr-shadow); }
.pr-subject { background: #fff; border-radius: 2px; box-shadow: var(--pr-shadow); padding: 34px 36px; margin-bottom: 24px; }
.pr-subject h4 { margin: 0 0 18px; font-size: 28px; line-height: 38px; font-weight: 700; color: var(--pr-navy); display: block; }
.pr-subject p { font-size: 18px; line-height: 32px; color: var(--pr-text); opacity: 1; margin: 0 0 16px; }
.pr-subject p:last-child { margin-bottom: 0; }
.pr-subject ul { margin: 0 0 16px; padding-inline-start: 24px; }
.pr-subject li { font-size: 18px; line-height: 32px; color: var(--pr-text); }
.pr-tabs-ready .pr-subject { display: none; margin-bottom: 0; }
.pr-tabs-ready .pr-subject.is-active { display: block; animation: pr-fade .45s var(--pr-ease); }
@keyframes pr-fade { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
.pr-subjects-tabs { display: none; }

/* ---------- facilities ---------- */
.pr-chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin: 0 auto 8px; padding: 0; list-style: none; }
.pr-chips li { display: inline-flex; align-items: center; gap: 10px; padding: 12px 20px; background: #fff; border-radius: 2px; box-shadow: var(--pr-shadow); font-size: 16px; line-height: 24px; font-weight: 500; color: var(--pr-navy); }
.pr-chips i { font-size: 18px; color: var(--pr-gold); }
.pr-gallery .filter-align { padding: 8px; }
.pr-gallery .filter-align a { position: relative; display: block; overflow: hidden; border-radius: 2px; box-shadow: var(--pr-shadow); }
.pr-gallery .filter-item img { box-shadow: none; transition: transform .8s var(--pr-ease); }
.pr-gallery .filter-item img:hover { transform: scale(1.06); }
.pr-gallery .filter-align a::after { content: ''; position: absolute; inset: 0; opacity: 0; transition: opacity .35s; background: linear-gradient(180deg, transparent 45%, rgb(39 37 85 / 70%) 100%), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 3h6v6M9 21H3v-6M21 3l-7 7M3 21l7-7'/%3E%3C/svg%3E") center / 34px no-repeat; pointer-events: none; }
.pr-gallery .filter-align a:hover::after { opacity: 1; }

/* ---------- open day ---------- */
.pr-notice { display: flex; gap: 16px; align-items: flex-start; padding: 20px 22px; background: #fff; border-radius: 2px; border-inline-start: 4px solid var(--pr-gold); box-shadow: var(--pr-shadow); font-size: 16px; line-height: 27px; color: var(--pr-text); }
.pr-notice i { flex: 0 0 auto; margin-top: 2px; font-size: 22px; line-height: 1; color: var(--pr-gold); }
.pr-notice + .pr-notice { margin-top: 16px; }
.pr-notice--info { border-inline-start-color: var(--pr-navy); }
.pr-notice--info i { color: var(--pr-navy); }
.pr-insta { display: inline-flex; align-items: center; gap: 10px; min-height: 48px; padding: 0 24px; border-radius: 2px; font-size: 16px; line-height: 1; font-weight: 700; color: #fff; text-decoration: none; background: linear-gradient(45deg, #f09433, #e6683c 30%, #dc2743 55%, #cc2366 75%, #bc1888); transition: transform .3s var(--pr-ease), box-shadow .3s; }
.pr-insta:hover { color: #fff; transform: translateY(-3px); box-shadow: 0 10px 24px rgb(220 39 67 / 35%); }
.pr-aside { position: sticky; top: 108px; }
.pr-links { list-style: none; margin: 0; padding: 0; }
.pr-links li + li { margin-top: 8px; }
.pr-links a { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 16px; background: var(--pr-tint); border-radius: 2px; font-size: 16px; line-height: 24px; font-weight: 500; color: var(--pr-navy); text-decoration: none; transition: background-color .3s, color .3s, transform .3s var(--pr-ease); }
.pr-links a i { color: var(--pr-gold); transition: transform .3s var(--pr-ease); }
.pr-links a:hover { background: var(--pr-navy); color: #fff; transform: translateX(4px); }
[dir="rtl"] .pr-links a:hover { transform: translateX(-4px); }
[dir="rtl"] .pr-links a i { transform: scaleX(-1); }
.pr-callbox { margin-top: 20px; padding: 32px 24px; text-align: center; background: var(--pr-navy); border-radius: 2px; }
.pr-callbox h4 { margin: 0 0 12px; font-size: 22px; line-height: 30px; font-weight: 700; color: #fff; }
.pr-callbox p { margin: 0 0 24px; font-size: 16px; line-height: 26px; color: rgb(255 255 255 / 88%); }
.pr-form-shell .form-wrpr-cs-b-a-t { border-top: 4px solid var(--pr-gold); }
.pr-activities { background: #fff; border-radius: 2px; box-shadow: var(--pr-shadow); padding: 32px; }
.pr-activities p, .pr-activities li { font-size: 18px; line-height: 32px; color: var(--pr-text); }
.pr-activities ul { list-style: disc; padding-inline-start: 24px; margin: 0 0 16px; }
.pr-activities ol { list-style: decimal; padding-inline-start: 24px; margin: 0 0 16px; }
.pr-activities > :last-child { margin-bottom: 0; }

@media (max-width: 991px) {
    .pr-section { padding: 60px 0; }
    .pr-banner { padding: 96px 0 88px; }
    .pr-checks--2 { column-count: 1; }
    .pr-figure::before { display: none; }
    .pr-subnav { position: static; flex-direction: row; overflow-x: auto; gap: 8px; margin-bottom: 20px; scrollbar-width: none; -ms-overflow-style: none; }
    .pr-subnav::-webkit-scrollbar { display: none; }
    .pr-subnav button { width: auto; flex: 0 0 auto; padding: 9px 16px; border-inline-start: 0; border-bottom: 3px solid transparent; background: #fff; box-shadow: var(--pr-shadow); white-space: nowrap; }
    .pr-subnav button[aria-selected="true"] { border-bottom-color: var(--pr-gold); }
    .pr-aside { position: static; margin-top: 32px; }
}
@media (max-width: 576px) {
    .pr-section { padding: 44px 0; }
    .pr-banner { padding: 72px 0 66px; }
    .pr-panel, .pr-activities { padding: 22px 18px; }
    .pr-subject { padding: 24px 20px; }
    .pr-subject h4 { font-size: 24px; line-height: 32px; }
    .pr-cta { padding: 56px 0; }
    .pr-btn { width: 100%; max-width: 320px; }
}
/* ---------- content pages: contact, wide card, portrait + quote (About us, Contacts, Enrichment) ---------- */
.pr-card--wide { display: flex; align-items: flex-start; gap: 24px; padding: 34px 32px; }
.pr-card--wide .pr-icon { flex: 0 0 auto; margin: 0; }
.pr-card--wide p { margin-bottom: 20px; }
.pr-card .pr-icon + h3, .pr-card .pr-icon + p { margin-top: 0; }
.pr-contact { list-style: none; margin: 28px 0 0; padding: 0; display: grid; gap: 14px; }
.pr-contact li { display: flex; align-items: center; gap: 18px; padding: 16px 20px; background: #fff; border-radius: 2px; box-shadow: var(--pr-shadow); font-size: 18px; line-height: 28px; color: var(--pr-text); transition: transform .35s var(--pr-ease), box-shadow .35s var(--pr-ease); }
.pr-contact li:hover { transform: translateY(-3px); box-shadow: var(--pr-shadow-up); }
.pr-contact .pr-icon { flex: 0 0 auto; width: 52px; height: 52px; margin: 0; }
.pr-contact .pr-icon i { font-size: 22px; }
.pr-contact a { font-size: 18px; line-height: 28px; font-weight: 500; color: var(--pr-navy); text-decoration: none; }
.pr-contact a:hover { color: var(--pr-navy); text-decoration: underline; }
.pr-map { position: relative; height: 100%; min-height: 440px; border-radius: 2px; overflow: hidden; box-shadow: var(--pr-shadow); border-top: 3px solid var(--pr-gold); }
.pr-map iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.pr-portrait { margin: 0; text-align: center; }
.pr-portrait img { display: block; width: 100%; max-width: 340px; height: auto; margin: 0 auto; border-radius: 2px; background: var(--pr-tint); box-shadow: var(--pr-shadow); }
.pr-portrait figcaption { margin-top: 18px; }
.pr-portrait strong { display: block; font-size: 22px; line-height: 30px; font-weight: 700; color: var(--pr-navy); }
.pr-portrait span { display: block; font-size: 16px; line-height: 26px; color: var(--pr-text); }
.pr-quote { position: relative; padding-top: 6px; }
.pr-quote > i { position: absolute; top: -64px; inset-inline-end: 0; font-size: 110px; line-height: 1; color: rgb(227 168 31 / 22%); pointer-events: none; }
[dir="rtl"] .pr-quote > i { transform: scaleX(-1); }
@media (max-width: 576px) {
    .pr-card--wide { flex-direction: column; gap: 6px; padding: 26px 20px; }
    .pr-contact li { padding: 14px; gap: 14px; font-size: 16px; }
    .pr-contact a { font-size: 16px; overflow-wrap: anywhere; }
    .pr-map { min-height: 320px; }
}

.pr-cta--mission h2 { margin-bottom: 22px; }
.pr-cta--mission p { max-width: 860px; margin-bottom: 0; font-size: 20px; line-height: 34px; font-weight: 500; }

/* ---------- events list (and any news-style card grid) ---------- */
.pr-news-card { display: flex; flex-direction: column; height: 100%; background: #fff; border-radius: 2px; border-top: 3px solid transparent; box-shadow: var(--pr-shadow); overflow: hidden; text-decoration: none; transition: transform .45s var(--pr-ease), box-shadow .45s var(--pr-ease), border-color .3s; }
.pr-news-card:hover { transform: translateY(-6px); box-shadow: var(--pr-shadow-up); border-top-color: var(--pr-gold); }
.pr-news-img { display: block; overflow: hidden; background: var(--pr-tint); }
.pr-news-img img { display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: cover; transition: transform .7s var(--pr-ease); }
.pr-news-card:hover .pr-news-img img { transform: scale(1.07); }
.pr-news-body { display: flex; flex-direction: column; flex: 1; padding: 20px 22px 22px; }
.pr-news-title { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; margin-bottom: 16px; font-size: 18px; line-height: 26px; font-weight: 700; color: var(--pr-navy); }
.pr-news-more { display: inline-flex; align-items: center; gap: 8px; margin-top: auto; font-size: 15px; line-height: 22px; font-weight: 700; color: var(--pr-navy); }
.pr-news-more i { color: var(--pr-gold); transition: transform .3s var(--pr-ease); }
.pr-news-card:hover .pr-news-more i { transform: translateX(4px); }
[dir="rtl"] .pr-news-more i { transform: scaleX(-1); }
[dir="rtl"] .pr-news-card:hover .pr-news-more i { transform: scaleX(-1) translateX(4px); }
.pr-skin .subpage-card p { font-size: 16px; line-height: 27px; text-align: start; }

/* pages that carried their own off-palette colours inline (Robotics, MC 4.0): pull them onto navy / tint */
.pr-skin [style*="#2bcdd2"] { background-color: var(--pr-navy) !important; }
.pr-skin [style*="#2bcdd254"], .pr-skin [style*="#e9ecef"] { background-color: var(--pr-tint) !important; }
.pr-skin .shadow.rounded-2 { border-radius: 2px !important; box-shadow: var(--pr-shadow) !important; }
.pr-skin .border-end.border-4 { border-color: var(--pr-gold) !important; }
.pr-skin .btn-secondary { background: var(--pr-navy); border-color: var(--pr-navy); }
.pr-skin .btn-secondary:hover { background: #3a3777; border-color: #3a3777; }
.pr-skin .new_adm_col_h { color: var(--pr-navy); }

/* dark call-to-action bands inside skinned pages (KS3/KS4/KS5 ...): the heading must stay white and centred */
.pr-skin .cta-section .cs__a_d_head, .pr-skin .cta-section h2 { color: #fff; text-align: center; }
.pr-skin .cta-section .cs__a_d_head::after, .pr-skin .cta-section h2::after { inset-inline-start: 50%; margin-inline-start: -24px; }
/* careers: vacancy cards + mail link */
.pr-skin .email__css_career a { color: var(--pr-navy); font-weight: 700; text-decoration: underline; text-decoration-color: var(--pr-gold); text-underline-offset: 4px; }
.pr-skin .email-text__cs { font-size: 18px; color: var(--pr-text); }
.pr-skin .career-link { border: 0 !important; border-top: 3px solid transparent !important; border-radius: 2px; overflow: hidden; box-shadow: var(--pr-shadow) !important; transition: transform .45s var(--pr-ease), box-shadow .45s var(--pr-ease), border-color .3s; }
.pr-skin .career-link:hover { opacity: 1; transform: translateY(-6px); box-shadow: var(--pr-shadow-up) !important; border-top-color: var(--pr-gold) !important; }

/* ====================================================================================================
   SKIN for the remaining content pages (<main class="pr-skin">): the original markup stays, its old classes get the
   new look - headings, copy, lists, accordions, cards, buttons - so ~40 pages share one design without touching
   a single translated block. New pages should use the pr- components above instead.
   ==================================================================================================== */
.pr-skin { color: var(--pr-text); }
.pr-skin > section, .pr-skin > .content-section { padding: 70px 0; overflow-x: clip; }
.pr-skin > section.gray-bg, .pr-skin .gray-bg { background: var(--pr-tint); }
.pr-skin .cs__a_d_head, .pr-skin .cs__d_wrpras > h2, .pr-skin .cs__d_wrpras > h4, .pr-skin .section-title { position: relative; display: block; margin: 0 0 28px; padding-bottom: 16px; font-size: clamp(26px, 3vw, 36px); line-height: 1.25; font-weight: 700; color: var(--pr-navy); text-align: start; }
.pr-skin .cs__a_d_head::after, .pr-skin .cs__d_wrpras > h2::after, .pr-skin .cs__d_wrpras > h4::after, .pr-skin .section-title::after { content: ''; position: absolute; bottom: 0; left: 0; right: auto; width: 48px; height: 3px; background: var(--pr-gold); border-radius: 0; }
[dir="rtl"] .pr-skin .cs__a_d_head::after, [dir="rtl"] .pr-skin .cs__d_wrpras > h2::after, [dir="rtl"] .pr-skin .cs__d_wrpras > h4::after, [dir="rtl"] .pr-skin .section-title::after { left: auto; right: 0; }
.pr-skin .cs__ad_s_s_s_head, .pr-skin h3.cs__head_tag { margin: 28px 0 14px; font-size: 24px; line-height: 34px; font-weight: 700; color: var(--pr-navy); }
.pr-skin .cs__a_d_paras, .pr-skin .para-secodary-color, .pr-skin .cs__d_wrpras p, .pr-skin .content-section p { margin: 0 0 18px; font-size: 18px; line-height: 32px; color: var(--pr-text); opacity: 1; text-align: start; }
.pr-skin .cs__a_d_paras strong, .pr-skin .para-secodary-color strong { color: var(--pr-navy); }
.pr-skin .cs__a_d_paras a, .pr-skin .para-secodary-color a, .pr-skin .about-details-li a { color: var(--pr-navy); font-weight: 700; text-decoration: underline; text-decoration-color: var(--pr-gold); text-underline-offset: 4px; }
.pr-skin .about-details-ul { list-style: none; margin: 0 0 20px; padding: 0; }
.pr-skin .about-details-li { position: relative; padding: 5px 0; padding-inline-start: 36px; font-size: 18px; line-height: 30px; color: var(--pr-text); }
.pr-skin .about-details-li::before { content: ''; position: absolute; top: 10px; inset-inline-start: 0; width: 20px; height: 20px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Ccircle cx='10' cy='10' r='10' fill='%23E3A81F'/%3E%3Cpath d='M5.5 10.5l3 3 6-6.5' fill='none' stroke='%23272555' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.pr-skin .Separator { height: 0; margin: 8px 0 24px; border: 0; }
.pr-skin .img-wrpr-cs__ab-de img, .pr-skin .feature-image, .pr-skin .cs__d_wrpras img { border-radius: 2px; box-shadow: var(--pr-shadow); }
/* uniform / generic call-to-action links */
.pr-skin .uniform-btn a { display: inline-flex; align-items: center; gap: 10px; min-height: 52px; padding: 0 32px; border-radius: 2px; background: var(--pr-gold); color: var(--pr-navy); font-size: 16px; line-height: 1; font-weight: 700; text-decoration: none; box-shadow: 0 8px 22px rgb(227 168 31 / 35%); transition: transform .3s var(--pr-ease), background-color .3s; }
.pr-skin .uniform-btn a:hover { background: #f0b82d; transform: translateY(-3px); color: var(--pr-navy); }
/* the copied "subpage card" pattern (Accreditations, E-learning pages) */
.pr-skin .subpage-card { height: 100%; border: 0; border-top: 3px solid transparent; border-radius: 2px; box-shadow: var(--pr-shadow); background: #fff; overflow: hidden; transition: transform .45s var(--pr-ease), box-shadow .45s var(--pr-ease), border-color .3s; }
.pr-skin .subpage-card:hover { transform: translateY(-6px); box-shadow: var(--pr-shadow-up); border-top-color: var(--pr-gold); }
.pr-skin .subpage-card .card-body { padding: 28px 26px; }
.pr-skin .subpage-card .card-icon { display: flex; align-items: center; justify-content: center; width: 64px; height: 64px; margin-bottom: 20px; border-radius: 50%; background: rgb(227 168 31 / 14%); transform: none; }
.pr-skin .subpage-card:hover .card-icon { transform: none; }
.pr-skin .subpage-card .card-icon i { font-size: 28px; color: var(--pr-gold); }
.pr-skin .subpage-card .card-icon img { max-width: 100%; max-height: 100%; object-fit: contain; }
.pr-skin .subpage-card .card-title { margin: 0 0 12px; font-size: 19px; line-height: 29px; font-weight: 700; color: var(--pr-navy); }
.pr-skin .subpage-card .card-text { margin: 0 0 18px; font-size: 16px; line-height: 27px; color: var(--pr-text); }
.pr-skin .btn-learn-more { display: inline-flex; align-items: center; gap: 8px; padding: 0; border: 0; background: none; box-shadow: none; font-size: 16px; line-height: 24px; font-weight: 700; color: var(--pr-navy); }
.pr-skin .btn-learn-more:hover { transform: none; box-shadow: none; color: var(--pr-navy); gap: 12px; }
.pr-skin .btn-learn-more i { color: var(--pr-gold); }
.pr-skin .stats-section { border-radius: 2px; background: var(--pr-tint); }
.pr-skin .stat-number { color: var(--pr-navy); font-weight: 700; }
/* accordions (FAQs, Term plans, MC 4.0, You said we did) */
.pr-skin .accordion-flush .accordion-item, .pr-skin .accordion-item { margin-bottom: 12px; border: 0; border-radius: 2px; background: #fff; box-shadow: var(--pr-shadow); overflow: hidden; }
.pr-skin .accordion-button { padding: 20px 24px; border-radius: 0; border-inline-start: 4px solid transparent; background: #fff; box-shadow: none; font-size: 18px; line-height: 28px; font-weight: 700; color: var(--pr-navy); }
.pr-skin .accordion-button:not(.collapsed) { background: var(--pr-tint); color: var(--pr-navy); border-inline-start-color: var(--pr-gold); box-shadow: none; }
.pr-skin .accordion-button:focus { box-shadow: 0 0 0 3px rgb(227 168 31 / 45%); }
.pr-skin .accordion-body { padding: 8px 24px 24px; font-size: 16px; line-height: 27px; color: var(--pr-text); }
.pr-skin .accordion-body p, .pr-skin .accordion-body li { font-size: 16px; line-height: 27px; }
.pr-skin .accordion-body a { color: var(--pr-navy); font-weight: 700; text-decoration-color: var(--pr-gold); text-underline-offset: 4px; }
/* generic bootstrap buttons inside content */
.pr-skin .btn:not(.pr-btn):not(.accordion-button):not(.btn-close):not(.btn-learn-more) { border-radius: 2px; font-weight: 700; }
.pr-skin table { width: 100%; }
@media (max-width: 991px) { .pr-skin > section, .pr-skin > .content-section { padding: 52px 0; } }
@media (max-width: 576px) { .pr-skin > section, .pr-skin > .content-section { padding: 40px 0; } .pr-skin .accordion-button { padding: 16px 16px; font-size: 16px; line-height: 26px; } .pr-skin .accordion-body { padding: 6px 16px 18px; } }

/* centred section heads: the gold rule sits under the middle of the text, in both directions */
.pr-skin .cs__a_d_head.text-center, .pr-skin .cs__a_d_head.justify-content-center, .pr-skin .section-title.text-center, .pr-skin .cs__d_wrpras > .text-center { text-align: center; }
.pr-skin .cs__a_d_head.text-center::after, .pr-skin .cs__a_d_head.justify-content-center::after, .pr-skin .section-title.text-center::after, .pr-skin .cs__d_wrpras > .text-center::after,
[dir="rtl"] .pr-skin .cs__a_d_head.text-center::after, [dir="rtl"] .pr-skin .cs__a_d_head.justify-content-center::after, [dir="rtl"] .pr-skin .section-title.text-center::after { left: 50%; right: auto; transform: translateX(-50%); }
/* ====================================================================================================
   ROUND 3: contact-reach card (Transport), term-calendar cards, Instagram stories grid + viewer, gallery filters
   ==================================================================================================== */
/* contact card */
.pr-reach { padding: 30px 28px; background: #fff; border-top: 4px solid var(--pr-gold); border-radius: 2px; box-shadow: var(--pr-shadow); }
.pr-reach h3 { margin: 0 0 6px; font-size: 19px; line-height: 29px; font-weight: 700; color: var(--pr-navy); }
.pr-reach > p { margin: 0 0 22px; font-size: 16px; line-height: 26px; color: var(--pr-text); }
.pr-reach-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.pr-reach-list a { display: flex; align-items: center; gap: 16px; padding: 14px 16px; border: 1px solid var(--pr-line); border-radius: 2px; background: #fff; color: var(--pr-navy); text-decoration: none; direction: inherit; transition: border-color .3s, box-shadow .3s, transform .3s var(--pr-ease); }
.pr-reach-list a:hover { border-color: var(--pr-gold); box-shadow: var(--pr-shadow); transform: translateY(-2px); color: var(--pr-navy); }
.pr-reach-list .pr-icon { flex: 0 0 auto; width: 48px; height: 48px; margin: 0; }
.pr-reach-list .pr-icon i { font-size: 20px; }
.pr-reach-list small { display: block; font-size: 14px; line-height: 20px; font-weight: 400; color: #6B7390; }
.pr-reach-list strong { display: block; font-size: 18px; line-height: 26px; font-weight: 700; color: var(--pr-navy); }
.pr-reach-list .pr-go { margin-inline-start: auto; color: var(--pr-gold); font-size: 16px; }
[dir="rtl"] .pr-reach-list .pr-go { transform: scaleX(-1); }

/* term calendar */
.pr-term { display: flex; align-items: center; gap: 22px; padding: 26px 28px; margin-bottom: 14px; background: var(--pr-navy); border-radius: 2px; color: #fff; text-decoration: none; box-shadow: var(--pr-shadow); transition: transform .35s var(--pr-ease), box-shadow .35s var(--pr-ease); }
.pr-term:hover { color: #fff; transform: translateY(-4px); box-shadow: var(--pr-shadow-up); }
.pr-term .pr-icon { flex: 0 0 auto; width: 64px; height: 64px; margin: 0; background: rgb(227 168 31 / 18%); }
.pr-term .pr-icon i { font-size: 28px; }
.pr-term-name { display: block; font-size: 28px; line-height: 36px; font-weight: 700; color: #fff; }
.pr-term-tag { display: inline-flex; align-items: center; gap: 8px; margin-top: 4px; font-size: 16px; line-height: 24px; font-weight: 500; color: var(--pr-gold); }
.pr-term-tag i { transition: transform .3s var(--pr-ease); }
.pr-term:hover .pr-term-tag i { transform: translateX(4px); }
[dir="rtl"] .pr-term-tag i { transform: scaleX(-1); }
[dir="rtl"] .pr-term:hover .pr-term-tag i { transform: scaleX(-1) translateX(4px); }
.pr-note { display: flex; align-items: flex-start; gap: 14px; margin: 26px 0 0; padding: 16px 20px; background: var(--pr-tint); border-inline-start: 4px solid var(--pr-gold); border-radius: 2px; font-size: 16px; line-height: 26px; color: var(--pr-text); }
.pr-note i { margin-top: 3px; color: var(--pr-gold); font-size: 18px; }
.pr-archive-head { margin: 0 0 18px; font-size: 24px; line-height: 34px; font-weight: 700; color: var(--pr-navy); }
.pr-archive { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 12px; list-style: none; margin: 0; padding: 0; }
.pr-archive a { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 18px; background: #fff; border-radius: 2px; box-shadow: var(--pr-shadow); font-size: 18px; line-height: 26px; font-weight: 700; color: var(--pr-navy); text-decoration: none; border-top: 3px solid transparent; transition: transform .3s var(--pr-ease), border-color .3s, box-shadow .3s; }
.pr-archive a:hover { transform: translateY(-3px); border-top-color: var(--pr-gold); box-shadow: var(--pr-shadow-up); color: var(--pr-navy); }
.pr-archive i { color: var(--pr-gold); font-size: 16px; }

/* Instagram stories (same look as the homepage tiles) */
.pr-ig-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 34px; }
.pr-ig-head p { margin: 0; max-width: 640px; font-size: 18px; line-height: 30px; color: var(--pr-text); }
.pr-ig-follow { display: inline-flex; align-items: center; gap: 10px; min-height: 48px; padding: 0 24px; border-radius: 2px; font-size: 16px; font-weight: 700; line-height: 1; color: #fff; text-decoration: none; background: linear-gradient(45deg, #f09433, #e6683c 30%, #dc2743 55%, #cc2366 75%, #bc1888); transition: transform .3s var(--pr-ease), box-shadow .3s; }
.pr-ig-follow i { font-size: 20px; }
.pr-ig-follow:hover { color: #fff; transform: translateY(-3px); box-shadow: 0 10px 24px rgb(220 39 67 / 35%); }
.pr-ig-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.pr-tile { position: relative; display: block; aspect-ratio: 1; overflow: hidden; border-radius: 2px; background: #E6E6EE; cursor: pointer; box-shadow: var(--pr-shadow); }
.pr-tile img, .pr-tile video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .8s var(--pr-ease); }
.pr-tile:hover img, .pr-tile:hover video { transform: scale(1.08); }
.pr-tile-type { position: absolute; top: 10px; inset-inline-end: 10px; z-index: 2; font-size: 18px; line-height: 1; color: #fff; text-shadow: 0 1px 6px rgb(0 0 0 / 55%); }
.pr-tile-over { position: absolute; inset: 0; z-index: 1; display: flex; flex-direction: column; justify-content: flex-end; gap: 8px; padding: 14px; color: #fff; background: linear-gradient(180deg, rgb(39 37 85 / 10%) 0%, rgb(39 37 85 / 92%) 100%); opacity: 0; transform: translateY(10px); transition: opacity .35s, transform .35s var(--pr-ease); }
.pr-tile:hover .pr-tile-over, .pr-tile:focus-visible .pr-tile-over { opacity: 1; transform: none; }
.pr-tile:focus-visible { outline: 3px solid var(--pr-gold); outline-offset: 2px; }
.pr-tile-cap { margin: 0; font-size: 14px; line-height: 20px; color: #fff; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.pr-stats { display: flex; gap: 16px; font-size: 14px; font-weight: 700; line-height: 20px; }
.pr-stats span { display: inline-flex; align-items: center; gap: 6px; }
.pr-stats i { font-size: 16px; color: #ff5c7a; }
.pr-stats .bi-chat-fill { color: #fff; }
@media (hover: none) { .pr-tile-over { opacity: 1; transform: none; background: linear-gradient(180deg, transparent 60%, rgb(39 37 85 / 80%) 100%); } .pr-tile-cap { display: none; } }
.pr-viewer .modal-content { border: 0; border-radius: 2px; overflow: hidden; }
.pr-viewer-wrap { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); min-height: 460px; }
.pr-viewer-media { position: relative; display: flex; align-items: center; justify-content: center; background: #111; }
.pr-viewer-media img, .pr-viewer-media video { display: block; max-width: 100%; max-height: 80vh; }
.pr-viewer-side { display: flex; flex-direction: column; gap: 14px; padding: 28px 26px 24px; }
.pr-viewer-user { display: flex; align-items: center; gap: 12px; font-size: 16px; font-weight: 700; line-height: 22px; color: var(--pr-navy); }
.pr-viewer-user i { font-size: 28px; color: #dc2743; }
.pr-viewer-user small { display: block; font-size: 14px; font-weight: 400; line-height: 18px; color: #7a8099; }
.pr-viewer-cap { flex: 1; max-height: 40vh; margin: 0; overflow-y: auto; font-size: 16px; line-height: 26px; color: var(--pr-text); white-space: pre-line; }
.pr-viewer-stats { padding: 12px 0; font-size: 16px; border-top: 1px solid var(--pr-line); border-bottom: 1px solid var(--pr-line); }
.pr-viewer-stats:empty { display: none; }
.pr-viewer-stats i { font-size: 20px; }
.pr-viewer-stats .bi-chat-fill { color: var(--pr-navy); }
.pr-viewer-nav { position: absolute; top: 50%; z-index: 3; width: 42px; height: 42px; margin-top: -21px; border: 0; border-radius: 50%; background: rgb(255 255 255 / 88%); color: var(--pr-navy); font-size: 18px; line-height: 1; transition: background .3s, transform .3s var(--pr-ease); }
.pr-viewer-nav:hover { background: #fff; transform: scale(1.1); }
.pr-viewer-nav--prev { inset-inline-start: 12px; }
.pr-viewer-nav--next { inset-inline-end: 12px; }
[dir="rtl"] .pr-viewer-nav i { transform: scaleX(-1); }
.pr-viewer-close { position: absolute; top: 10px; inset-inline-end: 10px; z-index: 5; padding: 10px; border-radius: 50%; background-color: rgb(255 255 255 / 85%); }
.pr-pager { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 36px; }
.pr-pager a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; height: 44px; padding: 0 14px; border-radius: 2px; background: #fff; box-shadow: var(--pr-shadow); font-size: 16px; font-weight: 700; line-height: 1; color: var(--pr-navy); text-decoration: none; transition: background .3s, color .3s, transform .3s var(--pr-ease); }
.pr-pager a:hover { background: var(--pr-tint); transform: translateY(-2px); color: var(--pr-navy); }
.pr-pager a.is-on { background: var(--pr-navy); color: #fff; }
@media (max-width: 991px) { .pr-ig-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 767px) { .pr-viewer-wrap { grid-template-columns: 1fr; } .pr-viewer-media img, .pr-viewer-media video { max-height: 50vh; } .pr-viewer-side { padding: 20px; } .pr-viewer-cap { max-height: 22vh; } }
@media (max-width: 576px) { .pr-ig-grid { grid-template-columns: repeat(2, 1fr); gap: 8px; } .pr-term { flex-direction: column; align-items: flex-start; padding: 22px; } .pr-term-name { font-size: 24px; line-height: 32px; } }

/* gallery: sticky pill filters + framed tiles */
.pr-filterbar { position: sticky; top: 84px; z-index: 20; background: #fff; border-bottom: 1px solid var(--pr-line); box-shadow: 0 4px 14px rgb(46 44 111 / 6%); }
.pr-filterbar .filters-button-group { display: flex; flex-wrap: nowrap; justify-content: center; gap: 8px; padding: 12px 0; overflow-x: auto; scrollbar-width: none; }
.pr-filterbar .filters-button-group::-webkit-scrollbar { display: none; }
.pr-filterbar .iso-btns { flex: 0 0 auto; margin: 0; padding: 10px 20px; border: 0; border-radius: 2px; background: var(--pr-tint); font-size: 14px; line-height: 22px; font-weight: 500; letter-spacing: 0; color: var(--pr-text); cursor: pointer; transition: background .3s, color .3s; }
.pr-filterbar .iso-btns:hover { background: #E6E6EE; color: var(--pr-navy); }
.pr-filterbar .iso-btns.is-checked { background: var(--pr-navy); color: #fff; }
.pr-filterbar .iso-btns:focus-visible { outline: 3px solid var(--pr-gold); outline-offset: 2px; }
.pr-gallery-sec { padding: 40px 0 70px; }
.pr-gallery-sec .filter-align { padding: 8px; }
.pr-gallery-sec .filter-align a { position: relative; display: block; overflow: hidden; border-radius: 2px; box-shadow: var(--pr-shadow); background: #E6E6EE; }
.pr-gallery-sec .filter-item img { box-shadow: none; transition: transform .8s var(--pr-ease); }
.pr-gallery-sec .filter-item img:hover { transform: scale(1.06); }
.pr-gallery-sec .filter-align a::after { content: ''; position: absolute; inset: 0; opacity: 0; transition: opacity .35s; background: linear-gradient(180deg, transparent 50%, rgb(39 37 85 / 70%) 100%); }
.pr-gallery-sec .filter-align a:hover::after { opacity: 1; }
.pr-gallery-sec .pr-zoom { position: absolute; bottom: 12px; inset-inline-end: 12px; z-index: 2; display: flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 50%; background: var(--pr-gold); color: var(--pr-navy); font-size: 16px; opacity: 0; transform: translateY(8px); transition: opacity .35s, transform .35s var(--pr-ease); }
.pr-gallery-sec .filter-align a:hover .pr-zoom { opacity: 1; transform: none; }
@media (hover: none) { .pr-gallery-sec .pr-zoom { opacity: 1; transform: none; } }
.pr-empty { padding: 60px 20px; text-align: center; font-size: 18px; color: var(--pr-text); }
@media (max-width: 991px) { .pr-gallery-sec .filter-item, .pr-gallery-sec .filtergrid-sizer { width: 33.3333%; } }
@media (max-width: 576px) { .pr-gallery-sec { padding: 24px 0 50px; } .pr-gallery-sec .filter-item, .pr-gallery-sec .filtergrid-sizer { width: 50%; } .pr-gallery-sec .filter-align { padding: 4px; } .pr-filterbar .filters-button-group { justify-content: flex-start; } }

/* logo cards (Accreditations): wide logos get a roomy white panel instead of the 64px round icon */
.pr-skin .subpage-card .card-icon:has(> img) { width: 100%; height: 120px; padding: 16px 20px; border-radius: 2px; background: #fff; border: 1px solid var(--pr-line); }
.pr-skin .subpage-card .card-icon:has(> img) img { width: auto; height: auto; max-width: 100%; max-height: 88px; object-fit: contain; }

/* help / contact cards */
.pr-help-head { margin-bottom: 26px; }
.pr-help-label { display: block; margin-bottom: 6px; font-size: 14px; line-height: 22px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--pr-gold); }
.pr-help-head h3 { margin: 0; font-size: clamp(24px, 2.6vw, 30px); line-height: 1.3; font-weight: 700; color: var(--pr-navy); }
.pr-help { display: flex; align-items: center; gap: 18px; height: 100%; padding: 22px 24px; background: #fff; border-top: 3px solid transparent; border-radius: 2px; box-shadow: var(--pr-shadow); color: var(--pr-navy); text-decoration: none; transition: transform .35s var(--pr-ease), box-shadow .35s var(--pr-ease), border-color .3s; }
a.pr-help:hover { transform: translateY(-4px); box-shadow: var(--pr-shadow-up); border-top-color: var(--pr-gold); color: var(--pr-navy); }
.pr-help .pr-icon { flex: 0 0 auto; width: 52px; height: 52px; margin: 0; }
.pr-help .pr-icon i { font-size: 22px; }
.pr-help-body { min-width: 0; }
.pr-help-body small { display: block; font-size: 14px; line-height: 22px; font-weight: 400; color: #6B7390; }
.pr-help-body strong, .pr-help-body a { display: block; font-size: 16px; line-height: 26px; font-weight: 700; color: var(--pr-navy); text-decoration: none; overflow-wrap: break-word; word-break: normal; }
.pr-help-body a:hover strong { text-decoration: underline; text-decoration-color: var(--pr-gold); text-underline-offset: 4px; }
/* ====================================================================================================
   ROUND 4: Sixth Form + AI & Robotics rebuilds
   ==================================================================================================== */
.pr-tag { display: inline-flex; align-items: center; margin: 0 0 22px; padding: 5px 14px; border-radius: 2px; background: var(--pr-gold); color: var(--pr-navy); font-size: 14px; line-height: 22px; font-weight: 700; }
.pr-tag--navy { background: var(--pr-navy); color: #fff; }
.pr-sub { max-width: 780px; margin: 0 auto 38px; text-align: center; font-size: 18px; line-height: 30px; color: var(--pr-text); }
.pr-sub strong { color: var(--pr-navy); }
.pr-glance { padding: 8px 26px; background: var(--pr-navy); border-radius: 2px; box-shadow: var(--pr-shadow); }
.pr-glance ul { list-style: none; margin: 0; padding: 0; }
.pr-glance li { display: flex; align-items: center; gap: 18px; padding: 20px 0; }
.pr-glance li + li { border-top: 1px solid rgb(255 255 255 / 14%); }
.pr-glance .pr-icon { flex: 0 0 auto; width: 52px; height: 52px; margin: 0; background: rgb(227 168 31 / 18%); }
.pr-glance .pr-icon i { font-size: 22px; }
.pr-glance strong { display: block; font-size: 18px; line-height: 26px; font-weight: 700; color: #fff; }
.pr-glance small { display: block; font-size: 14px; line-height: 22px; color: rgb(255 255 255 / 72%); }
.pr-step-no { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin-bottom: 18px; border-radius: 50%; background: var(--pr-navy); color: #fff; font-size: 18px; line-height: 1; font-weight: 700; }
.pr-subjects-head { display: flex; align-items: center; gap: 18px; margin-bottom: 20px; }
.pr-subjects-head .pr-icon { flex: 0 0 auto; margin: 0; }
.pr-subjects-head h3 { margin: 0 0 4px; }
.pr-subjects .pr-tag { margin: 4px 0 0; }
.pr-subjects ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.pr-subjects li { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 0 14px; background: var(--pr-tint); border-radius: 2px; transition: background-color .3s; }
.pr-subjects li a { flex: 1; padding: 11px 0; font-size: 16px; line-height: 24px; font-weight: 500; color: var(--pr-navy); text-decoration: none; }
.pr-subjects li i { color: var(--pr-gold); font-size: 13px; }
[dir="rtl"] .pr-subjects li i { transform: scaleX(-1); }
.pr-subjects li:hover { background: var(--pr-navy); }
.pr-subjects li:hover a { color: #fff; }
.pr-callout { display: flex; align-items: flex-start; gap: 22px; margin-top: 32px; padding: 26px 28px; background: #fff; border-inline-start: 4px solid var(--pr-gold); border-radius: 2px; box-shadow: var(--pr-shadow); }
.pr-callout .pr-icon { flex: 0 0 auto; width: 56px; height: 56px; margin: 0; }
.pr-callout .pr-icon i { font-size: 24px; }
.pr-callout h3 { margin: 0 0 6px; font-size: 19px; line-height: 29px; font-weight: 700; color: var(--pr-navy); }
.pr-callout p { margin: 0; font-size: 16px; line-height: 27px; color: var(--pr-text); }
.pr-callout p strong { color: var(--pr-navy); }
.pr-callout > div { flex: 1 1 280px; min-width: 0; }
.pr-callout--stack { flex-direction: column; align-items: flex-start; gap: 16px; }
.pr-callout--stack > div { flex: 0 0 auto; }
.pr-callout--action { align-items: center; flex-wrap: wrap; }
.pr-card-kicker { display: block; margin: -6px 0 16px; font-size: 14px; line-height: 22px; font-weight: 500; color: #6B7390; }
.pr-quoteblock { position: relative; height: 100%; padding: 34px 36px; background: var(--pr-tint); border-inline-start: 4px solid var(--pr-gold); border-radius: 2px; }
.pr-quoteblock i { display: block; margin-bottom: 12px; font-size: 34px; line-height: 1; color: var(--pr-gold); }
.pr-quoteblock p { margin: 0; font-size: 18px; line-height: 32px; font-weight: 500; color: var(--pr-navy); }
.pr-chips--big li { padding: 16px 24px; font-size: 18px; line-height: 26px; }
.pr-chips--big i { font-size: 22px; }

/* AI & Robotics */
.pr-media { position: relative; overflow: hidden; border-radius: 2px; box-shadow: var(--pr-shadow); background: #E6E6EE; }
.pr-media img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.pr-media .carousel-indicators { margin-bottom: 12px; }
.pr-media .carousel-indicators [data-bs-target] { width: 10px; height: 10px; margin: 0 5px; border: 0; border-radius: 50%; background: #fff; opacity: .65; }
.pr-media .carousel-indicators .active { background: var(--pr-gold); opacity: 1; }
.pr-kicker { display: block; margin: 0 0 14px; font-size: 14px; line-height: 22px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--pr-gold); }
.pr-facts { display: grid; grid-template-columns: repeat(4, 1fr); list-style: none; margin: 0; padding: 0; background: var(--pr-navy); border-radius: 2px; box-shadow: var(--pr-shadow); }
.pr-facts li { padding: 26px 24px; border-inline-end: 1px solid rgb(255 255 255 / 14%); }
.pr-facts li:last-child { border-inline-end: 0; }
.pr-facts span { display: block; margin-bottom: 4px; font-size: 14px; line-height: 22px; color: rgb(255 255 255 / 72%); }
.pr-facts strong { display: block; font-size: 17px; line-height: 26px; font-weight: 700; color: #fff; }
.pr-level { display: flex; flex-direction: column; height: 100%; overflow: hidden; background: #fff; border-radius: 2px; box-shadow: var(--pr-shadow); transition: transform .45s var(--pr-ease), box-shadow .45s var(--pr-ease); }
.pr-level:hover { transform: translateY(-6px); box-shadow: var(--pr-shadow-up); }
.pr-level-top { padding: 28px 26px; background: var(--pr-navy); border-bottom: 3px solid var(--pr-gold); }
.pr-level-top h3 { margin: 0 0 4px; font-size: 22px; line-height: 30px; font-weight: 700; color: #fff; }
.pr-level-top span { font-size: 16px; line-height: 24px; font-weight: 500; color: var(--pr-gold); }
.pr-level-body { display: flex; flex-direction: column; gap: 18px; margin-top: auto; padding: 24px 26px 26px; }
.pr-level-age { display: flex; align-items: center; gap: 10px; font-size: 16px; line-height: 24px; font-weight: 500; color: var(--pr-navy); }
.pr-level-age i { font-size: 20px; color: var(--pr-gold); }
.pr-dl { list-style: none; margin: 0; padding: 0; }
.pr-dl li { padding: 12px 0; border-top: 1px solid var(--pr-line); font-size: 16px; line-height: 26px; color: var(--pr-text); }
.pr-dl li:first-child { padding-top: 0; border-top: 0; }
.pr-dl strong { display: block; font-weight: 700; color: var(--pr-navy); }
.pr-dl .pr-dl-note { display: block; margin-top: 4px; font-size: 14px; line-height: 22px; color: #6B7390; }
.pr-regband { margin-top: 28px; padding: 26px 20px; text-align: center; background: var(--pr-navy); border-radius: 2px; }
.pr-video { position: relative; max-width: 960px; margin: 0 auto; aspect-ratio: 16 / 9; overflow: hidden; border-radius: 2px; box-shadow: var(--pr-shadow); background: #000; }
.pr-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.pr-modal .modal-content { border: 0; border-top: 4px solid var(--pr-gold); border-radius: 2px; background: var(--pr-navy); color: #fff; }
.pr-modal .modal-header { padding: 24px 28px 0; border: 0; }
.pr-modal .modal-title { font-size: 22px; line-height: 30px; font-weight: 700; color: #fff; }
.pr-modal .modal-body { padding: 18px 28px 28px; }
.pr-modal-opt { padding: 18px 0; font-size: 17px; line-height: 28px; color: rgb(255 255 255 / 90%); }
.pr-modal-opt + .pr-modal-opt { border-top: 1px solid rgb(255 255 255 / 14%); }
.pr-modal-opt a { color: var(--pr-gold); font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.pr-modal-opt a[href^="tel:"] { direction: ltr; unicode-bidi: isolate; display: inline-block; }
@media (max-width: 991px) { .pr-facts { grid-template-columns: repeat(2, 1fr); } .pr-facts li:nth-child(2) { border-inline-end: 0; } .pr-facts li:nth-child(-n+2) { border-bottom: 1px solid rgb(255 255 255 / 14%); } }
@media (max-width: 576px) { .pr-subjects ul { grid-template-columns: 1fr; } .pr-callout { flex-direction: column; gap: 14px; padding: 22px; } .pr-quoteblock { padding: 26px 22px; } .pr-facts { grid-template-columns: 1fr; } .pr-facts li { border-inline-end: 0; border-bottom: 1px solid rgb(255 255 255 / 14%); } .pr-facts li:last-child { border-bottom: 0; } .pr-subjects-head { align-items: flex-start; } }

/* ====================================================================================================
   ROUND 5: forms (Enquire now, Apply online)
   ==================================================================================================== */
.pr-formsec { padding: 64px 0 80px; }
.pr-formcard { padding: 38px 38px 34px; background: #fff; border-top: 4px solid var(--pr-gold); border-radius: 2px; box-shadow: var(--pr-shadow); }
.pr-formcard h2 { margin: 0 0 12px; font-size: clamp(26px, 2.6vw, 32px); line-height: 1.25; font-weight: 700; color: var(--pr-navy); }
.pr-formcard > p { margin: 0 0 28px; font-size: 16px; line-height: 27px; color: var(--pr-text); }
.pr-formcard .messages { position: static; margin-bottom: 20px; }
.pr-formcard .messages > div { margin-bottom: 8px; padding: 12px 16px; border-inline-start: 4px solid var(--pr-gold); border-radius: 2px; background: #FFF6DD; font-size: 15px; line-height: 24px; color: var(--pr-navy); }
.pr-formcard .messages > .error, .pr-formcard .messages > .danger { background: #FDECEC; border-inline-start-color: #C0392B; color: #7B241C; }
.pr-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 20px 20px; }
.pr-field { min-width: 0; }
.pr-field--full { grid-column: 1 / -1; }
.pr-field label { display: block; margin: 0 0 8px; font-size: 14px; line-height: 20px; font-weight: 700; color: var(--pr-navy); }
.pr-input { display: block; width: 100%; min-height: 52px; padding: 12px 16px; border: 1px solid #CFD2E0; border-radius: 2px; background: #fff; font-family: inherit; font-size: 16px; line-height: 24px; font-weight: 400; color: var(--pr-ink); transition: border-color .25s, box-shadow .25s; }
.pr-input::placeholder { color: #8A90A8; opacity: 1; }
.pr-input:hover { border-color: #9FA4BC; }
.pr-input:focus { outline: 0; border-color: var(--pr-navy); box-shadow: 0 0 0 3px rgb(227 168 31 / 45%); }
textarea.pr-input { min-height: 132px; resize: vertical; }
select.pr-input { padding-inline-end: 44px; appearance: none; -webkit-appearance: none; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23272555' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6l5 5 5-5'/%3E%3C/svg%3E") no-repeat right 16px center / 14px; }
[dir="rtl"] select.pr-input { background-position: left 16px center; }
.pr-consent { display: flex; gap: 12px; align-items: flex-start; font-size: 14px; line-height: 22px; font-weight: 400; color: var(--pr-text); cursor: pointer; }
.pr-consent input { flex: 0 0 auto; width: 18px; height: 18px; margin-top: 2px; accent-color: var(--pr-navy); }
.pr-submit-row { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 22px; margin-top: 26px; }
.pr-submit { min-width: 220px; cursor: pointer; }
.pr-submit .spinner-border { margin-inline-start: 4px; }
.pr-submit-note { margin: 0; font-size: 14px; line-height: 22px; color: #6B7390; }
/* sidebar cards */
.pr-aside { display: grid; gap: 20px; }
.pr-ai { padding: 30px 30px 28px; background: var(--pr-navy); border-radius: 2px; color: #fff; box-shadow: var(--pr-shadow); }
.pr-ai > i { display: block; margin-bottom: 14px; font-size: 32px; line-height: 1; color: var(--pr-gold); }
.pr-ai h2 { margin: 0 0 10px; font-size: 25px; line-height: 32px; font-weight: 700; color: #fff; }
.pr-ai p { margin: 0 0 18px; font-size: 16px; line-height: 26px; color: rgb(255 255 255 / 78%); }
.pr-ai p.pr-ai-lead { font-size: 18px; line-height: 28px; color: #fff; }
.pr-ai .pr-btn { width: 100%; text-align: center; direction: inherit; text-decoration: none; }
.pr-ai .pr-ai-hint { min-height: 0; margin: 12px 0 0; font-size: 14px; line-height: 20px; color: rgb(255 255 255 / 78%); }
.pr-ai .pr-ai-hint:empty { margin: 0; }
.pr-ai .pr-ai-hint a { color: var(--pr-gold); font-weight: 700; }
.pr-side { padding: 24px 28px; background: #fff; border-radius: 2px; box-shadow: var(--pr-shadow); }
.pr-side h3 { margin: 0 0 6px; font-size: 19px; line-height: 29px; font-weight: 700; color: var(--pr-navy); }
.pr-side-row { display: flex; align-items: center; gap: 16px; padding: 12px 0; color: var(--pr-navy); font-size: 16px; line-height: 24px; font-weight: 500; text-decoration: none; direction: inherit; }
.pr-side-row + .pr-side-row { border-top: 1px solid var(--pr-line); }
a.pr-side-row:hover { color: var(--pr-navy); }
a.pr-side-row:hover span { text-decoration: underline; text-decoration-color: var(--pr-gold); text-underline-offset: 4px; }
.pr-side-row i { flex: 0 0 auto; width: 24px; font-size: 20px; line-height: 1; text-align: center; color: var(--pr-gold); }
[dir="rtl"] .pr-side-row .bi-arrow-right { transform: scaleX(-1); }
.pr-side-row .pr-go { margin-inline-start: auto; width: auto; font-size: 15px; }
.pr-side--tint { background: var(--pr-tint); box-shadow: none; border-inline-start: 4px solid var(--pr-gold); }
.pr-mapframe { display: block; width: 100%; height: 340px; border: 0; border-radius: 2px; box-shadow: var(--pr-shadow); }
.pr-addr { margin: 0 0 18px; font-size: 18px; line-height: 30px; color: var(--pr-text); }
/* iSAMS application widget (loaded from iSAMS, so styled by element, not by its own classes) */
.pr-isams { padding: 34px 38px 38px; background: #fff; border-top: 4px solid var(--pr-gold); border-radius: 2px; box-shadow: var(--pr-shadow); min-height: 320px; }
.pr-isams label, .pr-isams .isams-form--input-label { font-family: inherit; font-size: 16px !important; line-height: 24px; font-weight: 700; color: var(--pr-navy); }
.pr-isams input:not([type="checkbox"]):not([type="radio"]):not([type="file"]), .pr-isams select, .pr-isams textarea { max-width: 100%; min-height: 48px; padding: 10px 14px; border: 1px solid #CFD2E0; border-radius: 2px; font-family: inherit; font-size: 16px; color: var(--pr-ink); }
.pr-isams input:focus, .pr-isams select:focus, .pr-isams textarea:focus { outline: 0; border-color: var(--pr-navy); box-shadow: 0 0 0 3px rgb(227 168 31 / 45%); }
.pr-isams button, .pr-isams .isams-form__navigation-btn { min-height: 48px; padding: 0 28px; border: 0; border-radius: 2px; background: var(--pr-gold); color: var(--pr-navy); font-family: inherit; font-size: 16px !important; font-weight: 700; cursor: pointer; transition: background-color .25s; }
.pr-isams button:hover, .pr-isams .isams-form__navigation-btn:hover { background: #f0b82d; }
.pr-isams h1 { display: none; }
.pr-stepcards .pr-card { text-align: start; }
@media (max-width: 991px) { .pr-formsec { padding: 44px 0 56px; } }
@media (max-width: 576px) { .pr-formcard { padding: 26px 20px 24px; } .pr-fields { grid-template-columns: 1fr; gap: 16px; } .pr-submit { width: 100%; } .pr-ai, .pr-side { padding: 22px 20px; } .pr-isams { padding: 22px 16px 26px; } .pr-mapframe { height: 260px; } }

.pr-contact small { display: block; font-size: 14px; line-height: 20px; font-weight: 400; color: #6B7390; }
.pr-stepbox { display: flex; align-items: flex-start; gap: 18px; }
.pr-stepbox .pr-step-no { flex: 0 0 auto; margin: 0; }
.pr-stepbox p { margin: 0; font-size: 16px; line-height: 27px; color: var(--pr-text); }
.pr-stepbox a { color: var(--pr-navy); font-weight: 700; text-decoration: underline; text-decoration-color: var(--pr-gold); text-underline-offset: 4px; }
/* ====================================================================================================
   ROUND 6: curriculum pages (KS3, KS4, Primary, Secondary) share the Sixth Form look. The original markup stays; its
   classes are restyled under <main class="pr-skin pr-cur">.
   ==================================================================================================== */
.pr-cur > section.content-section { padding: 72px 0; }
.pr-cur > section.content-section:nth-of-type(even) { background: var(--pr-tint); }
.pr-cur .intro-card { padding: 0; background: none; border: 0; box-shadow: none; border-radius: 0; }
.pr-cur .intro-card > h5 { margin: 0 0 14px; font-size: 19px; line-height: 29px; font-weight: 700; color: var(--pr-navy); }
.pr-cur .intro-card p:first-of-type, .pr-cur .intro-card .lead { padding-inline-start: 22px; border-inline-start: 4px solid var(--pr-gold); font-weight: 500; color: var(--pr-navy); }
.pr-cur .badge, .pr-cur .qualification-badge, .pr-cur .keystage-years { display: inline-flex; align-items: center; width: auto; margin: 0 0 22px; padding: 5px 14px; border: 0; border-radius: 2px; background: var(--pr-gold); color: var(--pr-navy); font-size: 14px; line-height: 22px; font-weight: 700; }
.pr-cur .section-subtitle { max-width: 780px; margin: 0 auto 38px; text-align: center; font-size: 18px; line-height: 30px; color: var(--pr-text); opacity: 1; }
.pr-cur .text-center.mb-5 { margin-bottom: 0 !important; }
.pr-cur .text-center.mb-5 .cs__a_d_head { margin-bottom: 14px; }
.pr-cur p.lead { font-size: 18px; line-height: 30px; }
.pr-cur strong { color: var(--pr-navy); }
.pr-cur .intro-card img, .pr-cur .row > div > img { border-radius: 2px; box-shadow: var(--pr-shadow); }
/* card grids */
.pr-cur .core-subjects-grid, .pr-cur .feature-cards-grid, .pr-cur .beyond-classroom-grid, .pr-cur .keystage-cards-wrapper, .pr-cur .guidance-grid { display: grid; gap: 24px; }
.pr-cur .core-subjects-grid { grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.pr-cur .feature-cards-grid { grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); margin-top: 40px; }
.pr-cur .beyond-classroom-grid { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.pr-cur .keystage-cards-wrapper { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
.pr-cur .guidance-grid { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.pr-cur .core-subject-card, .pr-cur .feature-card, .pr-cur .beyond-card, .pr-cur .keystage-card, .pr-cur .guidance-item, .pr-cur .optional-subjects-card, .pr-cur .comparison-card, .pr-cur .info-card { position: relative; height: 100%; padding: 30px 26px 26px; background: #fff; border: 0; border-top: 3px solid transparent; border-radius: 2px; box-shadow: var(--pr-shadow); text-align: start; transition: transform .45s var(--pr-ease), box-shadow .45s var(--pr-ease), border-color .3s; }
.pr-cur .core-subject-card:hover, .pr-cur .feature-card:hover, .pr-cur .beyond-card:hover, .pr-cur .keystage-card:hover, .pr-cur .guidance-item:hover, .pr-cur .optional-subjects-card:hover, .pr-cur .comparison-card:hover, .pr-cur .info-card:hover { transform: translateY(-6px); box-shadow: var(--pr-shadow-up); border-top-color: var(--pr-gold); }
.pr-cur .info-card { height: auto; }
.pr-cur .core-subject-card h5, .pr-cur .feature-card h3, .pr-cur .feature-card h4, .pr-cur .beyond-card h4, .pr-cur .keystage-card h3, .pr-cur .keystage-card h4, .pr-cur .guidance-item h5, .pr-cur .optional-subjects-card h4, .pr-cur .comparison-card h3, .pr-cur .info-card h4 { margin: 0 0 10px; font-size: 19px; line-height: 29px; font-weight: 700; color: var(--pr-navy); text-align: start; }
.pr-cur .core-subject-card h5 i { margin-inline-end: 8px; color: var(--pr-gold); }
.pr-cur .core-subject-card p, .pr-cur .feature-card p, .pr-cur .beyond-card p, .pr-cur .keystage-card p, .pr-cur .guidance-item p, .pr-cur .comparison-card p, .pr-cur .info-card p { margin: 0 0 16px; font-size: 16px; line-height: 27px; color: var(--pr-text); text-align: start; }
.pr-cur .icon-wrapper, .pr-cur .icon-badge, .pr-cur .keystage-icon { display: flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 56px; height: 56px; margin: 0 0 18px; border-radius: 50%; background: rgb(227 168 31 / 14%); }
.pr-cur .icon-wrapper i, .pr-cur .icon-badge i, .pr-cur .keystage-icon i { margin: 0; font-size: 24px !important; line-height: 1; color: var(--pr-gold); }
.pr-cur .guidance-item > i { display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; margin-bottom: 18px; border-radius: 50%; background: rgb(227 168 31 / 14%); font-size: 24px; color: var(--pr-gold); }
.pr-cur .keystage-header { display: flex; align-items: center; gap: 16px; margin-bottom: 16px; }
.pr-cur .keystage-header .keystage-icon { margin: 0; }
.pr-cur .keystage-title-wrapper h3, .pr-cur .keystage-title-wrapper h4 { margin: 0 0 4px; }
.pr-cur .keystage-years { margin: 0; padding: 3px 10px; font-size: 13px; }
.pr-cur .keystage-card { display: flex; flex-direction: column; }
.pr-cur .keystage-highlights { list-style: none; margin: 0 0 20px; padding: 0; }
.pr-cur .keystage-highlights li { position: relative; padding: 5px 0; padding-inline-start: 30px; font-size: 16px; line-height: 26px; color: var(--pr-text); }
.pr-cur .keystage-highlights li::before { content: ''; position: absolute; top: 9px; inset-inline-start: 0; width: 18px; height: 18px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Ccircle cx='10' cy='10' r='10' fill='%23E3A81F'/%3E%3Cpath d='M5.5 10.5l3 3 6-6.5' fill='none' stroke='%23272555' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.pr-cur .btn-keystage, .pr-cur .btn-enroll { display: inline-flex; align-items: center; gap: 10px; margin-top: auto; padding: 11px 22px; border: 2px solid var(--pr-navy); border-radius: 2px; background: transparent; box-shadow: none !important; font-size: 15px; line-height: 22px; font-weight: 700; color: var(--pr-navy); text-decoration: none; transition: background-color .3s, color .3s; }
.pr-cur .btn-keystage:hover, .pr-cur .btn-enroll:hover { background: var(--pr-navy); color: #fff; }
.pr-cur .btn-keystage i, .pr-cur .btn-enroll i { color: var(--pr-gold); }
[dir="rtl"] .pr-cur .btn-keystage i { transform: scaleX(-1); }
.pr-cur .core-subject-card .badge { margin: 4px 0 0; }
.pr-cur .core-subject-card .subject-list-links, .pr-cur .subject-list-links { color: var(--pr-navy); font-weight: 700; text-decoration: underline; text-decoration-color: var(--pr-gold); text-underline-offset: 4px; }
/* subject chips (KS3) */
.pr-cur .subject-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 12px; }
.pr-cur .subject-item { display: flex; align-items: center; min-height: 56px; padding: 12px 18px; background: #fff; border: 0; border-inline-start: 4px solid var(--pr-gold); border-radius: 2px; box-shadow: var(--pr-shadow); transition: transform .3s var(--pr-ease), box-shadow .3s; }
.pr-cur .subject-item:hover { transform: translateY(-3px); box-shadow: var(--pr-shadow-up); }
.pr-cur .subject-item h4 { margin: 0; font-size: 17px; line-height: 26px; font-weight: 700; color: var(--pr-navy); text-align: start; }
/* optional subjects */
.pr-cur .optional-subjects-wrapper { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.pr-cur .optional-subjects-card h4 i { margin-inline-end: 10px; color: var(--pr-gold); }
.pr-cur .optional-subjects-card .qualification-badge { margin: 4px 0 18px; }
.pr-cur .optional-subjects-card.btec-card .qualification-badge { background: var(--pr-navy); color: #fff; }
.pr-cur .subject-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.pr-cur .subject-list li { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 0 14px; background: var(--pr-tint); border-radius: 2px; transition: background-color .3s; }
.pr-cur .subject-list li a { flex: 1; padding: 11px 0; font-size: 16px; line-height: 24px; font-weight: 500; color: var(--pr-navy); text-decoration: none; }
.pr-cur .subject-list li i { color: var(--pr-gold); font-size: 13px; }
[dir="rtl"] .pr-cur .subject-list li i { transform: scaleX(-1); }
.pr-cur .subject-list li:hover { background: var(--pr-navy); }
.pr-cur .subject-list li:hover a { color: #fff; }
/* comparison */
.pr-cur .comparison-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.pr-cur .comparison-card-header p { margin: 0 0 16px; font-size: 14px; line-height: 22px; font-weight: 500; color: #6B7390; }
.pr-cur .comparison-features { list-style: none; margin: 0; padding: 0; }
.pr-cur .comparison-features li { display: flex; align-items: flex-start; gap: 12px; padding: 7px 0; font-size: 16px; line-height: 26px; color: var(--pr-text); }
.pr-cur .comparison-features li i { flex: 0 0 auto; margin-top: 3px; color: var(--pr-gold); font-size: 18px; }
/* callouts (info boxes) */
.pr-cur .info-box { display: block; margin-top: 32px; padding: 26px 28px; background: #fff; border: 0; border-inline-start: 4px solid var(--pr-gold); border-radius: 2px; box-shadow: var(--pr-shadow); }
.pr-cur .info-box.my-5, .pr-cur .info-box.mt-5 { margin-top: 32px !important; margin-bottom: 0 !important; }
.pr-cur .info-box h5 { margin: 0 0 8px; font-size: 19px; line-height: 29px; font-weight: 700; color: var(--pr-navy); }
.pr-cur .info-box h5 i { margin-inline-end: 10px; color: var(--pr-gold); }
.pr-cur .info-box p { margin: 0; font-size: 16px; line-height: 27px; color: var(--pr-text); }
.pr-cur .info-box ul { margin: 10px 0 0; padding-inline-start: 20px; }
/* spiral band (KS3) */
.pr-cur .spiral-section { padding: 44px 40px; background: var(--pr-navy); border-radius: 2px; box-shadow: var(--pr-shadow); }
.pr-cur .spiral-section .cs__a_d_head { color: #fff; }
.pr-cur .spiral-section p { color: rgb(255 255 255 / 85%); opacity: 1; font-size: 18px; line-height: 30px; }
.pr-cur .spiral-section strong { color: var(--pr-gold); }
.pr-cur .spiral-list { list-style: none; max-width: none; margin: 22px 0; padding: 0; text-align: start; }
.pr-cur .spiral-list li { position: relative; padding: 7px 0; padding-inline-start: 36px; font-size: 17px; line-height: 28px; color: #fff; }
.pr-cur .spiral-list li::before { content: ''; position: absolute; top: 12px; inset-inline-start: 0; width: 20px; height: 20px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Ccircle cx='10' cy='10' r='10' fill='%23E3A81F'/%3E%3Cpath d='M5.5 10.5l3 3 6-6.5' fill='none' stroke='%23272555' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
/* buttons + closing band */
.pr-cur .btn-cta-primary, .pr-cur .btn-cta-secondary { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 52px; margin: 14px 12px 0 0; padding: 0 28px; border: 2px solid transparent; border-radius: 2px; font-size: 16px; line-height: 1; font-weight: 700; text-decoration: none; cursor: pointer; transition: transform .3s var(--pr-ease), background-color .3s, color .3s; }
[dir="rtl"] .pr-cur .btn-cta-primary, [dir="rtl"] .pr-cur .btn-cta-secondary { margin: 14px 0 0 12px; }
.pr-cur .btn-cta-primary { background: var(--pr-gold); color: var(--pr-navy); box-shadow: 0 8px 22px rgb(227 168 31 / 35%); }
.pr-cur .btn-cta-primary:hover { background: #f0b82d; color: var(--pr-navy); transform: translateY(-3px); }
.pr-cur .btn-cta-secondary { color: #fff; border-color: rgb(255 255 255 / 70%); background: transparent; }
.pr-cur .btn-cta-secondary:hover { background: #fff; color: var(--pr-navy); transform: translateY(-3px); }
.pr-cur .cta-section { position: relative; overflow: hidden; padding: 76px 0; text-align: center; background: var(--pr-navy); }
.pr-cur .cta-section::before, .pr-cur .cta-section::after { content: ''; position: absolute; border-radius: 50%; border: 2px solid rgb(227 168 31 / 28%); pointer-events: none; background: none; opacity: 1; }
.pr-cur .cta-section::before { width: 340px; height: 340px; inset-inline-start: -110px; top: -130px; }
.pr-cur .cta-section::after { width: 220px; height: 220px; inset-inline-end: -50px; bottom: -90px; left: auto; right: auto; }
.pr-cur .cta-content { position: relative; z-index: 1; }
.pr-cur .cta-section .cs__a_d_head { color: #fff; }
.pr-cur .cta-section p, .pr-cur .cta-section p.lead { max-width: 700px; margin: 0 auto 8px; color: rgb(255 255 255 / 88%); font-size: 18px; line-height: 30px; }
.pr-cur .cta-buttons { display: flex; flex-wrap: wrap; justify-content: center; gap: 0 4px; margin-top: 10px; }
/* the old fullscreen video / presentation pop-ups on KS4 */
.pr-cur .core-subject-card .badge + div { margin-top: 6px; }
.pr-skin.pr-cur .stats-box { display: none; }
@media (max-width: 991px) { .pr-cur .optional-subjects-wrapper, .pr-cur .comparison-cards { grid-template-columns: 1fr; } .pr-cur > section.content-section { padding: 52px 0; } }
@media (max-width: 576px) { .pr-cur .subject-list { grid-template-columns: 1fr; } .pr-cur .spiral-section { padding: 30px 20px; } .pr-cur .info-box { padding: 22px; } .pr-cur > section.content-section { padding: 40px 0; } }

.pr-skin.pr-cur .section-subtitle { max-width: 780px; margin: 0 auto 38px; text-align: center; font-size: 18px; line-height: 30px; }
.pr-skin.pr-cur .intro-card p, .pr-skin.pr-cur .info-card p { font-size: 18px; line-height: 32px; }
.pr-skin.pr-cur .info-card p { font-size: 16px; line-height: 27px; }
.pr-cur .beyond-card ul, .pr-cur .info-card ul { list-style: none; margin: 0; padding: 0; }
.pr-cur .beyond-card li, .pr-cur .info-card li { position: relative; padding: 5px 0; padding-inline-start: 30px; font-size: 16px; line-height: 26px; color: var(--pr-text); }
.pr-cur .beyond-card li::before, .pr-cur .info-card li::before { content: ''; position: absolute; top: 9px; inset-inline-start: 0; width: 18px; height: 18px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Ccircle cx='10' cy='10' r='10' fill='%23E3A81F'/%3E%3Cpath d='M5.5 10.5l3 3 6-6.5' fill='none' stroke='%23272555' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.pr-cur .subject-item { gap: 12px; }
.pr-cur .subject-item i { flex: 0 0 auto; font-size: 20px; line-height: 1; color: var(--pr-gold); }
.pr-cur .row > div > img[src*="Threads"], .pr-cur img[src*="Threads"] { border-radius: 0; box-shadow: none; background: none; }
/* KS4 core subjects */
.pr-core { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.pr-core-item { position: relative; display: flex; align-items: flex-start; gap: 20px; padding: 26px 28px; background: #fff; border-inline-start: 4px solid transparent; border-radius: 2px; box-shadow: var(--pr-shadow); color: var(--pr-text); text-decoration: none; transition: transform .35s var(--pr-ease), box-shadow .35s var(--pr-ease), border-color .3s; }
a.pr-core-item:hover { transform: translateY(-4px); box-shadow: var(--pr-shadow-up); border-inline-start-color: var(--pr-gold); color: var(--pr-text); }
.pr-core-item .pr-icon { flex: 0 0 auto; width: 56px; height: 56px; margin: 0; }
.pr-core-item .pr-icon i { font-size: 24px; }
.pr-core-body { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; min-width: 0; }
.pr-core-body strong { font-size: 19px; line-height: 29px; font-weight: 700; color: var(--pr-navy); }
.pr-core-body > span { font-size: 16px; line-height: 27px; color: var(--pr-text); }
.pr-core-body em { display: inline-flex; align-items: center; gap: 8px; margin-top: 4px; font-style: normal; font-size: 15px; line-height: 22px; font-weight: 700; color: var(--pr-navy); }
.pr-core-body em i { color: var(--pr-gold); transition: transform .3s var(--pr-ease); }
a.pr-core-item:hover .pr-core-body em i { transform: translateX(5px); }
[dir="rtl"] .pr-core-body em i { transform: scaleX(-1); }
[dir="rtl"] a.pr-core-item:hover .pr-core-body em i { transform: scaleX(-1) translateX(5px); }
.pr-core-tag { display: inline-flex; margin-top: 2px; padding: 3px 12px; border-radius: 2px; background: var(--pr-tint); font-size: 13px; line-height: 22px; font-weight: 700; color: var(--pr-navy); }
.pr-core-links { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 6px; }
.pr-core-links a { display: inline-flex; align-items: center; gap: 8px; padding: 8px 16px; border: 2px solid var(--pr-navy); border-radius: 2px; font-size: 15px; line-height: 22px; font-weight: 700; color: var(--pr-navy); text-decoration: none; transition: background-color .3s, color .3s; }
.pr-core-links a:hover { background: var(--pr-navy); color: #fff; }
.pr-core-links a i { color: var(--pr-gold); font-size: 12px; }
[dir="rtl"] .pr-core-links a i { transform: scaleX(-1); }
@media (max-width: 767px) { .pr-core { grid-template-columns: 1fr; } .pr-core-item { padding: 22px 20px; gap: 16px; } }
/* KS4 core subjects as labels: linked chips are real links, the note is a desktop-only bonus */
.pr-chips-core { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.pr-chip { position: relative; }
.pr-chip-btn { display: flex; align-items: center; gap: 12px; width: 100%; min-height: 68px; padding: 10px 16px; border: 0; border-bottom: 3px solid transparent; border-radius: 2px; background: #fff; box-shadow: var(--pr-shadow); font-family: inherit; text-align: start; text-decoration: none; color: var(--pr-navy); cursor: pointer; transition: transform .3s var(--pr-ease), box-shadow .3s, border-color .3s; }
.pr-chip-btn--static { cursor: default; flex-wrap: wrap; }
a.pr-chip-btn:hover, .pr-chip--menu .pr-chip-btn:hover, .pr-chip--menu.is-open .pr-chip-btn, .pr-chip-btn--static:hover { transform: translateY(-3px); box-shadow: var(--pr-shadow-up); border-bottom-color: var(--pr-gold); color: var(--pr-navy); }
.pr-chip-btn:focus-visible { outline: 3px solid var(--pr-gold); outline-offset: 2px; }
.pr-chip-ic { display: flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 40px; height: 40px; border-radius: 50%; background: rgb(227 168 31 / 14%); }
.pr-chip-ic i { font-size: 19px; line-height: 1; color: var(--pr-gold); }
.pr-chip-name { flex: 1; font-size: 16px; line-height: 22px; font-weight: 700; color: var(--pr-navy); }
.pr-chip-go { flex: 0 0 auto; font-size: 14px; color: var(--pr-gold); transition: transform .3s var(--pr-ease); }
a.pr-chip-btn:hover .pr-chip-go { transform: translateX(4px); }
[dir="rtl"] .pr-chip-go.bi-arrow-right { transform: scaleX(-1); }
[dir="rtl"] a.pr-chip-btn:hover .pr-chip-go.bi-arrow-right { transform: scaleX(-1) translateX(4px); }
.pr-chip--menu.is-open .pr-chip-go { transform: rotate(180deg); }
.pr-chip-tag { margin: 0; padding: 2px 10px; font-size: 12px; }
.pr-chip-pop { position: absolute; z-index: 30; top: calc(100% + 12px); inset-inline-start: 0; width: 300px; max-width: calc(100vw - 32px); padding: 16px 18px; background: var(--pr-navy); border-radius: 2px; box-shadow: var(--pr-shadow-up); opacity: 0; visibility: hidden; transform: translateY(6px); transition: opacity .25s, transform .25s var(--pr-ease), visibility .25s; pointer-events: none; }
.pr-chip-pop::after { content: ''; position: absolute; top: -16px; inset-inline: 0; height: 16px; }
.pr-chip-pop::before { content: ''; position: absolute; top: -6px; inset-inline-start: 28px; width: 12px; height: 12px; background: var(--pr-navy); transform: rotate(45deg); }
.pr-skin .pr-chip-pop p { margin: 0; font-size: 15px; line-height: 24px; color: rgb(255 255 255 / 92%); text-align: start; }
.pr-chip--menu .pr-chip-pop p { margin-bottom: 12px; }
.pr-chip--menu.is-open .pr-chip-pop { opacity: 1; visibility: visible; transform: none; pointer-events: auto; }
.pr-chip-pop .pr-core-tag { margin-top: 12px; background: rgb(255 255 255 / 14%); color: #fff; }
.pr-chip-pop .pr-core-links { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
.pr-chip-pop .pr-core-links a { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border: 2px solid rgb(255 255 255 / 70%); border-radius: 2px; font-size: 14px; line-height: 22px; font-weight: 700; color: #fff; text-decoration: none; transition: background-color .3s, color .3s; }
.pr-chip-pop .pr-core-links a:hover { background: #fff; color: var(--pr-navy); }
.pr-chip-pop .pr-core-links a i { color: var(--pr-gold); font-size: 12px; }
[dir="rtl"] .pr-chip-pop .pr-core-links a i { transform: scaleX(-1); }
.pr-chip:nth-child(4n) .pr-chip-pop { inset-inline-start: auto; inset-inline-end: 0; }
.pr-chip:nth-child(4n) .pr-chip-pop::before { inset-inline-start: auto; inset-inline-end: 28px; }
/* mouse users get the note on hover/focus; touch devices skip it (the chip is just a link) but screen readers still read it */
@media (hover: hover) { a.pr-chip-btn:hover + .pr-chip-pop, a.pr-chip-btn:focus-visible + .pr-chip-pop, .pr-chip-btn--static:hover + .pr-chip-pop, .pr-chip-btn--static:focus + .pr-chip-pop { opacity: 1; visibility: visible; transform: none; } }
@media (hover: none) { .pr-chip:not(.pr-chip--menu) .pr-chip-pop { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); border: 0; opacity: 1; visibility: visible; } .pr-chip:not(.pr-chip--menu) .pr-chip-pop::before { display: none; } }
@media (max-width: 991px) { .pr-chips-core { grid-template-columns: repeat(2, 1fr); } .pr-chip:nth-child(4n) .pr-chip-pop { inset-inline-start: 0; inset-inline-end: auto; } .pr-chip:nth-child(4n) .pr-chip-pop::before { inset-inline-start: 28px; inset-inline-end: auto; } .pr-chip:nth-child(2n) .pr-chip-pop { inset-inline-start: auto; inset-inline-end: 0; } .pr-chip:nth-child(2n) .pr-chip-pop::before { inset-inline-start: auto; inset-inline-end: 28px; } }
@media (max-width: 420px) { .pr-chip-btn { padding: 8px 12px; gap: 8px; min-height: 64px; } .pr-chip-ic { width: 34px; height: 34px; } .pr-chip-name { font-size: 15px; } .pr-chip-pop { width: calc(100vw - 32px); } }
/* ROUND 7: small-screen fixes */
.pr-chip-btn { height: 100%; }
.pr-chip-name { display: flex; flex-direction: column; align-items: flex-start; gap: 3px; }
.pr-chip-name .pr-chip-tag { display: inline-flex; margin: 0; }
.pr-chip-btn--static { flex-wrap: nowrap; }
@media (max-width: 991px) {
    .pr-cur .guidance-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
    .pr-cur .guidance-item { padding: 20px 16px 18px; }
    .pr-cur .guidance-item > i { width: 46px; height: 46px; margin-bottom: 12px; font-size: 21px; }
    .pr-cur .guidance-item h5 { margin-bottom: 6px; font-size: 17px; line-height: 25px; }
    .pr-cur .guidance-item p { margin: 0; font-size: 15px; line-height: 24px; }
}
@media (max-width: 576px) {
    .pr-banner .breadcrubs-wrpr { display: flex; flex-wrap: wrap; justify-content: center; width: fit-content; max-width: calc(100% - 32px); margin: 20px auto 0; padding: 6px 14px; box-sizing: border-box; text-align: center; }
    .pr-banner .breadcrubs-wrpr a, .pr-banner .breadcrubs-wrpr span { font-size: 14px; line-height: 24px; }
    .pr-banner .breadcrubs-wrpr .cs__breadCrumbLine { margin: 0 6px; }
}
/* ROUND 8: subject pages (KS4 / KS5), compact two-column layout */
.pr-subj-badges { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 18px; }
.pr-subj-badges span { padding: 4px 14px; border-radius: 2px; background: rgb(255 255 255 / 14%); color: #fff; font-size: 14px; line-height: 22px; font-weight: 700; backdrop-filter: blur(6px); }
.pr-subj-badges span.is-core { background: var(--pr-gold); color: var(--pr-navy); }
.pr-subj-body { padding: 40px 0 48px; background: var(--pr-tint); overflow-x: clip; }
.pr-subj-grid { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 24px; align-items: start; }
.pr-ss { margin: 0 0 16px; padding: 22px 26px 20px; background: #fff; border-radius: 2px; box-shadow: var(--pr-shadow); scroll-margin-top: 108px; }
.pr-ss-h { display: flex; align-items: center; gap: 12px; margin: 0 0 14px; padding: 0; font-size: 21px; line-height: 30px; font-weight: 700; color: var(--pr-navy); }
.pr-ss-h span { display: flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 36px; height: 36px; border-radius: 50%; background: rgb(227 168 31 / 14%); }
.pr-ss-h i { font-size: 17px; line-height: 1; color: var(--pr-gold); }
.pr-rich { font-size: 16px; line-height: 27px; color: var(--pr-text); overflow-wrap: anywhere; }
.pr-rich > :first-child { margin-top: 0; }
.pr-rich > :last-child { margin-bottom: 0; }
.pr-rich p { margin: 0 0 12px; font-size: 16px; line-height: 27px; color: var(--pr-text); }
.pr-rich h1, .pr-rich h2, .pr-rich h3, .pr-rich h4, .pr-rich h5 { margin: 18px 0 8px; font-size: 17px; line-height: 26px; font-weight: 700; color: var(--pr-navy); }
.pr-rich strong, .pr-rich b { font-weight: 700; color: var(--pr-ink); }
.pr-rich ul, .pr-rich ol { margin: 8px 0 12px; padding: 0; list-style: none; }
.pr-rich li { position: relative; margin: 0 0 6px; padding-inline-start: 26px; font-size: 16px; line-height: 26px; }
.pr-rich ul li::before { content: '\f26b'; position: absolute; inset-inline-start: 0; top: 0; font-family: 'bootstrap-icons'; font-size: 15px; color: var(--pr-gold); }
.pr-rich ol { counter-reset: prs; }
.pr-rich ol li { counter-increment: prs; }
.pr-rich ol li::before { content: counter(prs); position: absolute; inset-inline-start: 0; top: 3px; display: flex; align-items: center; justify-content: center; width: 20px; height: 20px; border-radius: 50%; background: var(--pr-gold); color: var(--pr-navy); font-size: 12px; line-height: 1; font-weight: 700; }
.pr-rich table { display: block; width: 100%; max-width: 100%; overflow-x: auto; margin: 12px 0; border-collapse: collapse; }
.pr-rich th, .pr-rich td { padding: 9px 12px; border: 1px solid var(--pr-line); font-size: 15px; line-height: 23px; text-align: start; }
.pr-rich th { background: var(--pr-navy); color: #fff; font-weight: 700; }
.pr-rich a { color: var(--pr-navy); font-weight: 700; text-decoration: underline; text-decoration-color: var(--pr-gold); }
.pr-subj-side { position: sticky; top: 108px; display: grid; gap: 14px; }
.pr-subj-facts { padding: 6px 22px; background: var(--pr-navy); border-radius: 2px; box-shadow: var(--pr-shadow); }
.pr-subj-facts dl { margin: 0; }
.pr-subj-facts dl > div { padding: 13px 0; }
.pr-subj-facts dl > div + div { border-top: 1px solid rgb(255 255 255 / 14%); }
.pr-subj-facts dt { margin: 0 0 2px; font-size: 13px; line-height: 20px; font-weight: 500; color: var(--pr-gold); text-transform: uppercase; letter-spacing: .04em; }
.pr-subj-facts dd { margin: 0; font-size: 16px; line-height: 24px; font-weight: 700; color: #fff; }
.pr-subj-lead { display: flex; align-items: center; gap: 14px; padding: 16px 20px; background: #fff; border-radius: 2px; border-inline-start: 3px solid var(--pr-gold); box-shadow: var(--pr-shadow); }
.pr-subj-lead > i { font-size: 26px; line-height: 1; color: var(--pr-gold); }
.pr-subj-lead small { display: block; font-size: 13px; line-height: 20px; color: var(--pr-text); }
.pr-subj-lead strong { display: block; font-size: 16px; line-height: 24px; font-weight: 700; color: var(--pr-navy); }
.pr-subj-nav { display: flex; flex-direction: column; padding: 8px 0; background: #fff; border-radius: 2px; box-shadow: var(--pr-shadow); }
.pr-subj-nav a { padding: 9px 20px; border-inline-start: 3px solid transparent; font-size: 15px; line-height: 22px; font-weight: 500; color: var(--pr-text); text-decoration: none; transition: color .2s, background-color .2s, border-color .2s; }
.pr-subj-nav a:hover { color: var(--pr-navy); background: var(--pr-tint); border-inline-start-color: var(--pr-gold); }
.pr-subj-related { padding: 44px 0 52px; }
.pr-subj-related .pr-h2 { margin-bottom: 22px; }
.pr-rel { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 14px; }
.pr-rel-card { position: relative; display: flex; flex-direction: column; gap: 4px; padding: 16px 44px 16px 18px; background: #fff; border-bottom: 3px solid transparent; border-radius: 2px; box-shadow: var(--pr-shadow); text-decoration: none; transition: transform .3s var(--pr-ease), box-shadow .3s, border-color .3s; }
.pr-rel-card:hover { transform: translateY(-3px); box-shadow: var(--pr-shadow-up); border-bottom-color: var(--pr-gold); }
.pr-rel-card strong { font-size: 16px; line-height: 24px; font-weight: 700; color: var(--pr-navy); }
.pr-rel-card span { font-size: 14px; line-height: 21px; color: var(--pr-text); }
.pr-rel-card i { position: absolute; inset-inline-end: 16px; top: 50%; margin-top: -8px; color: var(--pr-gold); }
[dir="rtl"] .pr-rel-card { padding: 16px 18px 16px 44px; }
[dir="rtl"] .pr-rel-card i { transform: scaleX(-1); }
.pr-cta--slim { padding: 48px 0; }
.pr-cta--slim h2 { margin-bottom: 14px; }
@media (max-width: 991px) { .pr-subj-grid { grid-template-columns: 1fr; } .pr-subj-side { position: static; order: -1; } .pr-subj-nav { display: none; } .pr-subj-body { padding-top: 28px; } }
@media (max-width: 576px) { .pr-ss { padding: 18px 16px 16px; } .pr-ss-h { font-size: 19px; } }
/* ROUND 8: MC 4.0 course plan + kits */
.pr-plan { margin-top: 32px; background: #fff; border-radius: 2px; box-shadow: var(--pr-shadow); overflow: hidden; }
.pr-plan-levels { display: grid; grid-template-columns: repeat(3, 1fr); background: var(--pr-navy); }
.pr-plan-level { position: relative; padding: 24px 26px 22px; text-align: start; }
.pr-plan-level + .pr-plan-level { border-inline-start: 1px solid rgb(255 255 255 / 14%); }
.pr-plan-step { position: absolute; inset-inline-end: 22px; top: 18px; font-size: 38px; line-height: 1; font-weight: 700; color: rgb(227 168 31 / 35%); }
.pr-plan-level h3 { margin: 0 0 8px; font-size: 19px; line-height: 28px; font-weight: 700; color: #fff; }
.pr-plan-level b { display: inline-block; margin-bottom: 10px; padding: 2px 12px; border-radius: 2px; background: var(--pr-gold); color: var(--pr-navy); font-size: 13px; line-height: 22px; font-weight: 700; }
.pr-plan-level p { margin: 0; display: flex; align-items: center; gap: 8px; font-size: 15px; line-height: 24px; color: rgb(255 255 255 / 88%); }
.pr-plan-level p i { color: var(--pr-gold); }
.pr-plan-info { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; }
.pr-plan-info > div { padding: 24px 26px; }
.pr-plan-info > div + div { border-inline-start: 1px solid var(--pr-line); }
.pr-plan-info h3 { display: flex; align-items: center; gap: 10px; margin: 0 0 12px; font-size: 18px; line-height: 28px; font-weight: 700; color: var(--pr-navy); }
.pr-plan-info h3 i { color: var(--pr-gold); font-size: 20px; }
.pr-plan-foot { display: flex; justify-content: center; padding: 20px; border-top: 1px solid var(--pr-line); background: var(--pr-tint); }
.pr-sub--start { margin-inline: 0; text-align: start; max-width: none; }
.pr-kits { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 40px; background: #fff; border-radius: 2px; box-shadow: var(--pr-shadow); }
.pr-kits > div { padding: 24px 26px; }
.pr-kits > div + div { border-inline-start: 1px solid var(--pr-line); }
.pr-kits .pr-icon { width: 46px; height: 46px; margin: 0 0 12px; }
.pr-kits h3 { margin: 0 0 8px; font-size: 18px; line-height: 28px; font-weight: 700; color: var(--pr-navy); text-align: start; }
.pr-kits p { margin: 0; font-size: 15px; line-height: 25px; color: var(--pr-text); text-align: start; }
@media (max-width: 991px) {
  .pr-plan-levels, .pr-plan-info, .pr-kits { grid-template-columns: 1fr; }
  .pr-plan-level + .pr-plan-level { border-inline-start: 0; border-top: 1px solid rgb(255 255 255 / 14%); }
  .pr-plan-info > div + div, .pr-kits > div + div { border-inline-start: 0; border-top: 1px solid var(--pr-line); }
  .pr-plan-level { padding: 18px 20px; }
  .pr-plan-info > div, .pr-kits > div { padding: 20px; }
}
/* ROUND 8: Early Years learning areas + image figure panel */
.pr-areas { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin: 0; padding: 0; list-style: none; }
.pr-areas li { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 16px 16px 14px; background: #fff; border-bottom: 3px solid var(--pr-gold); border-radius: 2px; box-shadow: var(--pr-shadow); font-size: 16px; line-height: 24px; font-weight: 700; color: var(--pr-navy); }
.pr-areas li span { display: flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 50%; background: rgb(227 168 31 / 14%); }
.pr-areas li i { font-size: 18px; line-height: 1; color: var(--pr-gold); }
@media (max-width: 767px) { .pr-areas { grid-template-columns: repeat(2, 1fr); } }
.pr-skin .pr-figure-panel, .pr-figure-panel { padding: 22px; background: var(--pr-tint); border-radius: 2px; border-bottom: 3px solid var(--pr-gold); }
.pr-skin .pr-figure-panel img, .pr-figure-panel img { display: block; width: 100%; height: auto; border-radius: 0; box-shadow: none; }
/* ROUND 8: e-learning resource cards, the whole card is the link */
.pr-res .subpage-card { position: relative; border-bottom: 3px solid transparent; }
.pr-res .subpage-card:hover { transform: translateY(-4px); border-top-color: transparent; border-bottom-color: var(--pr-gold); }
.pr-res .subpage-card .card-body { display: flex; flex-direction: column; height: 100%; padding: 26px 26px 0; }
.pr-res .subpage-card .card-text { flex: 1 1 auto; }
.pr-res .btn-learn-more { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: calc(100% + 52px); margin: 0 -26px; padding: 14px 26px; border-top: 1px solid var(--pr-line); background: var(--pr-tint); font-size: 15px; transition: background-color .3s, color .3s; }
.pr-res .btn-learn-more::after { content: ''; position: absolute; inset: 0; }
.pr-res .btn-learn-more i { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 30px; height: 30px; margin: 0 !important; border-radius: 50%; background: var(--pr-gold); color: var(--pr-navy); font-size: 14px; transition: transform .3s var(--pr-ease); }
.pr-res .subpage-card:hover .btn-learn-more { background: var(--pr-navy); color: #fff; gap: 12px; }
.pr-res .subpage-card:hover .btn-learn-more i { transform: translateX(4px); }
[dir="rtl"] .pr-res .btn-learn-more i.bi-arrow-right { transform: scaleX(-1); }
[dir="rtl"] .pr-res .subpage-card:hover .btn-learn-more i.bi-arrow-right { transform: scaleX(-1) translateX(4px); }
.pr-res .btn-learn-more:focus-visible { outline: 3px solid var(--pr-gold); outline-offset: -3px; }
/* ROUND 9: Parent Corner pages (document lists, videos) */
.pr-pc-intro { padding: 56px 0 52px; }
.pr-pc-list { padding: 44px 0 64px; }
.pr-pc-sub { margin: 0 0 20px; font-size: 20px; line-height: 30px; font-weight: 700; color: var(--pr-navy); }
.pr-docs-bar { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 18px; }
.pr-docs-search { position: relative; display: block; flex: 1 1 auto; max-width: 420px; margin: 0; }
.pr-docs-search i { position: absolute; inset-inline-start: 14px; top: 14px; margin: 0; font-size: 18px; line-height: 20px; color: var(--pr-gold); pointer-events: none; }
.pr-docs-search input { width: 100%; height: 48px; padding: 0 16px; padding-inline-start: 42px; border: 1px solid var(--pr-line); border-radius: 2px; background: #fff; font-size: 16px; color: var(--pr-ink); box-shadow: var(--pr-shadow); }
.pr-docs-search input:focus { outline: 3px solid var(--pr-gold); outline-offset: 0; border-color: var(--pr-gold); }
.pr-docs-count { flex: 0 0 auto; font-size: 14px; line-height: 22px; color: var(--pr-text); }
.pr-docs-list { margin: 0; padding: 0; list-style: none; display: grid; gap: 12px; }
.pr-doc { position: relative; display: flex; align-items: center; gap: 20px; padding: 16px 20px; background: #fff; border-inline-start: 4px solid transparent; border-radius: 2px; box-shadow: var(--pr-shadow); transition: transform .3s var(--pr-ease), box-shadow .3s, border-color .3s; }
.pr-doc:hover { transform: translateY(-2px); box-shadow: var(--pr-shadow-up); border-inline-start-color: var(--pr-gold); }
.pr-doc[hidden] { display: none; }
.pr-doc-date { display: flex; flex-direction: column; align-items: center; justify-content: center; flex: 0 0 auto; width: 72px; height: 72px; border-radius: 2px; background: var(--pr-navy); color: #fff; text-align: center; }
.pr-doc-date b { font-size: 26px; line-height: 28px; font-weight: 700; }
.pr-doc-date span { font-size: 12px; line-height: 18px; font-weight: 500; color: var(--pr-gold); text-transform: uppercase; letter-spacing: .04em; }
.pr-doc-date--icon i { font-size: 28px; color: var(--pr-gold); }
.pr-doc-main { flex: 1 1 auto; min-width: 0; }
.pr-doc-title { display: block; font-size: 18px; line-height: 27px; font-weight: 700; color: var(--pr-navy); text-decoration: none; overflow-wrap: anywhere; }
a.pr-doc-title:hover { color: var(--pr-navy); text-decoration: underline; text-decoration-color: var(--pr-gold); text-underline-offset: 4px; }
.pr-doc-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; margin-top: 6px; }
.pr-doc-when { font-size: 14px; line-height: 22px; color: var(--pr-text); }
.pr-doc-tag { padding: 1px 10px; border-radius: 2px; background: var(--pr-tint); font-size: 13px; line-height: 22px; font-weight: 700; color: var(--pr-navy); }
.pr-doc-chip { display: inline-flex; align-items: center; gap: 6px; padding: 1px 10px; border: 1px solid var(--pr-line); border-radius: 2px; font-size: 13px; line-height: 22px; font-weight: 700; color: var(--pr-navy); text-decoration: none; transition: background-color .2s, border-color .2s; }
.pr-doc-chip i { color: var(--pr-gold); }
.pr-doc-chip:hover { background: var(--pr-tint); border-color: var(--pr-gold); color: var(--pr-navy); }
.pr-doc-go { display: flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 44px; height: 44px; border-radius: 50%; background: var(--pr-gold); color: var(--pr-navy); text-decoration: none; transition: background-color .3s, color .3s, transform .3s var(--pr-ease); }
.pr-doc-go:hover { background: var(--pr-navy); color: #fff; transform: scale(1.06); }
.pr-doc-go:focus-visible, .pr-doc-title:focus-visible, .pr-doc-chip:focus-visible { outline: 3px solid var(--pr-gold); outline-offset: 2px; }
.pr-docs-empty { margin: 20px 0 0; padding: 20px; background: #fff; border-radius: 2px; box-shadow: var(--pr-shadow); text-align: center; color: var(--pr-text); }
.pr-docs-more-wrap { display: flex; justify-content: center; margin-top: 22px; }
.pr-docs-more[hidden], .pr-docs-empty[hidden] { display: none; }
.pr-vcard { display: flex; flex-direction: column; gap: 14px; height: 100%; min-height: 210px; padding: 22px; background: var(--pr-navy); border-bottom: 3px solid transparent; border-radius: 2px; box-shadow: var(--pr-shadow); text-decoration: none; transition: transform .35s var(--pr-ease), box-shadow .35s, border-color .3s; }
.pr-vcard:hover { transform: translateY(-5px); box-shadow: var(--pr-shadow-up); border-bottom-color: var(--pr-gold); }
.pr-vcard-play { display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 50%; background: var(--pr-gold); color: var(--pr-navy); }
.pr-vcard-play i { font-size: 26px; line-height: 1; }
.pr-vcard-title { flex: 1 1 auto; font-size: 18px; line-height: 26px; font-weight: 700; color: #fff; }
.pr-vcard-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-top: 12px; border-top: 1px solid rgb(255 255 255 / 16%); font-size: 14px; line-height: 22px; color: rgb(255 255 255 / 85%); }
.pr-vcard-foot i { color: var(--pr-gold); }
.pr-vcard-foot b { font-weight: 700; color: var(--pr-gold); }
@media (max-width: 575px) {
  .pr-docs-bar { flex-direction: column; align-items: stretch; gap: 8px; }
  .pr-docs-search { max-width: none; }
  .pr-doc { gap: 14px; padding: 14px; }
  .pr-doc-date { width: 58px; height: 58px; }
  .pr-doc-date b { font-size: 22px; line-height: 24px; }
  .pr-doc-title { font-size: 16px; line-height: 24px; }
  .pr-doc-go { width: 40px; height: 40px; }
  .pr-pc-intro { padding-top: 40px; }
}
[dir="rtl"] .pr-doc-go i.bi-arrow-right, [dir="rtl"] .pr-vcard-foot .bi-box-arrow-up-right { transform: scaleX(-1); }
/* ROUND 9: feedback star rating */
.pr-stars { position: relative; display: flex; gap: 6px; margin-top: 2px; }
.pr-stars .rating__star { cursor: pointer; font-size: 36px; line-height: 1; color: var(--pr-gold) !important; transition: transform .2s var(--pr-ease); }
.pr-stars .rating__star:hover { transform: scale(1.15); }
.pr-stars-input { position: absolute; inset-inline-start: 0; bottom: 0; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.pr-stars-msg { min-height: 24px; margin-top: 8px; font-size: 15px; line-height: 24px; font-weight: 500; color: var(--pr-text); }
@media (max-width: 575px) { .pr-stars .rating__star { font-size: 40px; } .pr-stars { gap: 8px; } }
.pr-pc .pr-news-img img { aspect-ratio: 4 / 3; }
/* ROUND 9: career job detail */
.pr-job-meta { display: flex; flex-wrap: wrap; gap: 8px 18px; margin: 0 0 22px; padding-bottom: 18px; border-bottom: 1px solid var(--pr-line); }
.pr-job-meta span { display: inline-flex; align-items: center; gap: 8px; font-size: 15px; line-height: 24px; color: var(--pr-text); }
.pr-job-meta i { font-size: 18px; color: var(--pr-gold); }
.pr-job-meta .is-deadline { font-weight: 700; color: var(--pr-navy); }
.pr-job-apply { padding: 24px; background: var(--pr-navy); border-radius: 2px; box-shadow: var(--pr-shadow); }
.pr-job-apply h3 { margin: 0 0 14px; font-size: 19px; line-height: 28px; font-weight: 700; color: #fff; }
.pr-job-apply ul { margin: 0 0 20px; padding: 0; list-style: none; display: grid; gap: 8px; }
.pr-job-apply li { display: flex; align-items: center; gap: 10px; font-size: 15px; line-height: 24px; color: rgb(255 255 255 / 88%); }
.pr-job-apply li i { color: var(--pr-gold); }
.pr-job-apply .pr-btn { width: 100%; }
.pr-job-back { display: inline-flex; align-items: center; gap: 8px; font-size: 15px; line-height: 24px; font-weight: 700; color: var(--pr-navy); text-decoration: none; }
.pr-job-back i { color: var(--pr-gold); }
[dir="rtl"] .pr-job-back i, [dir="rtl"] .pr-job-apply .pr-btn i { transform: scaleX(-1); }
.pr-job-bar { display: none; }
@media (max-width: 991px) {
  .pr-job-bar { position: sticky; bottom: 0; z-index: 30; display: block; padding: 10px 16px; background: #fff; box-shadow: 0 -4px 14px rgb(46 44 111 / 10%); }
  .pr-job-bar .pr-btn { width: 100%; }
  .pr-job-apply { display: none; }
}
/* ROUND 9: Parent Corner intro (split: icon + heading | lead + text) */
.pr-pc-ic { display: flex; align-items: center; justify-content: center; width: 64px; height: 64px; margin-bottom: 20px; border-radius: 50%; background: rgb(227 168 31 / 14%); }
.pr-pc-ic i { font-size: 30px; line-height: 1; color: var(--pr-gold); }
.pr-pc-lead { margin: 0 0 18px; padding-inline-start: 22px; border-inline-start: 4px solid var(--pr-gold); font-size: 20px; line-height: 34px; font-weight: 500; color: var(--pr-navy); }
.pr-pc-text { margin: 0 0 14px; padding-inline-start: 26px; font-size: 17px; line-height: 30px; color: var(--pr-text); }
.pr-pc-text:last-child, .pr-pc-lead:last-child { margin-bottom: 0; }
@media (max-width: 991px) { .pr-pc-intro { padding: 40px 0 36px; } .pr-pc-ic { width: 52px; height: 52px; margin-bottom: 14px; } .pr-pc-ic i { font-size: 24px; } .pr-pc-lead { font-size: 18px; line-height: 30px; } }
@media (prefers-reduced-motion: reduce) {
    .pr-js .pr-reveal { opacity: 1; transform: none; transition: none; }
    .pr-banner .banner-head__cs, .pr-banner .banner-head__cs_1, .pr-banner .banner-head__cs_2, .pr-banner .breadcrubs-wrpr, .pr-tabs-ready .pr-subject.is-active { animation: none; }
    .pr-card, .pr-stage, .pr-btn, .pr-gallery .filter-item img, .pr-links a { transition: none; }
}
