:root{--bg:#0a0d12;--bg2:#101621;--panel:rgba(18,26,38,.78);--panel2:rgba(12,18,28,.88);--line:rgba(111,243,255,.34);--line2:rgba(255,58,181,.28);--text:#ebf7ff;--muted:#a9bfd1;--muted-dark:#8ea4b6;--accent:#6ff3ff;--accent2:#ff3ab5;--accent3:#8bff7e;--danger:#ff8d8d;--s4:4px;--s8:8px;--s12:12px;--s16:16px;--s24:24px;--s32:32px;--s40:40px;--s64:64px;--max:1180px;--r1:1px;--r2:2px;--glow:0 0 0 1px rgba(111,243,255,.22),0 0 18px rgba(111,243,255,.12),0 0 34px rgba(255,58,181,.08)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;color:var(--text);background-color:var(--bg);background-image:radial-gradient(circle at 20% 0%,rgba(111,243,255,.08),transparent 26%),radial-gradient(circle at 100% 10%,rgba(255,58,181,.08),transparent 24%),linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(180deg,var(--bg),var(--bg2));background-size:auto,auto,24px 24px,24px 24px,auto;line-height:1.65}
img{max-width:100%;display:block}
a{color:var(--accent)}
a:hover{color:#c5fbff}
p,li,h1,h2,h3,h4{overflow-wrap:anywhere}
button,input,textarea{font:inherit}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #ecfbff;outline-offset:3px}
.site-footer :focus-visible,.mobile-menu :focus-visible,.cookie-banner :focus-visible{outline-color:#ffffff}
.skip-link{position:absolute;left:var(--s16);top:var(--s16);padding:var(--s12) var(--s16);background:var(--accent);color:#051118;text-decoration:none;transform:translateY(-140%);z-index:20}
.skip-link:focus-visible{transform:translateY(0)}
.container{width:min(calc(100% - var(--s32)),var(--max));margin-inline:auto}
.site-header{border-bottom:1px solid var(--line);background-color:rgba(8,11,16,.92);background-image:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,0));backdrop-filter:blur(12px)}
.header-inner{min-height:60px;display:flex;align-items:center;gap:var(--s24)}
.brand{display:flex;align-items:center;gap:var(--s12);min-width:0;text-decoration:none;color:var(--text)}
.brand-mark{width:30px;height:30px;color:var(--accent);filter:drop-shadow(0 0 10px rgba(111,243,255,.28))}
.brand-name{font-size:1rem;font-weight:700;letter-spacing:.04em}
.main-nav{display:none;min-width:0;flex:1 1 auto}
.main-nav ul{list-style:none;margin:0;padding:0;display:flex;justify-content:center;gap:var(--s16)}
.main-nav a{color:var(--muted);text-decoration:none;white-space:nowrap;font-size:.9rem;padding:var(--s8) var(--s4);display:block}
.main-nav a[aria-current=page],.main-nav a:hover{color:var(--text);text-shadow:0 0 10px rgba(111,243,255,.24)}
.header-cta{display:none}
.cta-link{display:inline-flex;align-items:center;gap:var(--s8);padding:10px var(--s16);border:1px solid var(--accent2);color:var(--text);text-decoration:none;white-space:nowrap;flex-shrink:0;background-color:rgba(255,58,181,.08);background-image:linear-gradient(90deg,rgba(255,58,181,.12),rgba(111,243,255,.08));box-shadow:var(--glow)}
.menu-toggle{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--line);background-color:rgba(255,255,255,.03);background-image:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01));color:var(--text);flex-shrink:0}
.mobile-menu[hidden]{display:none}
.mobile-menu{border-bottom:1px solid var(--line);background-color:rgba(6,10,16,.98);background-image:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,0));overflow-y:auto}
.mobile-menu-inner{width:min(calc(100% - var(--s32)),var(--max));margin-inline:auto;padding:var(--s24) 0 var(--s32);display:flex;flex-direction:column;align-items:flex-start}
.mobile-menu ul{list-style:none;padding:0;margin:0 auto 0 0;width:100%}
.mobile-menu li+li{margin-top:var(--s8)}
.mobile-menu a{display:block;padding:var(--s12) 0;color:var(--text);text-decoration:none;border-bottom:1px solid rgba(255,255,255,.08)}
.mobile-menu .cta-link{margin-top:var(--s24)}
.hero{padding:var(--s64) 0}
.hero-grid{display:grid;grid-template-columns:1fr;gap:var(--s24);align-items:center}
.hero-copy,.hero-media,.feature-card,.support-card,.article-card,.contact-card,.form-card,.legal-card,.cookie-banner,.cookie-panel{background-color:var(--panel);background-image:linear-gradient(135deg,rgba(111,243,255,.08),rgba(255,58,181,.06));border:1px solid var(--line);box-shadow:var(--glow)}
.hero-copy{padding:var(--s32)}
.kicker,.eyebrow{display:inline-block;color:var(--accent3);font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:var(--s12)}
h1{margin:0 0 var(--s16);font-size:clamp(2rem,5vw,4.4rem);line-height:1.05;text-shadow:0 0 18px rgba(111,243,255,.12)}
h2{margin:0 0 var(--s16);font-size:clamp(1.5rem,3vw,2.4rem);line-height:1.15}
h3{margin:0 0 var(--s12);font-size:1.15rem;line-height:1.25}
.lead{font-size:1.06rem;color:var(--muted)}
.hero-actions{display:flex;flex-wrap:wrap;gap:var(--s12);margin-top:var(--s24)}
.button,.button-secondary{display:inline-flex;align-items:center;justify-content:center;padding:12px var(--s16);text-decoration:none;min-width:0}
.button{background-color:rgba(111,243,255,.12);background-image:linear-gradient(90deg,rgba(111,243,255,.18),rgba(255,58,181,.12));color:var(--text);border:1px solid var(--accent)}
.button-secondary{background-color:rgba(255,255,255,.02);background-image:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01));color:var(--text);border:1px solid var(--line)}
.hero-media{padding:var(--s12)}
.hero-media img,.feature-image img,.page-lead img{width:100%;height:100%;object-fit:cover;border:1px solid rgba(255,255,255,.08)}
.section{padding:0 0 var(--s64)}
.colour-panels{display:grid;grid-template-columns:1fr;gap:var(--s24)}
.colour-panels>*{min-width:0}
.feature-card{padding:var(--s32);position:relative;text-align:center}
.feature-card:nth-child(1){background-color:rgba(14,23,36,.86);background-image:linear-gradient(135deg,rgba(111,243,255,.11),rgba(255,255,255,.02))}
.feature-card:nth-child(2){background-color:rgba(25,14,36,.86);background-image:linear-gradient(135deg,rgba(255,58,181,.12),rgba(255,255,255,.02))}
.feature-card:nth-child(3){background-color:rgba(18,28,20,.86);background-image:linear-gradient(135deg,rgba(139,255,126,.11),rgba(255,255,255,.02))}
.feature-card:nth-child(4){background-color:rgba(28,20,14,.86);background-image:linear-gradient(135deg,rgba(255,179,71,.12),rgba(255,255,255,.02))}
.feature-card:nth-child(5){background-color:rgba(12,21,31,.86);background-image:linear-gradient(135deg,rgba(145,166,255,.11),rgba(255,255,255,.02))}
.feature-index{display:block;font-size:clamp(2.6rem,8vw,5rem);line-height:1;color:rgba(255,255,255,.16);margin-bottom:var(--s12)}
.feature-card p{color:var(--muted);max-width:65ch;margin:0 auto var(--s24)}
.card-link{display:inline-flex;align-items:center;gap:var(--s8);text-decoration:none;color:var(--text);border-top:1px solid var(--line);padding-top:var(--s16)}
.support-grid,.contact-grid{display:grid;grid-template-columns:1fr;gap:var(--s24)}
.support-card,.contact-card,.form-card,.article-card,.legal-card{padding:var(--s32)}
.metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s16);margin-top:var(--s24)}
.metrics>*{min-width:0}
.metric{padding:var(--s16);border:1px solid rgba(255,255,255,.08);background-color:rgba(255,255,255,.02);background-image:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01))}
.metric strong{display:block;font-size:1.4rem;color:var(--accent)}
.page-head{padding:var(--s40) 0 var(--s32)}
.page-head h1{font-size:clamp(2rem,4vw,3.6rem)}
.page-lead{margin-bottom:var(--s32)}
.page-lead img{aspect-ratio:16/7}
.article{padding-bottom:var(--s64)}
.article-wrap{display:grid;grid-template-columns:1fr;gap:var(--s24)}
.article-card ul,.article-card ol{padding-left:1.25rem}
.article-card li+li{margin-top:var(--s8)}
.note{padding:var(--s16);border-left:3px solid var(--accent2);background-color:rgba(255,255,255,.03);color:var(--muted)}
table{width:100%;border-collapse:collapse;min-width:560px}
th,td{text-align:left;padding:var(--s12);border:1px solid rgba(255,255,255,.1);vertical-align:top}
th{color:var(--accent3);background-color:rgba(255,255,255,.03)}
.table-wrap{overflow-x:auto;border:1px solid rgba(255,255,255,.08)}
.form-row{display:grid;grid-template-columns:1fr;gap:var(--s16)}
label{display:block;margin-bottom:var(--s8);color:var(--muted)}
input,textarea{width:100%;padding:12px var(--s16);border:1px solid rgba(255,255,255,.15);background-color:rgba(8,12,18,.9);color:var(--text)}
textarea{min-height:160px;resize:vertical}
.field-note,.reply-note{color:var(--muted);font-size:.94rem}
.error-text{color:#ffd2d2;font-size:.92rem;display:none;margin-top:var(--s8)}
.is-invalid+.error-text,.is-invalid~.error-text{display:block}
.form-actions{margin-top:var(--s24);display:flex;gap:var(--s12);flex-wrap:wrap}
.site-footer{border-top:1px solid var(--line);padding:var(--s40) 0;background-color:rgba(7,10,15,.95);background-image:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,0))}
.footer-grid{display:grid;grid-template-columns:1fr;gap:var(--s24)}
.footer-grid>*{min-width:0}
.site-footer h2,.site-footer h3{font-size:1rem;margin-bottom:var(--s12)}
.site-footer p,.site-footer li,.site-footer a{color:var(--muted-dark)}
.site-footer ul{list-style:none;padding:0;margin:0}
.site-footer li+li{margin-top:var(--s8)}
.site-footer a{text-decoration:none}
.site-footer a:hover{color:var(--text)}
.foot-small{font-size:.92rem}
.cookie-banner{position:fixed;left:var(--s16);right:var(--s16);bottom:var(--s16);padding:var(--s24);z-index:30;background-color:rgba(8,12,18,.97);background-image:linear-gradient(135deg,rgba(111,243,255,.08),rgba(255,58,181,.06))}
.cookie-banner[hidden]{display:none}
.cookie-top{display:flex;flex-direction:column;gap:var(--s16)}
.cookie-actions{display:flex;flex-wrap:wrap;gap:var(--s12)}
.cookie-actions button,.cookie-save{padding:12px var(--s16);border:1px solid var(--line);background-color:rgba(255,255,255,.03);background-image:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01));color:var(--text);cursor:pointer;flex:1 1 auto}
.cookie-actions button:first-child,.cookie-save{border-color:var(--accent);background-color:rgba(111,243,255,.1);background-image:linear-gradient(90deg,rgba(111,243,255,.18),rgba(255,58,181,.1))}
.cookie-panel{margin-top:var(--s16);padding:var(--s24)}
.cookie-checks{display:grid;grid-template-columns:1fr;gap:var(--s16);margin:var(--s16) 0}
.cookie-check{display:flex;gap:var(--s12);align-items:flex-start}
.cookie-check input{width:auto;margin-top:4px}
@media (min-width:400px){.metrics{grid-template-columns:repeat(4,1fr)}}
@media (min-width:480px){.form-row.two{grid-template-columns:1fr 1fr}.cookie-top{gap:var(--s24)}}
@media (min-width:768px){.hero-grid,.support-grid,.contact-grid,.article-wrap,.footer-grid{grid-template-columns:1.2fr 1fr}.article-wrap.narrow{grid-template-columns:minmax(0,3fr) minmax(280px,1.2fr)}.cookie-actions{justify-content:flex-end}.cookie-actions button{flex:0 1 auto}.footer-grid{grid-template-columns:1.3fr 1fr 1fr}.colour-panels{gap:var(--s32)}}
@media (min-width:1024px){.brand{flex-shrink:0;white-space:nowrap}.main-nav{display:block}.header-cta{display:block}.menu-toggle{display:none}.hero-grid{grid-template-columns:1.05fr .95fr}.support-grid{grid-template-columns:1.1fr .9fr}.contact-grid{grid-template-columns:.95fr 1.05fr}.article-wrap{grid-template-columns:minmax(0,1fr)}}
@media (max-width:1023px){.brand{flex-shrink:1;min-width:0}.brand-name{overflow-wrap:anywhere}.header-cta{display:none}}
@media (max-width:479px){.cookie-actions button{width:100%}}
@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}html{scroll-behavior:auto}}