/*
Theme Name: CISCE Board Editable
Theme URI: https://example.com/cisce-board-editable
Author: One World Consulting
Author URI: https://owcinternational.com
Description: A modern, responsive and highly editable education board theme with Customizer typography, color, width, sidebar, header, footer and homepage controls. Compatible with the block editor, Elementor, WPBakery, WooCommerce and standard WordPress plugins.
Version: 1.0.0
Requires at least: 6.3
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: cisce-board-editable
Tags: education, custom-logo, custom-menu, featured-images, footer-widgets, full-width-template, left-sidebar, right-sidebar, theme-options, translation-ready, block-styles, wide-blocks
*/

:root {
	--ink: #13243a;
	--muted: #607087;
	--navy: #092e56;
	--navy-2: #0d3f72;
	--cyan: #1e91a8;
	--gold: #f1b94d;
	--cream: #f6f3ed;
	--line: #dce3e8;
	--white: #fff;
	--page-bg: #f8fafb;
	--footer-bg: #071f35;
	--menu-color: #17344e;
	--menu-hover: #0d7f96;
	--button-text: #13243a;
	--font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--font-heading: Georgia, "Times New Roman", serif;
	--font-menu: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--font-button: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--font-brand: Georgia, "Times New Roman", serif;
	--font-widget: Georgia, "Times New Roman", serif;
	--font-footer: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--font-form: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--font-meta: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--container: 1180px;
	--content-width: 760px;
	--sidebar-width: 30%;
	--logo-width: 340px;
	--body-size: 16px;
	--hero-min: 44px;
	--hero-fluid: 5vw;
	--hero-max: 68px;
	--hero-mobile: 41px;
	--section-min: 36px;
	--section-fluid: 4.5vw;
	--section-max: 53px;
	--about-min: 39px;
	--about-fluid: 4.5vw;
	--about-max: 58px;
	--panel-heading: 24px;
	--prose-h2: 36px;
	--prose-h3: 27px;
	--prose-h4: 21px;
	--menu-size: 11px;
	--button-size: 11px;
	--footer-columns: 3;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; overflow-x: hidden; background: var(--page-bg); color: var(--ink); font-family: var(--font-body); font-size: var(--body-size); line-height: 1.65; }
body.cisce-site-boxed { max-width: calc(var(--container) + 100px); margin-inline: auto; background: #fff; box-shadow: 0 0 70px rgba(9,46,86,.12); }
img { max-width: 100%; height: auto; }
figure { margin: 0; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font-family: var(--font-form); font-size: inherit; }
button, input[type="submit"], input[type="button"], input[type="reset"] { font-family: var(--font-button); }
h1, h2, h3, h4, h5, h6 { font-family: var(--font-heading); overflow-wrap: break-word; }
.shell { width: min(var(--container), calc(100% - 40px)); margin-inline: auto; }
.home-main { font-size: calc(var(--body-size) * var(--font-scale, 1)); }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.screen-reader-text:focus { position: fixed !important; z-index: 99999; top: 12px; left: 12px; width: auto; height: auto; clip: auto; padding: 12px 18px; background: #fff; color: var(--navy); box-shadow: 0 6px 30px rgba(0,0,0,.2); }
.alignwide { width: min(calc(100vw - 40px), var(--container)); max-width: none; margin-left: 50%; transform: translateX(-50%); }
.alignfull { width: 100vw; max-width: none; margin-left: 50%; transform: translateX(-50%); }

.demo-strip { min-height: 34px; display: flex; align-items: center; justify-content: center; gap: 16px; padding: 7px 20px; background: var(--gold); color: var(--button-text); font-family: var(--font-meta); font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.demo-strip a { text-decoration: underline; text-underline-offset: 3px; }
.site-header { position: relative; z-index: 100; background: var(--white); box-shadow: 0 1px 0 rgba(9,46,86,.08); }
.has-sticky-header .site-header { position: sticky; top: 0; }
.admin-bar.has-sticky-header .site-header { top: 32px; }
.utility-bar { min-height: 34px; display: flex; align-items: center; justify-content: space-between; color: #6b7787; font: 11px var(--font-meta); border-bottom: 1px solid #edf0f2; }
.accessibility { display: flex; align-items: center; gap: 7px; }
.accessibility button { border: 0; padding: 3px 5px; background: none; color: var(--navy); cursor: pointer; font-weight: 700; }
.divider { width: 1px; height: 14px; background: #d6dde2; margin: 0 5px; }
.utility-menu { display: flex; gap: 12px; margin: 0; padding: 0; list-style: none; }
.brand-row { min-height: 108px; display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.brand { min-width: 0; display: flex; align-items: center; gap: 17px; }
.custom-logo-link { flex: 0 0 auto; display: inline-flex; align-items: center; }
.custom-logo { width: auto; max-width: var(--logo-width); max-height: 82px; object-fit: contain; }
.crest { width: 68px; height: 68px; flex: 0 0 68px; border: 2px solid var(--navy); border-radius: 50%; display: grid; place-items: center; position: relative; background: radial-gradient(circle at 50% 45%,#fff 0 50%,#e8f4f7 51% 100%); box-shadow: inset 0 0 0 5px #fff,inset 0 0 0 7px #76b2bd; color: var(--navy); }
.crest b { font: 30px var(--font-brand); }
.crest i { position: absolute; bottom: 9px; font: 700 7px var(--font-meta); letter-spacing: .06em; }
.brand-copy { min-width: 0; display: grid; gap: 6px; }
.brand-copy strong { max-width: 570px; color: var(--navy); font: 500 21px/1.15 var(--font-brand); }
.brand-copy small { color: #8b6b4d; font: 8px var(--font-meta); letter-spacing: .17em; text-transform: uppercase; }
.header-actions { display: flex; align-items: center; gap: 25px; }
.utility-link { color: #56677a; font: 700 9px var(--font-menu); letter-spacing: .08em; text-transform: uppercase; }
.utility-link:hover { color: var(--menu-hover); }
.menu-toggle { width: 42px; height: 42px; display: none; flex-direction: column; align-items: center; justify-content: center; gap: 4px; border: 1px solid var(--line); background: #fff; cursor: pointer; }
.menu-toggle span { width: 18px; height: 2px; background: var(--navy); transition: .2s ease; }
.main-nav { border-top: 1px solid #edf0f2; background: #fff; }
.nav-inner > .menu, .nav-inner > ul { min-height: 49px; display: flex; align-items: stretch; justify-content: center; gap: 0; margin: 0; padding: 0; list-style: none; }
.nav-inner li { position: relative; display: flex; align-items: stretch; }
.nav-inner li > a { min-height: 49px; display: flex; align-items: center; padding: 0 22px; color: var(--menu-color); font: 700 var(--menu-size)/1 var(--font-menu); letter-spacing: .065em; text-transform: uppercase; transition: .2s ease; }
.nav-inner li:hover > a, .nav-inner li.current-menu-item > a, .nav-inner li.current-menu-ancestor > a, .nav-inner a:focus { color: var(--menu-hover); background: #f6f9fa; }
.nav-inner .sub-menu { width: 230px; display: none; position: absolute; top: 100%; left: 0; z-index: 20; margin: 0; padding: 8px 0; background: #fff; list-style: none; box-shadow: 0 14px 35px rgba(9,46,86,.16); }
.nav-inner .sub-menu .sub-menu { top: -8px; left: 100%; }
.nav-inner li:hover > .sub-menu, .nav-inner li:focus-within > .sub-menu { display: block; }
.nav-inner .sub-menu li, .nav-inner .sub-menu a { width: 100%; }
.nav-inner .sub-menu a { min-height: 42px; padding: 10px 18px; line-height: 1.3; text-transform: none; }
.submenu-toggle { display: none; }

.programme-bar { background: #e7ecef; }
.programme-grid { display: grid; grid-template-columns: repeat(6,1fr); }
.programme { min-height: 77px; display: grid; grid-template-columns: 1fr auto; align-content: center; gap: 3px 10px; padding: 12px 18px; color: #fff; }
.programme span { font: 700 13px var(--font-menu); letter-spacing: .05em; }
.programme small { font: 8px var(--font-meta); letter-spacing: .08em; text-transform: uppercase; opacity: .78; }
.programme b { grid-column: 2; grid-row: 1/3; align-self: center; font-weight: 400; }
.programme.blue{background:#15598e}.programme.cyan{background:#238fa3}.programme.orange{background:#c77a31}.programme.violet{background:#685487}.programme.green{background:#398364}.programme.red{background:#b4494d}

.hero { min-height: 580px; position: relative; overflow: hidden; color: #fff; background: linear-gradient(115deg,rgba(8,40,69,.96),rgba(12,59,103,.92) 57%,rgba(13,73,108,.92)),var(--hero-image); background-position: center; background-size: cover; }
.hero::after { content:""; position:absolute; inset:0; opacity:.12; background-image:linear-gradient(90deg,transparent 49.6%,rgba(255,255,255,.22) 50%,transparent 50.4%),linear-gradient(0deg,transparent 49.6%,rgba(255,255,255,.14) 50%,transparent 50.4%); background-size:64px 64px; mask-image:linear-gradient(to right,transparent,black); }
.hero-glow { position:absolute; border-radius:50%; }
.hero-glow-one { width:540px; height:540px; right:-180px; top:-180px; background:radial-gradient(circle,rgba(33,157,174,.38),rgba(33,157,174,0) 68%); }
.hero-glow-two { width:380px; height:380px; left:28%; bottom:-260px; background:radial-gradient(circle,rgba(241,185,77,.17),rgba(241,185,77,0) 70%); }
.hero-grid { min-height:580px; position:relative; z-index:2; display:grid; grid-template-columns:1.15fr .85fr; align-items:center; gap:80px; padding-block:70px; }
.eyebrow { display:flex; align-items:center; gap:11px; margin:0 0 23px; color:#afccd9; font:700 10px var(--font-meta); letter-spacing:.19em; text-transform:uppercase; }
.eyebrow span { width:28px; height:2px; background:var(--gold); }
.hero h1 { margin:0; font:500 clamp(var(--hero-min),var(--hero-fluid),var(--hero-max))/1 var(--font-heading); letter-spacing:-.035em; }
.hero h1 em { color:#7fc4ce; }
.hero-lead { max-width:650px; margin:27px 0 31px; color:#c4d5df; font-size:16px; line-height:1.8; }
.hero-actions { display:flex; gap:12px; flex-wrap:wrap; }
.button, button, input[type="submit"], .wp-element-button { transition:.2s ease; }
.button { min-height:50px; padding:0 22px; display:inline-flex; align-items:center; justify-content:center; gap:24px; border:1px solid rgba(255,255,255,.25); font:700 var(--button-size) var(--font-button); letter-spacing:.08em; text-transform:uppercase; }
.button.primary { background:var(--gold); border-color:var(--gold); color:var(--button-text); }
.button.secondary { background:rgba(255,255,255,.03); }
.button:hover { transform:translateY(-2px); box-shadow:0 10px 24px rgba(0,0,0,.15); }
.trust-row { display:flex; gap:27px; margin-top:38px; color:#9fb9c7; font:10px var(--font-meta); text-transform:uppercase; letter-spacing:.09em; }
.trust-row b { color:#fff; font-size:12px; margin-right:5px; }
.hero-panel { border:1px solid rgba(255,255,255,.2); background:rgba(255,255,255,.075); backdrop-filter:blur(12px); box-shadow:0 28px 80px rgba(0,0,0,.18); }
.panel-top { height:45px; display:flex; align-items:center; gap:10px; padding:0 19px; border-bottom:1px solid rgba(255,255,255,.14); }
.panel-top p { margin:0; flex:1; font:800 9px var(--font-meta); letter-spacing:.17em; text-transform:uppercase; }
.panel-top small { color:#a8c4d1; }
.status-dot { width:7px; height:7px; border-radius:50%; background:#71d5b0; box-shadow:0 0 0 4px rgba(113,213,176,.12); }
.panel-feature { min-height:183px; display:grid; grid-template-columns:46px 1fr; gap:16px; padding:30px 23px; border-bottom:1px solid rgba(255,255,255,.14); }
.feature-number { color:#f4ca76; font:26px var(--font-heading); }
.panel-feature small { color:#90b2c2; font:9px var(--font-meta); letter-spacing:.14em; text-transform:uppercase; }
.panel-feature h2 { margin:7px 0 10px; font:500 var(--panel-heading) var(--font-heading); }
.panel-feature p { margin:0; color:#abc3ce; font-size:12px; line-height:1.65; }
.panel-links a { min-height:59px; display:grid; grid-template-columns:34px 1fr auto; align-items:center; gap:10px; padding:0 20px; border-bottom:1px solid rgba(255,255,255,.1); font-size:11px; }
.panel-links a:hover { background:rgba(255,255,255,.08); }.panel-links a:last-child{border-bottom:0}.panel-links span{color:#7fa7b9;font-family:var(--font-heading)}.panel-links i{color:#f3c768;font-style:normal;font-size:16px}

.quick-actions { position:relative; z-index:5; margin-top:-35px; display:grid; grid-template-columns:repeat(3,1fr); background:#fff; box-shadow:0 14px 45px rgba(13,48,79,.13); }
.quick-actions>a { min-height:96px; display:grid; grid-template-columns:34px 1fr auto; align-items:center; gap:10px; padding:18px 25px; border-right:1px solid var(--line); }.quick-actions>a:last-child{border-right:0}
.quick-actions>a>span { color:#b1bec8; font:20px var(--font-heading); }.quick-actions div{display:grid;gap:6px}.quick-actions b{color:var(--navy);font:17px var(--font-heading)}.quick-actions small{color:#7b8997;font:10px var(--font-meta);text-transform:uppercase;letter-spacing:.08em}.quick-actions i{color:var(--cyan);font-style:normal;font-size:19px}

.section { padding-block:108px; }.section-heading{margin-bottom:42px}.split-heading{display:grid;grid-template-columns:1fr minmax(280px,430px);align-items:end;gap:50px}
.section-kicker { margin:0 0 13px; color:#b06b32; font:800 10px var(--font-meta); letter-spacing:.2em; text-transform:uppercase; }.section-kicker.light{color:#80c5ce}
.section-heading h2,.download-intro h2,.faq-title h2,.contact-grid h2,.page-hero h1,.error-404 h1 { margin:0;color:var(--navy);font:500 clamp(var(--section-min),var(--section-fluid),var(--section-max)) var(--font-heading);letter-spacing:-.025em;line-height:1.08; }
.section-heading>p{margin:0;color:var(--muted);font-size:13px;line-height:1.85}
.notice-tools{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px;padding-block:14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.filter-tabs{display:flex;gap:6px;flex-wrap:wrap}.filter-tabs button{border:0;border-radius:2px;padding:9px 14px;background:transparent;color:#617084;font:700 10px var(--font-button);letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.filter-tabs button.active{background:var(--navy);color:#fff}
.notice-search{width:230px;height:38px;display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--line);background:#fff}.notice-search span{color:var(--cyan);font-size:18px}.notice-search input{width:100%;border:0;outline:0;color:var(--ink);font-size:11px}
.notice-list{border-top:1px solid #cad4da}.notice-item{min-height:138px;display:grid;grid-template-columns:82px 1fr 46px;align-items:center;gap:23px;border-bottom:1px solid var(--line);transition:.2s ease}.notice-item:hover{background:#fff;padding-inline:13px;box-shadow:0 8px 30px rgba(9,46,86,.06)}
.notice-date{height:86px;display:grid;place-content:center;text-align:center;border-right:1px solid var(--line)}.notice-date b{color:var(--navy);font:32px/1 var(--font-heading)}.notice-date span{margin-top:2px;color:#b26c35;font:800 9px var(--font-meta);letter-spacing:.12em}.notice-date small{margin-top:4px;color:#9aa7b2;font-size:8px}
.notice-copy{padding-block:20px}.notice-tag{display:inline-flex;margin-bottom:7px;color:#198399;font:800 8px var(--font-meta);letter-spacing:.14em;text-transform:uppercase}.notice-copy h3{margin:0 0 7px;color:var(--navy);font:20px/1.25 var(--font-heading)}.notice-copy p{margin:0;color:#7a8794;font-size:11px;line-height:1.6}.notice-item>a,.notice-arrow{width:37px;height:37px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--cyan)}.empty-state{padding:40px 0;color:var(--muted)}

.about-section{position:relative;overflow:hidden;background:var(--navy);color:#fff}.about-section::after{content:"";position:absolute;width:560px;height:560px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-230px;top:-210px;box-shadow:0 0 0 85px rgba(255,255,255,.025),0 0 0 170px rgba(255,255,255,.018)}
.about-grid{min-height:580px;display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:100px;padding-block:90px;position:relative;z-index:2}.about-card h2{margin:0;font:500 clamp(var(--about-min),var(--about-fluid),var(--about-max))/1.08 var(--font-heading);letter-spacing:-.03em}.about-card h2 em{color:#77bdc8;font-weight:400}.about-card>p:not(.section-kicker){max-width:540px;margin:28px 0;color:#b5c9d5;font-size:13px;line-height:1.9}
.about-values{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.16);border-left:1px solid rgba(255,255,255,.16)}.about-values>div{min-height:190px;padding:30px;border-right:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}.about-values b{display:block;color:#f1bf5b;font:34px var(--font-heading)}.about-values span{display:block;margin-top:7px;font:800 10px var(--font-meta);letter-spacing:.12em;text-transform:uppercase}.about-values p{margin:16px 0 0;color:#9eb8c6;font-size:11px;line-height:1.65}

.examinations{background:var(--page-bg)}.exam-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.exam-card{min-height:430px;padding:30px;display:flex;flex-direction:column;border:1px solid var(--line);background:#fff;position:relative;overflow:hidden}.exam-card::after{content:"";width:170px;height:170px;position:absolute;right:-85px;top:-85px;border-radius:50%;border:24px solid rgba(255,255,255,.13)}.exam-card.exam-blue{background:#15598e;color:#fff}.exam-card.exam-teal{background:#157f8c;color:#fff}.exam-card.exam-gold{background:var(--gold);color:var(--ink)}
.exam-number{opacity:.65;font:15px var(--font-heading)}.exam-code{margin-top:46px;display:grid;gap:3px}.exam-code b{font:44px var(--font-heading);letter-spacing:-.04em}.exam-code small{font:700 9px var(--font-meta);letter-spacing:.18em;text-transform:uppercase;opacity:.7}.exam-card h3{max-width:290px;margin:24px 0 14px;font:22px/1.2 var(--font-heading)}.exam-card>p{margin:0;opacity:.75;font-size:11px;line-height:1.75}.exam-links{margin-top:auto;display:grid;border-top:1px solid rgba(255,255,255,.28)}.exam-gold .exam-links{border-color:rgba(9,46,86,.18)}.exam-links a{display:flex;justify-content:space-between;padding:13px 0;font:800 9px var(--font-button);letter-spacing:.08em;text-transform:uppercase}

.service-section{padding-block:100px;background:#f1eee7}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#d5d0c6;border:1px solid #d5d0c6}.service-card{min-height:310px;display:flex;flex-direction:column;padding:29px;background:#f8f6f1;transition:.2s ease}.service-card:hover{transform:translateY(-5px);background:#fff;box-shadow:0 14px 34px rgba(9,46,86,.1)}.service-card>span{width:48px;height:48px;display:grid;place-items:center;border:1px solid #aac2c7;border-radius:50%;color:var(--cyan);font:22px var(--font-heading)}.service-card h3{margin:35px 0 13px;color:var(--navy);font:23px var(--font-heading)}.service-card p{margin:0;color:#6e7d8b;font-size:11px;line-height:1.8}.service-card>b{margin-top:auto;color:var(--navy);font:800 9px var(--font-button);letter-spacing:.1em;text-transform:uppercase}.service-card>b i{float:right;color:var(--cyan);font-style:normal;font-size:17px}

.download-section{display:grid;grid-template-columns:.75fr 1.25fr;gap:95px;align-items:start}.download-intro{position:sticky;top:30px}.download-intro>p:not(.section-kicker){margin:21px 0 30px;color:var(--muted);font-size:12px;line-height:1.8}.navy-button{background:var(--navy);color:#fff;border-color:var(--navy)}.resource-list{border-top:1px solid #cfd8dd}.resource-row{min-height:97px;display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:20px;border-bottom:1px solid var(--line)}.resource-row>span{color:#b0bcc5;font:17px var(--font-heading)}.resource-row>div{display:grid;gap:7px}.resource-row b{color:var(--navy);font:21px var(--font-heading)}.resource-row small{color:#7e8b98;font-size:10px}.resource-row i{width:37px;height:37px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--cyan);font-style:normal}.resource-row:hover i{background:var(--cyan);color:#fff}

.faq-section{padding-block:100px;background:#123856;color:#fff}.faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:95px}.faq-title h2{color:#fff;line-height:1.03}.faq-title>p:last-child{margin:22px 0 0;color:#a8c0cd;font-size:12px;line-height:1.7}.faq-list{border-top:1px solid rgba(255,255,255,.18)}.faq-list article{border-bottom:1px solid rgba(255,255,255,.18)}.faq-list button{width:100%;min-height:78px;display:grid;grid-template-columns:42px 1fr 30px;align-items:center;gap:8px;border:0;background:none;color:#fff;text-align:left;cursor:pointer}.faq-list button span{color:#75b6c2;font:14px var(--font-heading)}.faq-list button b{font:17px var(--font-heading)}.faq-list button i{font-style:normal;font-size:24px;font-weight:300;color:#f1bf5b}.faq-answer p{margin:-5px 35px 24px 50px;color:#aac0cb;font-size:12px;line-height:1.8}

.contact-section{padding-block:82px;background:#fff}.contact-grid{display:grid;grid-template-columns:1.25fr .8fr .65fr;gap:65px;align-items:center}.contact-grid>div>p:last-child{max-width:470px;color:var(--muted);font-size:12px;line-height:1.8}.contact-grid address{display:grid;gap:7px;padding-left:32px;border-left:1px solid var(--line);font-style:normal}.contact-grid address small{color:#a06b3c;font:800 8px var(--font-meta);letter-spacing:.15em;text-transform:uppercase}.contact-grid address span{color:#71808d;font-size:11px;line-height:1.65}.contact-cta{min-height:94px;display:grid;align-content:center;gap:8px;padding:20px 24px;background:var(--gold);color:var(--button-text)}.contact-cta span{font:800 8px var(--font-meta);letter-spacing:.13em;text-transform:uppercase}.contact-cta b{font:18px var(--font-heading)}

.site-footer{background:var(--footer-bg);color:#fff;font-family:var(--font-footer)}.footer-main{min-height:300px;display:grid;grid-template-columns:1.7fr .65fr .65fr;gap:60px;align-items:center}.footer-brand{display:flex;align-items:center;gap:18px;min-width:0}.footer-brand .custom-logo{max-width:min(var(--logo-width),260px);filter:brightness(0) invert(1)}.footer-crest{border-color:#7fb9c1;color:#fff;background:transparent;box-shadow:inset 0 0 0 5px var(--footer-bg),inset 0 0 0 7px #4d8993}.footer-brand>div{display:grid;gap:10px}.footer-brand strong{font:20px/1.2 var(--font-brand)}.footer-brand small{color:#7892a2;font:8px var(--font-meta);letter-spacing:.12em;text-transform:uppercase}.footer-links{display:grid;gap:11px;align-self:center}.footer-links>b,.footer-widget .widget-title{margin:0 0 5px;color:#f1c163;font:700 9px var(--font-widget);letter-spacing:.15em;text-transform:uppercase}.footer-menu,.footer-widget ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.footer-links a,.footer-widget a,.footer-widget{color:#a8bdc8;font-size:10px}.footer-links a:hover,.footer-widget a:hover{color:#fff}.footer-widgets{grid-column:2/-1;display:grid;grid-template-columns:repeat(var(--active-footer-columns,var(--footer-columns)),1fr);gap:38px}.footer-widget{margin:0}.footer-widget p{margin:0}.footer-bottom{min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.1);color:#6f8999;font:8px var(--font-meta);letter-spacing:.06em;text-transform:uppercase}.footer-bottom a{color:#b3c7d0}

.page-hero{padding:70px 0;background:linear-gradient(115deg,var(--navy),var(--navy-2));color:#fff}.page-hero h1{max-width:900px;color:#fff}.page-hero>div>p:not(.section-kicker),.archive-description{max-width:720px;margin:20px 0 0;color:#b8ccd8}.post-hero .entry-meta{margin-bottom:14px;color:#91b3c4}.content-layout{display:grid;gap:70px;padding-block:80px}.content-layout.has-sidebar{grid-template-columns:minmax(0,calc(100% - var(--sidebar-width) - 70px)) var(--sidebar-width)}.content-layout.sidebar-left{grid-template-columns:var(--sidebar-width) minmax(0,calc(100% - var(--sidebar-width) - 70px))}.content-layout.sidebar-left>.entry-content,.content-layout.sidebar-left>.posts-list{grid-column:2}.content-layout.sidebar-left>.widget-area{grid-column:1;grid-row:1}.content-layout.no-sidebar{display:block}.content-layout.no-sidebar>.entry-content,.content-layout.no-sidebar>.posts-list{max-width:var(--content-width);margin-inline:auto}.featured-image{margin-bottom:35px}.featured-image img{width:100%;display:block}.prose-content{font-size:1rem;line-height:1.85}.prose-content>*:first-child{margin-top:0}.prose-content h2{margin:1.6em 0 .5em;color:var(--navy);font-size:var(--prose-h2);line-height:1.15}.prose-content h3{margin:1.5em 0 .4em;color:var(--navy);font-size:var(--prose-h3);line-height:1.2}.prose-content h4{font-size:var(--prose-h4)}.prose-content p,.prose-content ul,.prose-content ol{margin:0 0 1.4em}.prose-content a{color:var(--cyan);text-decoration:underline;text-underline-offset:2px}.prose-content blockquote{margin:2em 0;padding:10px 0 10px 28px;border-left:4px solid var(--gold);color:var(--muted);font:italic 1.25em var(--font-heading)}.prose-content table{width:100%;border-collapse:collapse}.prose-content th,.prose-content td{padding:12px;border:1px solid var(--line);text-align:left}.prose-content th{background:var(--navy);color:#fff}.home-editor-content{background:#fff}.home-editor-content .prose-content{max-width:var(--content-width);margin:auto}.widget-area{min-width:0}.widget{margin:0 0 28px;padding:25px;background:#fff;border:1px solid var(--line)}.widget-title{margin:0 0 18px;color:var(--navy);font:22px var(--font-widget)}.widget ul{margin:0;padding:0;list-style:none}.widget li{padding:8px 0;border-bottom:1px solid var(--line);font-size:13px}.search-form{display:flex}.search-field{min-width:0;width:100%;height:44px;padding:0 13px;border:1px solid var(--line);background:#fff}.search-submit,input[type="submit"]{min-height:44px;padding:0 18px;border:0;background:var(--navy);color:#fff;font-weight:700;cursor:pointer}.posts-list{display:grid;gap:24px}.post-card{display:grid;grid-template-columns:220px 1fr;background:#fff;border:1px solid var(--line)}.post-card:not(:has(.post-thumbnail)){grid-template-columns:1fr}.post-thumbnail img{width:100%;height:100%;min-height:240px;display:block;object-fit:cover}.post-card-copy{padding:28px}.entry-meta{color:#7a8794;font:10px var(--font-meta);letter-spacing:.05em;text-transform:uppercase}.entry-title{margin:10px 0;color:var(--navy);font:28px/1.2 var(--font-heading)}.entry-summary{color:var(--muted);font-size:13px}.text-link{display:inline-flex;gap:18px;margin-top:12px;padding-bottom:4px;border-bottom:1px solid currentColor;color:var(--navy);font:800 10px var(--font-button);letter-spacing:.08em;text-transform:uppercase}.post-navigation-wrap{padding-bottom:60px}.nav-links{display:flex;justify-content:space-between;gap:20px}.nav-links a{color:var(--navy);font-family:var(--font-heading)}.comments-area{padding-block:60px}.comment-list{padding-left:20px}.error-404{max-width:760px;text-align:center}.error-404 .search-form{max-width:500px;margin:30px auto}.error-404 .button{margin-top:10px}.builder-content{width:100%}.blank-canvas{background:#fff}

/* Plugin compatibility */
.elementor-page .site-main,.vc_row,.wpb_content_element{max-width:100%}.elementor-page .builder-content{overflow:hidden}.woocommerce .content-layout{display:block}.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}.woocommerce ul.products li.product{width:auto!important;margin:0!important}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:var(--navy);color:#fff;font-family:var(--font-button)}.wpcf7-form input:not([type="submit"]),.wpcf7-form textarea,.wpcf7-form select{width:100%;padding:12px;border:1px solid var(--line)}

@media (max-width:1000px){
	.header-actions .utility-link{display:none}.menu-toggle{display:flex}.main-nav{display:none}.main-nav.open{display:block}.nav-inner>.menu,.nav-inner>ul{display:grid;min-height:0;padding:12px 0}.nav-inner li{display:block}.nav-inner li>a{min-height:44px;padding:0 16px}.nav-inner .sub-menu,.nav-inner .sub-menu .sub-menu{width:100%;display:none;position:static;padding:0 0 0 15px;box-shadow:none}.nav-inner li.submenu-open>.sub-menu{display:block}.submenu-toggle{width:42px;height:42px;display:grid;place-items:center;position:absolute;right:0;top:1px;border:0;background:transparent;color:var(--navy);cursor:pointer}.programme-grid{overflow-x:auto;grid-template-columns:repeat(6,minmax(155px,1fr))}.hero-grid{grid-template-columns:1fr;gap:45px;padding-block:65px 90px}.hero-panel{max-width:620px}.quick-actions{margin-top:-25px}.split-heading{grid-template-columns:1fr;gap:15px;align-items:start}.about-grid{grid-template-columns:1fr;gap:55px}.exam-grid{grid-template-columns:1fr 1fr}.exam-card:last-child{grid-column:1/-1}.service-grid{grid-template-columns:1fr 1fr}.download-section{grid-template-columns:1fr;gap:55px}.download-intro{position:static}.faq-grid{grid-template-columns:1fr;gap:45px}.contact-grid{grid-template-columns:1fr 1fr}.contact-cta{grid-column:1/-1}.footer-main{grid-template-columns:1fr 1fr;padding-block:55px}.footer-brand{grid-column:1/-1}.footer-widgets{grid-column:1/-1}.content-layout.has-sidebar,.content-layout.sidebar-left{grid-template-columns:1fr;gap:40px}.content-layout.sidebar-left>.entry-content,.content-layout.sidebar-left>.posts-list,.content-layout.sidebar-left>.widget-area{grid-column:auto;grid-row:auto}.widget-area{display:grid;grid-template-columns:1fr 1fr;gap:20px}.widget{margin:0}.woocommerce ul.products{grid-template-columns:repeat(2,1fr)}
}

@media (max-width:640px){
	.shell{width:min(calc(100% - 28px),var(--container))}.demo-strip{align-items:flex-start;flex-direction:column;gap:3px;padding:9px 14px}.utility-bar>span{display:none}.utility-bar{justify-content:flex-end}.brand-row{min-height:90px}.crest{width:54px;height:54px;flex-basis:54px}.custom-logo{max-width:min(var(--logo-width),180px);max-height:60px}.brand-copy strong{font-size:15px;max-width:230px;line-height:1.12}.brand-copy small{display:none}.hero{min-height:auto}.hero-grid{min-height:auto;padding-block:52px 74px}.hero h1{font-size:var(--hero-mobile)}.hero-lead{font-size:14px}.hero-actions{display:grid}.trust-row{gap:12px;flex-wrap:wrap}.quick-actions{grid-template-columns:1fr}.quick-actions>a{min-height:82px;border-right:0;border-bottom:1px solid var(--line)}.quick-actions>a:last-child{border-bottom:0}.section{padding-block:76px}.notice-tools{align-items:stretch;flex-direction:column}.notice-search{width:100%}.notice-item{grid-template-columns:62px 1fr;gap:14px}.notice-item>a,.notice-arrow{display:none}.notice-copy h3{font-size:17px}.notice-copy p{display:none}.about-grid{padding-block:72px}.about-values{grid-template-columns:1fr}.about-values>div{min-height:150px}.exam-grid{grid-template-columns:1fr}.exam-card:last-child{grid-column:auto}.exam-card{min-height:400px}.service-section{padding-block:76px}.service-grid{grid-template-columns:1fr}.service-card{min-height:260px}.resource-row{grid-template-columns:36px 1fr auto;gap:12px}.resource-row small{display:none}.faq-section{padding-block:76px}.faq-list button{grid-template-columns:32px 1fr 24px}.faq-list button b{font-size:15px}.faq-answer p{margin-left:40px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact-grid address{padding:22px 0 0;border-left:0;border-top:1px solid var(--line)}.contact-cta{grid-column:auto}.footer-main{grid-template-columns:1fr 1fr;gap:35px}.footer-brand{grid-column:1/-1}.footer-widgets{grid-template-columns:1fr}.footer-bottom{align-items:flex-start;flex-direction:column;justify-content:center}.page-hero{padding:52px 0}.content-layout{padding-block:55px}.widget-area{grid-template-columns:1fr}.post-card{grid-template-columns:1fr}.post-thumbnail img{min-height:200px}.post-card-copy{padding:22px}.entry-title{font-size:24px}.woocommerce ul.products{grid-template-columns:1fr}.admin-bar.has-sticky-header .site-header{top:46px}
}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
