@font-face{font-family:"Cairo";src:url("fonts/Cairo.ttf") format("truetype");font-weight:200 1000;font-style:normal;font-display:swap}
:root{--bg:#022e1e;--surface:#02291a;--surface2:#073b29;--gold:#efb641;--white:#ffffff;--muted:#dfefe3;--line:#ccffdc40;color-scheme:dark;font-family:"Cairo",Tahoma,Arial,sans-serif;font-size:16px;scroll-behavior:smooth;scroll-padding-top:100px}*{box-sizing:border-box}body{margin:0;background:linear-gradient(145deg,#002419 0%,#022e1e 45%,#033523 100%);color:var(--white);line-height:1.8}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{font:inherit;cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:5px}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.6}.wrap,.header-inner{width:min(1200px,calc(100% - 80px));margin-inline:auto}.header{border-bottom:1px solid var(--line);background:#002419ed}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:104px}.brand{display:flex;align-items:center;gap:17px}.brand>strong{font:600 2.45rem "Cairo",sans-serif;letter-spacing:-2px;color:var(--gold);border-inline-end:1px solid var(--line);padding-inline-end:20px}.brand>span{font-size:1.1rem;font-weight:700;line-height:1.5}.brand small{display:block;font:10px/2 Arial,sans-serif;letter-spacing:1.8px}.header nav{display:flex;gap:34px;font-size:.9rem}.header nav a:hover,.footer a:hover{color:var(--gold)}.edition{font:13px Arial,sans-serif;letter-spacing:2px;color:var(--gold)}.eyebrow{font:12px/1.6 Arial,sans-serif;letter-spacing:3px;color:var(--gold);margin-bottom:16px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:32px}.section-heading h2{font-size:2rem;font-weight:500}.section-heading .eyebrow{margin-bottom:8px}.section-note{color:var(--muted);font-size:.9rem}.featured{padding-block:70px 80px}.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 30px}.feature-card{min-width:0}.feature-button{display:block;width:100%;border:0;padding:0;background:none;text-align:start}.feature-image{overflow:hidden;position:relative;background:var(--surface)}.feature-image img{width:100%;height:290px;object-fit:cover;transition:transform .45s}.feature-button:hover img{transform:scale(1.035)}.image-count{position:absolute;bottom:15px;inset-inline-start:16px;padding:4px 12px;background:#02291aed;font-size:.85rem;border:1px solid #ffffff50;backdrop-filter:blur(8px)}.feature-body{padding-top:18px}.feature-meta{display:flex;justify-content:space-between;gap:12px;color:var(--gold);font-size:.88rem}.feature-body h3{font-size:1.45rem;font-weight:500;margin-top:9px}.english-title{font:15px/1.6 Arial,sans-serif;color:var(--muted);display:block;margin-top:7px}.feature-body .summary{color:var(--muted);margin-top:12px;font-size:.95rem}.feature-link{display:inline-block;margin-top:13px;font-size:.9rem;border-bottom:1px solid var(--gold);color:var(--gold);padding-bottom:3px}.directory{padding:64px 0 72px;background:linear-gradient(135deg,#022b1d,#033523);border-top:1px solid var(--line)}.month-block+.month-block{margin-top:36px}.month-heading{display:flex;align-items:center;gap:18px;margin-bottom:12px;font-size:1.1rem;color:var(--gold);font-weight:400}.month-heading span{font:12px Arial,sans-serif;letter-spacing:2px;color:var(--muted)}.program-row{width:100%;display:grid;grid-template-columns:42px minmax(0,1fr) 170px 120px 30px;gap:20px;align-items:center;background:none;border:0;border-top:1px solid var(--line);text-align:start;padding:22px 0}.program-row:hover{background:#ffffff05}.row-number{font:16px "Cairo",sans-serif;color:var(--gold)}.row-title{font-size:1.03rem;font-weight:400;display:block}.row-english{font:13px/1.6 Arial,sans-serif;color:var(--muted);display:block;margin-top:5px}.row-date,.row-location{font-size:.88rem;color:var(--muted)}.row-arrow{color:var(--gold);font-size:1.4rem}.status{font-size:.75rem;border:1px solid #efb64190;color:var(--gold);padding:2px 8px;display:inline-block;margin-inline-start:10px;vertical-align:middle;white-space:nowrap}.footer{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:36px}.footer strong{font-size:1rem}.footer span{display:block;color:var(--muted);font-size:.85rem}.footer p{font:21px "Cairo",sans-serif;color:var(--gold)}.footer a{font-size:.85rem;color:var(--muted)}.skip{position:absolute;top:-100px;right:20px;background:var(--gold);color:var(--bg);padding:10px 20px;z-index:10}.skip:focus{top:10px}dialog{color:var(--white);background:var(--bg);border:1px solid var(--line);padding:0;max-height:90dvh;width:min(960px,calc(100% - 32px));max-width:960px;overscroll-behavior:contain}dialog::backdrop{background:#001b10e8;backdrop-filter:blur(6px)}body:has(dialog[open]){overflow:hidden}.dialog-top{position:sticky;top:0;background:var(--bg);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:12px 24px;z-index:2}.dialog-top>span{font:11px Arial,sans-serif;letter-spacing:2px;color:var(--muted)}.icon-button{border:1px solid var(--line);background:none;width:44px;height:44px;font:30px/1 Arial,sans-serif}.icon-button:hover{background:var(--surface2)}.detail-hero{width:100%;max-height:430px;object-fit:cover}.detail-text{padding:30px 38px}.detail-text h2{font-size:1.75rem;font-weight:500}.detail-meta{display:flex;flex-wrap:wrap;gap:12px 26px;padding-block:20px;border-bottom:1px solid var(--line);margin-bottom:22px;color:var(--gold);font-size:.95rem}.detail-description{font-size:1.06rem;line-height:2.1;color:#e2eae2}.gallery-title{font-weight:400;font-size:1.2rem;margin:27px 0 14px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gallery-grid button{padding:0;border:0;background:var(--surface)}.gallery-grid img{width:100%;height:150px;object-fit:cover}.gallery-grid button:hover img{opacity:.85}#lightbox{width:min(1280px,calc(100% - 24px));max-width:1280px;background:#02291a;border:0}.lightbox-top{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;font-size:.9rem}#full-photo{width:100%;height:65dvh;object-fit:contain}.photo-controls{display:flex;align-items:center;gap:20px;justify-content:space-between;padding:18px}.photo-controls button{border:1px solid var(--line);background:none;padding:9px 15px;font-size:.9rem;flex-shrink:0}.photo-controls p{font-size:.85rem;color:var(--muted);text-align:center}.photo-controls button:hover{background:var(--surface2)}

@media(max-width:950px){.wrap,.header-inner{width:calc(100% - 48px)}.header nav{gap:20px}.program-row{grid-template-columns:30px minmax(0,1fr) 145px 24px;gap:15px}.row-location{display:none}.feature-image img{height:240px}}
@media(max-width:640px){:root{scroll-padding-top:25px}.wrap,.header-inner{width:calc(100% - 36px)}.header-inner{min-height:82px;gap:10px;flex-wrap:wrap;padding-block:15px}.brand{gap:12px}.brand>strong{font-size:2rem;padding-inline-end:12px}.brand>span{font-size:.9rem}.brand small{font-size:8px}.edition{font-size:12px}.header nav{order:3;width:100%;justify-content:center;border-top:1px solid var(--line);padding-top:10px;margin-top:5px;gap:30px;font-size:.85rem}.eyebrow{font-size:11px;letter-spacing:2px}.featured{padding-block:42px}.section-heading{align-items:start;margin-bottom:24px;gap:14px;flex-direction:column}.section-heading h2{font-size:1.7rem}.section-note{font-size:.82rem}.feature-grid{grid-template-columns:1fr;gap:30px}.feature-image img{height:auto;aspect-ratio:1.5}.feature-body h3{font-size:1.23rem}.feature-meta{font-size:.8rem}.english-title{font-size:14px}.feature-body .summary{font-size:.94rem}.directory{padding-block:40px}.program-row{grid-template-columns:24px minmax(0,1fr) 20px;gap:10px;padding-block:19px}.row-date{grid-column:2;grid-row:2;font-size:.8rem;margin-top:-3px}.row-arrow{grid-column:3;grid-row:1 / 3}.row-number{align-self:start;padding-top:3px}.row-title{font-size:1rem}.row-english{font-size:12px}.status{font-size:.73rem;margin-top:7px}.footer{flex-wrap:wrap;padding-block:28px;gap:20px}.footer p{font-size:18px}.footer a{width:100%;text-align:center;border-top:1px solid var(--line);padding-top:14px}.dialog-top{padding:10px 14px}.dialog-top>span{font-size:9px;letter-spacing:1px}.detail-text{padding:22px 20px}.detail-text h2{font-size:1.35rem}.detail-meta{font-size:.88rem}.detail-description{font-size:1rem}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-grid img{height:120px}.photo-controls{flex-wrap:wrap;gap:12px;justify-content:center}.photo-controls p{order:3;width:100%}#full-photo{height:57dvh}.detail-hero{max-height:300px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Dark emerald sampled from the supplied report reference. */
.overview{padding-top:30px}.overview-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px}.overview-heading h2{font-size:1.1rem;font-weight:400}.overview-heading>span{font:13px Arial,sans-serif;letter-spacing:2px;color:var(--gold)}.metrics{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.metric{display:flex;flex-direction:column-reverse;align-items:center;justify-content:center;background:linear-gradient(135deg,#00291ce6,#033523e6);border:1px solid #d4ffe23f;border-top:3px solid var(--gold);border-radius:14px;padding:20px 16px 18px;box-shadow:0 12px 30px #001b161c;min-width:0}.metric dd{margin:0;color:var(--gold);font:700 clamp(2.25rem,4vw,3.4rem)/1.15 Arial,sans-serif;font-variant-numeric:tabular-nums}.metric dt{text-align:center;margin-top:10px;line-height:1.6}.metric dt>span{display:block;font-size:.98rem}.metric dt>span[lang=en]{font:13px/1.7 Arial,sans-serif;color:var(--muted);margin-top:3px}.feature-card{background:linear-gradient(145deg,#012719,#033523);border:1px solid #cfffdd50;border-radius:16px;overflow:hidden;box-shadow:0 15px 30px #001b151a}.feature-body{padding:20px 24px 24px}.program-row:hover{background:#ffffff09}.month-heading{font-weight:600}.dialog-top{background:#02291a}.detail-text{background:linear-gradient(150deg,#022b1d,#033523)}

@media(max-width:640px){.overview{padding-top:22px}.overview-heading h2{font-size:1rem}.overview-heading>span{font-size:12px}.metrics{gap:8px}.metric{padding:17px 6px 14px;border-radius:10px}.metric dd{font-size:clamp(1.9rem,8vw,2.75rem)}.metric dt>span{font-size:.875rem}.metric dt>span[lang=en]{font-size:12px}.feature-body{padding:18px 18px 22px}}
@media(max-width:360px){.metrics{grid-template-columns:1fr}.metric{flex-direction:row-reverse;justify-content:space-between;padding:14px 20px}.metric dt{margin:0;text-align:start}.metric dd{font-size:2.3rem}}

.page-title{padding-block:40px 10px;text-align:center}.page-title h1{font-size:clamp(1.65rem,3.4vw,2.6rem);font-weight:600;line-height:1.65} [lang="en"],.metric dd,.row-number,.edition{font-family:"Cairo",sans-serif}
@media(max-width:640px){.page-title{padding-block:28px 4px}.page-title h1{font-size:1.65rem}}

/* Header logo and simplified section headings. */
.brand img{width:230px;height:auto;max-height:74px;object-fit:contain;filter:brightness(0) invert(1)}
.overview{padding-top:20px}.featured{padding-top:44px}.directory .section-heading{margin-bottom:20px}
@media(max-width:640px){.brand img{width:175px;max-height:58px}.overview{padding-top:16px}.featured{padding-top:34px}}

/* Six featured programmes and animated metric rings. */
@property --ring-angle{syntax:"<angle>";inherits:false;initial-value:0deg}
@keyframes ring-reveal{to{--ring-angle:360deg}}
@keyframes metric-enter{from{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:none}}
.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px}
.feature-image img{height:235px}
.metrics{gap:24px}
.metric{--ring-angle:0deg;position:relative;justify-content:flex-end;min-height:250px;padding:176px 16px 22px;border-top:1px solid #d4ffe22f;border-radius:22px;background:linear-gradient(145deg,#00291cbf,#033523e6);box-shadow:0 18px 40px #001b162b;overflow:hidden;animation:metric-enter .7s ease both}
.metric:nth-child(2){animation-delay:.12s}
.metric:nth-child(3){animation-delay:.24s}
.metric::before{content:"";position:absolute;top:22px;left:50%;translate:-50% 0;width:138px;aspect-ratio:1;border-radius:50%;background:conic-gradient(var(--gold) 0 var(--ring-angle),#d8ffe21f var(--ring-angle) 360deg);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 13px),#000 0);mask:radial-gradient(farthest-side,transparent calc(100% - 13px),#000 0);filter:drop-shadow(0 0 11px #efb64135);animation:ring-reveal 1.5s cubic-bezier(.22,.75,.2,1) .25s forwards}
.metric::after{content:"";position:absolute;top:35px;left:50%;translate:-50% 0;width:112px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,#07452f,#01291b 72%);box-shadow:inset 0 0 22px #00000035}
.metric dd{position:absolute;z-index:1;top:66px;left:50%;translate:-50% 0;font-size:clamp(2rem,3.4vw,3rem);white-space:nowrap}
.metric dt{margin-top:0}
.metric:hover{border-color:#efb64170;transform:translateY(-4px);transition:transform .25s,border-color .25s}
@media(max-width:950px){.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-image img{height:240px}}
@media(max-width:640px){.feature-grid{grid-template-columns:1fr}.metrics{gap:8px}.metric{min-height:185px;padding:126px 5px 13px;border-radius:14px}.metric::before{top:17px;width:96px;-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 10px),#000 0);mask:radial-gradient(farthest-side,transparent calc(100% - 10px),#000 0)}.metric::after{top:27px;width:76px}.metric dd{top:50px;font-size:clamp(1.55rem,7vw,2.2rem)}.metric dt>span{font-size:.78rem}.metric dt>span[lang=en]{font-size:10px}}
@media(max-width:360px){.metrics{grid-template-columns:1fr}.metric{min-height:190px}}
@media(prefers-reduced-motion:reduce){.metric{animation:none}.metric::before{--ring-angle:360deg;animation:none}}

/* Editorial title and open metric layout. */
.page-title{padding-block:54px 4px}
.page-title h1{font-size:clamp(2.35rem,5vw,4.25rem);font-weight:700;line-height:1.35;letter-spacing:-.035em}
.page-title p{margin-top:7px;color:var(--muted);font:500 clamp(.9rem,1.5vw,1.1rem)/1.6 Arial,sans-serif;letter-spacing:2.5px;text-transform:uppercase}
.metric{background:transparent;border:0;border-radius:0;box-shadow:none;overflow:visible}
.metric:hover{border-color:transparent}
@media(max-width:640px){.page-title{padding-block:36px 2px}.page-title h1{font-size:clamp(2rem,9vw,2.75rem)}.page-title p{margin-top:5px;font-size:.78rem;letter-spacing:1.5px}}
