.no-js .loader,.no-js .loader:after,.no-js .theme-toggler{display:none}noscript p{background-color:var(--el-bg);border:1px dashed var(--body-fg);border-radius:.75rem;color:var(--body-fg);margin-inline:auto;max-inline-size:40ch;padding:1em;text-align:center;text-wrap:balance}:is(noscript p) span{display:block}:is(:is(noscript p) span):first-child{font-weight:var(--bold)}:root{color-scheme:light;overflow-y:scroll;--skip-link-gap:20rem;--bold:600;--border-radius:1.25rem;--radius:0.375rem;--trim:trim-both cap alphabetic;--shadow-top:0 -0.25rem 0.375rem;--shadow-bottom:0 0.25rem 0.375rem;--shadow-right-bottom:0.25rem 0.25rem 0.5rem;--warning:red;--white:#fff;--body-bg:#ccc;--body-fg:#000;--el-bg:#fff;--accent-colour:blue;--button-text:#fff;--image-invert:0;--shadow-colour:rgba(0,0,0,.2);--red:#b10202}.darkmode{color-scheme:dark;--body-bg:#333;--body-fg:#fff;--el-bg:#000;--accent-colour:aqua;--button-text:#000;--image-invert:1;--shadow-colour:rgba(0,0,0,.5);--red:#ff7a7a}@media (prefers-color-scheme:dark){:root{--body-bg:#333;--body-fg:#fff;--el-bg:#000;--accent-colour:aqua;--image-invert:1;--shadow-colour:rgba(0,0,0,.5)}}*,:after,:before{box-sizing:border-box;margin:0}:focus-visible{box-shadow:inset 0 0 0 .1875rem orange;outline:none}body{background-color:var(--el-bg);font-family:system-ui,sans-serif;font-size:clamp(1.156rem,1.1182rem + .1757vw,1.25rem)}@media (width > 31.25rem){body{background-color:var(--body-bg)}}@media (prefers-reduced-motion:no-preference){body{transition:background-color .25s linear}}body{color:var(--body-fg);display:grid;grid-template-rows:auto 1fr auto;line-height:1.5;min-height:100vh;min-height:100dvh;position:relative}.h1{align-items:center;display:flex;flex-wrap:wrap;font-size:clamp(1.75rem,1.4486rem + 1.4019vw,2.5rem);gap:1rem;justify-content:center;margin-inline:auto}.h1 svg{height:3.125rem;width:3.125rem;fill:var(--body-fg)}.h1 span{text-align:center;text-box:var(--trim)}@media screen and (width < 31.25rem){.h1{gap:.75rem;line-height:1.2;margin-inline:.75rem}}img,picture{display:block}img{height:auto;max-width:100%}p{text-wrap:pretty}.h1,h1,h2,h3{font-weight:400;text-wrap:balance}h1,h2,h3{text-align:center}h1,h2{font-size:clamp(1.25rem,1.1495rem + .4673vw,1.5rem)}h3{font-size:clamp(1.156rem,1.1182rem + .1757vw,1.25rem)}button,input,select,textarea{font-family:inherit;font-size:inherit}input{background-color:inherit;border-color:inherit;color:inherit}a{color:var(--body-fg);text-decoration:none}a:hover{text-decoration:underline}ul{list-style-type:"";padding-inline-start:0}ul ul{padding-inline-start:1.5rem}:is(ul ul) ul{list-style-type:disc}.disc{list-style-type:disc;padding-inline-start:1.5rem}b,strong{font-weight:600}code{font-family:Courier New,Courier,monospace;font-weight:900}.container{--_content-max-width:43.75rem;--_content-space-outside:0.75rem;margin-inline:auto;width:min(var(--_content-max-width),100% - var(--_content-space-outside) * 2)}.flow>*+*{margin-block-start:1em}.element{padding:1rem}a[href^=https]{color:var(--accent-colour);text-underline-offset:.5em}a[href^=https]:after{color:var(--accent-colour);content:" \27F6"}.element,.footer,.header{background-color:var(--el-bg)}.footer{border-block-start:.125rem solid currentColor;padding:2em 1em;text-align:center}@media (width > 31.25rem){.footer{border:0;box-shadow:var(--shadow-top) var(--shadow-colour)}}.header{border-block-end:.125rem solid currentColor;display:flex;flex-direction:column;gap:1rem;margin-block-start:0;padding-block:2em 1em}@media (width > 31.25rem){.header{border:0;box-shadow:var(--shadow-bottom) var(--shadow-colour)}}.main{display:flex;flex-direction:column}@media (width > 31.25rem){.main{padding:2em .75em}}.main,.skip-link{margin-block-start:0}.skip-link{background-color:var(--body-bg);color:var(--body-fg);font-weight:600;margin-inline-end:.625rem;padding:.3125rem .625rem}.element-invisible{clip:rect(.0625rem,.0625rem,.0625rem,.0625rem);height:.0625rem;left:0;overflow:hidden;position:absolute;top:0;z-index:200}.element-invisible.element-focusable:active,.element-invisible.element-focusable:focus{clip:auto;height:auto;overflow:visible}.visually-hidden{border:0;clip-path:inset(0);height:.0625rem;margin:-.0625rem;overflow:hidden;padding:0;position:absolute;width:.0625rem}.primary-navigation{position:relative}.primary-navigation nav{margin:0 auto;width:fit-content}.primary-navigation ul{align-items:baseline;display:flex;gap:1.25rem;list-style:"";margin-inline:auto;width:fit-content}.primary-navigation a{border-block-end:.3125rem solid transparent;color:var(--accent-colour);cursor:pointer;display:block;margin-block-end:.625rem;padding-block-end:.3125rem;text-decoration:none}:is(.primary-navigation a):hover,[aria-current=page]:is(.primary-navigation a){border-block-end:.3125rem solid var(--body-bg);color:var(--body-fg)}[aria-current=page]:is(.primary-navigation a){pointer-events:none}.theme-toggler{gap:.625rem;margin-block-start:0;padding:.3125rem .625rem;position:absolute;right:0;top:0}.theme-toggler,.theme-toggler button{align-items:center;border:0;display:flex}.theme-toggler button{background-color:var(--accent-colour);border-radius:var(--border-radius);cursor:pointer;font-family:inherit;font-size:clamp(.875rem,.8248rem + .2336vw,1rem);height:.8125rem;justify-content:flex-start;padding:.125rem;width:1.5625rem}:is(.theme-toggler button) span{background-color:#fff;border-radius:50%;height:.8125rem;width:.8125rem}.theme-toggler p{color:var(--body-fg);font-size:.875rem;font-weight:600}.theme-toggler .underline{border-bottom:.0625rem solid}.darkmode .theme-toggler button{justify-content:flex-end}.loader{align-items:center;background-color:var(--body-bg);color:var(--body-fg);display:flex;inset:0;justify-content:center;position:fixed;z-index:500}.loader-hidden{opacity:0;visibility:hidden}.loader:after{content:"Loading...";font-size:3.125rem}@media (prefers-reduced-motion:no-preference){.loader{transition:opacity .75s,visibility .75s}.loader:after{animation:loading .75s ease infinite;border:1.25rem solid var(--body-fg);border-radius:50%;border-top-color:var(--el-bg);content:"";font-size:0;height:6.25rem;width:6.25rem}@keyframes loading{0%{transform:rotate(0turn)}to{transform:rotate(1turn)}}}.span-all{grid-column:1/-1}.contact{background-color:var(--el-bg);padding:2em .75em}@media (width > 31.25rem){.contact{padding:2em}}.contact{border-radius:var(--border-radius);margin-inline:auto;max-inline-size:43.75rem}.contact h1+p{margin-inline:auto;max-inline-size:fit-content;text-align:center}.contact-form{color:inherit;display:grid;gap:1rem;margin-inline:auto}@media (width > 31.25rem){.contact-form{grid-template-columns:repeat(2,1fr)}}.contact-form label,.contact-form legend{padding-block-end:.25em}.contact-form legend{left:-.1875rem;position:relative}.contact-form fieldset{border:0;display:grid;gap:inherit;grid-template-columns:inherit;padding:0}.contact-form textarea{background-color:inherit;box-sizing:content-box; /* ! */height:3lh;resize:none}.contact-form button{background-color:var(--accent-colour);border:0;border-radius:var(--radius);color:var(--button-text);cursor:pointer;padding:.75em 1.5em}:is(.contact-form button):focus-visible{background-color:var(--body-fg)}@media (hover:hover){.contact-form button:hover{background-color:var(--body-fg)}}.contact-form input:user-invalid{border-color:var(--red)}.form-group{display:grid;grid-auto-rows:min-content}.form-group [type=checkbox],.form-group [type=radio]{accent-color:var(--accent-colour);scale:1.4}.form-group:has(:not([type=radio])[required]) label,fieldset:has([required]) legend{display:flex;gap:1ch}:is(fieldset:has([required]) legend,.form-group:has(:not([type=radio])[required]) label):after{color:var(--red);content:"*"}.form-group.wrap{flex-wrap:wrap}.form-group:has([type=radio]),input,textarea{padding:.75em 1.5em}.form-group:has([type=radio]),input,select,textarea{border:.0625rem solid var(--body-fg);border-radius:var(--radius)}.form-group:has([type=radio],[type=checkbox]){display:flex;gap:1ch}.form-group:has([type=radio]){position:relative}.form-group:has([type=radio]) label:after{content:"";cursor:pointer;inset:0;position:absolute}.form-group:has([type=radio]:checked){background-color:#333;border-color:var(--accent-colour);color:var(--white)}.error-message{color:var(--red)}.wrap .error-message,fieldset .error-message{position:relative;top:-1rem}.error-message:empty{display:none}.completion-message{background-color:var(--el-bg);border:.125rem solid var(--green);border-radius:var(--radius);margin-block-start:1em;margin-inline:auto;max-inline-size:fit-content;padding:.75em;text-align:center}.completion-message:empty{display:none}.about{border-radius:var(--border-radius)}@media (width > 31.25rem){.about{padding:2em}}