@font-face{font-family:'Barlow Condensed';src:url('/assets/barlow-condensed-bold.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/inter-regular.woff2') format('woff2');font-style:normal;font-weight:400 800;font-display:swap}

/* Blue is sampled from the supplied event artwork. Darker shades provide accessible contrast. */
:root{--blue:#0080d0;--blue-accessible:#006eb5;--temple-blue:#28568b;--navy:#102b4c;--ink:#14273c;--muted:#5a697c;--silver:#f4f5f8;--line:#dce3eb;--white:#fff;--body:Inter,Arial,sans-serif;--display:'Barlow Condensed','Arial Narrow',Impact,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:2rem}
body{margin:0;background:var(--white);color:var(--ink);font-family:var(--body);font-size:1rem;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible{outline:3px solid currentColor;outline-offset:6px}
img{display:block;max-width:100%}h1,h2,h3,p{margin:0}::selection{background:var(--navy);color:white}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.skip-link{position:fixed;left:1rem;top:-6rem;background:var(--navy);color:white;padding:.8rem 1.2rem;z-index:30}.skip-link:focus{top:1rem}
.section-wrap{width:min(88%,1280px);margin-inline:auto}
.eyebrow{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;font-size:.8125rem;font-weight:600;letter-spacing:.12em;line-height:1.6}
.section-eyebrow{margin-bottom:1.7rem;color:var(--muted)}.section-eyebrow>span{color:var(--blue-accessible)}
h2{font:700 clamp(3rem,4.65vw,4.75rem)/.98 var(--display);letter-spacing:-.01em}h2>span{color:var(--blue)}

/* Quiet event masthead. Federation identities appear only in the footer. */
.site-header{position:relative;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:2rem;min-height:6rem;padding:1.3rem 5%;border-bottom:1px solid var(--line);background:white}
.brand{display:inline-flex;align-items:center;gap:1rem;flex-shrink:0}
.brand-main{display:flex;align-items:baseline;gap:.35rem;color:var(--navy);font:700 1.75rem/1 var(--display);letter-spacing:-.02em}
.brand-main>span{color:var(--blue-accessible)}
.brand-event{border-left:1px solid var(--line);padding-left:1rem;color:var(--muted);font-size:.75rem;line-height:1.45;letter-spacing:.025em}
.main-nav{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.6rem 1.4rem}.main-nav a{font-size:.875rem;transition:color .18s}.main-nav a:hover{color:var(--blue-accessible)}
.menu-toggle{display:none}

/* Frame the complete central event mark without modifying the original image. */
.hero{overflow:hidden;background:#fafafa}
.hero-inner{display:grid;grid-template-columns:1.08fr 1fr;align-items:center;gap:1%;width:min(90%,1360px);margin-inline:auto;padding-block:1.5rem .5rem}
.hero-content{position:relative;z-index:1;padding-block:2.5rem;min-width:0}
.hero-eyebrow{color:var(--temple-blue);font-size:.8125rem;letter-spacing:.08em;gap:.65rem;margin-bottom:2rem}.hero-eyebrow>span{color:#8ba0b8}
h1{font:700 clamp(3.4rem,6.45vw,6.5rem)/.95 var(--display);letter-spacing:-.018em;overflow-wrap:anywhere}h1>span{display:block}
h1 .hero-ifma{font:600 .9375rem/1.2 var(--body);letter-spacing:.24em;color:var(--temple-blue);margin-bottom:.7rem}
.hero-blue{color:var(--blue)}h1 .hero-year{color:var(--temple-blue);font-size:.88em;margin-top:.12em;letter-spacing:-.015em}
.hero-description{color:var(--muted);font-size:1.0625rem;line-height:1.7;margin:1.8rem 0 1.9rem}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;column-gap:1.8rem;row-gap:1rem}
.button{display:inline-flex;justify-content:space-between;align-items:center;gap:2rem;min-height:3.4rem;padding:.85rem 1.25rem;font-size:.9375rem;font-weight:500;transition:background .18s,transform .18s}.button>span{font-size:1.25rem}
.button-blue{color:white;background:var(--blue-accessible)}.button-blue:hover{background:var(--navy);transform:translateY(-2px)}
.hero-secondary{font-size:.875rem;color:var(--navy);border-bottom:1px solid #94a5b8;padding-block:.4rem}.hero-secondary:hover{color:var(--blue-accessible);border-color:currentColor}
.hero-art{position:relative;aspect-ratio:.97;width:100%;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 95%,transparent)}
.hero-art img{position:absolute;top:50%;left:50%;width:185%;height:auto;max-width:none;transform:translate(-50%,-48%)}
.hero-foot{width:min(90%,1360px);margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:2rem;border-top:1px solid var(--line);padding:1.25rem 0;color:var(--muted);font-size:.75rem;letter-spacing:.1em}
.hero-foot a{display:inline-flex;align-items:center;gap:1.1rem}.hero-foot a:hover{color:var(--blue-accessible)}.hero-foot a>span{font-size:1.125rem}

.event-strip{color:white;background:var(--blue-accessible)}
.strip-inner{display:grid;grid-template-columns:1.15fr 1fr 1fr;width:min(88%,1280px);margin-inline:auto;padding-block:1.75rem}
.strip-item{display:flex;flex-direction:column;gap:.35rem;padding-left:2.6rem;border-left:1px solid #ffffff50}.strip-item:first-child{padding-left:0;border:0}
.strip-label{font-size:.75rem;letter-spacing:.13em}.strip-item strong{font-size:1.1875rem;font-weight:500;letter-spacing:-.025em;line-height:1.45}

.intro{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding-block:6.5rem}
.intro-copy{padding-top:2.9rem}.intro-copy p{color:var(--muted);margin-bottom:1.1rem;max-width:34rem}
.intro-copy .lead{color:var(--ink);font-size:1.375rem;line-height:1.5;letter-spacing:-.025em}
.text-link{display:inline-flex;align-items:center;gap:2rem;color:var(--blue-accessible);padding:.5rem 0;border-bottom:1px solid #95b6ce;font-size:.875rem;font-weight:500;line-height:1.5}
.text-link>span[aria-hidden]{font-size:1.2rem}.text-link:hover{color:var(--navy);border-color:currentColor}

.host-nation{background:var(--silver);padding-block:5.5rem}
.nation-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);align-items:start;gap:8%}
.nation-heading{position:sticky;top:2rem;min-width:0}.nation-heading h2{overflow-wrap:break-word}
.nation-heading .text-link{margin-top:2rem}
.nation-copy{min-width:0;max-width:46rem;color:var(--muted)}
.nation-copy h3{margin-bottom:1.25rem;color:var(--navy);font-size:1.125rem;font-weight:600;line-height:1.5}
.nation-copy p+p{margin-top:1.5rem}.nation-copy .nation-lead{font-size:1.1875rem;line-height:1.7;color:var(--ink)}

/* A single destination slideshow: Ancient Olympia, the Academy and the official hotel. */
.destination{color:var(--ink);background:var(--silver)}
.destination-content{padding-block:4.5rem}
.destination-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:6%;align-items:end;margin-bottom:2.5rem}
.destination-heading>div{min-width:0}.destination .eyebrow{color:var(--muted);margin-bottom:1.5rem}.destination .eyebrow>span{color:var(--blue-accessible)}
.destination h2{font-size:clamp(3rem,4.65vw,4.75rem);line-height:1}
.destination-intro{max-width:33rem;color:var(--muted)}.destination-intro .text-link{margin-top:1rem}
.destination-viewer{background:var(--silver);min-width:0}.destination-viewer:focus-visible{outline:3px solid var(--blue-accessible);outline-offset:6px}
.destination-slide{margin:0}.destination-slide[hidden],.destination-controls[hidden]{display:none}
.destination-slide img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:var(--silver);touch-action:pan-y pinch-zoom}
.destination-slide figcaption{display:flex;align-items:center;justify-content:space-between;gap:1rem 2rem;padding:1.2rem 1.5rem;background:white;color:var(--ink);min-height:7rem}
.destination-slide figcaption>div{min-width:0}.destination-slide-category{display:block;color:var(--blue-accessible);font-size:.875rem;font-weight:600;letter-spacing:.055em;line-height:1.5}
.destination-slide h3{font-size:1.2rem;font-weight:500;line-height:1.5;margin-top:.3rem}
.destination-photo-source{color:var(--muted);font-size:.875rem;line-height:1.5;text-decoration:underline;text-underline-offset:4px;max-width:16rem}
.destination-photo-source:hover{color:var(--blue-accessible)}
.destination-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:white;color:var(--navy);padding:.75rem 1.5rem;border-top:1px solid var(--line)}
.destination-controls button{display:inline-flex;align-items:center;gap:.7rem;min-height:2.75rem;padding:.5rem .85rem;border:1px solid var(--line);background:white;color:var(--navy);cursor:pointer;font-size:.9375rem}
.destination-controls button:hover{background:var(--silver);border-color:var(--blue-accessible)}
.destination-counter{font-size:.9375rem;color:var(--muted);font-variant-numeric:tabular-nums}
@media(max-width:900px){.destination-content{padding-block:3.5rem}.destination-heading{grid-template-columns:1fr;gap:1.5rem}.destination-intro{max-width:none}.destination h2{font-size:clamp(3rem,7.8vw,4.5rem)}}
@media(max-width:600px){.destination-slide figcaption{display:block;padding:1rem;min-height:10rem}.destination-photo-source{display:inline-block;max-width:none;margin-top:.65rem}.destination-controls{padding:.75rem 1rem}.destination-slide img{aspect-ratio:4/3}.destination-slide-category{font-size:.875rem;letter-spacing:.025em}.destination-slide h3{font-size:1.125rem}}

.information{display:grid;grid-template-columns:1fr 1.15fr;gap:10%;padding-block:6.5rem}
.info-heading>p:not(.eyebrow){color:var(--muted);margin-top:1.6rem;max-width:25rem}
.info-heading>.info-confirmed{margin-top:2rem;padding-top:1.4rem;border-top:1px solid var(--line)}
.info-confirmed>span{display:block;font-size:.75rem;letter-spacing:.07em;color:var(--blue-accessible);margin-bottom:.55rem}
.info-confirmed>strong{font-size:1rem;font-weight:500;color:var(--ink)}.info-list{border-top:1px solid var(--line)}
.info-row{display:grid;grid-template-columns:2rem 1fr;gap:1.25rem;align-items:start;padding:1.7rem 0;border-bottom:1px solid var(--line)}
.info-number{color:var(--blue-accessible);font-size:.8125rem;padding-top:.35rem}
.info-row h3{font-size:1.25rem;line-height:1.4;font-weight:500;letter-spacing:-.03em}.info-row p{color:var(--muted);margin-top:.45rem;font-size:1rem}
.status{display:inline-block;margin-top:.8rem;font-size:.875rem;line-height:1.4;color:#52677c;background:#f0f4f8;padding:.35rem .65rem}
.info-note{margin-top:1.5rem;color:var(--muted);font-size:.875rem}.info-note a{color:var(--blue-accessible);text-decoration:underline;text-underline-offset:4px}

/* Practical information from the organiser's current guidebook revisions. */
.info-row>div,.support-layout>div{min-width:0}
.departure-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin:1.2rem 0}
.departure-dates dt{font-size:.875rem;color:var(--muted);line-height:1.5}
.departure-dates dd{margin:.4rem 0 0;font:700 1.75rem/1.2 var(--display);color:var(--blue-accessible)}
.departure-dates dd span{display:block;margin-top:.3rem;font:400 .875rem/1.4 var(--body);color:var(--muted)}
.officials-details summary{cursor:pointer;font-size:1.25rem;line-height:1.5;font-weight:500;padding:.2rem 0;min-height:2.75rem}
.officials-details summary:focus-visible{outline:3px solid var(--blue-accessible);outline-offset:6px}
.officials-count{display:block;margin:.35rem 0 0;font-size:.875rem;font-weight:400;color:var(--muted)}
.officials-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem 2rem;padding-left:1.4rem;margin:1.3rem 0 0;color:var(--muted);font-size:1rem}
.officials-list li{padding-left:.15rem;overflow-wrap:break-word}.officials-list li::marker{color:var(--blue-accessible)}
.contacts{background:var(--silver);padding-block:5.5rem;border-top:1px solid var(--line)}
.support-heading,.travel-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:2rem 4%;margin-bottom:2rem}
.support-intro,.travel-intro{color:var(--muted);max-width:33rem;margin-top:1rem}
.support-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:1.75rem}
.support-primary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2rem 4%;background:var(--navy);color:white;padding:2rem 2.25rem}
.support-primary>div{min-width:0}
.support-kicker{font-size:.875rem;font-weight:500;letter-spacing:.06em;line-height:1.5}
.support-phone{display:inline-block;margin-top:1rem;font:700 clamp(2rem,3.1vw,3rem)/1.2 var(--display)}
.support-actions{display:flex;flex-wrap:wrap;gap:.6rem 1.5rem;margin-top:1rem}
.support-actions a,.support-federation>a{font-size:1rem;text-decoration:underline;text-underline-offset:5px;padding-block:.35rem}
.support-federation{border-left:1px solid #ffffff40;padding-left:2rem}
.support-federation>p{font-weight:500}.support-federation address{font-size:.875rem;font-style:normal;color:#d8e4f1;line-height:1.7;margin:.6rem 0}.support-federation>a{display:inline-block}
.support-services{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:1.5rem 4%;align-items:start}
.support-service{display:flex;flex-direction:column;gap:.6rem;padding-top:1.4rem;border-top:1px solid var(--line);align-items:start}
.support-service h3{margin:0;font-size:1rem;font-weight:600;line-height:1.5}
.support-service p{font-size:.875rem;color:var(--muted);line-height:1.6;margin-top:.3rem}
.support-service>a,.support-service>strong{font-size:1.125rem;line-height:1.5;color:var(--blue-accessible);font-weight:600;white-space:nowrap}
.support-service>a{text-decoration:underline;text-underline-offset:5px}
.support-service>.medical-explanation{grid-column:1/-1;font-size:1rem;max-width:34rem;margin-top:.5rem}
.support-emergency{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 1.5rem;border-top:1px solid var(--line);padding-top:1.4rem}.support-emergency>.support-kicker{grid-column:1/-1;color:var(--muted);margin-bottom:.4rem}
.support-emergency>div{display:flex;flex-direction:column;gap:.35rem;align-items:start;min-width:0}
.support-emergency a{font:700 1.8rem/1.4 var(--display);color:var(--blue-accessible);text-decoration:underline;text-underline-offset:5px}
.hotel-essentials{margin-top:2.75rem;padding:2rem;background:var(--silver);border-top:3px solid var(--blue)}
.hotel-copy .hotel-essentials>h3{font:700 2rem/1.2 var(--display);margin-bottom:1.25rem}
.hotel-hours{margin:0}.hotel-hours>div{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line);padding:.85rem 0}
.hotel-hours dd{margin:0;font-weight:600;color:var(--navy);white-space:nowrap;font-variant-numeric:tabular-nums}
.gala-feature{display:grid;grid-template-columns:.8fr 1.6fr;gap:6%;margin-top:3.5rem;padding:3rem;background:var(--navy);color:white}
.gala-date{display:flex;align-items:center;border-right:1px solid #ffffff40;padding-right:2rem}
.gala-date time{display:block;font-size:.9375rem;letter-spacing:.1em;line-height:1.6}
.gala-date time>span{display:block;font:700 clamp(6rem,10vw,10rem)/.88 var(--display);letter-spacing:-.02em;color:#7ed0ff;margin-bottom:1rem}
.gala-content h3{font:700 clamp(3.1rem,5.5vw,5rem)/1 var(--display);margin:.6rem 0 .85rem}
.gala-location{font-size:1.125rem;color:#d8e4f1}
.gala-times{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin:1.75rem 0 0;border-top:1px solid #ffffff40;padding-top:1.3rem}
.gala-times dt{font-size:.9375rem;color:#d8e4f1}.gala-times dd{margin:.4rem 0 0;font:700 2.5rem/1.2 var(--display)}
.course-programme{margin-top:3.5rem;padding-top:2.75rem;border-top:1px solid var(--line)}
.course-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:6%;align-items:end;margin-bottom:2rem}
.course-heading .section-eyebrow{margin-bottom:1rem}.course-heading h3,.safeguarding-intro h3{font:700 clamp(2.3rem,3.4vw,3.5rem)/1.05 var(--display);color:var(--navy)}
.course-heading>p{color:var(--muted);max-width:30rem}
.course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4%}
.course-block{border-top:3px solid var(--blue);padding-top:1.2rem;min-width:0}
.course-block h4{margin:0;font-size:1.25rem;font-weight:600;line-height:1.4}.course-meta{color:var(--muted);font-size:.875rem;margin:.4rem 0 1.3rem}
.course-block table{width:100%;border-collapse:collapse;text-align:left;font-size:1rem}
.course-block th,.course-block td{padding:.8rem .3rem;border-bottom:1px solid var(--line)}
.course-block thead th{font-size:.875rem;color:var(--muted);font-weight:500}.course-block tbody th{font-weight:400}.course-block td{font-variant-numeric:tabular-nums;color:var(--navy);font-weight:600;white-space:nowrap}.course-block th:last-child,.course-block td:last-child{text-align:right}
.course-note{margin-top:1.3rem}.team-safeguarding-link{margin-top:1.4rem}
.safeguarding-support{display:grid;grid-template-columns:1fr 1.15fr;gap:4%;padding:2.25rem 0;margin-bottom:2.5rem;border-block:1px solid var(--line)}
.safeguarding-intro .section-eyebrow{margin-bottom:1rem}.safeguarding-intro>p:last-child{margin-top:1.25rem;color:var(--muted);max-width:30rem}
.safeguarding-contact{min-width:0;padding-left:2rem;border-left:1px solid var(--line)}
.safeguarding-contact>.support-kicker{color:var(--muted)}.safeguarding-contact>h4{font-size:1.2rem;line-height:1.5;margin:.75rem 0;overflow-wrap:anywhere}
.safeguarding-phone{display:inline-flex;flex-wrap:wrap;align-items:center;gap:1rem;font:700 clamp(2rem,3vw,2.75rem)/1.3 var(--display);color:var(--blue-accessible);border-bottom:1px solid var(--blue-accessible);padding:.25rem 0}
.safeguarding-phone>span{font:400 1.25rem var(--body)}.safeguarding-hours{font-size:1rem;margin-top:.7rem;color:var(--muted)}
.safeguarding-after-hours{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--line)}.safeguarding-after-hours h4{font-size:1rem;margin:0 0 .4rem}.safeguarding-after-hours p{color:var(--muted)}.safeguarding-after-hours strong{color:var(--navy);font-weight:600}
@media(max-width:700px){.course-heading,.course-grid,.safeguarding-support{grid-template-columns:1fr;gap:1.75rem}.course-programme{padding-top:2rem}.course-grid{gap:2rem}.safeguarding-contact{border-left:0;padding-left:0}.safeguarding-support{padding-block:1.75rem}.safeguarding-intro>p:last-child{max-width:none}}
@media(max-width:1000px){.support-primary{padding:1.75rem}.support-federation{padding-left:1.5rem}}
@media(max-width:700px){.support-heading{grid-template-columns:1fr;gap:1.5rem}.support-primary,.support-services{grid-template-columns:1fr;gap:1.5rem}.contacts{padding-block:4rem}.support-primary{padding:1.5rem}.support-federation{border-left:0;border-top:1px solid #ffffff40;padding:1.5rem 0 0}.support-phone{font-size:2.25rem}.support-emergency{grid-template-columns:1fr;gap:.65rem}.support-emergency>div{flex-direction:row;justify-content:space-between;align-items:center;gap:1rem}.hotel-essentials{padding:1.5rem}.gala-feature{grid-template-columns:1fr;gap:2rem;padding:2rem}.gala-date{border-right:0;border-bottom:1px solid #ffffff40;padding:0 0 1.5rem}.gala-date time{display:flex;align-items:end;flex-wrap:wrap;gap:1rem;letter-spacing:.08em}.gala-date time>span{font-size:6rem;margin-bottom:0}.gala-times{gap:1rem}}
@media(max-width:700px){.travel-heading{grid-template-columns:1fr;gap:1.5rem}}
@media(max-width:420px){.departure-dates,.officials-list{grid-template-columns:1fr}.departure-dates{gap:1rem}.departure-dates dd span{display:inline;margin-left:.3rem}.hotel-hours>div{flex-wrap:wrap;gap:.25rem .75rem}.gala-feature{padding:1.5rem}.gala-times{grid-template-columns:1fr}}

.closing{background:var(--blue-accessible);color:white}
.closing-inner{display:flex;align-items:center;justify-content:space-between;gap:3rem;padding-block:3.6rem 4rem}.closing .eyebrow{margin-bottom:1.6rem}
.closing-title{font:700 clamp(4rem,7.8vw,8rem)/.9 var(--display);letter-spacing:-.01em}.closing-title>span{color:white}
.closing-date{border-left:1px solid #ffffff5c;padding-left:3.5rem;min-width:21rem}
.closing-date>strong{display:block;font:700 clamp(4rem,6.25vw,6.5rem)/.95 var(--display)}
.closing-date>span{display:block;font-size:1.125rem;letter-spacing:.1em;margin-top:.5rem}.closing-date>p{font-size:.875rem;margin-top:1.2rem}
.closing-date>a{display:inline-flex;gap:2rem;align-items:center;font-size:.875rem;margin-top:1rem;border-bottom:1px solid #ffffff70}.closing-date>a:hover{border-color:white}

.official-hotel{border-top:1px solid var(--line);padding-block:5.5rem}
.hotel-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);align-items:start;gap:8%}
.hotel-heading{position:sticky;top:2rem;min-width:0}.hotel-heading h2{overflow-wrap:break-word}
.hotel-name{margin-top:1.75rem;font-size:1.25rem;line-height:1.5;color:var(--navy);max-width:20rem}
.hotel-heading .text-link{margin-top:1rem}
.hotel-copy{min-width:0;max-width:46rem;color:var(--muted)}
.hotel-copy h3{margin-bottom:1.25rem;color:var(--navy);font-size:1.125rem;font-weight:600;line-height:1.5}
.hotel-copy p+p{margin-top:1.5rem}.hotel-copy strong{color:var(--ink);font-weight:600}
.hotel-copy .hotel-lead{font-size:1.1875rem;line-height:1.7;color:var(--ink)}

.programme{background:var(--silver);padding-block:5.5rem}
.presentation{padding-block:5.5rem}
.resource-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:7%;margin-bottom:2.5rem}
.resource-intro{max-width:34rem;color:var(--muted)}.resource-intro .text-link{margin-top:1rem}
.resource-meta{font-size:.8125rem;margin-top:1rem}
.schedule-frame{background:white;border:1px solid #c7d3e0;overflow:hidden}.schedule-frame iframe{display:block;width:100%;height:650px;border:0;background:white}
.resource-note{margin-top:1.2rem;color:var(--muted);font-size:.875rem}.resource-note a{text-decoration:underline;text-underline-offset:3px;color:var(--blue-accessible)}
.slide-viewer{border:1px solid var(--line);background:var(--navy)}.slide-viewer:focus-visible{outline:3px solid var(--blue-accessible);outline-offset:5px}
.presentation-slide{margin:0}.presentation-slide[hidden],.slide-controls[hidden]{display:none}
.presentation-slide img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:white}
.presentation-slide figcaption{padding:.85rem 1.2rem;color:white;font-size:.875rem;line-height:1.5}
.slide-controls{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem 1.2rem;background:white;border-top:1px solid var(--line)}
.slide-controls button{display:inline-flex;align-items:center;gap:.7rem;min-height:2.75rem;padding:.5rem .75rem;border:1px solid var(--line);background:white;color:var(--navy);cursor:pointer;font-size:.875rem}.slide-controls button:hover:not(:disabled){background:var(--silver);border-color:var(--blue-accessible)}.slide-controls button:disabled{opacity:.4;cursor:default}
.slide-counter{color:var(--muted);font-size:.875rem;font-variant-numeric:tabular-nums}

.site-footer{background:white}
.federations{padding-block:2.8rem}
.federations-heading{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:2.25rem}
.federations-heading>h2{color:var(--muted);font:500 .875rem/1.5 var(--body);letter-spacing:.12em}
/* Frame the supplied screenshot around its complete wordmark, excluding its UI border. */
.ifma-wordmark-link{display:block;flex-shrink:0}
.ifma-wordmark-art{position:relative;display:block;width:12rem;aspect-ratio:330/120;overflow:hidden;background:#f4f4f4}
.ifma-wordmark-art img{position:absolute;width:151.8182%;max-width:none;height:auto;left:-30.303%;top:-79.1667%}
.federation-logos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:2rem}
.federation-link{display:flex;align-items:center;justify-content:center;gap:1rem}.federation-link img{width:5rem;height:5rem;flex:0 0 5rem;object-fit:contain;transform:scale(var(--federation-logo-scale,1))}
/* Balance visible emblem sizes despite different whitespace in the source images. */
.federation-logo-ifma{--federation-logo-scale:1.075}.federation-logo-emf{--federation-logo-scale:1.16}
.federation-link>span:not(.sr-only){color:var(--muted);font-size:.875rem;line-height:1.5}.federation-link:hover>span{color:var(--blue-accessible)}
.initiative-logos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:2rem;margin-top:2.25rem;padding-top:2rem;border-top:1px solid var(--line)}
.initiative-logo{margin:0;min-width:0;text-align:center}
.initiative-art{height:11rem;display:flex;align-items:center;justify-content:center;background:white}
.initiative-art img{width:100%;height:100%;max-width:16rem;object-fit:contain}
.initiative-logo figcaption{margin-top:1rem;color:var(--muted);font-size:.875rem;line-height:1.5}
.footer-bottom{display:flex;justify-content:space-between;align-items:start;flex-wrap:wrap;gap:.8rem 2rem;border-top:1px solid var(--line);padding-block:1.3rem 1.6rem;font-size:.75rem;color:var(--muted);line-height:1.6}
.footer-bottom>span>span[aria-hidden]{padding-inline:.45rem;color:#9ca9b9}.footer-bottom a{text-decoration:underline;text-underline-offset:3px}

@media(min-width:1600px){
  .hero-inner{gap:2%}.hero-content{padding-block:3rem}
}
@media(max-width:1150px){
  .brand-event{display:none}.hero-eyebrow{max-width:22rem}.hero-inner{grid-template-columns:1.12fr 1fr}h1{font-size:6.3vw}
  .hero-description{font-size:1rem}.hero-actions{gap:1rem}.button{gap:1.3rem}.intro{gap:5%}.information{gap:6%}
  .federation-logos{gap:2rem}
}
@media(max-width:900px){
  .site-header{min-height:5rem;padding-block:1rem;gap:1rem;flex-wrap:wrap}.brand-event{display:block}
  .menu-toggle{display:none;align-items:center;justify-content:center;gap:.7rem;min-width:2.75rem;min-height:2.75rem;padding:.5rem 0 .5rem .7rem;background:none;border:none;color:var(--navy);cursor:pointer;font-size:.875rem}
  .menu-icon{position:relative;display:block;width:20px;height:12px;border-top:1.5px solid;border-bottom:1.5px solid;transition:transform .2s}
  .menu-toggle[aria-expanded=true] .menu-icon{height:0;border-bottom:0;transform:rotate(-45deg)}
  .menu-toggle[aria-expanded=true] .menu-icon::after{content:'';position:absolute;width:20px;left:0;top:-1.5px;border-top:1.5px solid;transform:rotate(90deg)}
  .main-nav{display:flex;flex-direction:column;align-items:stretch;width:100%;gap:.3rem;padding-top:.5rem}
  .js .menu-toggle{display:flex}
  .js .main-nav{display:none;position:absolute;left:0;right:0;top:100%;background:white;padding:1rem 5% 1.5rem;border-top:1px solid var(--line);box-shadow:0 14px 20px #102b4c12}
  .js .main-nav.is-open{display:flex}.main-nav a{font-size:1rem;padding:.75rem 0}
  .hero-inner{width:88%;grid-template-columns:1fr;gap:0;padding-top:1.5rem}.hero-content{padding-top:1.5rem;padding-bottom:.5rem}
  .hero-eyebrow{max-width:none;margin-bottom:1.65rem;font-size:.8125rem}h1{font-size:clamp(3.5rem,10.3vw,6.5rem)}h1 .hero-year{margin-top:.15em}
  .hero-description{margin-top:1.4rem;margin-bottom:1.4rem}.hero-actions{column-gap:1.5rem;row-gap:.85rem}
  .hero-art{width:min(100%,30rem);justify-self:center;margin-top:1rem;margin-bottom:1rem}
  .hero-foot{width:88%;padding-block:1rem}.hero-foot>span{display:none}.hero-foot a{width:100%;justify-content:space-between}
  .strip-inner{grid-template-columns:1.2fr 1fr;padding-block:1.5rem}.strip-item{padding-left:1.5rem}.strip-item:last-child{display:none}
  .strip-item strong{font-size:1rem}.strip-label{font-size:.75rem}
  .intro{grid-template-columns:1fr;gap:1.8rem;padding-block:4rem}h2{font-size:clamp(3.1rem,7vw,4.5rem)}
  .section-eyebrow{margin-bottom:1.3rem}.intro-copy{padding-top:0}.intro-copy p{max-width:none}.intro-copy .lead{font-size:1.25rem}
  .host-nation{padding-block:4rem}.nation-layout{grid-template-columns:1fr;gap:2.5rem}.nation-heading{position:static}.nation-copy{max-width:none}
  .information{grid-template-columns:1fr;gap:2.7rem;padding-block:4rem}.info-heading>p:not(.eyebrow){max-width:32rem}.info-heading>.info-confirmed{max-width:none}
  .official-hotel{padding-block:4rem}.hotel-layout{grid-template-columns:1fr;gap:2.5rem}.hotel-heading{position:static}.hotel-name{max-width:none}.hotel-copy{max-width:none}
  .programme,.presentation{padding-block:4rem}.resource-heading{grid-template-columns:1fr;gap:1.7rem}.schedule-frame iframe{height:570px}
  .closing-inner{gap:2rem;padding-block:3rem}.closing-title{font-size:clamp(3.8rem,8vw,5.5rem)}
  .closing-date{padding-left:2rem;min-width:0}.closing-date>strong{font-size:4.4rem}.closing-date>span{font-size:.9375rem}.closing-date>p{max-width:12rem}
  .federations{padding-block:2.4rem}.federation-link{flex-direction:column;text-align:center;gap:.7rem}
  .federation-link img{width:4.5rem;height:4.5rem;flex-basis:4.5rem}
  .initiative-logos{gap:1.5rem}.initiative-art{height:9rem}
}
@media(max-width:540px){
  .brand{gap:.7rem}.brand-main{font-size:1.55rem;gap:.25rem}.brand-event{font-size:.75rem;padding-left:.7rem}.menu-toggle>span:first-child{display:none}
  .hero-eyebrow{font-size:.75rem;gap:.4rem;letter-spacing:.045em}h1{font-size:10.25vw}h1 .hero-ifma{font-size:.875rem}.hero-art{width:100%}
  .strip-inner{gap:1.25rem}.strip-item{padding-left:1.25rem}.strip-item strong{max-width:10rem}.strip-label{letter-spacing:.09em}
  .info-row{grid-template-columns:1.5rem 1fr;gap:.75rem}.info-row h3{font-size:1.1875rem}
  .presentation-slide figcaption,.slide-controls{padding-inline:.8rem}.slide-controls button{padding-inline:.6rem}.resource-note{font-size:.8125rem}
  .closing-inner{flex-direction:column;align-items:flex-start;gap:2.5rem}.closing-title{font-size:17vw}
  .closing-date{width:100%;border-left:0;border-top:1px solid #ffffff5c;padding:1.75rem 0 0}.closing-date>p{max-width:none}
  .federation-logos{gap:1rem}.federation-link>span:not(.sr-only){font-size:.875rem}.federation-link img{width:4rem;height:4rem;flex-basis:4rem}
  .federations-heading{flex-direction:column;align-items:flex-start;gap:1rem}.ifma-wordmark-art{width:10rem}
  .initiative-logos{grid-template-columns:1fr;gap:2rem}.initiative-art{height:10rem}.initiative-art img{max-width:16rem}
}
@media(max-width:380px){
  .brand-event{display:none}.hero-eyebrow>span{display:none}.hero-eyebrow{max-width:17rem}
  .hero-actions{align-items:flex-start;flex-direction:column}.strip-inner{grid-template-columns:1fr;gap:1.15rem}.strip-item{border:0;padding:0}.strip-item strong{max-width:none}
  .federation-logos{grid-template-columns:1fr;gap:1.5rem}.federation-link{flex-direction:row;text-align:left;justify-content:flex-start;gap:1rem}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}
}

/* Expanded guidebook: destination, stay, travel, preparation, programme, support. */
.event-resource-links{display:flex;flex-wrap:wrap;gap:.7rem 1.5rem;margin-top:1.4rem}.event-resource-links a{font-size:.875rem;color:var(--blue-accessible);text-decoration:underline;text-underline-offset:4px}
.destination-details{display:grid;grid-template-columns:1.15fr 1fr;gap:7%;border-top:1px solid var(--line);padding-top:3rem;margin-top:3rem}.destination-details article{min-width:0}.destination-details h3,.transfer-information h3,.medical-heading h3{font:700 clamp(2rem,2.8vw,2.8rem)/1.1 var(--display);color:var(--navy);margin-bottom:1rem}.destination-details p:not(.eyebrow){color:var(--muted)}.destination-details p+p{margin-top:1rem}.destination-details .eyebrow{margin-bottom:1rem}
.weather-temperatures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.5rem 0}.weather-temperatures dt{font-size:.875rem;color:var(--muted)}.weather-temperatures dd{font:700 2.5rem/1.2 var(--display);color:var(--blue-accessible);margin:.3rem 0 0}
.hotel-essentials>p{margin-bottom:.75rem}.training-details{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--line)}.hotel-copy .training-details h3{font:700 1.8rem/1.2 var(--display);margin-bottom:.8rem}
.travel-section{background:var(--silver);padding-block:5.5rem}.transfer-information{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:2rem 6%;align-items:start}.transfer-information>#arrivals{grid-row:span 2}.transfer-information>article{border-top:1px solid var(--line);padding-top:1.5rem;min-width:0}.transfer-information .support-kicker{color:var(--blue-accessible);margin-bottom:1rem}.transfer-information p:not(.support-kicker){color:var(--muted)}.transfer-information p+p{margin-top:1rem}
.medical-card address{font-style:normal;margin:1.1rem 0;color:var(--muted)}.partner-links{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem}.partner-links a,.directory-phone{color:var(--blue-accessible);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.guide-details{margin-top:1.3rem;border-top:1px solid var(--line)}.guide-details>summary{font-size:1rem;font-weight:500;color:var(--navy);cursor:pointer;min-height:2.75rem;padding:1rem 0;line-height:1.5}.guide-details>summary:focus-visible{outline:3px solid var(--blue-accessible);outline-offset:5px}.guide-details>div{padding-bottom:1rem}.guide-details[open]>summary{color:var(--blue-accessible)}.info-row strong{font-weight:600;color:var(--ink)}
.discipline-formats{margin:1.2rem 0}.discipline-formats>div{padding:.9rem 0;border-block-start:1px solid var(--line)}.discipline-formats dt{font-weight:600;color:var(--navy)}.discipline-formats dd{margin:.3rem 0 0;color:var(--muted)}
.gala-invitation{color:#d8e4f1;margin-top:1rem}.gala-dress{font-size:.9375rem;margin-top:1rem}.gala-dress strong{display:block;color:#7ed0ff;font-weight:500}
.support-heading>p a{color:var(--blue-accessible);text-decoration:underline;text-underline-offset:4px}.medical-directory{border-top:1px solid var(--line);margin-top:3.5rem;padding-top:2.5rem}.medical-heading{max-width:49rem}.medical-heading .eyebrow{margin-bottom:1rem}.medical-heading>p:last-child{color:var(--muted)}.medical-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4%;margin-top:2rem;align-items:start}.medical-card{background:white;padding:2rem;border-top:3px solid var(--blue);min-width:0}.medical-card>.support-kicker{color:var(--muted)}.medical-card h4{font-size:1.3rem;line-height:1.4;margin:.8rem 0 .6rem;color:var(--navy)}.medical-card p{color:var(--muted)}.directory-phone{font-weight:600;font-size:1.125rem}.lab-details{margin:0}.lab-details>div+div{margin-top:.9rem}.lab-details dt{font-weight:600;color:var(--navy)}.lab-details dd{margin:.25rem 0 0;color:var(--muted)}.medical-card .guide-details>div>p{margin-top:1.2rem}
.federation-background{margin-top:2.5rem}.federation-background-content{display:grid;grid-template-columns:1.3fr 1fr;gap:8%;padding-top:.5rem}.federation-background-content h3{font-size:1.125rem;font-weight:600;line-height:1.5;margin-bottom:.8rem}.federation-background-content p{color:var(--muted);font-size:.9375rem}.federation-background-content p+p{margin-top:1rem}.federation-directory a{color:var(--blue-accessible);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.federation-directory strong{color:var(--navy)}
@media(max-width:900px){.travel-section{padding-block:4rem}.transfer-information{column-gap:4%}.destination-details{gap:4%}.medical-card{padding:1.5rem}}
@media(max-width:700px){.destination-details,.transfer-information,.medical-grid,.federation-background-content{grid-template-columns:1fr;gap:2rem}.transfer-information>#arrivals{grid-row:auto}.destination-details{margin-top:2rem;padding-top:2rem}.weather-guide{border-top:1px solid var(--line);padding-top:2rem}.medical-directory{margin-top:2.5rem;padding-top:2rem}.medical-card{padding:1.5rem}.weather-temperatures{gap:.75rem}.weather-temperatures dd{font-size:2.25rem}}

/* Editorial flow: event, programme, destination, village, travel, teams, support. */
.intro{display:block}.intro-core{display:grid;grid-template-columns:1fr 1fr;gap:7%}.event-presentation{margin-top:2.75rem;border-top:1px solid var(--line);padding-top:2.25rem}.presentation-panel{padding-top:0}.presentation-resource .presentation-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem 1.5rem;color:var(--blue-accessible);font-size:.875rem;font-weight:600;letter-spacing:.06em;margin-bottom:1rem}.presentation-meta>span{color:var(--muted);font-weight:400;letter-spacing:0}.presentation-resource{margin-bottom:1.75rem}.presentation-resource h3{font:700 2.1rem/1.1 var(--display);margin-bottom:.75rem}.presentation-resource p{color:var(--muted);max-width:46rem}.presentation-resource .text-link{margin-top:.7rem}.event-heritage{margin-top:0}.event-heritage>div{max-width:55rem;color:var(--muted)}.event-heritage p+p{margin-top:.75rem}
.programme-overview{margin-bottom:2rem}.programme-overview>h3{font:700 2rem/1.2 var(--display);color:var(--navy)}.programme-overview>.resource-note{margin-top:.5rem}.event-milestones{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:0;margin:1.5rem 0 0;border-block:1px solid var(--line)}.event-milestones li{padding:1.5rem 1.3rem;min-width:0;border-left:1px solid var(--line)}.event-milestones li:first-child{padding-left:0;border-left:0}.event-milestones time{color:var(--blue-accessible);font:700 2rem/1.15 var(--display)}.event-milestones h4{margin:.7rem 0 .3rem;font-size:1rem;line-height:1.5;font-weight:600}.event-milestones p,.event-milestones a{font-size:.875rem;color:var(--muted);line-height:1.5}.event-milestones a{color:var(--blue-accessible);text-decoration:underline;text-underline-offset:4px}
.beyond-competition{display:grid;grid-template-columns:1.1fr 1fr;gap:6%;border-top:1px solid var(--line);margin-top:3rem;padding-top:2.5rem}.beyond-competition .eyebrow{margin-bottom:1rem}.beyond-competition h3{font:700 clamp(2.2rem,3.4vw,3.3rem)/1.05 var(--display);color:var(--navy)}.beyond-competition>div>p:not(.eyebrow){color:var(--muted)}.beyond-competition .text-link{margin-top:1rem}
.host-nation{padding-bottom:0}.host-nation>.destination{margin-top:3rem}.host-nation .destination-content{border-top:1px solid var(--line);padding-top:3rem}.destination-title{font:700 clamp(3rem,4.65vw,4.75rem)/1 var(--display)}.country-profile{margin-top:1.6rem}.country-facts{margin:.5rem 0 0}.country-facts>div+div{margin-top:1rem}.country-facts dt{font-size:.875rem;font-weight:600;color:var(--navy)}.country-facts dd{margin:.2rem 0 0}.country-facts a,.destination-details a,.transfer-information a,.info-row p a{color:var(--blue-accessible);text-decoration:underline;text-underline-offset:4px}
.venue-details{border-top:1px solid var(--line);margin-top:2rem;padding-top:1.75rem}.venue-details .section-eyebrow{margin-bottom:.75rem}.hotel-copy .venue-details h3{font:700 2.25rem/1.2 var(--display);margin-bottom:1rem}.hotel-copy .training-details h3{font:700 2rem/1.2 var(--display)}.training-details .hotel-hours{margin-top:.75rem}.hotel-copy .hotel-essentials>h3{margin-bottom:1rem}
.travel-weather{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;column-gap:6%;align-items:start}.travel-weather>.eyebrow{grid-column:1;margin-bottom:.8rem}.travel-weather>h3{grid-column:1;font:700 2.5rem/1.1 var(--display);color:var(--navy);margin-bottom:1rem}.travel-weather>.weather-temperatures{grid-column:1;margin:.5rem 0 0}.travel-weather>p:not(.eyebrow){grid-column:2;color:var(--muted)}.travel-weather>p:not(.eyebrow):not(.resource-note){grid-row:2/4}.travel-weather>.resource-note{grid-row:4}.travel-weather>.weather-temperatures{grid-row:3/5}.transfer-information strong{color:var(--ink);font-weight:600}
.medical-assistance-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem 2rem;background:var(--navy);color:white;padding:1.5rem 1.75rem;margin-top:1.75rem}.medical-assistance-bar h3{font-size:1.125rem;font-weight:600}.medical-assistance-bar p{font-size:.9375rem;color:#d8e4f1}.medical-assistance-bar>strong{font:700 2rem/1.3 var(--display);align-self:center}.medical-assistance-bar>.medical-explanation{grid-column:1/-1}.contacts .safeguarding-support{margin-top:3rem;margin-bottom:0}.safeguarding-after-hours a{color:var(--blue-accessible);text-decoration:underline;text-underline-offset:4px}.support-federation .federation-officers{font-size:.875rem;font-weight:400;color:#d8e4f1;margin-top:1rem}.other-federation-details{margin-top:2rem}.other-federations{display:grid;grid-template-columns:1fr 1fr;gap:1rem 4%}.other-federations>h3{grid-column:1/-1;font-size:1.125rem}.other-federations>p{font-size:.9375rem;color:var(--muted)}.other-federations strong{color:var(--navy)}.other-federations a{color:var(--blue-accessible);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
@media(max-width:900px){.intro-core{grid-template-columns:1fr;gap:1.8rem}.event-presentation{margin-top:2rem}.event-milestones{grid-template-columns:repeat(2,minmax(0,1fr))}.event-milestones li:nth-child(3){padding-left:0;border-left:0}.event-milestones li:nth-child(n+3){border-top:1px solid var(--line)}.host-nation>.destination{margin-top:2rem}.destination-title{font-size:clamp(3rem,7.8vw,4.5rem)}}
@media(max-width:700px){.beyond-competition,.travel-weather,.other-federations{grid-template-columns:1fr;gap:1.5rem}.travel-weather>*{grid-column:1!important;grid-row:auto!important}.travel-weather>.weather-temperatures{margin:0}.travel-weather>.eyebrow,.travel-weather>h3,.travel-weather>.resource-note{margin:0}.travel-weather{gap:1rem}.beyond-competition{margin-top:2rem;padding-top:2rem}.other-federations>h3{grid-column:1}.medical-assistance-bar{padding:1.5rem;grid-template-columns:1fr;gap:.75rem}.medical-assistance-bar>strong{justify-self:start}.host-nation .destination-content{padding-top:2rem}}
@media(max-width:420px){.event-milestones li{padding:1.1rem .7rem}.event-milestones time{font-size:1.65rem}.event-milestones h4{font-size:1rem}}

/* Final handbook review: complete copy, practical map and team resources. */
.destination-profile{grid-template-columns:1fr 1.3fr}.destination-profile .text-link{margin-top:1rem}.olympia-copy p+p{margin-top:1.25rem}
.resort-map{margin-top:3.5rem;padding-top:2.5rem;border-top:1px solid var(--line)}.resort-map-heading{display:flex;align-items:end;justify-content:space-between;gap:1.5rem;margin-bottom:1.5rem}.resort-map-heading .eyebrow{margin-bottom:.75rem}.resort-map h3{font:700 clamp(2.2rem,3.5vw,3rem)/1.1 var(--display);color:var(--navy)}.resort-map figure{margin:0}.resort-map img{display:block;width:100%;height:auto;border:1px solid var(--line)}.resort-map figcaption{font-size:.875rem;line-height:1.6;color:var(--muted);padding-top:1rem}
.travel-weather>.weather-heading,.travel-weather>.weather-copy{grid-row:auto;grid-column:auto}.weather-heading h3{font:700 2.5rem/1.1 var(--display);color:var(--navy);margin-bottom:1rem}.weather-heading .eyebrow{margin-bottom:.8rem}.weather-copy{color:var(--muted)}.weather-copy p+p{margin-top:1.2rem}.weather-heading .resource-note{max-width:28rem}
.competition-personnel{margin:1.2rem 0 0}.competition-personnel>div+div{margin-top:1rem}.competition-personnel dt{font-weight:600;color:var(--navy)}.competition-personnel dd{margin:.25rem 0 0;color:var(--muted)}.nominee-count{display:block;font-size:.875rem;color:var(--muted);font-weight:400;margin-top:.2rem}.officials-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:.875rem}.officials-table caption{text-align:left;color:var(--muted);padding:.3rem 0 1rem}.officials-table th,.officials-table td{padding:.7rem .65rem;text-align:left;border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere}.officials-table th:first-child{width:65%;padding-left:0}.officials-table tbody th{font-weight:400}.officials-table thead th{font-weight:600;color:var(--navy)}.officials-table td{color:var(--muted)}
.team-resource-links{list-style:none;padding:0;margin:1rem 0}.team-resource-links li{border-top:1px solid var(--line)}.team-resource-links a{display:block;min-height:2.75rem;padding:.75rem 0;color:var(--blue-accessible);text-decoration:underline;text-underline-offset:4px;line-height:1.5}.safeguarding-principles{grid-column:1/-1}.safeguarding-principles>div{color:var(--muted);max-width:70rem}.safeguarding-principles p+p{margin-top:1.1rem}.safeguarding-principles a{color:var(--blue-accessible);text-decoration:underline;text-underline-offset:4px}.federation-address{display:block;margin-top:.75rem}
@media(max-width:700px){.destination-profile{grid-template-columns:1fr}.resort-map{margin-top:2.5rem;padding-top:2rem}.resort-map-heading{align-items:start;flex-direction:column}.weather-heading h3{font-size:2.2rem}.weather-copy p+p{margin-top:1rem}.officials-table th:first-child{width:63%}}

/* Current programme: dated sessions, participant briefings and daily meals. */
.programme-detail{margin-top:3rem;padding-top:2.5rem;border-top:1px solid var(--line)}.programme-detail-heading{margin-bottom:1.5rem}.programme-detail-heading .eyebrow{margin-bottom:.8rem}.programme-detail-heading h3{font:700 clamp(2.3rem,3.4vw,3.3rem)/1.1 var(--display);color:var(--navy)}.programme-groups{display:grid;grid-template-columns:1fr 1fr;gap:4%;align-items:start}.programme-groups>article{min-width:0}.programme-groups h4{font-size:1.25rem;font-weight:600;line-height:1.4;margin:0 0 1rem;color:var(--navy)}.programme-groups .programme-group-heading{margin-top:2.25rem}
.programme-table,.meal-programme{border-collapse:collapse;width:100%;text-align:left;table-layout:fixed;font-size:.9375rem;line-height:1.55}.programme-table th,.programme-table td,.meal-programme th,.meal-programme td{border-bottom:1px solid var(--line);padding:.8rem .65rem;vertical-align:top;overflow-wrap:anywhere}.programme-table th:first-child{width:20%;padding-left:0}.programme-table th:last-child{width:26%;padding-right:0}.programme-table td:last-child{padding-right:0}.programme-table thead th,.meal-programme thead th{font-size:.875rem;color:var(--muted);font-weight:500}.programme-table tbody th,.meal-programme tbody th{font-weight:500;color:var(--navy)}.programme-table td{color:var(--muted)}.programme-table .session-time{font-variant-numeric:tabular-nums;color:var(--navy)}.dated-course-table .course-level{display:block;color:var(--muted);font-size:.875rem;font-weight:400;margin-top:.3rem}.dated-course-table td{vertical-align:top}.education-workshop{margin-top:2rem;padding:1.25rem 0;border-block:1px solid var(--line)}.education-workshop h4{font-size:1.125rem;color:var(--navy);margin:0 0 .4rem}.education-workshop p{color:var(--muted)}
.preparation-times{margin:1.5rem 0}.preparation-times>div+div{margin-top:1rem}.preparation-times dt{font-weight:600;color:var(--navy)}.preparation-times dd{margin:.2rem 0 0;color:var(--muted)}.meal-programme{margin-top:1.5rem}.meal-programme caption{text-align:left;font-weight:600;color:var(--navy);padding-bottom:.75rem}.meal-programme th:first-child{width:24%;padding-left:0}.meal-programme td{color:var(--muted)}.meal-programme a{color:var(--blue-accessible);text-decoration:underline;text-underline-offset:4px}.gala-times dd{font-size:clamp(1.8rem,2.3vw,2.5rem)}
@media(max-width:900px){.programme-groups{grid-template-columns:1fr;gap:2.5rem}.programme-detail{margin-top:2.5rem;padding-top:2rem}}
@media(max-width:540px){.programme-table,.meal-programme{font-size:.875rem}.programme-table th,.programme-table td,.meal-programme th,.meal-programme td{padding:.7rem .35rem}.programme-table th:first-child{width:21%}.programme-table th:last-child{width:29%}.programme-table .session-time{overflow-wrap:normal}.dated-course-table{font-size:.9375rem}.course-block td{white-space:normal}.meal-programme th:first-child{width:23%}}

/* Detailed programme navigation and links back from team preparation. */
.programme-shortcuts{display:flex;flex-wrap:wrap;gap:.65rem 1.5rem;margin:0 0 2rem;padding-block:1rem;border-bottom:1px solid var(--line)}
.programme-shortcuts a{color:var(--blue-accessible);font-size:.9375rem;line-height:1.6;text-decoration:underline;text-underline-offset:4px;padding:.35rem 0}
.team-programme-link{margin-top:1.25rem}.info-heading>.text-link{display:flex;width:fit-content;max-width:100%}
.gala-times>div:last-child:nth-child(3){grid-column:1/-1}

/* Supporting programme descriptions. */
.programme-description,.course-description{color:var(--muted);max-width:55rem}.course-description{margin-top:.8rem}.programme-topics{list-style:none;padding:0;margin:0;color:var(--muted)}.programme-topics li{border-bottom:1px solid var(--line);padding:.7rem 0}.programme-topics li:first-child{border-top:1px solid var(--line)}.gala-evergreen{grid-template-columns:1fr}.gala-evergreen .gala-content{max-width:65rem}.gala-programme{margin-top:1.6rem;padding-top:1.2rem;border-top:1px solid #ffffff40}.gala-programme ul{display:flex;flex-wrap:wrap;gap:.5rem 2rem;list-style:none;padding:0;margin:0 0 1rem;color:#d8e4f1}.gala-programme .text-link{color:white;border-color:#ffffff80}.hotel-essentials>.text-link{margin-top:1rem}.departure-deadline{grid-template-columns:1fr}

/* Supporting details retained after screenshot-specific timetable deduplication. */
.gala-evergreen .gala-times{grid-template-columns:1fr}.gala-schedule-link{margin-top:1.5rem;color:#d8e4f1;font-size:.9375rem}.gala-schedule-link a{color:white;text-decoration:underline;text-underline-offset:4px}.participant-guidance{margin-top:1.75rem;padding-top:1.25rem;border-top:1px solid var(--line)}.participant-guidance h4{font-size:1.125rem;font-weight:600;line-height:1.5;color:var(--navy);margin:0 0 .75rem}.participant-guidance p+p{margin-top:1rem}.participant-guidance a{color:var(--blue-accessible);text-decoration:underline;text-underline-offset:4px}

.gala-event-date{font-size:1.125rem;font-weight:600;color:#7ed0ff;margin-bottom:.5rem}
