@font-face{font-family:Atkinson Hyperlegible;src:url(https://www.johnsy.com/assets/fonts/Atkinson-Hyperlegible-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Atkinson Hyperlegible;src:url(https://www.johnsy.com/assets/fonts/Atkinson-Hyperlegible-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Atkinson Hyperlegible;src:url(https://www.johnsy.com/assets/fonts/Atkinson-Hyperlegible-Italic.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Atkinson Hyperlegible;src:url(https://www.johnsy.com/assets/fonts/Atkinson-Hyperlegible-BoldItalic.woff2)format("woff2");font-weight:700;font-style:italic;font-display:swap}:root{--parkrun-aubergine:#4c1a57;--parkrun-apricot:#f7a541;--parkrun-white:#fff;--parkrun-black:#000;--parkrun-grey:#666;--parkrun-light-grey:#f5f5f5;--parkrun-table-header:#f2f2f2;--parkrun-table-border:#ddd;--parkrun-table-stripe:#f9f9f9;--parkrun-focus-ring:#4a90e2}*,:before,:after{box-sizing:border-box}body{color:var(--parkrun-black);background:var(--parkrun-light-grey);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:Atkinson Hyperlegible,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.7}a{text-decoration:none}.skip-link{background:var(--parkrun-apricot);color:var(--parkrun-black);z-index:1000;border-radius:6px;padding:.5rem .75rem;font-weight:600;text-decoration:none;transition:transform .2s;position:absolute;top:.75rem;left:1rem;transform:translateY(-200%)}.skip-link:focus,.skip-link:focus-visible{outline:2px solid var(--parkrun-focus-ring);outline-offset:2px;transform:translateY(0)}.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}#header,#footer{box-sizing:border-box;width:100vw;margin-left:-50vw;margin-right:-50vw;position:relative;left:50%;right:50%}#header{background-color:var(--parkrun-aubergine);color:var(--parkrun-white);padding:1.5rem 2rem;box-shadow:0 2px 8px #0000001a}#header h1{color:var(--parkrun-white);margin:.75rem 0 0;font-size:clamp(1.75rem,4vw,2rem);line-height:1.2}.breadcrumbs{color:#fffc;background:#ffffff1f;border-radius:999px;flex-wrap:wrap;align-items:center;gap:.5rem;width:fit-content;margin-bottom:.75rem;padding:.35rem .6rem;font-size:.85rem;display:flex}.breadcrumbs a{color:var(--parkrun-apricot);font-weight:600;text-decoration:none}.breadcrumbs a:hover,.breadcrumbs a:focus-visible{text-decoration:underline}.breadcrumbs span[aria-hidden=true]{color:#fff9}.breadcrumbs span[aria-current=page]{color:var(--parkrun-white);font-weight:600}#footer{background-color:var(--parkrun-aubergine);color:var(--parkrun-white);text-align:center;margin-top:2rem;padding:1rem 2rem;font-size:.875rem;line-height:1.4}#footer a{color:var(--parkrun-apricot);text-underline-offset:.15em;text-decoration:underline}#footer a:hover,#footer a:focus-visible{text-decoration:underline}#footer a:focus-visible{outline:2px solid var(--parkrun-apricot);outline-offset:2px}#footer p{margin:.5rem 0}#page{max-width:1200px;margin:0 auto;padding:2rem;display:block}#content{background:var(--parkrun-white);border-radius:8px;width:100%;max-width:1200px;margin:0 auto;padding:2rem;box-shadow:0 2px 4px #0000001a}#content a{color:var(--parkrun-aubergine);text-underline-offset:.12em;text-decoration:underline}#content a:hover,#content a:focus-visible{color:var(--parkrun-apricot)}#content a:focus-visible{outline:2px solid var(--parkrun-focus-ring);outline-offset:2px}.intro{color:var(--parkrun-grey);max-width:65ch;margin:0 0 1.25rem}.view-switch{flex-wrap:wrap;gap:.5rem;margin:0 0 1rem;display:flex}.view-switch__btn{font:inherit;cursor:pointer;border:2px solid var(--parkrun-aubergine);background:var(--parkrun-white);color:var(--parkrun-aubergine);border-radius:999px;padding:.45em 1.1em;font-size:.9rem;font-weight:700}.view-switch__btn[aria-pressed=true]{background:var(--parkrun-aubergine);color:var(--parkrun-white)}.view-switch__btn:focus-visible{outline:3px solid var(--parkrun-apricot);outline-offset:2px}.view-switch__btn:hover{border-color:#3d2f4f}.banner{border:1px solid var(--parkrun-table-border);background:var(--parkrun-white);border-radius:8px;width:100%;margin:0 0 1rem;padding:.75rem 1rem;box-shadow:0 1px 3px #0000000f}.banner p{margin:0}.banner--warning{border-color:var(--parkrun-apricot);color:var(--parkrun-black);background:#fff8e6}.banner--error{color:var(--parkrun-black);background:#fdecea;border-color:#c62828}.banner__detail{color:var(--parkrun-grey);word-break:break-word;margin-top:.5rem;font-size:.9rem}.toolbar{flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;margin-bottom:1.5rem;display:flex}.button{font:inherit;cursor:pointer;border:2px solid var(--parkrun-aubergine);background:var(--parkrun-aubergine);color:var(--parkrun-white);letter-spacing:.03em;text-transform:uppercase;border-radius:999px;padding:.65em 1.75em;font-size:.9rem;font-weight:700;box-shadow:0 6px 16px #0000001f}.button:hover{color:var(--parkrun-white);background:#3d2f4f;border-color:#3d2f4f}.button:focus-visible{outline:3px solid var(--parkrun-apricot);outline-offset:2px}.button:active{background:#1f1929;border-color:#1f1929}.last-updated{color:var(--parkrun-grey);margin:0;font-size:.9rem}.series-section{background:var(--parkrun-light-grey);border:1px solid #00000014;border-radius:8px;margin-bottom:2rem;padding:1.25rem}.series-section h2{color:var(--parkrun-aubergine);margin:0 0 1rem;font-size:1.35rem}.series-section h4{color:var(--parkrun-grey);margin:1.25rem 0 .5rem;font-size:1rem;font-weight:700}.table-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;max-width:100%;margin-bottom:.25rem;overflow-x:auto}.table-scroll:focus-visible{outline:2px solid var(--parkrun-focus-ring);outline-offset:2px}.data-table{border-collapse:collapse;width:100%;min-width:42rem;font-size:.95rem}.data-table--compact{min-width:20rem}.data-table th,.data-table td{border:1px solid var(--parkrun-table-border);vertical-align:top;text-align:left;overflow-wrap:break-word;word-break:break-word;padding:.55rem .65rem}.data-table thead th{background:var(--parkrun-table-header);vertical-align:bottom;font-weight:700}.data-table--sortable thead th{padding:.35rem .45rem}.sort-header-btn{font:inherit;text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:4px;margin:0;padding:.2rem .15rem;font-weight:700}.sort-header-btn:focus-visible{outline:2px solid var(--parkrun-focus-ring);outline-offset:2px}@media (width<=42rem){#page{padding:1.25rem 1rem}#content{padding:1.25rem}.series-section{padding:1rem}.data-table{font-size:1rem}.data-table th,.data-table td{padding:.5rem .55rem}.data-table--sortable thead th{padding:.25rem .35rem}.sort-header-btn{min-height:2.75rem;padding:.35rem .2rem}.name-list{padding-left:1rem}}th[aria-sort=ascending] .sort-header-btn:after{content:" ▲";font-size:.72em}th[aria-sort=descending] .sort-header-btn:after{content:" ▼";font-size:.72em}.data-table tbody tr:nth-child(2n){background:var(--parkrun-table-stripe)}.data-table tbody tr:hover{background:#eee}.data-table__count{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.name-list{margin:0;padding-left:1.15rem}.event-name-trigger{appearance:none;font:inherit;color:var(--parkrun-aubergine);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--parkrun-aubergine) 35%, transparent);text-decoration-color:color-mix(in srgb, var(--parkrun-aubergine) 35%, transparent);text-underline-offset:.15em;cursor:pointer;text-align:left;background:0 0;border:none;margin:0;padding:0}.event-name-trigger:hover{-webkit-text-decoration-color:var(--parkrun-apricot);text-decoration-color:var(--parkrun-apricot)}.event-name-trigger:focus-visible{outline:2px solid var(--parkrun-focus-ring);outline-offset:2px}.event-card{z-index:40;background:var(--parkrun-white);border:1px solid var(--parkrun-table-border);border-radius:4px;max-width:min(22rem,100vw - 1.5rem);padding:.85rem 1rem 1rem;position:fixed;box-shadow:0 8px 24px #0000001f}.event-card__header{align-items:flex-start;gap:.75rem;margin-bottom:.65rem;display:flex}.event-card__title{color:var(--parkrun-aubergine);flex:1;margin:0;font-size:1.05rem;line-height:1.35}.event-card__close{appearance:none;width:2rem;height:2rem;color:var(--parkrun-grey);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;margin:-.25rem -.35rem 0 0;font-size:1.35rem;line-height:1}.event-card__close:hover{background:var(--parkrun-light-grey);color:var(--parkrun-black)}.event-card__close:focus-visible{outline:2px solid var(--parkrun-focus-ring);outline-offset:2px}.event-card__fields{grid-template-columns:auto 1fr;gap:.35rem .75rem;margin:0 0 .85rem;display:grid}.event-card__fields dt{color:var(--parkrun-grey);margin:0;font-size:.85rem}.event-card__fields dd{margin:0;font-size:.95rem}.event-card__actions{flex-wrap:wrap;gap:.75rem 1rem;display:flex}.event-card__actions a{color:var(--parkrun-aubergine);text-underline-offset:.15em;text-decoration:underline}.event-card__actions a:hover{color:var(--parkrun-black)}.event-card__actions a:focus-visible{outline:2px solid var(--parkrun-focus-ring);outline-offset:2px}.country-flag{font-size:1.35em;line-height:1}.name-list--flags{padding-left:0;list-style:none}.global-block{margin-top:.25rem}.empty-state{color:var(--parkrun-grey);max-width:65ch}code{font:.85em Monaco,Courier,monospace}
