@import"https://fonts.googleapis.com/css2?family=Maven+Pro:wght@500;700;800&family=Noto+Sans:wght@400;500;700&display=swap";:root{--color-brand-950: #0d3047;--color-brand-900: #144a69;--color-brand-700: #1d6f94;--color-brand-500: #2c90bc;--color-brand-300: #89bed9;--color-accent: #f2752a;--color-accent-700: #d65515;--color-bg: #f4f7fb;--color-surface: #ffffff;--color-surface-soft: #f8fbff;--color-surface-elevated: #ffffff;--color-text: #122435;--color-muted: #5e6f7f;--color-border: #d9e3ed;--color-heading: #0c2234;--color-skeleton-base: #e7eef5;--color-skeleton-highlight: #f4f8fc;--color-glow-brand: rgba(44, 144, 188, .16);--color-glow-accent: rgba(242, 117, 42, .18);--shadow-soft: 0 8px 24px rgba(20, 74, 105, .12);--shadow-medium: 0 20px 46px rgba(13, 48, 71, .18);--shadow-lifted: 0 26px 60px rgba(11, 39, 59, .24);--radius-s: 10px;--radius-m: 14px;--radius-l: 22px;--radius-xl: 28px;--radius-pill: 999px;--container: 1240px;--space-section-mobile: 3.25rem;--space-section-desktop: 5rem;--font-size-body: 1rem;--font-size-heading-2: clamp(1.75rem, 2.6vw, 2.4rem);--motion-ease-premium: cubic-bezier(.2, .9, .25, 1);--motion-ease-expressive: cubic-bezier(.16, 1, .3, 1);--motion-fast: .18s;--motion-medium: .32s;--motion-slow: .56s}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:Noto Sans,Segoe UI,-apple-system,BlinkMacSystemFont,sans-serif;font-size:var(--font-size-body);color:var(--color-text);background:radial-gradient(circle at 8% 8%,rgba(44,144,188,.08),transparent 34%),radial-gradient(circle at 90% 22%,rgba(242,117,42,.08),transparent 40%),var(--color-bg);line-height:1.65}h1,h2,h3,h4,h5,h6,.brand,.btn{margin:0;font-family:Maven Pro,Noto Sans,sans-serif;color:var(--color-heading)}p{margin:0}a{color:inherit;text-decoration:none}a:hover{color:var(--color-brand-700)}:focus-visible{outline:2px solid var(--color-brand-700);outline-offset:2px}.container{width:min(100% - 2.25rem,var(--container));margin-inline:auto}.section{padding:var(--space-section-mobile) 0}.curve-swoop-top{position:relative}.curve-swoop-top:before{content:"";position:absolute;inset:-1px 0 auto;height:42px;background:radial-gradient(140% 38px at 50% 100%,#ffffffb3 20%,#fff0 72%);pointer-events:none}.section-heading{margin-bottom:1rem;font-size:var(--font-size-heading-2);line-height:1.2}.section-subheading{margin-bottom:.8rem;color:var(--color-brand-700);font-size:clamp(1.2rem,2vw,1.45rem)}.section-description{margin-bottom:1.25rem;max-width:70ch;color:var(--color-muted)}.site-header{position:sticky;top:0;z-index:20;background:linear-gradient(172deg,#f8fcffeb,#f4f9ffe0);border-bottom:1px solid rgba(13,48,71,.1);box-shadow:0 9px 26px #0c2c4114;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.header-inner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.75rem;padding:.8rem 0}.brand{display:inline-flex;align-items:center;min-width:0;font-weight:800;color:var(--color-accent)}.brand-logo{display:block;width:auto;height:56px;filter:drop-shadow(0 6px 16px rgba(13,48,71,.16))}.menu-toggle{justify-self:end;width:42px;height:42px;padding:.55rem;border:1px solid var(--color-border);border-radius:50%;background:var(--color-surface);display:grid;place-content:center;gap:.24rem;cursor:pointer;transition:transform var(--motion-fast) var(--motion-ease-premium),box-shadow var(--motion-medium) var(--motion-ease-premium)}.menu-toggle:hover{transform:translateY(-1px);box-shadow:0 10px 18px #144a6924}.menu-toggle span{width:15px;height:2px;border-radius:999px;background:var(--color-brand-900)}.main-nav{grid-column:1 / -1;display:none;flex-direction:column;gap:.3rem;margin-top:.5rem;padding:.45rem;border:1px solid var(--color-border);border-radius:var(--radius-m);background:#fffffff0}.main-nav.is-open{display:flex}.main-nav a,.nav-link{display:inline-flex;width:100%;align-items:center;padding:.6rem .75rem;border-radius:var(--radius-s);font-weight:700;color:var(--color-brand-900);transition:transform var(--motion-fast) var(--motion-ease-premium),background-color var(--motion-fast) ease,color var(--motion-fast) ease}.main-nav a:hover,.nav-link:hover{transform:translateY(-1px);background:#1d6f9414;color:var(--color-brand-950)}.nav-link.is-active{background:#1d6f941a;color:var(--color-brand-950)}.header-actions{display:none;gap:.6rem;margin-left:auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;border:1px solid transparent;border-radius:var(--radius-pill);padding:.68rem 1.1rem;font-size:.92rem;font-weight:700;cursor:pointer;transition:transform var(--motion-fast) var(--motion-ease-premium),box-shadow var(--motion-medium) var(--motion-ease-premium),border-color var(--motion-fast) ease,background-color var(--motion-fast) ease}.btn:hover{transform:translateY(-1px)}.btn-primary{color:#fff;background:linear-gradient(120deg,var(--color-accent),var(--color-accent-700));box-shadow:0 12px 22px #f2752a4d}.btn-secondary{color:var(--color-brand-900);border-color:var(--color-border);background:var(--color-surface)}.btn-phone{font-weight:800}.hero{color:#fff;background:radial-gradient(circle at 84% 12%,rgba(124,198,230,.35),transparent 45%),radial-gradient(circle at 10% 80%,rgba(242,117,42,.25),transparent 46%),linear-gradient(142deg,#123752,#1f6288 55%,#255f7a)}.hero-frame{position:relative;overflow:clip;border-bottom-left-radius:18% 7%;border-bottom-right-radius:18% 7%}.hero-frame:after{content:"";position:absolute;inset:auto -1% -1px;height:72px;background:radial-gradient(135% 88% at 50% 0%,#ffffff1f,#ffffff0f 28%,#fff0 68%),linear-gradient(180deg,#fff0,#ffffff12);opacity:.78;pointer-events:none}.hero h1{max-width:24ch;font-size:clamp(2.1rem,4.6vw,3.8rem);line-height:1.05;color:#fff}.hero h2{margin-top:.85rem;max-width:45ch;color:#d7ecfb;font-size:clamp(1.05rem,2.2vw,1.45rem);font-weight:500}.lead{margin-top:1rem;max-width:66ch;color:#eaf6ff}.eyebrow{margin-bottom:.75rem;display:inline-flex;width:fit-content;border-radius:var(--radius-pill);padding:.3rem .65rem;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;color:#dff2ff;background:#ffffff24}.actions{display:flex;flex-wrap:wrap;gap:.72rem;margin-top:1.45rem}.fx-fade-in,.fx-fade-up,.fx-slide-in-left{opacity:0;animation-duration:var(--motion-slow);animation-fill-mode:forwards;animation-timing-function:var(--motion-ease-expressive)}.fx-fade-in{animation-name:fxFadeIn}.fx-fade-up{animation-name:fxFadeUp}.fx-slide-in-left{animation-name:fxSlideInLeft}.hero-animate-in,.hero-animate-in-left,.hero-animate-in-up{opacity:0;animation-duration:.64s;animation-fill-mode:forwards;animation-timing-function:cubic-bezier(.2,.95,.3,1)}.hero-animate-in{animation-name:heroFadeIn}.hero-animate-in-left{animation-name:heroFadeInLeft}.hero-animate-in-up{animation-name:heroFadeInUp}@keyframes heroFadeIn{0%{opacity:0}to{opacity:1}}@keyframes fxFadeIn{0%{opacity:0}to{opacity:1}}@keyframes fxFadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fxSlideInLeft{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes heroFadeInLeft{0%{opacity:0;transform:translate(-22px)}to{opacity:1;transform:translate(0)}}@keyframes heroFadeInUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.card-grid{display:grid;grid-template-columns:1fr;gap:1rem}.course-card{position:relative;isolation:isolate;overflow:clip;display:grid;gap:.85rem;border:1px solid var(--color-border);border-radius:var(--radius-l);padding:1.15rem;background:linear-gradient(180deg,#fff,#f7fbff);box-shadow:var(--shadow-soft);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;animation:courseCardFadeIn var(--motion-slow) var(--motion-ease-expressive) both}.course-card:nth-child(2n){animation-delay:80ms}.course-card:nth-child(3n){animation-delay:.14s}.course-card:hover{transform:translateY(-4px);border-color:#1d6f9442;box-shadow:var(--shadow-lifted)}.course-card h3{font-size:1.28rem}.course-card p{color:var(--color-muted)}.course-card-media{aspect-ratio:16 / 9;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(20,74,105,.16);border-radius:var(--radius-m);background:radial-gradient(circle at 10% 8%,#fffc,#fff0),linear-gradient(150deg,#1d6f9424,#2c90bc0f)}.course-card-image{width:100%;height:100%;object-fit:contain;object-position:center;padding:.45rem;transition:transform .32s ease}.course-card:hover .course-card-image{transform:scale(1.04)}@keyframes courseCardFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.course-groups-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:1.35rem}.course-group-card{display:grid;gap:.7rem;border:1px solid var(--color-border);border-radius:var(--radius-l);padding:1.2rem;background:radial-gradient(circle at 94% -8%,var(--color-glow-brand),transparent 45%),var(--color-surface);box-shadow:var(--shadow-soft)}.course-group-card h3{color:var(--color-brand-900);font-size:1.2rem}.course-group-card p{color:var(--color-muted)}.course-group-links{list-style:none;margin:.4rem 0 .8rem;padding:0;display:grid;gap:.45rem}.course-group-links a{display:inline-flex;align-items:center;gap:.42rem;color:var(--color-brand-900);font-weight:700}.course-group-links a:before{content:"→";color:var(--color-accent-700);font-weight:800}.accreditation-logos{display:grid;grid-template-columns:repeat(auto-fit,minmax(136px,1fr));gap:1rem;margin-top:1.7rem;align-items:center}.accreditation-logos img{width:100%;max-height:86px;object-fit:contain;padding:.52rem;border:1px solid var(--color-border);border-radius:var(--radius-s);background:#fff}.cta-strip{position:relative;background:linear-gradient(140deg,#0f334b,#184d6e);color:#e5f4ff}.cta-strip .section-heading{color:#fff}.cta-strip .section-description{color:#cae8ff}.faq-list details{margin-bottom:.8rem;border:1px solid var(--color-border);border-radius:var(--radius-l);background:var(--color-surface);box-shadow:var(--shadow-soft)}.faq-list summary{cursor:pointer;list-style:none;padding:1rem 1.1rem .9rem;font-weight:700;color:var(--color-brand-900)}.section-copy-faq{padding:0 1.1rem 1rem;color:var(--color-muted)}.prose{position:relative;overflow:clip;border:1px solid var(--color-border);border-radius:var(--radius-xl);background:radial-gradient(circle at 100% 0,rgba(44,144,188,.08),transparent 32%),var(--color-surface);box-shadow:var(--shadow-soft);padding:1.75rem}.prose:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,var(--color-accent),rgba(242,117,42,.35))}.section-copy{display:grid;gap:.78rem;max-width:82ch;color:#2c3f4e}.section-copy-paragraph{margin:0;white-space:pre-line;line-height:1.75}.section-copy-list{margin:0;display:grid;gap:.4rem;padding-left:1.25rem}.section-copy a{color:var(--color-brand-700);text-decoration:underline;text-underline-offset:2px}.section-copy-quote{margin:0;border-left:4px solid rgba(20,74,105,.25);padding:.25rem 0 .25rem .9rem;color:var(--color-muted);font-style:italic}.section-copy-contact{margin-bottom:1rem}.contact-info-cards{display:grid;gap:.85rem;margin:0 0 1.3rem}.contact-info-card{display:grid;gap:.15rem;border:1px solid rgba(20,74,105,.16);border-radius:var(--radius-l);background:linear-gradient(155deg,#fff,#f4faff);box-shadow:var(--shadow-soft);padding:.95rem 1rem}.contact-info-icon{font-size:1rem}.contact-info-label{margin:0;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:700;color:#546574}.contact-info-value{margin:0;font-weight:700;color:var(--color-brand-900);line-height:1.45}a.contact-info-value:hover{color:var(--color-accent-700)}.contact-info-card-address{grid-column:1 / -1}.enquiry-form{display:grid;gap:.9rem;border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-soft);padding:1.2rem}.enquiry-grid{display:grid;gap:.9rem}.enquiry-field-full{grid-column:1 / -1}label{display:grid;gap:.25rem;font-weight:500}input,select,textarea{width:100%;border:1px solid #c7d4df;border-radius:var(--radius-s);padding:.72rem .78rem;margin-top:.25rem;font:inherit;color:var(--color-text);background:#fff}textarea{resize:vertical}.form-feedback{margin-top:.25rem;color:var(--color-brand-900);font-weight:700}.turnstile-wrap{margin-top:.25rem}.form-security-hint{margin-top:.45rem;font-size:.9rem;color:#4c5f6f}.hp-field{position:absolute;left:-9999px}.site-footer{color:#dce8f5;position:relative;overflow:clip;background:radial-gradient(circle at 8% 20%,#2c90bc2e,#2c90bc00),linear-gradient(165deg,#0b2538,#122f46);padding:3rem 0 1.2rem}.site-footer:before{content:"";position:absolute;inset:0 auto auto 0;width:min(420px,62vw);height:min(320px,50vw);background:radial-gradient(circle at 40% 40%,#89bed929,#89bed900);pointer-events:none}.footer-grid{display:grid;gap:1.3rem}.footer-block{display:grid;gap:.55rem}.footer-title{color:#fff;font-size:1.15rem}.footer-copy{color:#c0d4e5}.footer-copy a{color:#dce8f5;text-decoration:none}.footer-copy a:hover{color:#fff}.footer-link-row a{color:#dce8f5}.footer-link-row a:hover{color:#fff}.footer-meta{margin-top:1.5rem;border-top:1px solid rgba(220,232,245,.2);padding-top:.95rem;color:#c0d4e5;font-size:.86rem}.cookie-consent{position:fixed;right:1rem;bottom:1rem;left:1rem;z-index:25;max-width:560px;border:1px solid rgba(220,232,245,.24);border-radius:var(--radius-m);background:linear-gradient(148deg,#0f2f47,#123a56);color:#f4f8fd;box-shadow:var(--shadow-medium);padding:1rem}.cookie-title{margin-bottom:.35rem;font-weight:800;color:#fff}.cookie-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.8rem}.cookie-consent .btn-secondary{color:#e3edf7;border-color:#e3edf766;background:transparent}.skeleton-shell{background:radial-gradient(circle at 8% 8%,rgba(44,144,188,.06),transparent 34%),radial-gradient(circle at 95% 16%,rgba(242,117,42,.07),transparent 38%),var(--color-bg)}.skeleton-header{border-bottom:1px solid var(--color-border);background:#f8fcffe0}.skeleton-header-inner{display:grid;grid-template-columns:190px 1fr 150px;gap:.7rem;align-items:center;padding:.8rem 0}.skeleton-nav{display:flex;justify-content:center;gap:.55rem}.skeleton-main{display:grid}.skeleton-block,.skeleton-text-line,.skeleton-card{position:relative;overflow:hidden;border-radius:var(--radius-m);background:var(--color-skeleton-base)}.skeleton-block:after,.skeleton-text-line:after,.skeleton-card:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,.64) 48%,transparent 100%);animation:skeletonShimmer 1.25s linear infinite}.skeleton-hero{padding:2.7rem 0}.skeleton-hero-inner{display:grid;gap:.8rem}.skeleton-content{padding:1.8rem 0 2.6rem}.skeleton-grid{display:grid;grid-template-columns:1fr;gap:1rem}.skeleton-card{border-radius:var(--radius-l);border:1px solid rgba(20,74,105,.1);background:var(--color-surface-elevated);min-height:220px;padding:1rem}.skeleton-card-stack{display:grid;gap:.6rem}.skeleton-footer{margin-top:1rem;padding:2.4rem 0 1.4rem;background:linear-gradient(165deg,#0b2538,#122f46)}.loading,.not-found{padding:4rem 0}.not-found h1{margin-bottom:.8rem}@media(min-width:820px){.section{padding:var(--space-section-desktop) 0}.header-inner{grid-template-columns:auto 1fr auto;gap:.95rem;padding:.75rem 0}.menu-toggle{display:none}.main-nav{grid-column:auto;display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:.2rem;margin-top:0;margin-left:auto;padding:0;border:0;background:transparent}.main-nav a,.nav-link{width:auto;padding:.58rem .78rem}.header-actions{display:inline-flex}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem}.course-groups-grid,.contact-info-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:1.3fr 1fr 1fr}.enquiry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cookie-consent{left:auto}.skeleton-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1120px){.card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.course-groups-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-info-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.contact-info-card-address{grid-column:auto}.skeleton-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@keyframes skeletonShimmer{to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}.hero-animate-in,.hero-animate-in-left,.hero-animate-in-up,.fx-fade-in,.fx-fade-up,.fx-slide-in-left{animation:none!important;opacity:1!important;transform:none!important}.skeleton-block:after,.skeleton-text-line:after,.skeleton-card:after{animation:none!important;transform:translate(0)!important}.course-card:hover,.btn:hover{transform:none!important}}
