:root{color-scheme:light;--color-primary: #061b17;--color-primary-hover: #0e3028;--color-secondary: #b88a42;--color-secondary-strong: #805a20;--color-secondary-soft: #e4c478;--color-text: #17130d;--color-text-muted: #514735;--color-background: #fffdf7;--color-surface: #fbf7ec;--color-surface-muted: #efe4d1;--color-border: #d7c39d;--color-focus: #005fcc;--color-danger: #8f2d1f;--color-danger-surface: #f5efe2;--color-success: #205f3c;--color-success-surface: #e7f3e9;--color-on-primary: #fffdf7;--color-on-primary-muted: #f4e7d0;--color-on-secondary: #120e08;--color-action-primary: var(--color-secondary);--color-action-primary-hover: var(--color-secondary-soft);--color-action-primary-text: var(--color-on-secondary);--color-action-secondary: transparent;--color-action-secondary-hover: rgb(var(--rgb-background) / 12%);--color-action-secondary-border: var(--color-secondary);--color-action-secondary-text: var(--color-on-primary);--rgb-primary: 6 27 23;--rgb-secondary: 184 138 66;--rgb-secondary-strong: 128 90 32;--rgb-secondary-soft: 228 196 120;--rgb-text: 23 19 13;--rgb-background: 255 253 247;--rgb-border: 215 195 157;--rgb-danger: 143 45 31;--rgb-success: 32 95 60;--font-body: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;--font-label: "Montserrat", "Gill Sans", "Trebuchet MS", sans-serif;--font-monospace: ui-monospace, SFMono-Regular, Consolas, monospace;--root-font-size: 100%;--text-micro: .8125rem;--text-caption: .875rem;--text-label: 1rem;--text-body: 1.0625rem;--text-public: 1.125rem;--text-heading-small: 1.25rem;--text-heading-medium: 1.5rem;--text-heading-large: 2rem;--text-display: clamp(2.25rem, 5vw, 4rem);--shadow-raised: 0 24px 70px rgb(var(--rgb-text) / 16%)}*{box-sizing:border-box}html{font-size:var(--root-font-size)}body{margin:0;background:radial-gradient(circle at top left,rgb(var(--rgb-secondary) / 18%),transparent 34rem),linear-gradient(180deg,var(--color-background) 0%,var(--color-surface) 58%,var(--color-surface) 100%);color:var(--color-text);font-family:var(--font-body);line-height:1.5}.app-shell:not(.admin-route){font-size:var(--text-public)}a{color:inherit;text-underline-offset:.24em}a:hover{color:var(--color-secondary-strong)}:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px}.skip-link{background:var(--color-text);color:var(--color-on-primary);left:1rem;padding:.75rem 1rem;position:fixed;top:1rem;transform:translateY(-8rem);z-index:10}.skip-link:focus{transform:translateY(0)}.site-header{align-items:center;background:rgb(var(--rgb-background) / 97%);border-bottom:1px solid rgb(var(--rgb-secondary) / 38%);display:flex;justify-content:space-between;min-height:5.45rem;padding:.8rem clamp(1rem,4vw,3rem);position:sticky;top:0;z-index:5}.brand{align-items:center;display:inline-flex;gap:.8rem;text-decoration:none}.brand-logo{height:3.15rem;object-fit:contain;width:3.15rem}.brand-title,.brand-subtitle{display:block;text-transform:uppercase}.brand-title{font-size:clamp(var(--text-body),1.8vw,var(--text-heading-small));font-weight:700;letter-spacing:.055em;line-height:1}.brand-subtitle{color:var(--color-text-muted);font-size:var(--text-caption);letter-spacing:.15em}.header-actions{align-items:center;display:flex;gap:.65rem}.header-login,.menu-toggle{align-items:center;border-radius:.3rem;display:inline-flex;flex:0 0 auto;font-family:var(--font-label);font-size:var(--text-caption);font-weight:700;justify-content:center;letter-spacing:.12em;min-height:2.65rem;padding:.62rem .85rem;text-decoration:none;text-transform:uppercase}.header-login{background:transparent;border:1px solid var(--color-primary);color:var(--color-primary)}.header-login:hover{background:var(--color-surface);color:var(--color-primary)}.header-login-placeholder{box-sizing:border-box;min-width:6.2rem;visibility:hidden}.menu-toggle{background:var(--color-primary);border:1px solid var(--color-primary);color:var(--color-on-primary);gap:.5rem}.menu-toggle:hover{background:var(--color-primary-hover);color:var(--color-on-primary)}.menu-backdrop{background:rgb(var(--rgb-primary) / 42%);border:0;cursor:default;inset:0;padding:0;position:fixed;width:100%;z-index:20}.menu-drawer{background:var(--color-background);box-shadow:-16px 0 46px rgb(var(--rgb-primary) / 24%);display:flex;flex-direction:column;height:100dvh;max-width:90vw;position:fixed;right:0;top:0;width:23rem;z-index:21}.drawer-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;min-height:5.45rem;padding:1rem 1.25rem}.drawer-header strong{font-family:var(--font-label);font-size:var(--text-label);letter-spacing:.15em;text-transform:uppercase}.drawer-close{align-items:center;background:transparent;border:0;border-radius:.25rem;color:var(--color-primary);display:inline-flex;font:400 var(--text-heading-large)/1 var(--font-label);height:2.5rem;justify-content:center;padding:0;width:2.5rem}.drawer-close:hover{background:var(--color-surface)}.primary-nav{overflow-y:auto;padding:.4rem 0 2rem}.nav-menu-list,.nav-submenu{list-style:none;margin:0;padding:0}.nav-menu-group{border-bottom:1px solid rgb(var(--rgb-secondary) / 34%)}.nav-submenu{padding:0 1rem .75rem}.primary-nav a,.site-footer a,.text-link,.archive-card a,.cta-band a{font-family:var(--font-label);font-size:var(--text-caption);font-weight:700;letter-spacing:.12em;text-transform:uppercase}.primary-nav a{display:block;padding:.72rem 1.25rem;text-decoration:none}.primary-nav a:hover{background:var(--color-surface)}.primary-nav .nav-group-link{color:var(--color-primary);font-size:var(--text-label);padding:1rem 1.25rem .7rem}.primary-nav .nav-submenu a{color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--text-body);font-weight:500;letter-spacing:0;padding:.55rem .75rem;text-transform:none}.menu-icon{display:grid;gap:.2rem;width:1.15rem}.menu-icon span{background:currentcolor;display:block;height:2px;width:100%}.admin-route .header-actions{display:none}.hero{background:var(--color-primary);border-bottom:3px solid var(--color-secondary);color:var(--color-on-primary);min-height:clamp(16rem,22vw,18rem);overflow:hidden;position:relative}.hero:before,.hero:after{content:"";inset:0;position:absolute;z-index:1}.hero:before{background:linear-gradient(90deg,#000000e0,#000000ad 33%,#0000003d 64%,#00000014),radial-gradient(circle at 74% 23%,rgb(var(--rgb-secondary-soft) / 20%),transparent 15rem)}.hero:after{background:linear-gradient(180deg,transparent 78%,rgb(0 0 0 / 44%) 100%)}.hero-image{height:100%;inset:0;object-fit:cover;object-position:58% 58%;position:absolute;width:100%}.hero-copy{max-width:58rem;padding:1rem clamp(1rem,3vw,2rem);padding-top:1.25rem;position:relative;z-index:2}.eyebrow,.section-kicker{color:var(--color-secondary);font-family:var(--font-label);font-size:var(--text-label);font-weight:700;letter-spacing:.18em;margin:0 0 .75rem;text-transform:uppercase}.hero h1{font-size:clamp(var(--text-heading-medium),2.1vw,var(--text-heading-large));font-weight:500;letter-spacing:0;line-height:1.02;margin:0;max-width:30ch}.hero .eyebrow{margin-bottom:.45rem}.hero-intro{border-top:2px solid var(--color-secondary);color:var(--color-on-primary-muted);font-style:italic;margin:.75rem 0 0;max-width:34rem;padding-top:.6rem}.irish{color:var(--color-secondary-soft);font-style:italic;margin-top:.65rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:.85rem}.hero-actions .button{align-items:center;font-size:var(--text-caption);justify-content:center;min-height:2.65rem;padding:.65rem .9rem}.notice-grid{display:grid;gap:1.5rem;grid-template-columns:1.15fr 1fr .95fr;margin:0 auto;max-width:72rem;padding:clamp(2rem,4vw,3rem) clamp(1rem,4vw,2rem)}.panel{border-right:1px solid var(--color-border);padding-right:clamp(1rem,3vw,2rem)}.panel:last-child{border-right:0}.panel h2{font-family:var(--font-label);font-size:var(--text-label);letter-spacing:.13em;margin:0 0 1.35rem;text-transform:uppercase}.news-item,.date-row{display:grid;gap:.85rem;grid-template-columns:auto 1fr;margin-bottom:1.15rem}.news-item h3,.date-row h3,.archive-card h3,.cta-band h2{font-size:var(--text-body);line-height:1.25;margin:0}.news-item p,.date-row p,.archive-card p,.cta-band p{color:var(--color-text-muted);font-size:var(--text-body);margin:.25rem 0}.news-item time,.date-row p{font-size:var(--text-label)}.news-item h3 a{color:inherit;text-decoration:none}.news-item h3 a:hover,.news-item h3 a:focus-visible{text-decoration:underline;text-decoration-thickness:.08em;text-underline-offset:.14em}.news-state{color:var(--color-text-muted);font-size:var(--text-body);margin:0 0 1.35rem}.thumb{background:linear-gradient(#50301059,#50301059),repeating-linear-gradient(90deg,var(--color-action-primary-hover) 0 .2rem,var(--color-secondary-strong) .2rem .4rem);height:4.25rem;width:3.7rem}.date-badge{color:var(--color-secondary-strong);min-width:3.4rem;text-align:center;text-transform:uppercase}.date-badge span,.date-badge strong{display:block}.date-badge span{font-family:var(--font-label);font-size:var(--text-caption);letter-spacing:.13em}.date-badge strong{font-size:var(--text-heading-large);font-weight:400;line-height:1}.quick-links{display:grid;gap:.75rem;align-content:start}.quick-links a{align-items:center;display:inline-flex;font-size:var(--text-public);gap:.75rem;min-height:2.75rem;text-decoration:none}.quick-links a:hover{color:var(--color-secondary-strong);text-decoration:underline}.quick-links span{color:var(--color-secondary-strong);display:inline-block;font-family:var(--font-body);min-width:1.1rem}.text-link{display:inline-block;margin-top:.5rem;text-decoration:none}.cta-band{align-items:center;background:rgb(var(--rgb-background) / 82%);border:2px solid var(--color-border);border-radius:.45rem;display:grid;gap:1.5rem;grid-template-columns:1fr auto 1fr;margin:0 auto;max-width:70rem;padding:1.35rem clamp(1.25rem,4vw,3rem)}.seal{aspect-ratio:1;background:var(--color-background);border:2px solid var(--color-border);border-radius:999px;object-fit:contain;padding:.8rem;width:clamp(6.25rem,12vw,8.25rem)}.heritage{margin:0 auto;max-width:72rem;padding:clamp(2.5rem,5vw,4rem) clamp(1rem,4vw,2rem) 4rem;text-align:center}.heritage h2{font-size:clamp(var(--text-heading-small),2.2vw,var(--text-heading-large));font-weight:500;letter-spacing:.22em;margin:0;text-transform:uppercase}.heritage>p:not(.section-kicker){color:var(--color-text-muted);margin:.65rem auto 2rem;max-width:34rem}.cards{display:grid;gap:1.6rem;grid-template-columns:repeat(3,1fr);text-align:left}.archive-card{background:var(--color-background);border:1px solid var(--color-border);border-radius:.4rem;box-shadow:0 16px 36px rgb(var(--rgb-text) / 10%);overflow:hidden}.archive-card>div:last-child{padding:1.2rem 1.3rem 1.35rem}.archive-image{align-items:center;background:linear-gradient(135deg,rgb(var(--rgb-primary) / 76%),rgb(var(--rgb-primary) / 92%)),var(--color-primary);display:flex;justify-content:center;min-height:11rem}.archive-image img{filter:sepia(100%) saturate(58%) brightness(1.5);max-height:5.8rem;max-width:6.2rem;opacity:.92}.page-hero{background:linear-gradient(90deg,rgb(var(--rgb-primary) / 92%),rgb(var(--rgb-primary) / 72%)),radial-gradient(circle at 80% 25%,rgb(var(--rgb-secondary) / 30%),transparent 20rem);color:var(--color-on-primary);min-height:clamp(9rem,14vw,12rem);padding:clamp(2rem,4vw,3rem) clamp(1rem,8vw,6rem)}.page-hero-content{display:grid;gap:.65rem;margin:0 auto;max-width:78rem}.page-hero .eyebrow{margin-bottom:0}.page-hero h1{font-size:var(--text-heading-large);font-weight:500;letter-spacing:0;line-height:1.05;margin:0;max-width:24ch}.page-hero-summary{color:var(--color-on-primary-muted);font-size:var(--text-public);margin:0;max-width:43rem}.page-hero-meta{color:var(--color-secondary-soft);font:600 var(--text-label)/1.4 var(--font-label)}.simple-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.65rem}.simple-actions .button{flex:0 1 auto;font-size:var(--text-label);letter-spacing:.07em;max-width:100%;text-align:center;white-space:normal}.button{align-items:center;background:var(--color-action-primary);border:2px solid var(--color-action-primary);color:var(--color-action-primary-text);display:inline-flex;font-family:var(--font-label);font-weight:700;justify-content:center;letter-spacing:.1em;line-height:1.2;padding:.85rem 1.1rem;text-decoration:none;text-transform:uppercase}.button:hover{background:var(--color-action-primary-hover);border-color:var(--color-action-primary-hover);color:var(--color-action-primary-text)}.button.secondary{background:var(--color-action-secondary);border-color:var(--color-action-secondary-border);color:var(--color-action-secondary-text)}.button.secondary:hover{background:var(--color-action-secondary-hover);border-color:var(--color-action-secondary-border);color:var(--color-action-secondary-text)}.page-content{margin:0 auto;max-width:72rem;padding:clamp(2.25rem,5vw,4rem) clamp(1rem,4vw,2rem) 4.5rem}.content-section{border-bottom:1px solid var(--color-border);display:grid;gap:clamp(1.25rem,3vw,2rem);grid-template-columns:minmax(12rem,.75fr) minmax(0,1.65fr);padding:clamp(1.7rem,4vw,2.75rem) 0}.content-section:first-child{padding-top:0}.content-section:last-child{border-bottom:0;padding-bottom:0}.section-heading h2{font-size:clamp(var(--text-heading-small),2.2vw,var(--text-heading-large));font-weight:500;line-height:1.08;margin:0;scroll-margin-top:7rem}.section-heading p:not(.section-kicker){color:var(--color-text-muted);margin:.75rem 0 0}.prose-block{color:var(--color-text-muted);max-width:48rem}.prose-block p{margin:0 0 1rem}.prose-block p:last-child{margin-bottom:0}.prose-block ul{display:grid;gap:.7rem;margin:0;padding-left:1.15rem}.content-section.policy{contain-intrinsic-size:auto 34rem;content-visibility:auto}.policy-overview-body,.policy-body{color:var(--color-text-muted);max-width:48rem}.policy-overview-body{display:grid;gap:1rem}.policy-facts{display:grid;gap:.8rem;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.policy-fact{background:linear-gradient(145deg,rgb(var(--rgb-secondary) / 11%),var(--color-background));border:1px solid var(--color-border);border-top:.2rem solid var(--color-secondary);min-height:6rem;padding:1rem 1.1rem}.policy-fact.warning{background:var(--color-primary);border-color:var(--color-primary);border-top-color:var(--color-secondary);color:var(--color-on-primary)}.policy-fact dt{color:var(--color-secondary-strong);font:700 var(--text-micro)/1.3 var(--font-label);letter-spacing:.11em;text-transform:uppercase}.policy-fact.warning dt{color:var(--color-secondary-soft)}.policy-fact dd{color:inherit;font-family:var(--font-body);font-size:clamp(var(--text-public),2vw,var(--text-heading-small));line-height:1.2;margin:.5rem 0 0}.policy-contents{background:var(--color-primary);color:var(--color-on-primary);padding:clamp(1.2rem,3vw,1.6rem)}.policy-contents h3{color:var(--color-secondary-soft);font:700 var(--text-caption)/1.3 var(--font-label);letter-spacing:.12em;margin:0 0 1rem;text-transform:uppercase}.policy-contents ul{column-gap:2rem;columns:2;list-style:none;margin:0;padding:0}.policy-contents li{break-inside:avoid;margin-bottom:.65rem}.policy-contents a{color:var(--color-on-primary);text-decoration-color:rgb(var(--rgb-secondary-soft) / 70%);text-underline-offset:.2em}.policy-contents a:hover,.policy-contents a:focus-visible{color:var(--color-secondary-soft)}.policy-body>p,.policy-subsection>p{line-height:1.75;margin:0 0 1rem}.policy-body>p:last-child,.policy-subsection>p:last-child{margin-bottom:0}.policy-subsection{border-top:1px solid var(--color-border);margin-top:1.5rem;padding-top:1.5rem}.policy-subsection:first-of-type{margin-top:1.25rem}.policy-subsection h3{color:var(--color-text);font-family:var(--font-body);font-size:clamp(var(--text-public),2vw,var(--text-heading-medium));font-weight:500;line-height:1.25;margin:0 0 .85rem}.policy-list{display:grid;gap:.72rem;line-height:1.65;margin:1rem 0 0;padding-left:1.25rem}.policy-list li::marker{color:var(--color-secondary-strong)}.policy-list-numbered{padding-left:1.75rem}.policy-list-numbered>li::marker{font-family:var(--font-label);font-variant-numeric:tabular-nums;font-weight:700}.policy-list .policy-list{border-left:1px solid var(--color-border);margin-top:.75rem;padding-left:1.5rem}.policy-list a{color:var(--color-secondary-strong);display:block;font-weight:700;margin-top:.2rem;text-underline-offset:.18em;width:fit-content}.policy-note{background:rgb(var(--rgb-secondary) / 10%);border-left:.25rem solid var(--color-secondary);color:var(--color-text);line-height:1.65;margin:1.25rem 0 0;padding:.9rem 1rem}.info-cards{display:grid;gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr))}.people-directory{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}.person-card{background:linear-gradient(145deg,var(--color-background),rgb(var(--rgb-secondary) / 9%));border:1px solid var(--color-border);border-top:.25rem solid var(--color-secondary);padding:1.35rem}.person-photo{aspect-ratio:1;border:1px solid var(--color-border);display:block;margin:-.15rem 0 1.1rem;object-fit:cover;width:100%}.person-card h3{font-size:var(--text-heading-small);margin:.3rem 0 .75rem}.person-card>p:not(.person-role),.person-biography>p{color:var(--color-text-muted);line-height:1.65;margin:0}.person-role{color:var(--color-secondary-strong);font:700 var(--text-micro)/1.3 var(--font-label);letter-spacing:.1em;margin:0;text-transform:uppercase}.person-pending{font-style:italic}.person-read-more{margin-top:.15rem}.person-biography{margin-top:1rem}.person-translation{color:var(--color-text-muted);margin-top:1rem}.person-translation summary{color:var(--color-secondary-strong);cursor:pointer;font-weight:700}.person-translation p{line-height:1.65}.content-section.awards{display:block}.content-section.awards .section-heading{margin-bottom:1.75rem;max-width:48rem}.awards-directory{color:var(--color-text-muted)}.award-stats{display:grid;gap:.85rem;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:1rem}.award-stats>div{background:linear-gradient(145deg,rgb(var(--rgb-secondary) / 14%),var(--color-background));border:1px solid var(--color-border);display:flex;flex-direction:column;min-height:7.5rem;padding:1.15rem;place-content:center}.award-stats strong{color:var(--color-text);font-family:var(--font-body);font-size:clamp(var(--text-heading-large),5vw,var(--text-display));font-weight:500;line-height:1}.award-stats span{color:var(--color-secondary-strong);font:700 var(--text-micro)/1.35 var(--font-label);letter-spacing:.1em;margin-top:.55rem;text-transform:uppercase}.award-filters{align-items:end;background:var(--color-text);display:grid;gap:1rem;grid-template-columns:minmax(14rem,1.5fr) minmax(12rem,.8fr) auto;padding:clamp(1rem,3vw,1.4rem)}.award-filters label:not(.award-bursary-filter){display:grid;gap:.45rem}.award-filters label>span{color:var(--color-on-primary);font:700 var(--text-caption)/1.3 var(--font-label);letter-spacing:.1em;text-transform:uppercase}.award-filters input[type=search],.award-filters select{background:var(--color-background);border:1px solid rgb(255 255 255 / 28%);border-radius:0;color:var(--color-text);font:inherit;min-height:3rem;padding:.7rem .8rem;width:100%}.award-filters input:focus-visible,.award-filters select:focus-visible,.award-empty-state button:focus-visible,.award-card summary:focus-visible{outline:.2rem solid var(--color-secondary);outline-offset:.15rem}.award-bursary-filter{align-items:center;border:1px solid rgb(255 255 255 / 28%);display:flex;gap:.65rem;min-height:3rem;padding:.65rem .8rem}.award-bursary-filter input{accent-color:var(--color-secondary);height:1.1rem;margin:0;width:1.1rem}.award-result-count{font:700 var(--text-caption)/1.4 var(--font-label);letter-spacing:.08em;margin:1rem 0 1.75rem;text-transform:uppercase}.award-group+.award-group{margin-top:2.75rem}.award-group-heading{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.7rem}.award-group-heading h3{color:var(--color-text);font-size:clamp(var(--text-heading-medium),3vw,var(--text-heading-large));font-weight:500;margin:0}.award-group-heading>span{align-items:center;background:var(--color-secondary);border-radius:50%;color:var(--color-text);display:inline-flex;font:700 var(--text-caption)/1 var(--font-label);height:2.15rem;justify-content:center;width:2.15rem}.award-list{display:grid;gap:.9rem;grid-template-columns:repeat(2,minmax(0,1fr))}.award-card{background:var(--color-background);border:1px solid var(--color-border);border-left:.28rem solid var(--color-secondary);contain-intrinsic-size:auto 16rem;content-visibility:auto;padding:1.15rem}.award-card-meta{align-items:center;display:flex;flex-wrap:wrap;gap:.45rem;justify-content:space-between}.award-card-meta>span:first-child{color:var(--color-secondary-strong);font:700 var(--text-micro)/1.4 var(--font-label);letter-spacing:.09em;text-transform:uppercase}.bursary-badge{background:rgb(var(--rgb-secondary) / 17%);color:var(--color-secondary-strong);font:700 var(--text-micro)/1.3 var(--font-label);letter-spacing:.06em;padding:.3rem .45rem;text-transform:uppercase}.award-card h4{color:var(--color-text);font-family:var(--font-body);font-size:var(--text-heading-small);font-weight:500;line-height:1.18;margin:.75rem 0 .35rem}.award-card>p{line-height:1.5;margin:0}.award-card details{border-top:1px solid var(--color-border);margin-top:1rem;padding-top:.8rem}.award-card summary{color:var(--color-secondary-strong);cursor:pointer;font-weight:700}.award-card details p{line-height:1.65;margin:.85rem 0 0}.award-empty-state{background:rgb(var(--rgb-secondary) / 10%);border:1px solid var(--color-border);padding:2rem;text-align:center}.award-empty-state h3{color:var(--color-text);margin-top:0}.award-empty-state button{background:var(--color-text);border:0;color:var(--color-on-primary);cursor:pointer;font:700 var(--text-caption)/1 var(--font-label);letter-spacing:.08em;margin-top:.5rem;padding:.85rem 1rem;text-transform:uppercase}.content-section.timetable{display:block}.content-section.timetable .section-heading{margin-bottom:1.75rem;max-width:48rem}.timetable-directory{color:var(--color-text-muted)}.timetable-stats{display:grid;gap:.85rem;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 1rem}.timetable-stats>div{background:linear-gradient(145deg,rgb(var(--rgb-secondary) / 15%),var(--color-background));border:1px solid var(--color-border);border-top:.25rem solid var(--color-secondary);display:flex;flex-direction:column;min-height:7.25rem;padding:1rem 1.15rem;place-content:center}.timetable-stats dt{color:var(--color-secondary-strong);font:700 var(--text-micro)/1.35 var(--font-label);letter-spacing:.1em;text-transform:uppercase}.timetable-stats dd{color:var(--color-text);font-size:clamp(var(--text-heading-large),5vw,var(--text-display));line-height:1;margin:.4rem 0 0}.timetable-filters{align-items:end;background:var(--color-text);display:grid;gap:1rem;grid-template-columns:minmax(15rem,1.45fr) repeat(3,minmax(9.5rem,.8fr)) auto;padding:clamp(1rem,3vw,1.4rem)}.timetable-filters label{display:grid;gap:.45rem;min-width:0}.timetable-filters label>span{color:var(--color-on-primary);font:700 var(--text-caption)/1.3 var(--font-label);letter-spacing:.1em;text-transform:uppercase}.timetable-filters input,.timetable-filters select{background:var(--color-background);border:1px solid rgb(255 255 255 / 28%);border-radius:0;color:var(--color-text);font:inherit;min-height:3rem;min-width:0;padding:.7rem .8rem;width:100%}.timetable-filters button,.timetable-empty-state button{background:var(--color-secondary);border:1px solid var(--color-secondary);color:var(--color-text);cursor:pointer;font:700 var(--text-caption)/1 var(--font-label);letter-spacing:.08em;min-height:3rem;padding:.75rem .9rem;text-transform:uppercase}.timetable-filters button:disabled{cursor:default;opacity:.45}.timetable-filters input:focus-visible,.timetable-filters select:focus-visible,.timetable-filters button:focus-visible,.timetable-empty-state button:focus-visible{outline:.2rem solid var(--color-secondary);outline-offset:.15rem}.timetable-result-summary{align-items:baseline;display:flex;gap:1rem 2rem;justify-content:space-between;margin:1rem 0 1.75rem}.timetable-result-summary p{margin:0}.timetable-result-summary p:first-child{color:var(--color-text);font:700 var(--text-caption)/1.4 var(--font-label);letter-spacing:.08em;text-transform:uppercase}.timetable-result-summary p:last-child{font-size:var(--text-label);font-style:italic;text-align:right}.timetable-day+.timetable-day{margin-top:3rem}.timetable-day-heading{align-items:center;background:linear-gradient(110deg,rgb(255 255 255 / 4%),transparent 70%),var(--color-primary);color:var(--color-on-primary);display:flex;justify-content:space-between;padding:1.1rem clamp(1rem,3vw,1.5rem)}.timetable-day-heading p{color:var(--color-secondary-soft);font:700 var(--text-micro)/1.3 var(--font-label);letter-spacing:.13em;margin:0 0 .25rem;text-transform:uppercase}.timetable-day-heading h3{color:inherit;font-size:clamp(var(--text-heading-medium),3vw,var(--text-heading-large));font-weight:500;line-height:1;margin:0}.timetable-day-heading>span{border:1px solid rgb(var(--rgb-secondary-soft) / 52%);font:700 var(--text-micro)/1.3 var(--font-label);letter-spacing:.07em;padding:.55rem .65rem;text-transform:uppercase}.timetable-venues{align-items:start;display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1rem}.timetable-venue{background:var(--color-background);border:1px solid var(--color-border);contain-intrinsic-size:auto 32rem;content-visibility:auto;min-width:0}.timetable-venue>header{align-items:center;background:rgb(var(--rgb-secondary) / 11%);border-bottom:1px solid var(--color-border);border-top:.22rem solid var(--color-secondary);display:flex;gap:1rem;justify-content:space-between;padding:.9rem 1rem}.timetable-venue h4{color:var(--color-text);font-size:var(--text-public);font-weight:600;line-height:1.2;margin:0}.timetable-venue>header span{align-items:center;background:var(--color-secondary);border-radius:50%;color:var(--color-text);display:inline-flex;flex:0 0 auto;font:700 var(--text-micro)/1 var(--font-label);height:1.9rem;justify-content:center;width:1.9rem}.timetable-venue ol{list-style:none;margin:0;padding:0}.timetable-entry{align-items:start;display:grid;gap:.75rem;grid-template-columns:3.25rem 3.8rem minmax(0,1fr);padding:.9rem 1rem}.timetable-entry+.timetable-entry{border-top:1px solid rgb(var(--rgb-border) / 62%)}.timetable-entry time{color:var(--color-secondary-strong);font:700 var(--text-caption)/1.3 var(--font-label);padding-top:.28rem}.timetable-number{align-items:center;background:var(--color-primary);color:var(--color-on-primary);display:inline-flex;flex-direction:column;font:700 var(--text-caption)/1.05 var(--font-label);min-height:2.4rem;padding:.35rem .3rem;place-content:center;text-align:center}.timetable-number small{color:var(--color-secondary-soft);font-size:var(--text-micro);letter-spacing:.05em;margin-bottom:.13rem;text-transform:uppercase}.timetable-entry>div{min-width:0}.timetable-entry strong{color:var(--color-text);display:block;font-size:var(--text-body);font-weight:600;line-height:1.4}.timetable-entry>div>span{color:var(--color-secondary-strong);display:block;font:700 var(--text-micro)/1.3 var(--font-label);letter-spacing:.07em;margin-top:.35rem;text-transform:uppercase}.timetable-empty-state{background:rgb(var(--rgb-secondary) / 10%);border:1px solid var(--color-border);padding:2rem;text-align:center}.timetable-empty-state h3{color:var(--color-text);margin-top:0}.timetable-empty-state p{margin-bottom:1rem}.info-card,.notice-panel,.resource-list a{background:rgb(var(--rgb-background) / 86%);border:1px solid var(--color-border);border-radius:.4rem}.info-card{min-height:11rem;padding:1.1rem}.info-card h3,.notice-panel h3{font-size:var(--text-body);line-height:1.25;margin:0}.info-card p,.notice-panel p,.resource-list small{color:var(--color-text-muted);display:block;font-size:var(--text-label);margin:.55rem 0 0}.info-card a{color:var(--color-secondary-strong);display:inline-block;font-family:var(--font-label);font-size:var(--text-caption);font-weight:700;letter-spacing:.12em;margin-top:.85rem;text-transform:uppercase}.table-wrap{max-width:100%;overflow-x:auto}.data-table{border-collapse:collapse;font-size:var(--text-label);min-width:39rem;width:100%}.data-table th,.data-table td{border-bottom:1px solid var(--color-border);padding:.8rem .9rem;text-align:left;vertical-align:top}.data-table th{color:var(--color-secondary-strong);font-family:var(--font-label);font-size:var(--text-caption);letter-spacing:.12em;text-transform:uppercase}.data-table td{color:var(--color-text-muted)}.notice-panel{border-left:.45rem solid var(--color-secondary);padding:1.25rem}.notice-panel p:last-child{margin-bottom:0}.resource-list{display:grid;gap:.85rem}.resource-list a{display:block;padding:1rem 1.1rem;text-decoration:none}.resource-list span{color:var(--color-text);display:block;font-size:var(--text-body);font-weight:700}.portal-content{margin:0 auto;max-width:78rem;padding:clamp(2rem,4vw,3rem) clamp(1rem,4vw,2rem) 4rem;width:100%}.portal-panel{background:rgb(var(--rgb-background) / 90%);border:1px solid var(--color-border);box-sizing:border-box;border-radius:.4rem;box-shadow:0 14px 36px rgb(var(--rgb-text) / 8%);max-width:100%;min-width:0;padding:clamp(1rem,2.5vw,1.5rem)}.portal-panel-narrow{max-width:34rem}.portal-overview-grid{display:grid;gap:1.25rem}.entrant-overview{display:grid;gap:1rem;grid-template-columns:minmax(14rem,.55fr) minmax(22rem,1.45fr)}.entrant-current-feis,.entrant-entries-panel{min-height:10.5rem}.entrant-current-feis{background:linear-gradient(135deg,rgb(var(--rgb-secondary) / 17%),rgb(var(--rgb-background) / 95%));display:grid;gap:.45rem;align-content:center}.entrant-section-label{color:var(--color-text-muted);font:700 var(--text-micro)/1.3 var(--font-label);letter-spacing:.1em;text-transform:uppercase}.entrant-current-feis h2,.entrant-entries-panel h2{margin:0}.entrant-current-feis p,.entrant-empty-copy{color:var(--color-text-muted);margin:0}.entrant-entries-panel{display:grid;gap:1rem}.entrant-entries-heading{align-items:center;display:flex;gap:clamp(1rem,3vw,2.5rem);justify-content:space-between}.entrant-entries-heading>div{display:grid;gap:.45rem}.entrant-entries-heading .button{flex:0 0 auto;white-space:nowrap}.my-entries-list{display:grid;gap:0;list-style:none;margin:0;padding:0}.my-entries-list li{align-items:center;border-top:1px solid var(--color-border);display:flex;gap:1rem;justify-content:space-between;padding:.9rem 0}.my-entry-details,.my-entry-meta{display:grid;gap:.18rem}.my-entry-details strong{font-size:var(--text-body)}.my-entry-details span,.my-entry-meta>span:first-child{color:var(--color-text-muted)}.my-entry-meta{justify-items:end;text-align:right}.my-entry-meta>span:first-child{font-size:var(--text-label)}.entrant-status{border:1px solid var(--color-border);border-radius:999px;color:var(--color-text-muted);font:700 var(--text-micro)/1 var(--font-label);letter-spacing:.07em;padding:.34rem .5rem;text-transform:uppercase}.entrant-status.active,.entrant-status.confirmed{background:rgb(var(--rgb-success) / 9%);border-color:rgb(var(--rgb-success) / 42%);color:var(--color-success)}.entrant-status.withdrawn{background:rgb(var(--rgb-danger) / 7%);border-color:rgb(var(--rgb-danger) / 35%);color:var(--color-danger)}.portal-panel-heading,.admin-toolbar{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.portal-panel h2{font-size:clamp(var(--text-public),2vw,var(--text-heading-medium));font-weight:500;line-height:1.15;margin:0}.admin-console{background:var(--color-surface);color:var(--color-text);display:grid;grid-template-columns:15.75rem minmax(0,1fr);min-height:calc(100vh - 5.45rem)}.admin-console-body{border-left:1px solid var(--color-border);min-width:0}.admin-main{display:grid;gap:1rem;margin-inline:auto;max-width:92rem;min-width:0;padding:1.75rem clamp(1.15rem,2.5vw,2.5rem) 2.75rem;width:100%}.admin-console .portal-panel{background:var(--color-background);border-color:var(--color-border);border-radius:.25rem;box-shadow:0 1px 2px rgb(var(--rgb-text) / 7%);padding:1.4rem}.admin-console .portal-panel h2,.admin-console .admin-screen-heading h2{color:var(--color-text);font-family:var(--font-body);font-size:var(--text-heading-medium);font-weight:500}.admin-sidebar{background:var(--color-background);display:grid;grid-template-rows:auto 1fr auto;min-height:calc(100vh - 5.45rem);min-width:0;padding:1.25rem .85rem .9rem}.admin-sidebar-brand{display:block;min-width:0;padding:.2rem .75rem 1.45rem;text-decoration:none}.admin-sidebar-brand:hover{color:inherit}.admin-sidebar-brand span,.admin-sidebar-brand strong,.admin-sidebar-brand small{display:block;min-width:0}.admin-sidebar-brand strong{color:var(--color-text);font:700 var(--text-body)/1.2 var(--font-label);letter-spacing:.055em;text-transform:uppercase}.admin-sidebar-brand small{color:var(--color-text-muted);font:500 var(--text-caption)/1.3 var(--font-label);margin-top:.14rem}.admin-sidebar-nav{align-content:start;display:grid;gap:.28rem;padding-top:.5rem}.admin-sidebar-nav a{align-items:center;border-inline-start:3px solid transparent;border-radius:.2rem;color:var(--color-text-muted);display:grid;font:600 var(--text-label)/1.2 var(--font-label);gap:.8rem;grid-template-columns:1.5rem minmax(0,1fr);min-height:2.95rem;min-width:0;padding:.65rem .8rem;text-decoration:none}.admin-sidebar-nav a:hover{background:var(--color-surface);color:var(--color-primary)}.admin-sidebar-nav a[aria-current=page]{background:var(--color-surface-muted);border-inline-start-color:var(--color-secondary-strong);color:var(--color-primary)}.admin-sidebar-divider{border:0;border-top:1px solid var(--color-border);margin:.65rem .8rem}.admin-icon{fill:none;height:1.28rem;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8;width:1.28rem}.admin-sidebar-account{align-items:center;border-top:1px solid var(--color-border);display:grid;gap:.65rem;grid-template-columns:2rem minmax(0,1fr) auto;min-width:0;padding:.9rem .55rem 0}.admin-account-avatar{align-items:center;background:var(--color-primary);border-radius:50%;color:var(--color-on-primary);display:flex;font:700 var(--text-caption)/1 var(--font-label);height:2rem;justify-content:center;width:2rem}.admin-account-details,.admin-account-details strong,.admin-account-details small{display:block;min-width:0}.admin-account-details strong{font:600 var(--text-caption)/1.2 var(--font-label)}.admin-account-details small{color:var(--color-text-muted);font:400 var(--text-micro)/1.3 var(--font-label);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-sidebar-signout{align-items:center;background:transparent;border:0;color:var(--color-text-muted);cursor:pointer;display:inline-flex;padding:.35rem}.admin-sidebar-signout:hover{color:var(--color-secondary-strong)}.admin-sidebar-signout span{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.admin-topbar{align-items:center;background:var(--color-background);border-bottom:1px solid var(--color-border);color:var(--color-text-muted);display:flex;font:600 var(--text-caption)/1.2 var(--font-label);justify-content:space-between;letter-spacing:.08em;min-height:3.65rem;min-width:0;padding:.7rem clamp(1.15rem,2.5vw,2.5rem);text-transform:uppercase}.admin-topbar a{align-items:center;display:flex;gap:.4rem;margin-left:auto;text-decoration:none}.admin-topbar-year-control{align-items:center;display:flex;gap:.55rem;min-width:0}.admin-topbar-year-control>label{flex:0 0 auto}.admin-topbar-year-label{color:var(--color-text);font:var(--text-body)/1.2 var(--font-body);letter-spacing:normal;text-transform:none}.admin-topbar-year-select{background:var(--color-background);border:1px solid rgb(var(--rgb-secondary-strong) / 35%);border-radius:.25rem;color:var(--color-text);font:var(--text-label)/1.2 var(--font-body);letter-spacing:normal;min-height:2.25rem;padding:.35rem .6rem;text-transform:none}.admin-topbar-year-select option{font-family:var(--font-body);font-size:var(--text-label)}.admin-topbar-year-menu{display:none;position:relative}.admin-topbar-year-menu summary{align-items:center;background:var(--color-background);border:1px solid rgb(var(--rgb-secondary-strong) / 35%);border-radius:.25rem;color:var(--color-text);cursor:pointer;display:flex;font:var(--text-body)/1.2 var(--font-body);gap:.5rem;justify-content:space-between;list-style:none;min-height:2.55rem;min-width:5.5rem;padding:.5rem .65rem;text-transform:none}.admin-topbar-year-menu summary::-webkit-details-marker{display:none}.admin-topbar-year-menu summary:after{content:"⌄";font-family:var(--font-label)}.admin-topbar-year-options{background:var(--color-background);border:1px solid var(--color-border);border-radius:.25rem;box-shadow:var(--shadow-raised);display:grid;left:0;min-width:min(11rem,calc(100vw - 5rem));padding:.3rem;position:absolute;top:calc(100% + .35rem);z-index:6}.admin-topbar-year-options button{background:transparent;border:0;border-radius:.2rem;color:var(--color-text);cursor:pointer;font:var(--text-body)/1.2 var(--font-body);min-height:2.75rem;padding:.65rem .75rem;text-align:left}.admin-topbar-year-options button:hover,.admin-topbar-year-options button[aria-current=true]{background:var(--color-surface-muted)}.admin-console .entry-form{gap:.85rem}.admin-console .form-grid{gap:.8rem .95rem}.admin-console .entry-form label{font-size:var(--text-caption);gap:.28rem;letter-spacing:.08em}.admin-console .entry-form input,.admin-console .entry-form select,.admin-console .entry-form textarea,.admin-console .admin-topbar-year-select{font-size:var(--text-body);min-height:2.55rem;padding:.58rem .7rem}.admin-console .button{min-height:2.55rem;padding:.62rem 1rem}.admin-console .data-table{font-size:var(--text-label)}.admin-console .data-table th,.admin-console .data-table td{padding:.66rem .78rem}.admin-console .data-table th,.admin-console .text-button{font-size:var(--text-caption);letter-spacing:.08em}.admin-toolbar{color:var(--color-text-muted);display:flex;flex-wrap:wrap;font-family:var(--font-label);font-size:var(--text-caption);font-weight:700;letter-spacing:.1em;text-transform:uppercase}.admin-subnav,.admin-screen-heading{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.admin-subnav a{color:var(--color-secondary-strong);text-decoration:underline;text-underline-offset:.24em}.mobile-create-action{display:none}.catalog-admin-grid{grid-template-columns:minmax(18rem,.75fr) minmax(0,1.5fr)}.competition-form-panel{max-width:42rem}.competition-form-panel .button.secondary{background:var(--color-background);color:var(--color-secondary-strong)}.competition-form-panel .button.secondary:hover{background:var(--color-surface-muted);color:var(--color-text)}.competition-list-panel{max-width:72rem}.competition-list-toolbar{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding-bottom:.7rem}.competition-list-toolbar p{color:var(--color-text-muted);font:var(--text-label)/1.4 var(--font-body);margin:0}.competition-admin-list{display:grid;min-width:0}.competition-admin-list-heading,.competition-admin-row{align-items:center;display:grid;gap:1rem;grid-template-columns:5rem minmax(12rem,1fr) 9rem 3.5rem}.competition-admin-list-heading{color:var(--color-secondary-strong);font:700 var(--text-caption)/1.3 var(--font-label);letter-spacing:.08em;padding:.75rem .65rem .55rem;text-transform:uppercase}.competition-admin-row{border-top:1px solid var(--color-border);min-width:0;padding:.8rem .65rem}.competition-code{background:var(--color-surface-muted);border-radius:.25rem;color:var(--color-secondary-strong);font:700 var(--text-label)/1 var(--font-label);font-variant-numeric:tabular-nums;justify-self:start;padding:.45rem .55rem}.competition-admin-name{min-width:0}.competition-admin-name b,.competition-admin-name small{display:block;overflow-wrap:anywhere}.competition-admin-name b{font:700 var(--text-body)/1.25 var(--font-body)}.competition-admin-name small,.competition-age-summary{color:var(--color-text-muted);font:var(--text-label)/1.4 var(--font-body)}.competition-age-summary{margin:0}.competition-age-rule-editor{border:1px solid var(--color-border);border-radius:.3rem;display:grid;gap:.85rem;margin:0;min-width:0;padding:.9rem}.competition-age-rule-editor legend{color:var(--color-text);font:700 var(--text-label)/1.2 var(--font-label);letter-spacing:.08em;padding:0 .35rem;text-transform:uppercase}.competition-age-combine-toggle span,.competition-age-combine-toggle strong,.competition-age-combine-toggle small{display:block}.competition-age-combine-toggle strong{color:var(--color-text);font:700 var(--text-label)/1.2 var(--font-label)}.competition-age-combine-toggle small{color:var(--color-text-muted);font:var(--text-label)/1.35 var(--font-body);margin-top:.2rem}.competition-age-range-editor,.competition-age-range-list{display:grid;gap:.7rem}.competition-age-range-editor>.form-note{margin:0}.competition-age-range{background:var(--color-surface-muted);border-radius:.25rem;display:grid;gap:.65rem;padding:.75rem}.competition-age-range>strong{color:var(--color-text);font:700 var(--text-label)/1.25 var(--font-body)}.competition-age-range-fields{display:grid;gap:.7rem;grid-template-columns:repeat(2,minmax(0,1fr))}.competition-age-field-help{color:var(--color-text-muted);font:var(--text-caption)/1.4 var(--font-body);letter-spacing:normal;text-transform:none}.competition-age-range-errors{display:grid;gap:.25rem;min-height:1.4em}.competition-age-range-editor>.text-button:disabled{color:var(--color-text-muted);cursor:not-allowed;text-decoration:none}.field-error{color:var(--color-danger);font:var(--text-caption)/1.4 var(--font-label);letter-spacing:normal;text-transform:none}.entry-form input[aria-invalid=true]{border-color:var(--color-danger)}.admin-screen-heading{justify-content:space-between;margin-bottom:1rem}.admin-screen-heading h2{font-size:clamp(var(--text-heading-small),2.2vw,var(--text-heading-large));font-weight:500;margin:0}.admin-grid{align-items:start;display:grid;gap:1.25rem;grid-template-columns:minmax(26rem,.9fr) minmax(0,1.4fr)}.entry-form{display:grid;gap:1rem;min-width:0}.form-grid{display:grid;gap:.9rem 1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.entry-form label{color:var(--color-text-muted);display:grid;font-family:var(--font-label);font-size:var(--text-caption);font-weight:700;gap:.35rem;letter-spacing:.1em;min-width:0;text-transform:uppercase}.wide-field,.org-toggle{grid-column:1 / -1}.age-group-subtext{color:var(--color-text-muted);display:block;font-family:var(--font-body);font-size:var(--text-label);font-weight:500;line-height:1.35;margin-top:-.1rem;text-transform:none}.date-of-birth-field{display:grid;gap:.35rem;min-width:0;position:relative}.date-of-birth-field .react-datepicker-wrapper,.date-of-birth-field .react-datepicker__input-container{display:block;width:100%}.admin-console .react-datepicker-popper{font-family:var(--font-label);letter-spacing:normal;text-transform:none;z-index:8}.admin-console .react-datepicker{border-color:var(--color-border);box-shadow:0 12px 30px rgb(var(--rgb-text) / 16%);font-family:var(--font-label)}.admin-console .react-datepicker__header{background:var(--color-surface);border-bottom-color:var(--color-border)}.admin-console .react-datepicker__current-month,.admin-console .react-datepicker__day-name,.admin-console .react-datepicker__day{color:var(--color-text)}.admin-console .react-datepicker__month-select,.admin-console .react-datepicker__year-select{background:var(--color-background);border:1px solid rgb(var(--rgb-secondary-strong) / 35%);border-radius:.2rem;color:var(--color-text);min-height:2rem}.admin-console .react-datepicker__day--selected,.admin-console .react-datepicker__day--keyboard-selected{background:var(--color-secondary-strong);color:var(--color-on-primary)}.admin-console .react-datepicker__day:hover{background:var(--color-surface-muted)}.entry-form input,.entry-form select,.entry-form textarea{background:var(--color-background);border:1px solid rgb(var(--rgb-secondary-strong) / 35%);border-radius:.25rem;box-sizing:border-box;color:var(--color-text);font:var(--text-body)/1.4 var(--font-body);min-height:2.75rem;min-width:0;padding:.72rem .78rem;width:100%}.entry-form textarea{resize:vertical}.entry-form input:disabled,.entry-form select:disabled,.entry-form textarea:disabled{background:var(--color-surface-muted);color:var(--color-text-muted)}.entry-form label.checkbox-label{align-items:start;display:grid;gap:.65rem;grid-template-columns:auto 1fr;letter-spacing:.02em;line-height:1.35;text-transform:none}.entry-form label.checkbox-label input[type=checkbox]{accent-color:var(--color-secondary-strong);box-sizing:border-box;height:1.15rem;margin:.08rem 0 0;min-height:1.15rem;padding:0;width:1.15rem}.entrants-admin-grid{grid-template-columns:minmax(34rem,1fr) minmax(0,1.2fr)}.entrant-editor-panel{min-width:0}.entrant-form .form-grid{align-items:start;grid-template-columns:minmax(17rem,1.2fr) minmax(13rem,.8fr)}.entrant-form .form-grid input[name=entrantName],.entrant-form .form-grid input[name=dateOfBirth]{height:2.75rem}.entrant-form .org-toggle{align-items:center;display:flex;gap:.65rem;line-height:1.3}.entrant-form .org-toggle input{flex:0 0 auto;margin:0}.form-actions{display:flex;flex-wrap:wrap;gap:.75rem}.entry-form button:disabled{cursor:progress;opacity:.72}.text-button{background:transparent;border:0;color:var(--color-secondary-strong);cursor:pointer;font-family:var(--font-label);font-size:var(--text-caption);font-weight:700;letter-spacing:.1em;padding:.25rem 0;text-decoration:underline;text-underline-offset:.24em;text-transform:uppercase}.text-button.danger{color:var(--color-danger)}.status-message,.form-note{color:var(--color-text-muted);margin:1rem 0 0}.compact-form-note{margin:0}.status-message.error{color:var(--color-danger)}.status-message.saved{color:var(--color-success)}.entrant-table strong,.entrant-table small{display:block}.entrant-table small{color:var(--color-text-muted);font-size:var(--text-label);margin-top:.2rem}.table-actions{display:flex;flex-wrap:wrap;gap:.75rem}.feis-year-name{align-items:center;display:flex;flex-wrap:wrap;gap:.45rem .75rem}.feis-year-name .publication-badge{margin:0}.feis-year-name .text-button:disabled{cursor:progress;opacity:.65}.admin-heading-kicker{color:var(--color-secondary-strong);font:700 var(--text-micro)/1.2 var(--font-label);letter-spacing:.11em;margin:0 0 .25rem;text-transform:uppercase}.admin-access-denied{max-width:44rem}.admin-access-denied p:not(.admin-heading-kicker){color:var(--color-text-muted);margin:.5rem 0 1.25rem}.admin-secondary-button,.button.admin-secondary-button{background:transparent;border-color:var(--color-border);color:var(--color-text)}.blog-editor-panel{display:grid;gap:.35rem}.blog-entry-form{gap:1.25rem}.publication-badge{border:1px solid;border-radius:999px;display:inline-flex;font:700 var(--text-micro)/1 var(--font-label);letter-spacing:.08em;padding:.4rem .58rem;text-transform:uppercase;white-space:nowrap}.publication-badge.draft{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text-muted)}.publication-badge.published{background:var(--color-success-surface);border-color:var(--color-success);color:var(--color-success)}.blog-admin-table td:first-child{max-width:28rem}.blog-entry-edit-link{color:inherit;display:block;text-decoration:none}.blog-entry-edit-link:hover strong{color:var(--color-primary);text-decoration:underline;text-decoration-color:var(--color-secondary-strong);text-underline-offset:.2em}.blog-admin-table strong,.blog-admin-table small{display:block}.blog-admin-table small{color:var(--color-text-muted);margin-top:.2rem}.blog-empty-state{align-items:flex-start;display:grid;gap:1rem;justify-items:start;padding-block:.5rem}.blog-empty-state .form-note{margin:0}.blog-rich-editor-shell{background:var(--color-background);border:1px solid var(--color-border);border-radius:.3rem;overflow:hidden}.blog-editor-loading{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-muted);display:flex;min-height:28rem;padding:1rem}.blog-rich-editor{--accentBase: var(--color-secondary-strong);--accentBgSubtle: var(--color-surface-muted);--accentBg: var(--color-surface-muted);--accentText: var(--color-primary);--baseBase: var(--color-background);--baseBgSubtle: var(--color-surface);--baseBg: var(--color-surface);--baseBorder: var(--color-border);--baseText: var(--color-text);color:var(--color-text);font-family:var(--font-body)}.blog-editor-toolbar{background:var(--color-surface);border-bottom:1px solid var(--color-border);flex-wrap:wrap!important;gap:.25rem;padding:.5rem!important}.blog-editor-toolbar button,.blog-editor-toolbar select{min-height:2rem}.blog-rich-editor-content{color:var(--color-text);font:var(--text-body)/1.7 var(--font-body);min-height:28rem;padding:1.1rem 1.25rem 2rem}.blog-rich-editor-content h2,.blog-rich-editor-content h3,.blog-rich-editor-content h4{font-family:var(--font-body);line-height:1.2}.blog-rich-editor-content img{height:auto;max-width:100%}.blog-rich-editor .cm-editor{min-height:28rem}.blog-rich-editor .cm-scroller{font:var(--text-label)/1.55 var(--font-monospace)}.blog-editor-help{background:var(--color-surface);border-top:1px solid var(--color-border);padding:.7rem .85rem}.blog-publish-control{background:var(--color-surface);border:1px solid var(--color-border);border-radius:.3rem;padding:.85rem}.markdown-content{color:var(--color-text);font-size:var(--text-body);line-height:1.75;overflow-wrap:anywhere}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4{line-height:1.18;margin:1.8em 0 .55em}.markdown-content h1{font-size:var(--text-heading-large)}.markdown-content h2{border-bottom:1px solid var(--color-border);font-size:var(--text-heading-medium);padding-bottom:.35rem}.markdown-content h3{font-size:var(--text-heading-small)}.markdown-content p,.markdown-content ul,.markdown-content ol{margin:.85em 0}.markdown-content blockquote{border-left:4px solid var(--color-secondary);color:var(--color-text-muted);margin:1.4rem 0;padding:.15rem 0 .15rem 1rem}.markdown-content img{border-radius:.35rem;display:block;height:auto;margin:1.6rem auto;max-width:100%}.markdown-content code{background:var(--color-surface-muted);border-radius:.2rem;font:var(--text-label)/1.5 var(--font-monospace);padding:.12rem .3rem}.markdown-content pre{background:var(--color-primary);border-radius:.35rem;color:var(--color-on-primary);overflow-x:auto;padding:1rem}.markdown-content pre code{background:transparent;padding:0}.markdown-content table{border-collapse:collapse;display:block;max-width:100%;overflow-x:auto}.markdown-content th,.markdown-content td{border:1px solid var(--color-border);padding:.55rem .7rem;text-align:left}.blog-index{margin:0 auto;max-width:72rem;padding:clamp(2.5rem,5vw,4rem) clamp(1rem,4vw,2rem) 5rem}.blog-year{display:grid;gap:1.5rem;grid-template-columns:minmax(5rem,.25fr) minmax(0,1fr);padding:0 0 3rem}.blog-year>h2{color:var(--color-secondary-strong);font:500 clamp(var(--text-heading-medium),3vw,var(--text-heading-large))/1 var(--font-body);margin:0}.blog-card-list{display:grid;gap:1rem}.blog-card{background:rgb(var(--rgb-background) / 88%);border:1px solid var(--color-border);border-radius:.35rem;box-shadow:0 10px 28px rgb(var(--rgb-text) / 7%);padding:clamp(1.2rem,3vw,1.75rem)}.blog-card time,.blog-article time{color:var(--color-secondary-strong);font:700 var(--text-micro)/1.3 var(--font-label);letter-spacing:.09em;text-transform:uppercase}.blog-card h2,.blog-card h3{font-size:clamp(var(--text-heading-small),2.4vw,var(--text-heading-medium));font-weight:500;line-height:1.2;margin:.35rem 0}.blog-card h2 a,.blog-card h3 a{text-decoration:none}.blog-card p{color:var(--color-text-muted);margin:.55rem 0}.blog-state{background:var(--color-background);border:1px solid var(--color-border);padding:1rem}.blog-state.error{color:var(--color-danger)}.blog-state.standalone{margin:clamp(2rem,8vw,6rem) auto;max-width:46rem}.route-loading{margin:clamp(2rem,8vw,6rem) auto;max-width:46rem;padding:1rem}.blog-article{margin:0 auto;max-width:50rem;padding:clamp(3rem,7vw,5rem) clamp(1rem,4vw,2rem) 5rem}.blog-article>footer{border-top:1px solid var(--color-border);margin-top:2.5rem;padding-top:1.5rem}.history-card-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,24rem),1fr))}.history-card{display:flex;flex-direction:column}.history-card .text-link{margin-top:auto;padding-top:.5rem}.history-section-label{color:var(--color-secondary-strong);font:700 var(--text-micro)/1.3 var(--font-label);letter-spacing:.09em;text-transform:uppercase}.history-article{margin-top:clamp(2rem,5vw,3.5rem);max-width:72rem}.history-overview{border-bottom:1px solid var(--color-border)}.history-overview .policy-overview-body{width:100%}.history-subsection-list{display:grid;gap:1rem}.history-subsection{background:var(--color-background);border:1px solid var(--color-border);scroll-margin-top:7rem}.history-subsection>summary{align-items:center;background:var(--color-surface);cursor:pointer;display:grid;gap:1rem;grid-template-columns:minmax(0,1fr) auto;list-style:none;padding:clamp(1rem,3vw,1.4rem) clamp(1rem,4vw,1.6rem)}.history-subsection>summary::-webkit-details-marker{display:none}.history-subsection>summary:after{color:var(--color-secondary-strong);content:"+";font:500 var(--text-heading-medium)/1 var(--font-label)}.history-subsection[open]>summary{background:var(--color-primary);color:var(--color-on-primary)}.history-subsection[open]>summary:after{color:var(--color-secondary-soft);content:"−"}.history-subsection>summary:hover .history-subsection-title,.history-subsection>summary:focus-visible .history-subsection-title{color:var(--color-secondary-strong)}.history-subsection[open]>summary:hover .history-subsection-title,.history-subsection[open]>summary:focus-visible .history-subsection-title{color:var(--color-secondary-soft)}.history-subsection>summary:focus-visible{outline:.2rem solid var(--color-secondary);outline-offset:.15rem}.history-subsection-heading{display:grid;gap:.25rem}.history-subsection-label{color:var(--color-secondary-strong);font:700 var(--text-micro)/1.3 var(--font-label);letter-spacing:.1em;text-transform:uppercase}.history-subsection[open] .history-subsection-label{color:var(--color-secondary-soft)}.history-subsection-title{color:var(--color-text);font-family:var(--font-body);font-size:clamp(var(--text-public),2.2vw,var(--text-heading-medium));font-weight:500;line-height:1.2}.history-subsection[open] .history-subsection-title{color:var(--color-on-primary)}.history-subsection-body{border-top:.2rem solid var(--color-secondary);padding:clamp(1.25rem,4vw,2.5rem) clamp(1rem,4vw,2rem)}.history-article .markdown-content>h1,.history-article .markdown-content>h2,.history-article .markdown-content>h3,.history-article .markdown-content>h4,.history-article .markdown-content>p:not(:has(>.markdown-image)),.history-article .markdown-content>ul,.history-article .markdown-content>ol,.history-article .markdown-content>blockquote,.history-article .markdown-content>table{margin-left:auto;margin-right:auto;max-width:50rem}.history-article .markdown-content>p:has(>.markdown-image){display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));margin:1.25rem 0 2.5rem}.markdown-image{align-content:start;background:var(--color-surface);border:1px solid var(--color-border);border-radius:.35rem;display:grid;overflow:hidden}.markdown-image-media{align-items:center;aspect-ratio:4 / 3;background:var(--color-surface-muted);display:flex;justify-content:center;overflow:hidden}.markdown-image img{aspect-ratio:auto;background:transparent;border-radius:0;height:auto;margin:0;max-height:100%;max-width:100%;object-fit:contain;width:auto}.markdown-image-caption{color:var(--color-text-muted);font:var(--text-label)/1.55 var(--font-body);padding:.75rem .85rem}.history-article>footer{border-top:1px solid var(--color-border);margin-top:2.5rem;padding-top:1.5rem}.site-footer{background:var(--color-primary);color:var(--color-on-primary-muted);padding:1.5rem clamp(1rem,4vw,3rem)}.site-footer nav{display:flex;flex-wrap:wrap;gap:.85rem 1.5rem;margin-bottom:1rem}.site-footer p{color:var(--color-on-primary-muted);font-size:var(--text-label);margin:0}@media(max-width:880px){.timetable-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.timetable-filters label:first-child{grid-column:1 / -1}.timetable-filters button{align-self:end}.timetable-venues{grid-template-columns:1fr}.award-filters{align-items:stretch;grid-template-columns:1fr}.award-list{grid-template-columns:1fr}.award-stats>div{min-height:6rem;padding:.75rem}.site-header{align-items:center;flex-direction:row;position:sticky}.hero{min-height:20rem}.hero:before{background:linear-gradient(90deg,#000000db,#000000b3 52%,#0000004d),linear-gradient(180deg,#0000001f,#00000094)}.hero-image{object-position:center center}.hero-copy{padding:1.25rem}.notice-grid,.cards,.cta-band,.content-section,.info-cards,.admin-grid,.entrant-overview{grid-template-columns:1fr}.entrant-current-feis,.entrant-entries-panel{min-height:0}.admin-console{grid-template-columns:13.5rem minmax(0,1fr)}.admin-sidebar-brand{padding-inline:.55rem}.admin-sidebar-brand strong{font-size:var(--text-label)}.admin-sidebar-nav a{gap:.55rem;padding-inline:.55rem}.panel{border-bottom:1px solid var(--color-border);border-right:0;padding:0 0 1.5rem}.panel:last-child{border-bottom:0}.seal{justify-self:center}.form-grid,.entrant-form .form-grid{grid-template-columns:1fr}.inline-create-panel{display:none}.mobile-create-action{display:inline-flex}.blog-rich-editor-content,.blog-rich-editor .cm-editor{min-height:22rem}}@media(max-width:480px){.competition-admin-list-heading{display:none}.competition-admin-row{align-items:start;gap:.2rem .65rem;grid-template-columns:auto minmax(0,1fr) auto;padding:.8rem 0}.competition-code{grid-column:1;grid-row:1 / span 2}.competition-admin-name{grid-column:2;grid-row:1}.competition-age-summary{grid-column:2;grid-row:2}.competition-edit-action{grid-column:3;grid-row:1 / span 2}.competition-age-rule-editor{padding:.75rem}.competition-age-range-fields{grid-template-columns:1fr}.timetable-stats>div{min-height:5.75rem;padding:.7rem}.timetable-stats dt{font-size:var(--text-micro);letter-spacing:.06em}.timetable-filters{grid-template-columns:1fr}.timetable-filters label:first-child{grid-column:auto}.timetable-result-summary,.timetable-day-heading{align-items:flex-start;flex-direction:column}.timetable-result-summary p:last-child{text-align:left}.timetable-entry{gap:.55rem;grid-template-columns:2.8rem 3.35rem minmax(0,1fr);padding:.8rem .7rem}.timetable-entry time{font-size:var(--text-micro)}.timetable-number{font-size:var(--text-micro)}.award-stats,.policy-facts{grid-template-columns:1fr}.policy-contents ul{columns:1}}@media(max-width:1200px){.entrants-admin-grid{grid-template-columns:1fr}}@media(min-width:641px)and (max-width:960px){.admin-console{grid-template-columns:4.25rem minmax(0,1fr);max-width:100vw}.admin-console-body{max-width:calc(100vw - 4.25rem)}.admin-sidebar{grid-template-rows:minmax(0,1fr) auto;padding:.9rem .45rem .65rem}.admin-sidebar-brand,.admin-account-details{display:none}.admin-sidebar-nav span{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.admin-sidebar-nav a{gap:0;grid-template-columns:1fr;justify-items:center;padding:.65rem .5rem}.admin-sidebar-account{align-items:center;align-self:end;display:flex;flex-direction:column;gap:.5rem;justify-content:center;padding:.8rem 0 0;width:100%}.admin-sidebar-signout{justify-content:center;min-height:2rem;min-width:2rem}}@media(max-width:640px){.site-header{align-items:center;flex-direction:row;flex-wrap:wrap;gap:.7rem;min-height:auto;padding-block:.7rem;position:sticky}.brand{flex:0 1 auto;min-width:0}.brand>span{min-width:0}.brand-title,.brand-subtitle{overflow-wrap:anywhere}.menu-toggle{min-height:2.55rem;padding:.62rem .78rem}.menu-toggle>span:last-child{display:none}.menu-toggle:hover{background:var(--color-primary-hover)}.admin-route .site-header{flex-wrap:nowrap;justify-content:flex-start;min-height:4.2rem;padding:.6rem .85rem}.admin-route .brand{gap:.55rem;max-width:100%}.admin-route .brand-logo{height:2.4rem;width:2.4rem}.admin-route .brand-title{font-size:var(--text-label)}.admin-route .brand-subtitle{font-size:var(--text-micro);letter-spacing:.1em}.admin-console{grid-template-columns:3.45rem minmax(0,1fr);max-width:100vw}.admin-console-body{max-width:calc(100vw - 3.45rem);overflow-x:hidden}.admin-main{max-width:100%;padding:.9rem .65rem 1.5rem}.admin-sidebar{grid-template-rows:minmax(0,1fr) auto;min-height:calc(100vh - 4.2rem);padding:.75rem .35rem .55rem}.admin-sidebar-brand,.admin-account-details{display:none}.admin-sidebar-nav span{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.admin-sidebar-nav a{border-radius:.2rem;gap:0;grid-template-columns:1fr;justify-items:center;min-height:2.9rem;padding:.55rem .4rem}.admin-sidebar-account{align-items:center;align-self:end;display:flex;flex-direction:column;gap:.45rem;justify-content:center;padding:.7rem 0 0;width:100%}.admin-sidebar-signout{justify-content:center;min-height:2rem;min-width:2rem}.admin-topbar{gap:.65rem;justify-content:space-between;min-height:3.1rem;padding:.6rem .75rem}.admin-topbar-year-select,.admin-topbar-year-label{min-width:0}.admin-topbar-year-control{gap:.35rem;max-width:calc(100% - 2.5rem)}.admin-topbar-year-label{max-width:8.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-topbar-year-select{max-width:7.5rem;min-width:0}.admin-topbar-year-select{display:none}.admin-topbar-year-menu{display:block}.admin-topbar a{flex:0 0 auto;margin-left:.25rem}.admin-topbar a>span{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.admin-console .portal-panel{min-width:0;padding:1rem}.entrant-entries-heading{align-items:stretch;flex-direction:column}.entrant-entries-heading .button{justify-content:center;width:100%}.my-entries-list li{align-items:flex-start;flex-direction:column}.my-entry-meta{align-items:center;display:flex;justify-items:start;text-align:left}.admin-console .react-datepicker-popper{max-width:calc(100vw - 4.75rem)}.admin-console .react-datepicker,.admin-console .react-datepicker__month-container{max-width:100%}.admin-console .react-datepicker__header__dropdown{align-items:center;display:flex;gap:.35rem;justify-content:center}.admin-console .react-datepicker__month-dropdown-container,.admin-console .react-datepicker__year-dropdown-container{margin-inline:0}.admin-console .react-datepicker__month-select,.admin-console .react-datepicker__year-select{max-width:7rem;min-width:0}.admin-console .portal-panel h2,.admin-console .admin-screen-heading h2{font-size:var(--text-heading-medium)}.admin-console .portal-panel-heading{align-items:flex-start;flex-direction:column;gap:.45rem}.admin-screen-heading{align-items:flex-start;flex-direction:column}.admin-screen-heading .mobile-create-action{justify-content:center;max-width:100%}.feis-years-table{min-width:0;width:100%}.feis-years-table th,.feis-years-table td{padding-inline:.45rem}.feis-years-table th:nth-child(n+3),.feis-years-table td:nth-child(n+3){display:none}.blog-year{grid-template-columns:1fr}.blog-year>h2{border-bottom:1px solid var(--color-border);padding-bottom:.6rem}.blog-admin-table th:nth-child(2),.blog-admin-table td:nth-child(2),.blog-admin-table th:nth-child(4),.blog-admin-table td:nth-child(4){display:none}}@media(max-width:560px){.brand-logo{height:2.9rem;width:2.9rem}.brand{gap:.65rem}.brand-title{font-size:var(--text-body)}.brand-subtitle{font-size:var(--text-micro);letter-spacing:.12em}.menu-toggle{min-height:2.65rem;padding-inline:.78rem}.hero{min-height:12.5rem}.hero-copy{padding:1rem}.hero h1{font-size:var(--text-heading-medium);line-height:1.08;max-width:22ch}.hero-actions{display:grid;gap:.5rem;grid-template-columns:repeat(2,minmax(0,1fr))}.hero-actions .button{font-size:var(--text-caption);letter-spacing:.04em;padding-inline:.45rem;white-space:nowrap}.hero-intro,.hero .irish{display:none}.page-hero h1{max-width:20ch}.news-item{grid-template-columns:4.25rem 1fr}.date-row{grid-template-columns:auto 1fr}.thumb{height:4rem;width:3.7rem}.heritage h2{letter-spacing:.14em}.portal-content{padding-inline:.75rem;width:min(100%,100vw)}.portal-panel{padding:.9rem;width:100%}.portal-panel-heading,.admin-toolbar{align-items:flex-start;flex-direction:column;gap:.45rem}}@media(max-width:360px){.hero-actions{grid-template-columns:1fr}}@media(max-width:400px){.admin-route .site-header{min-height:3.8rem;padding-inline:.65rem}.admin-route .brand-logo{height:2.15rem;width:2.15rem}.admin-route .brand-title{font-size:var(--text-label)}.admin-route .brand-subtitle{font-size:var(--text-micro)}.admin-console{grid-template-columns:3.2rem minmax(0,1fr)}.admin-console-body{max-width:calc(100vw - 3.2rem)}.admin-main{padding-inline:.5rem}.admin-sidebar{min-height:calc(100vh - 3.8rem);padding-inline:.25rem}.admin-sidebar-nav a{min-height:2.65rem;padding-inline:.3rem}.admin-topbar{padding-inline:.6rem}.admin-console .portal-panel{padding:.85rem}.admin-console .admin-screen-heading h2{font-size:var(--text-heading-small)}.admin-screen-heading .mobile-create-action{width:100%}}@media(max-width:280px){.feis-years-table th:nth-child(2),.feis-years-table td:nth-child(2){display:none}}
