@font-face{font-family:Exo;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Exo-Regular.woff2)format("woff2")}@font-face{font-family:Exo;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/Exo-Italic.woff2)format("woff2")}@font-face{font-family:Exo;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/Exo-Medium.woff2)format("woff2")}@font-face{font-family:Exo;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/Exo-SemiBold.woff2)format("woff2")}@font-face{font-family:Exo;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/Exo-Bold.woff2)format("woff2")}@font-face{font-family:Exo;font-style:italic;font-weight:700;font-display:swap;src:url(/fonts/Exo-BoldItalic.woff2)format("woff2")}@font-face{font-family:"Baloo 2";font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/Baloo2-SemiBold.woff2)format("woff2")}@font-face{font-family:"Baloo 2";font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/Baloo2-Bold.woff2)format("woff2")}@font-face{font-family:"Baloo 2";font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/Baloo2-ExtraBold.woff2)format("woff2")}:root{--colour-bg:#f7f7f8;--colour-surface:#fff;--colour-surface-alt:#eef1f3;--colour-border:#d6d9de;--colour-text:#102830;--colour-text-muted:#5b6b72;--colour-text-inverse:#fff;--colour-primary:#102830;--colour-primary-hover:#1c3a44;--colour-accent:#f0801c;--colour-accent-hover:#d96c12;--colour-accent-amber:#f09018;--colour-accent-deep:#f06820;--colour-focus:#1a73e8;--colour-success:#1e7d4f;--colour-error:#b3261e;--font-body:"Exo", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-heading:"Baloo 2", "Exo", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.25rem;--font-size-xl:1.75rem;--font-size-2xl:2.5rem;--line-height-tight:1.2;--line-height-base:1.6;--font-weight-regular:400;--font-weight-medium:500;--font-weight-bold:700;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-8:3rem;--space-12:4.5rem;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--shadow-sm:0 1px 2px #00000014;--shadow-md:0 4px 16px #0000001a;--content-max-width:1080px;--header-height:64px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--colour-bg);color:var(--colour-text);font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-base)}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:700;line-height:var(--line-height-tight);color:var(--colour-text)}h1{font-weight:800}a{color:var(--colour-accent)}:focus-visible{outline:3px solid var(--colour-focus);outline-offset:2px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{left:var(--space-2);background:var(--colour-primary);color:var(--colour-text-inverse);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);z-index:100;transition:top .15s ease-in-out;position:absolute;top:-3rem}.skip-link:focus{top:var(--space-2)}.site-header{background:var(--colour-surface);border-bottom:1px solid var(--colour-border);z-index:50;position:sticky;top:0}.site-header__inner,.site-footer__inner,.page{max-width:var(--content-max-width);padding:var(--space-4);margin:0 auto}.site-header__inner{align-items:center;gap:var(--space-5);flex-wrap:wrap;display:flex}.logo-slot{align-items:center;gap:var(--space-2);font-weight:var(--font-weight-bold);color:var(--colour-text);text-decoration:none;display:inline-flex}.logo-slot__image{width:auto;height:40px;display:block}.site-footer .logo-slot__image{height:34px}.primary-nav{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.primary-nav a{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--colour-text);text-decoration:none;display:inline-block}.primary-nav a:hover{background:var(--colour-surface-alt)}.primary-nav a.is-active{background:var(--colour-primary);color:var(--colour-text-inverse)}.header-spacer{margin-left:auto}.breadcrumbs{background:var(--colour-surface-alt);border-bottom:1px solid var(--colour-border)}.breadcrumbs ol{max-width:var(--content-max-width);padding:var(--space-2) var(--space-4);gap:var(--space-2);font-size:var(--font-size-sm);flex-wrap:wrap;margin:0 auto;list-style:none;display:flex}.breadcrumbs li:after{content:"/";margin-left:var(--space-2);color:var(--colour-text-muted)}.breadcrumbs li:last-child:after{content:""}.site-footer{background:var(--colour-surface);border-top:1px solid var(--colour-border);margin-top:var(--space-12)}.site-footer__inner{gap:var(--space-5);color:var(--colour-text-muted);font-size:var(--font-size-sm);flex-wrap:wrap;justify-content:space-between;display:flex}.card{background:var(--colour-surface);border:1px solid var(--colour-border);border-radius:var(--radius-md);padding:var(--space-5);box-shadow:var(--shadow-sm)}.card-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.button{background:var(--colour-accent);color:var(--colour-text-inverse);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-5);font-size:var(--font-size-base);cursor:pointer;border:none;text-decoration:none;display:inline-block}.button:hover{background:var(--colour-accent-hover)}.button:disabled{opacity:.5;cursor:not-allowed}.button--secondary{background:var(--colour-surface-alt);color:var(--colour-text)}.placeholder-note{border-left:4px solid var(--colour-accent);background:var(--colour-surface-alt);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--colour-text-muted)}.reserved-feature{border:2px dashed var(--colour-border);border-radius:var(--radius-md);padding:var(--space-6);text-align:center;color:var(--colour-text-muted)}.field{margin-bottom:var(--space-4);display:block}.field label{font-weight:var(--font-weight-medium);margin-bottom:var(--space-1);display:block}.field input,.field select,.field textarea{width:100%;padding:var(--space-3);border:1px solid var(--colour-border);border-radius:var(--radius-sm);font:inherit;background:var(--colour-surface)}.field--checkbox{gap:var(--space-3);align-items:flex-start;display:flex}.field--checkbox input{width:auto;margin-top:.3rem}.field__hint{font-size:var(--font-size-sm);color:var(--colour-text-muted)}.field__error{color:var(--colour-error);font-size:var(--font-size-sm)}.form-status{padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);margin-bottom:var(--space-4)}.form-status--error{color:var(--colour-error);background:#fbeae9}.form-status--success{color:var(--colour-success);background:#e7f4ec}.consent-banner{inset:auto var(--space-4) var(--space-4) var(--space-4);max-width:var(--content-max-width);background:var(--colour-surface);border:1px solid var(--colour-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--space-4);gap:var(--space-3);z-index:60;flex-wrap:wrap;justify-content:space-between;align-items:center;margin:0 auto;display:flex;position:fixed}.admin-shell{grid-template-columns:220px 1fr;min-height:100vh;display:grid}.admin-sidebar{background:var(--colour-primary);color:var(--colour-text-inverse);padding:var(--space-4);gap:var(--space-4);flex-direction:column;display:flex}.admin-sidebar__title{font-family:var(--font-heading);margin:0;font-weight:700}.admin-nav{gap:var(--space-1);flex-direction:column;flex:1;display:flex}.admin-nav__link{color:var(--colour-text-inverse);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);text-decoration:none}.admin-nav__link:hover{background:#ffffff1f}.admin-nav__link.is-active{background:var(--colour-accent)}.admin-sidebar__footer{gap:var(--space-2);font-size:var(--font-size-sm);padding-top:var(--space-3);word-break:break-all;border-top:1px solid #fff3;flex-direction:column;display:flex}.admin-main{padding:var(--space-6);max-width:1000px}.admin-login{min-height:100vh;padding:var(--space-4);place-items:center;display:grid}.admin-login__card{width:100%;max-width:360px}.admin-table{border-collapse:collapse;background:var(--colour-surface);border:1px solid var(--colour-border);width:100%}.admin-table th,.admin-table td{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--colour-border);font-size:var(--font-size-sm);vertical-align:top}.admin-table th{background:var(--colour-surface-alt)}.admin-filters{gap:var(--space-3);margin:var(--space-4) 0;flex-wrap:wrap;align-items:end;display:flex}.admin-filters label{font-size:var(--font-size-sm);gap:var(--space-1);flex-direction:column;display:flex}.admin-meta{color:var(--colour-text-muted);font-size:var(--font-size-sm)}.admin-pager{align-items:center;gap:var(--space-4);margin-top:var(--space-4);display:flex}.link-button{color:var(--colour-accent);cursor:pointer;font:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.link-button--danger{color:var(--colour-error)}
