{"id":26224,"date":"2026-06-25T07:20:33","date_gmt":"2026-06-25T07:20:33","guid":{"rendered":"https:\/\/hkballet2.websitedevsystem.com\/engage\/silver-ballet-camp-zh-hant-tmp\/"},"modified":"2026-11-10T02:04:17","modified_gmt":"2026-11-10T02:04:17","slug":"silver-ballet-camp","status":"publish","type":"engage","link":"https:\/\/www.hkballet.com\/zh-hant\/engage\/silver-ballet-camp\/","title":{"rendered":"\u9280\u9aee\u82ad\u857e\u5c0b\u5922\u5712"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"26224\" class=\"elementor elementor-26224 elementor-3886\" data-elementor-post-type=\"engage\">\n\t\t\t\t<div class=\"elementor-element elementor-element-962bca0 e-con-full e-flex e-con e-parent\" data-id=\"962bca0\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3937700 elementor-widget elementor-widget-heading\" data-id=\"3937700\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">\u9280\u9aee\u82ad\u857e\u5c0b\u5922\u5712<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-aff8562 e-con-full e-flex e-con e-parent\" data-id=\"aff8562\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-67a314d elementor-widget elementor-widget-hkb_breadcrumbs\" data-id=\"67a314d\" data-element_type=\"widget\" data-widget_type=\"hkb_breadcrumbs.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<nav class=\"hkb-breadcrumbs\" aria-label=\"Breadcrumb\">\n\t\t\t<ol class=\"hkb-breadcrumbs__list\" itemscope itemtype=\"https:\/\/schema.org\/BreadcrumbList\">\n\t\t\t\t\t\t\t\t\t<li class=\"hkb-breadcrumbs__item\" itemprop=\"itemListElement\" itemscope itemtype=\"https:\/\/schema.org\/ListItem\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<a itemprop=\"item\" href=\"\/\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<span itemprop=\"name\">\u4e3b\u9801<\/span>\n\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t<meta itemprop=\"position\" content=\"1\">\n\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li class=\"hkb-breadcrumbs__item\" itemprop=\"itemListElement\" itemscope itemtype=\"https:\/\/schema.org\/ListItem\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<a itemprop=\"item\" href=\"https:\/\/www.hkballet.com\/zh-hant\/engage\/\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<span itemprop=\"name\">\u6559\u80b2\u53ca\u793e\u5340\u6d3b\u52d5<\/span>\n\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t<meta itemprop=\"position\" content=\"2\">\n\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li class=\"hkb-breadcrumbs__item\" itemprop=\"itemListElement\" itemscope itemtype=\"https:\/\/schema.org\/ListItem\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"hkb-breadcrumbs__current\" itemprop=\"name\"\n\t\t\t\t\t\t\t\t aria-current=\"page\">\u5f59\u6574<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t<meta itemprop=\"position\" content=\"3\">\n\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t\t\t\t<\/ol>\n\t\t<\/nav>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-f272ebf e-flex e-con-boxed e-con e-parent\" data-id=\"f272ebf\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-87a337b gotham-regular elementor-widget elementor-widget-text-editor\" data-id=\"87a337b\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p style=\"text-align: center;\"><strong>\u9ad4\u9a57\u53e4\u5178\u82ad\u857e\u4e4b\u7f8e\uff01<\/strong><\/p><p style=\"text-align: center;\">\u5b78\u7fd2\u6c38\u4e0d\u8a00\u4f11\uff01\u9280\u9aee\u82ad\u857e\u5c0b\u5922\u5712\u662f\u5c08\u70ba55\u6b72\u6216\u4ee5\u4e0a\u7684\u6a02\u9f61\u8005\u7279\u5225\u8a2d\u8a08\u7684\u7cbe\u91c7\u6d3b\u52d5\u3002  <\/p><p style=\"text-align: center;\">\u6a02\u9f61\u8005\u4e0d\u4f46\u80fd\u8d70\u9032\u4e0d\u540c\u82ad\u857e\u821e\u5287\u7684\u4e16\u754c\uff0c\u9084\u80fd\u8a8d\u8b58\u4e00\u773e\u5fd7\u540c\u9053\u5408\u7684\u65b0\u670b\u53cb\u3002\u4f34\u96a8\u7740\u5bb6\u50b3\u6236\u66c9\u7684\u53e4\u5178\u97f3\u6a02\uff0c\u6a02\u9f61\u8005\u5c07\u5b78\u7fd2\u7c21\u55ae\u7684\u82ad\u857e\u821e\u8e48\uff0c\u4e26\u88fd\u4f5c\u5c6c\u65bc\u81ea\u5df1\u7684\u82ad\u857e\u98fe\u7269\u3002\u5728\u6d3b\u52d5\u7684\u6700\u5f8c\u4e00\u5929\uff0c\u6211\u5011\u66f4\u6703\u70ba\u6240\u6709\u7372\u9080\u7684\u5bb6\u4eba\u548c\u670b\u53cb\u8209\u8fa6\u821e\u8e48\u6210\u679c\u5c55\uff0c\u8207\u5404\u4f4d\u5609\u8cd3\u4e92\u52d5\u3002\u64c1\u62b1\u6b72\u6708\uff0c\u7dbb\u653e\u7cbe\u91c7\uff01   <\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-1640fa5 e-con-full e-flex e-con e-parent\" data-id=\"1640fa5\" data-element_type=\"container\">\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-22f4697 e-con-full e-flex e-con e-parent\" data-id=\"22f4697\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1af5cb4 elementor-widget elementor-widget-video\" data-id=\"1af5cb4\" data-element_type=\"widget\" data-settings=\"{&quot;youtube_url&quot;:&quot;https:\\\/\\\/youtu.be\\\/gJRLMIQoSqM&quot;,&quot;video_type&quot;:&quot;youtube&quot;,&quot;controls&quot;:&quot;yes&quot;}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-wrapper elementor-open-inline\">\n\t\t\t<div class=\"elementor-video\"><\/div>\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-91785f7 e-con-full e-flex e-con e-parent\" data-id=\"91785f7\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-123c1de elementor-widget__width-initial elementor-widget-tablet__width-inherit elementor-widget elementor-widget-heading\" data-id=\"123c1de\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u5716\u7247\u96c6<\/h2>\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c21c0cc e-con-full e-flex e-con e-child\" data-id=\"c21c0cc\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-dc94e35 engage-gallery elementor-widget elementor-widget-hkb_gallery\" data-id=\"dc94e35\" data-element_type=\"widget\" data-widget_type=\"hkb_gallery.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section id=\"gallery-widget-dc94e35\" class=\"gallery-section gallery-section--active-caption\" style=\"--gallery-slide-height-desktop:var(--hkb-gallery-image-height,70vh);--gallery-slide-height-mobile:var(--hkb-gallery-image-height,30vh);\">\n  <style>\n    \/* Caption width follows its rendered image, including mobile theme overrides. *\/\n    #gallery-widget-dc94e35 .gallery-slide__text {\n      width: var(--gallery-slide-image-width, 100%) !important;\n      max-width: var(--gallery-slide-image-width, 100%) !important;\n      min-width: 0 !important;\n      box-sizing: border-box !important;\n      white-space: normal !important;\n      overflow-wrap: anywhere !important;\n      word-break: break-word !important;\n    }\n  <\/style>\n    <style>\n        #gallery-widget-dc94e35 { --gallery-aspect-ratio: 16 \/ 9; }\n                        @media (max-width: 393px) {\n      #gallery-widget-dc94e35 .gallery-slide__media { width: 100%; }\n      #gallery-widget-dc94e35 .gallery-slide__text { width: var(--gallery-slide-image-width, 100%); max-width: var(--gallery-slide-image-width, 100%); white-space: normal; word-break: break-word; }\n      #gallery-widget-dc94e35 .gallery-swiper { padding-right: 0; padding-bottom: 0; }\n      #gallery-widget-dc94e35 .gallery-swiper .swiper-slide { width: auto; }\n      #gallery-widget-dc94e35 .gallery-swiper .swiper-slide img,\n      #gallery-widget-dc94e35 .gallery-swiper .swiper-slide video {\n        width: 100%;\n        max-width: 100%;\n                \/* A pixel height takes priority; otherwise crop to the chosen ratio. *\/\n        height: var(--hkb-gallery-image-height, auto);\n        max-height: var(--hkb-gallery-image-height, none);\n        aspect-ratio: var(--gallery-aspect-ratio);\n        object-fit: cover;\n              }\n    }\n                    @media (min-width: 394px) and (max-width: 767px) {\n      #gallery-widget-dc94e35 .gallery-slide__media { width: 100%; }\n      #gallery-widget-dc94e35 .gallery-slide__text { width: var(--gallery-slide-image-width, 100%); max-width: var(--gallery-slide-image-width, 100%); white-space: normal; word-break: break-word; }\n      #gallery-widget-dc94e35 .gallery-swiper { padding-right: 0; padding-bottom: 0; }\n      #gallery-widget-dc94e35 .gallery-swiper .swiper-slide { width: auto; }\n      #gallery-widget-dc94e35 .gallery-swiper .swiper-slide img,\n      #gallery-widget-dc94e35 .gallery-swiper .swiper-slide video {\n        width: 100%;\n        max-width: 100%;\n                \/* A pixel height takes priority; otherwise crop to the chosen ratio. *\/\n        height: var(--hkb-gallery-image-height, auto);\n        max-height: var(--hkb-gallery-image-height, none);\n        aspect-ratio: var(--gallery-aspect-ratio);\n        object-fit: cover;\n              }\n    }\n                    @media (min-width: 768px) and (max-width: 1279px) {\n      #gallery-widget-dc94e35 .gallery-slide__media { width: 100%; }\n      #gallery-widget-dc94e35 .gallery-slide__text { width: var(--gallery-slide-image-width, 100%); max-width: var(--gallery-slide-image-width, 100%); white-space: normal; word-break: break-word; }\n      #gallery-widget-dc94e35 .gallery-swiper { padding-right: 0; padding-bottom: 0; }\n      #gallery-widget-dc94e35 .gallery-swiper .swiper-slide { width: auto; }\n      #gallery-widget-dc94e35 .gallery-swiper .swiper-slide img,\n      #gallery-widget-dc94e35 .gallery-swiper .swiper-slide video {\n        width: 100%;\n        max-width: 100%;\n                \/* A pixel height takes priority; otherwise crop to the chosen ratio. *\/\n        height: var(--hkb-gallery-image-height, auto);\n        max-height: var(--hkb-gallery-image-height, none);\n        aspect-ratio: var(--gallery-aspect-ratio);\n        object-fit: cover;\n              }\n    }\n                    @media (min-width: 1280px) and (max-width: 1439px) {\n      #gallery-widget-dc94e35 .gallery-slide__media { width: 100%; }\n      #gallery-widget-dc94e35 .gallery-slide__text { width: var(--gallery-slide-image-width, 100%); max-width: var(--gallery-slide-image-width, 100%); white-space: normal; word-break: break-word; }\n      #gallery-widget-dc94e35 .gallery-swiper { padding-right: 0; padding-bottom: 0; }\n      #gallery-widget-dc94e35 .gallery-swiper .swiper-slide { width: auto; }\n      #gallery-widget-dc94e35 .gallery-swiper .swiper-slide img,\n      #gallery-widget-dc94e35 .gallery-swiper .swiper-slide video {\n        width: 100%;\n        max-width: 100%;\n                \/* A pixel height takes priority; otherwise crop to the chosen ratio. *\/\n        height: var(--hkb-gallery-image-height, auto);\n        max-height: var(--hkb-gallery-image-height, none);\n        aspect-ratio: var(--gallery-aspect-ratio);\n        object-fit: cover;\n              }\n    }\n                    @media (min-width: 1440px) {\n      #gallery-widget-dc94e35 .gallery-slide__media { width: 100%; }\n      #gallery-widget-dc94e35 .gallery-slide__text { width: var(--gallery-slide-image-width, 100%); max-width: var(--gallery-slide-image-width, 100%); white-space: normal; word-break: break-word; }\n      #gallery-widget-dc94e35 .gallery-swiper { padding-right: 0; padding-bottom: 0; }\n      #gallery-widget-dc94e35 .gallery-swiper .swiper-slide { width: auto; }\n      #gallery-widget-dc94e35 .gallery-swiper .swiper-slide img,\n      #gallery-widget-dc94e35 .gallery-swiper .swiper-slide video {\n        width: 100%;\n        max-width: 100%;\n                \/* A pixel height takes priority; otherwise crop to the chosen ratio. *\/\n        height: var(--hkb-gallery-image-height, auto);\n        max-height: var(--hkb-gallery-image-height, none);\n        aspect-ratio: var(--gallery-aspect-ratio);\n        object-fit: cover;\n              }\n    }\n      <\/style>\n        <div class=\"gallery-viewport\">\n    <div class=\"gallery-swiper swiper\">\n      <div class=\"swiper-wrapper\">\n                                                          <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"0\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/A1_photo-0154-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/A1_photo-0154-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                        <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"1\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/A4_DSC_1392-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/A4_DSC_1392-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                        <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"2\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/A5_photo-0930-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/A5_photo-0930-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                        <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"3\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/A6_photo-0494-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/A6_photo-0494-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                        <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"4\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/A9_photo-0647-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/A9_photo-0647-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                        <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"5\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B1_photo-0893-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B1_photo-0893-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                        <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"6\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B3_photo-0921-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B3_photo-0921-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                        <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"7\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B8_photo-1160-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B8_photo-1160-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                        <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"8\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B9_DSC_4672-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B9_DSC_4672-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                        <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"9\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/A10_Used_14_DSC_7728-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/A10_Used_14_DSC_7728-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                        <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"10\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B2_Props_Mask-photo_DSC_5095-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B2_Props_Mask-photo_DSC_5095-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                        <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"11\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B11_Used_4_DSC_1911_edited-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B11_Used_4_DSC_1911_edited-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                        <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"12\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B1_Barre_Warm-up_photo-0048-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B1_Barre_Warm-up_photo-0048-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                        <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"13\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/A11_Used_20_DSC_1511_edited-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/A11_Used_20_DSC_1511_edited-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                        <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"14\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B1_Used_15_DSC_5136-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B1_Used_15_DSC_5136-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                        <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"15\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/A11_DSC_1901_edited-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/A11_DSC_1901_edited-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                        <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"16\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/A5_day3-0345_edited-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/A5_day3-0345_edited-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                        <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"17\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B5_DSC_2887_edited-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B5_DSC_2887_edited-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                        <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"18\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B9_day3-1935_edited-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B9_day3-1935_edited-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                        <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"19\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B6_IMG_6261_edited-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/B6_IMG_6261_edited-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                        <div class=\"swiper-slide gallery-slide\" data-gallery-index=\"20\" data-gallery-original=\"1\" data-media-type=\"image\" data-media-url=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/A2_DSC_2578_edited-scaled.jpg\" data-media-mime=\"image\/jpeg\" data-media-alt=\"\" data-credit=\"\" data-description=\"\">\n                <span class=\"gallery-slide__media\">\n                                      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/A2_DSC_2578_edited-scaled.jpg\" alt=\"\" \/>\n                                  <\/span>\n                              <\/div>\n                                    <\/div>\n    <\/div>\n\n        <div class=\"gallery-nav hidden-xs\">\n      <button class=\"gallery-btn custom-button-btn gallery-prev\" aria-label=\"\u4e0a\u4e00\u9805\">\n      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/themes\/hello-elementor-child\/assets\/img\/left_icon.svg\" alt=\"\">\n      <\/button>\n      <button class=\"gallery-btn custom-button-btn gallery-next\" aria-label=\"\u4e0b\u4e00\u9805\">\n      <img decoding=\"async\" src=\"https:\/\/www.hkballet.com\/wp-content\/themes\/hello-elementor-child\/assets\/img\/right_icon.svg\" alt=\"\">\n      <\/button>\n    <\/div>\n      <\/div>\n\n  <div class=\"gallery-footer\">\n    <span class=\"gallery-credit\"><\/span>\n\n  <\/div>\n\n    <div class=\"gallery-dot-wrap hidden-sm\" aria-label=\"\u5716\u7247\u5c0e\u89bd\"><\/div>\n  \n  <div class=\"gallery-lightbox\" aria-hidden=\"true\">\n    <div class=\"gallery-lightbox__panel\" role=\"dialog\" aria-modal=\"true\" aria-label=\"\u5716\u7247\u9810\u89bd\">\n      <button class=\"gallery-lightbox__close\" type=\"button\" aria-label=\"\u95dc\u9589\">\n        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\n          <path d=\"M15.9939 15.2322L15.2323 15.9938L0.000153744 0.761608L0.761762 0L15.9939 15.2322Z\" fill=\"white\" \/>\n          <path d=\"M0.761608 16L0 15.2384L15.2322 0.00623141L15.9938 0.76784L0.761608 16Z\" fill=\"white\" \/>\n        <\/svg>\n      <\/button>\n      <div class=\"gallery-lightbox__panel_content\">\n        <img class=\"gallery-lightbox__image\" alt=\"\u5716\u7247\" \/>\n        <video class=\"gallery-lightbox__video\" controls playsinline preload=\"metadata\" style=\"display:none;\"><\/video>\n        <div class=\"gallery-lightbox__meta\" data-lenis-prevent>\n          <div class=\"gallery-lightbox__meta-inner\"><\/div>\n        <\/div>\n      <\/div>\n      <div class=\"gallery-lightbox__controls\">\n        <button class=\"gallery-lightbox__arrow gallery-lightbox-prev\" type=\"button\" aria-label=\"\u4e0a\u4e00\u5f35\u5716\u7247\">\n          <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\n            <g clip-path=\"url(#gallery-widget-dc94e35-clip-prev)\">\n              <path d=\"M20.4199 9.33594L20.4199 10.6689L0.419922 10.6689L0.419922 9.33594L20.4199 9.33594Z\" fill=\"white\" \/>\n              <path d=\"M0.677548 9.25334C4.13214 9.73162 7.33323 12.3276 9.14516 16.5683L8.07531 17.3649C6.41054 13.4686 3.49103 11.1339 0.405437 10.7067L0.677548 9.25334Z\" fill=\"white\" \/>\n              <path d=\"M0.677548 10.7467C4.13214 10.2684 7.33323 7.67236 9.14516 3.4317L8.07531 2.63514C6.41054 6.53138 3.49103 8.86608 0.405437 9.29327L0.677548 10.7467Z\" fill=\"white\" \/>\n            <\/g>\n            <defs>\n              <clipPath id=\"gallery-widget-dc94e35-clip-prev\">\n                <rect width=\"20\" height=\"20\" fill=\"white\" \/>\n              <\/clipPath>\n            <\/defs>\n          <\/svg>\n        <\/button>\n        <div class=\"gallery-lightbox__progress-wrap\" aria-hidden=\"true\">\n          <span><\/span>\n        <\/div>\n        <button class=\"gallery-lightbox__arrow gallery-lightbox-next\" type=\"button\" aria-label=\"\u4e0b\u4e00\u5f35\u5716\u7247\">\n          <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\n            <g clip-path=\"url(#gallery-widget-dc94e35-clip-next)\">\n              <path d=\"M0 10.6641V9.33105L20 9.33105V10.6641L0 10.6641Z\" fill=\"white\" \/>\n              <path d=\"M19.7424 10.7467C16.2878 10.2684 13.0867 7.67237 11.2748 3.4317L12.3446 2.63514C14.0094 6.53138 16.9289 8.86608 20.0145 9.29327L19.7424 10.7467Z\" fill=\"white\" \/>\n              <path d=\"M19.7424 9.25334C16.2878 9.73163 13.0867 12.3276 11.2748 16.5683L12.3446 17.3649C14.0094 13.4686 16.9289 11.1339 20.0145 10.7067L19.7424 9.25334Z\" fill=\"white\" \/>\n            <\/g>\n            <defs>\n              <clipPath id=\"gallery-widget-dc94e35-clip-next\">\n                <rect width=\"20\" height=\"20\" fill=\"white\" \/>\n              <\/clipPath>\n            <\/defs>\n          <\/svg>\n        <\/button>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <script>\n    (function() {\n      var section = document.currentScript && document.currentScript.closest('.gallery-section');\n      if (!section) section = document.getElementById(\"gallery-widget-dc94e35\");\n      if (!section) return;\n      var gallerySwiper = null;\n      var slides = [];\n      var slideCount = 0;\n      var carouselSlideCount = 0;\n      var currentIndex = 0;\n      var captionFrame = 0;\n      var isSingle = false;\n      \/\/ Ordered list (smallest device first) of\n      \/\/ { name, mode:'auto'|'custom'|'height', spv, height, media, min }, or null.\n      \/\/ The ranges come from the site's active Elementor breakpoints, so the\n      \/\/ same media query decides here and in the CSS block above.\n      var slidesConfig = [{\"name\":\"mobile\",\"mode\":\"custom\",\"spv\":1.2,\"height\":0,\"media\":\"(max-width: 393px)\",\"min\":0},{\"name\":\"tablet\",\"mode\":\"custom\",\"spv\":1.2,\"height\":0,\"media\":\"(min-width: 394px) and (max-width: 767px)\",\"min\":394},{\"name\":\"laptop\",\"mode\":\"custom\",\"spv\":1.2,\"height\":0,\"media\":\"(min-width: 768px) and (max-width: 1279px)\",\"min\":768},{\"name\":\"desktop\",\"mode\":\"custom\",\"spv\":1.2,\"height\":0,\"media\":\"(min-width: 1280px) and (max-width: 1439px)\",\"min\":1280},{\"name\":\"widescreen\",\"mode\":\"custom\",\"spv\":1.2,\"height\":0,\"media\":\"(min-width: 1440px)\",\"min\":1440}];\n      var swiperEl = section.querySelector(\".gallery-swiper\");\n\n      \/\/ The device entry matching the current viewport.\n      function currentConf() {\n        if (!slidesConfig || !slidesConfig.length) return null;\n        for (var i = 0; i < slidesConfig.length; i++) {\n          if (window.matchMedia(slidesConfig[i].media).matches) {\n            return slidesConfig[i];\n          }\n        }\n        return slidesConfig[slidesConfig.length - 1];\n      }\n\n      \/\/ Pixel-height mode uses proportional widths, independent of card counts.\n      function isCustomMode() {\n        var conf = currentConf();\n        return !!(conf && conf.mode === 'custom');\n      }\n\n      \/\/ Swiper breakpoint entry for one device.\n      function bpConf(conf) {\n        if (conf && conf.mode === 'custom') {\n          return { slidesPerView: conf.spv, spaceBetween: 4 };\n        }\n        return { slidesPerView: 'auto', spaceBetween: 4 };\n      }\n      var dotWrap = section.querySelector(\".gallery-dot-wrap\");\n      var credit = section.querySelector(\".gallery-credit\");\n      var creditTimer = 0;\n      var lightbox = section.querySelector(\".gallery-lightbox\");\n      var lightboxClose = section.querySelector(\".gallery-lightbox__close\");\n      var lightboxImage = section.querySelector(\".gallery-lightbox__image\");\n      var lightboxVideo = section.querySelector(\".gallery-lightbox__video\");\n      var lightboxMeta = section.querySelector(\".gallery-lightbox__meta\");\n      var lightboxMetaInner = section.querySelector(\".gallery-lightbox__meta-inner\");\n      var lightboxProgress = section.querySelector(\".gallery-lightbox__progress-wrap span\");\n      var lightboxPrev = section.querySelector(\".gallery-lightbox-prev\");\n      var lightboxNext = section.querySelector(\".gallery-lightbox-next\");\n      var galleryPrev = section.querySelector(\".gallery-prev\");\n      var galleryNext = section.querySelector(\".gallery-next\");\n      var activeLightboxIndex = 0;\n\n      function syncSlides() {\n        slides = Array.prototype.slice.call(section.querySelectorAll('.gallery-slide[data-gallery-original=\"1\"]'));\n        slideCount = slides.length;\n        carouselSlideCount = section.querySelectorAll(\".gallery-slide\").length;\n      }\n\n      function getSlideMedia(slide) {\n        return slide ? slide.querySelector(\"img, video\") : null;\n      }\n\n      function getLightboxMedia() {\n        if (lightboxVideo && lightboxVideo.style.display !== \"none\") {\n          return lightboxVideo;\n        }\n        return lightboxImage;\n      }\n\n      function stopLightboxVideo() {\n        if (!lightboxVideo) return;\n        lightboxVideo.pause();\n        lightboxVideo.removeAttribute(\"src\");\n        lightboxVideo.load();\n      }\n\n      function updateCaptionWidths() {\n        section.querySelectorAll('.gallery-slide').forEach(function(slide) {\n          var caption = slide.querySelector('.gallery-slide__text');\n          var image = getSlideMedia(slide);\n          if (!caption || !image) return;\n          var width = image.getBoundingClientRect().width;\n          if (width > 0) {\n            \/\/ Keep this value on the caption itself so fixed-card widths are\n            \/\/ measured after Swiper has finished sizing the slide.\n            caption.style.setProperty('--gallery-slide-image-width', width + 'px');\n          }\n        });\n      }\n\n      function updateGallerySize() {\n        if (gallerySwiper) gallerySwiper.update();\n        updateCaptionWidths();\n        if (gallerySwiper && gallerySwiper.updateAutoHeight) {\n          gallerySwiper.updateAutoHeight(0);\n        }\n        scheduleCaptionWidths();\n      }\n\n      function scheduleCaptionWidths() {\n        window.cancelAnimationFrame(captionFrame);\n        captionFrame = window.requestAnimationFrame(function() {\n          if (!section.isConnected) return;\n          updateCaptionWidths();\n          if (gallerySwiper && gallerySwiper.updateAutoHeight) {\n            gallerySwiper.updateAutoHeight(0);\n          }\n        });\n      }\n\n      function updateSlideWidths() {\n        if (isSingle) {\n          updateCaptionWidths();\n          return;\n        }\n        \/\/ Custom mode: Swiper computes slide widths from slidesPerView, so clear\n        \/\/ any inline widths a previous 'auto' breakpoint may have set and let\n        \/\/ Swiper size the slides.\n        if (isCustomMode()) {\n          Array.prototype.slice.call(section.querySelectorAll(\".gallery-slide\")).forEach(function(slide) {\n            slide.style.width = \"\";\n            slide.style.removeProperty(\"--gallery-slide-image-width\");\n          });\n          updateGallerySize();\n          return;\n        }\n\n        var isMobile = window.matchMedia(\"(max-width: 768px)\").matches;\n        var conf = currentConf();\n        var hasPixelHeight = !!(conf && conf.mode === 'height');\n        var gallerySlides = Array.prototype.slice.call(section.querySelectorAll(\".gallery-slide\"));\n\n        gallerySlides.forEach(function(slide) {\n          var image = getSlideMedia(slide);\n\n          if ((isMobile && !hasPixelHeight) || !image) {\n            slide.style.width = \"\";\n            slide.style.removeProperty(\"--gallery-slide-image-width\");\n            return;\n          }\n\n          var imageWidth = image.getBoundingClientRect().width;\n          if (imageWidth > 0) {\n            slide.style.width = imageWidth + \"px\";\n            slide.style.setProperty(\"--gallery-slide-image-width\", imageWidth + \"px\");\n          }\n        });\n\n        updateGallerySize();\n      }\n\n      \/\/ Captions come from a rich-text field and may carry <br\/>. Escaping the\n      \/\/ whole string first, then re-enabling only the line breaks, keeps the\n      \/\/ markup out of the visible text without opening an HTML injection hole.\n      function setCaptionHtml(el, raw) {\n        el.textContent = raw;\n        if (el.innerHTML.indexOf(\"&lt;br\") !== -1) {\n          el.innerHTML = el.innerHTML.replace(\/&lt;br\\s*\\\/?&gt;\/gi, \"<br>\");\n        }\n      }\n\n      function updateCredit(index) {\n        if (!credit || !slides[index]) return;\n        var text = slides[index].getAttribute(\"data-credit\") || \"\";\n        window.clearTimeout(creditTimer);\n        credit.classList.add(\"is-transitioning\");\n        creditTimer = window.setTimeout(function() {\n          setCaptionHtml(credit, text);\n          credit.classList.remove(\"is-transitioning\");\n        }, 60);\n      }\n\n      function updateLightboxMetaWidth() {\n        var media = getLightboxMedia();\n        if (!lightbox || !media) return;\n        var imageWidth = media.getBoundingClientRect().width;\n        if (imageWidth > 0) {\n          lightbox.style.setProperty(\"--gallery-lightbox-image-width\", imageWidth + \"px\");\n        }\n      }\n\n      \/\/ Custom dots: slides are duplicated in the DOM to enable looping, so\n      \/\/ Swiper's built-in pagination would show one bullet per copy (e.g. 9\n      \/\/ dots for 3 images). Render one dot per original image instead.\n      function buildDots() {\n        if (!dotWrap) return;\n        dotWrap.innerHTML = \"\";\n        for (var i = 0; i < slideCount; i++) {\n          (function(target) {\n            var dot = document.createElement(\"button\");\n            dot.type = \"button\";\n            dot.className = \"swiper-pagination-bullet\";\n            dot.setAttribute(\"aria-label\", \"Go to slide \" + (target + 1));\n            dot.addEventListener(\"click\", function() {\n              if (gallerySwiper) gallerySwiper.slideToLoop(target);\n            });\n            dotWrap.appendChild(dot);\n          })(i);\n        }\n      }\n\n      function updateDots() {\n        if (!dotWrap) return;\n        var dots = dotWrap.children;\n        for (var i = 0; i < dots.length; i++) {\n          dots[i].classList.toggle(\"swiper-pagination-bullet-active\", i === currentIndex);\n        }\n      }\n\n      function setActiveIndex(index) {\n        if (!slideCount) return;\n        currentIndex = ((index % slideCount) + slideCount) % slideCount;\n        updateCredit(currentIndex);\n        updateDots();\n      }\n\n      function goToGalleryIndex(index) {\n        if (!gallerySwiper || !slideCount) return;\n        var targetIndex = ((index % slideCount) + slideCount) % slideCount;\n        if (typeof gallerySwiper.slideToLoop === \"function\") {\n          gallerySwiper.slideToLoop(targetIndex);\n        } else {\n          gallerySwiper.slideTo(targetIndex);\n        }\n        setActiveIndex(targetIndex);\n      }\n\n      function showNextGallerySlide(event) {\n        if (event) {\n          event.preventDefault();\n          event.stopPropagation();\n        }\n        goToGalleryIndex(currentIndex + 1);\n      }\n\n      function showPrevGallerySlide(event) {\n        if (event) {\n          event.preventDefault();\n          event.stopPropagation();\n        }\n        goToGalleryIndex(currentIndex - 1);\n      }\n\n      function openLightbox(index) {\n        activeLightboxIndex = index;\n        var slide = slides[index];\n        if (!slide || !lightbox || !lightboxImage || !lightboxMeta || !lightboxProgress) return;\n        var mediaType = slide.getAttribute(\"data-media-type\") || \"image\";\n        var mediaUrl = slide.getAttribute(\"data-media-url\") || \"\";\n        var mediaAlt = slide.getAttribute(\"data-media-alt\") || \"Gallery image\";\n        stopLightboxVideo();\n        if (mediaType === \"video\" && lightboxVideo) {\n          lightboxImage.style.display = \"none\";\n          lightboxImage.removeAttribute(\"src\");\n          lightboxVideo.style.display = \"\";\n          lightboxVideo.src = mediaUrl;\n          lightboxVideo.load();\n        } else {\n          lightboxImage.style.display = \"\";\n          if (lightboxVideo) lightboxVideo.style.display = \"none\";\n          lightboxImage.src = mediaUrl;\n          lightboxImage.alt = mediaAlt;\n        }\n        setCaptionHtml(lightboxMetaInner || lightboxMeta, slide.getAttribute(\"data-credit\") || \"\");\n        lightboxProgress.style.width = ((index + 1) \/ slideCount) * 100 + \"%\";\n        lightbox.classList.add(\"is-open\");\n        lightbox.setAttribute(\"aria-hidden\", \"false\");\n        if (mediaType !== \"video\" && lightboxImage.complete) {\n          updateLightboxMetaWidth();\n        }\n        window.requestAnimationFrame(updateLightboxMetaWidth);\n        document.documentElement.style.overflow = \"hidden\";\n        document.body.style.overflow = \"hidden\";\n      }\n\n      function closeLightbox() {\n        if (!lightbox) return;\n        lightbox.classList.remove(\"is-open\");\n        lightbox.setAttribute(\"aria-hidden\", \"true\");\n        stopLightboxVideo();\n        document.documentElement.style.overflow = \"\";\n        document.body.style.overflow = \"\";\n      }\n\n      function showLightbox(index) {\n        if (!slideCount) return;\n        var nextIndex = ((index % slideCount) + slideCount) % slideCount;\n        openLightbox(nextIndex);\n      }\n\n      function showNextLightbox() {\n        showLightbox(activeLightboxIndex + 1);\n      }\n\n      function showPrevLightbox() {\n        showLightbox(activeLightboxIndex - 1);\n      }\n\n      function initGallerySwiper() {\n        if (!swiperEl || gallerySwiper) return;\n        syncSlides();\n        if (!slideCount) return;\n        if (isSingle) {\n          updateSlideWidths();\n          setActiveIndex(0);\n          return;\n        }\n        if (typeof Swiper === 'undefined') return;\n        buildDots();\n        updateSlideWidths();\n\n        \/\/ One Swiper breakpoint per active Elementor device, keyed by its\n        \/\/ min-width. Each device is auto or custom independently.\n        var breakpoints;\n        if (slidesConfig) {\n          breakpoints = {};\n          slidesConfig.forEach(function(conf) {\n            breakpoints[conf.min] = bpConf(conf);\n          });\n        } else {\n          breakpoints = {\n            0: {\n              slidesPerView: 1,\n              spaceBetween: 4,\n            },\n            769: {\n              slidesPerView: 'auto',\n              spaceBetween: 4,\n            },\n          };\n        }\n\n        gallerySwiper = new Swiper(swiperEl, {\n          slidesPerView: slidesConfig ? bpConf(currentConf()).slidesPerView : (window.innerWidth <= 768 ? 1 : 'auto'),\n          spaceBetween: 20,\n          autoHeight: true,\n          rewind: true,\n          loop: carouselSlideCount > 1,\n          loopAdditionalSlides: carouselSlideCount,\n          loopedSlides: carouselSlideCount,\n          watchOverflow: false,\n          breakpoints: breakpoints,\n          on: {\n            breakpoint: scheduleCaptionWidths,\n            loopFix: scheduleCaptionWidths,\n            resize: scheduleCaptionWidths,\n            init: function() {\n              updateSlideWidths();\n              setActiveIndex(this.realIndex || 0);\n            },\n            slideChange: function() {\n              setActiveIndex(this.realIndex || 0);\n            }\n          }\n        });\n        updateGallerySize();\n      }\n\n      if (swiperEl) {\n      swiperEl.addEventListener('click', function(event) {\n        var slide = event.target.closest('.gallery-slide');\n        if (!slide) return;\n        var index = parseInt(slide.getAttribute('data-gallery-index'), 10);\n        if (!isNaN(index)) {\n          showLightbox(index);\n        }\n      });\n      }\n\n      function onGalleryMediaLoad(event) {\n        var media = event.target;\n        if (!media.matches || !media.matches('.gallery-slide img, .gallery-slide video')) return;\n        if (mediaObserver) mediaObserver.observe(media);\n        updateSlideWidths();\n      }\n      \/\/ Capture loads from new loop slides too; cloned nodes do not retain\n      \/\/ listeners that were attached directly to the original media elements.\n      section.addEventListener('load', onGalleryMediaLoad, true);\n      section.addEventListener('loadedmetadata', onGalleryMediaLoad, true);\n\n      \/\/ Elementor controls and container resizing can change media dimensions\n      \/\/ without a window resize. Refresh caption widths after those changes too.\n      if (window.ResizeObserver) {\n        var sizeFrame = 0;\n        var mediaObserver = new ResizeObserver(function() {\n          window.cancelAnimationFrame(sizeFrame);\n          sizeFrame = window.requestAnimationFrame(function() {\n            if (!section.isConnected) {\n              mediaObserver.disconnect();\n              return;\n            }\n            updateSlideWidths();\n          });\n        });\n        section.querySelectorAll('.gallery-slide img, .gallery-slide video').forEach(function(media) {\n          mediaObserver.observe(media);\n        });\n      }\n\n      if (lightboxNext) lightboxNext.addEventListener('click', showNextLightbox);\n      if (lightboxPrev) lightboxPrev.addEventListener('click', showPrevLightbox);\n      if (galleryNext) galleryNext.addEventListener('click', showNextGallerySlide);\n      if (galleryPrev) galleryPrev.addEventListener('click', showPrevGallerySlide);\n      if (lightboxClose) lightboxClose.addEventListener('click', closeLightbox);\n      if (lightboxImage) lightboxImage.addEventListener('load', updateLightboxMetaWidth);\n      if (lightboxVideo) lightboxVideo.addEventListener('loadedmetadata', updateLightboxMetaWidth);\n      if (lightboxMeta) {\n        lightboxMeta.addEventListener('wheel', function(event) {\n          if (lightboxMeta.scrollHeight > lightboxMeta.clientHeight) {\n            event.stopPropagation();\n          }\n        }, { passive: true });\n\n        lightboxMeta.addEventListener('touchmove', function(event) {\n          if (lightboxMeta.scrollHeight > lightboxMeta.clientHeight) {\n            event.stopPropagation();\n          }\n        }, { passive: true });\n      }\n      if (lightbox) lightbox.addEventListener('click', function(event) {\n        if (event.target === lightbox) closeLightbox();\n      });\n\n      document.addEventListener('keydown', function(event) {\n        if (!lightbox || !lightbox.classList.contains(\"is-open\")) return;\n        if (event.key === \"Escape\" && lightbox.classList.contains(\"is-open\")) closeLightbox();\n        if (event.key === \"ArrowRight\" && lightbox.classList.contains(\"is-open\")) showNextLightbox();\n        if (event.key === \"ArrowLeft\" && lightbox.classList.contains(\"is-open\")) showPrevLightbox();\n      });\n\n      if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGallerySwiper);\n      } else {\n        initGallerySwiper();\n      }\n\n      window.addEventListener('load', initGallerySwiper);\n      window.addEventListener('load', updateSlideWidths);\n      window.addEventListener('resize', function() {\n        updateSlideWidths();\n        updateLightboxMetaWidth();\n      });\n    })();\n  <\/script>\n<\/section>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-160a432 e-con-full e-flex e-con e-parent\" data-id=\"160a432\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-566db99 elementor-widget elementor-widget-hkb_past_events\" data-id=\"566db99\" data-element_type=\"widget\" data-widget_type=\"hkb_past_events.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t        <style>\n            .hkb-past-events {\n                border-top: 0.5px solid #c8cad4;\n                border-bottom: 0.5px solid #c8cad4;\n                color: var(--clr-blue-100, #211650);\n            }\n\n            \/* Header row: title left, plus toggle right (HKB Accordion recipe). *\/\n            .hkb-pe-header {\n                display: flex;\n                align-items: center;\n                justify-content: space-between;\n                gap: 40px;\n                padding: 40px 0;\n                cursor: pointer;\n            }\n\n            .hkb-pe-header-title {\n                font-size: 20px;\n                font-weight: 400;\n                line-height: 26px;\n                letter-spacing: var(--heading-medium-letter-spacing, 0.25px);\n            }\n\n            .hkb-pe-toggle {\n                flex: 0 0 auto;\n                display: inline-flex;\n                align-items: center;\n                justify-content: center;\n                width: 20px;\n                height: 20px;\n                transition: transform 0.3s ease;\n            }\n\n            .hkb-past-events.is-open .hkb-pe-toggle {\n                transform: rotate(45deg);\n            }\n\n            .hkb-pe-body {\n                display: none;\n                padding: 0 0 60px;\n            }\n\n            .hkb-past-events.is-open .hkb-pe-body {\n                display: block;\n            }\n\n            .hkb-pe-list {\n                display: grid;\n                gap: 80px;\n            }\n\n            \/* Group heading \u2014 centered divider between term blocks. *\/\n            .hkb-pe-group-heading {\n                margin: 0;\n                text-align: center;\n                font-size: 26px;\n                line-height: 35px;\n                font-weight: 400;\n                color: var(--clr-blue-100, #211650);\n            }\n\n            \/* Event row: image left, content right, with an optional link. *\/\n            .hkb-pe-item {\n                display: grid;\n                grid-template-columns: 45fr 55fr;\n                gap: 68px;\n                align-items: start;\n                text-decoration: none;\n                color: var(--clr-blue-100, #211650);\n            }\n\n            \/* Image zoom in an overflow-hidden frame \u2014 same treatment as the\n               academy\/engage cards, triggered from anywhere in the row. *\/\n            .hkb-pe-media {\n                display: block;\n                overflow: hidden;\n                border-radius: 2px;\n                height: 100%;\n            }\n\n            .hkb-pe-media img {\n                display: block;\n                width: 100%;\n                height: 100%;\n                transition: 0.5s;\n                aspect-ratio: 3\/2;\n                object-fit: cover;\n            }\n\n            .hkb-pe-item:hover .hkb-pe-media img {\n                transform: scale(1.1);\n            }\n\n            .hkb-pe-content {\n                display: block;\n            }\n\n            .hkb-pe-title {\n                display: block;\n                font-size: 26px;\n                line-height: 35px;\n                font-weight: 400;\n                transition: color 0.5s;\n            }\n\n            .hkb-pe-item:hover .hkb-pe-title {\n                color: var(--clr-blue-60, #7a7396);\n            }\n\n            .hkb-pe-date {\n                display: block;\n                margin-top: 16px;\n                font-size: 14px;\n                line-height: 16.8px;\n                text-transform: uppercase;\n            }\n\n            .hkb-pe-desc {\n                display: block;\n                margin-top: 24px;\n                max-width: 520px;\n                font-size: 16px;\n                line-height: 26px;\n            }\n\n            .hkb-pe-more {\n                display: inline-flex;\n                align-items: center;\n                gap: 12px;\n                margin-top: 24px;\n                font-size: 18px;\n                line-height: 25.2px;\n                transition: color 0.5s;\n            }\n\n            .hkb-pe-arrow {\n                display: inline-flex;\n                color: inherit;\n            }\n\n            .hkb-pe-item:hover .hkb-pe-more {\n                color: var(--clr-blue-60, #7a7396);\n            }\n\n            \/* Pagination \u2014 same recipe as the shop (.hkb-products\n               .woocommerce-pagination in shop-filter.css): 28px circles,\n               filled current page, text Previous\/Next with chevrons. *\/\n            .hkb-past-events .hkb-pe-pagination {\n                margin-top: 60px;\n                display: flex;\n                justify-content: center;\n            }\n\n            .hkb-past-events .hkb-pe-pagination ul {\n                display: flex;\n                align-items: center;\n                justify-content: center;\n                flex-wrap: wrap;\n                gap: 8px;\n                list-style: none;\n                margin: 0;\n                padding: 0;\n            }\n\n            .hkb-past-events .hkb-pe-pagination li {\n                margin: 0;\n            }\n\n            .hkb-past-events .hkb-pe-pagination a.page-numbers,\n            .hkb-past-events .hkb-pe-pagination span.page-numbers {\n                display: flex;\n                align-items: center;\n                justify-content: center;\n                min-width: 28px;\n                height: 28px;\n                aspect-ratio: 1 \/ 1;\n                border-radius: 100%;\n                font-size: var(--fs-12, 12px);\n                line-height: var(--lh-168, 16.8px);\n                color: var(--clr-blue-100, #211650);\n                text-decoration: none;\n                cursor: pointer;\n                transition: background .15s;\n            }\n\n            .hkb-past-events .hkb-pe-pagination span.page-numbers.current {\n                background: #e9e6ed;\n                color:  var(--clr-blue-100);\n            }\n\n            .hkb-past-events .hkb-pe-pagination a.page-numbers:not(.next, .prev):hover {\n                background: #e9e6ed;\n            }\n\n            .hkb-past-events .hkb-pe-pagination a.prev,\n            .hkb-past-events .hkb-pe-pagination a.next,\n            .hkb-past-events .hkb-pe-pagination span.prev,\n            .hkb-past-events .hkb-pe-pagination span.next {\n                gap: 6px;\n                font-weight: 300;\n                width: auto;\n                min-width: auto;\n                aspect-ratio: auto;\n                background: transparent;\n                padding: 8px 16px;\n            }\n\n            .hkb-past-events .hkb-pe-pagination span.is-disabled {\n                opacity: 0.6;\n                cursor: not-allowed;\n                pointer-events: none;\n            }\n\n            .hkb-past-events .hkb-pe-pagination .prev::before,\n            .hkb-past-events .hkb-pe-pagination .next::after {\n                content: '';\n                display: inline-block;\n                width: 12px;\n                height: 12px;\n                background: var(--clr-blue-100, #211650);\n                mask-size: contain;\n                mask-repeat: no-repeat;\n                mask-position: center;\n                -webkit-mask-size: contain;\n                -webkit-mask-repeat: no-repeat;\n                -webkit-mask-position: center;\n            }\n\n            .hkb-past-events .hkb-pe-pagination .prev::before {\n                mask-image: url('https:\/\/www.hkballet.com\/wp-content\/themes\/hello-elementor-child\/assets\/img\/chevron-left.svg');\n                -webkit-mask-image: url('https:\/\/www.hkballet.com\/wp-content\/themes\/hello-elementor-child\/assets\/img\/chevron-left.svg');\n            }\n\n            .hkb-past-events .hkb-pe-pagination .next::after {\n                mask-image: url('https:\/\/www.hkballet.com\/wp-content\/themes\/hello-elementor-child\/assets\/img\/chevron-right.svg');\n                -webkit-mask-image: url('https:\/\/www.hkballet.com\/wp-content\/themes\/hello-elementor-child\/assets\/img\/chevron-right.svg');\n            }\n\n            .hkb-past-events .hkb-pe-pagination span.dots {\n                background: none;\n                letter-spacing: 2px;\n            }\n\n            @media (max-width: 767px) {\n                .hkb-past-events .hkb-pe-pagination {\n                    margin-top: 40px;\n                }\n\n                .hkb-pe-header {\n                    gap: 20px;\n                    padding: 20px 0;\n                }\n\n                .hkb-pe-header-title {\n                    font-size: 16px;\n                    line-height: 23px;\n                }\n\n                .hkb-pe-toggle {\n                    width: 16px;\n                }\n\n                .hkb-pe-body {\n                    padding-bottom: 40px;\n                }\n\n                .hkb-pe-list {\n                    gap: 40px;\n                }\n\n                \/* Stack: image on top, then text. *\/\n                .hkb-pe-item {\n                    grid-template-columns: 1fr;\n                    gap: 20px;\n                }\n\n                .hkb-pe-title {\n                    font-size: 18px;\n                    line-height: 23.5px;\n                }\n\n                .hkb-pe-desc {\n                    margin-top: 20px;\n                    font-size: 14px;\n                    line-height: 21px;\n                }\n\n                .hkb-pe-more {\n                    margin-top: 20px;\n                    font-size: 14px;\n                    line-height: 18.2px;\n                }\n\n                .hkb-pe-arrow svg {\n                    width: 16px;\n                    height: 16px;\n                }\n\n                .hkb-pe-date{\n                    font-size: 12px;\n                    line-height: 16.8px;\n                    margin-top: 20px;\n                }\n\n                .hkb-pe-group-heading {\n                    font-size: 18px;\n                    line-height: 23.5px;\n                }\n            }\n        <\/style>\n                <section id=\"hkb-past-events-566db99\" class=\"hkb-past-events\">\n            <div class=\"hkb-pe-header\" role=\"button\" tabindex=\"0\"\n                aria-expanded=\"false\"\n                aria-controls=\"hkb-past-events-566db99-body\"\n                data-hkb-pe-toggle>\n                <span class=\"hkb-pe-header-title\">\u904e\u5f80\u6d3b\u52d5<\/span>\n                <span class=\"hkb-pe-toggle\" aria-hidden=\"true\">\n                    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\n                        <path d=\"M20 9.49579V10.4958H0V9.49579H20Z\" fill=\"#211650\" \/>\n                        <path d=\"M10.504 20H9.50403L9.50403 0L10.504 4.37114e-08L10.504 20Z\" fill=\"#211650\" \/>\n                    <\/svg>\n                <\/span>\n            <\/div>\n\n            <div class=\"hkb-pe-body\" id=\"hkb-past-events-566db99-body\">\n                <div class=\"hkb-pe-list\">\n                                                                                                        <a class=\"hkb-pe-item\" href=\"https:\/\/www.hkballet.com\/zh-hant\/event\/silver-ballet-camp-the-sleeping-beauty\/\">\n            <span class=\"hkb-pe-media\"><img fetchpriority=\"high\" decoding=\"async\" width=\"800\" height=\"552\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/SBC26_Portrait_1920x1324_20251209-1024x706.jpg\" class=\"attachment-large size-large wp-post-image\" alt=\"\" srcset=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/SBC26_Portrait_1920x1324_20251209-1024x706.jpg 1024w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/SBC26_Portrait_1920x1324_20251209-300x207.jpg 300w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/SBC26_Portrait_1920x1324_20251209-768x530.jpg 768w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/SBC26_Portrait_1920x1324_20251209-1536x1059.jpg 1536w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/SBC26_Portrait_1920x1324_20251209-600x414.jpg 600w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/SBC26_Portrait_1920x1324_20251209.jpg 1921w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/span>\n            <span class=\"hkb-pe-content\">\n                <span class=\"hkb-pe-title\">\u9280\u9aee\u82ad\u857e\u5c0b\u5922\u5712\u300a\u7761\u7f8e\u4eba\u300b<\/span>\n                                    <span class=\"hkb-pe-date\">2026\u5e744\u67084-6\u65e5<\/span>\n                                                    <span class=\"hkb-pe-desc gotham-regular\">\u9ad4\u9a57\u53e4\u5178\u82ad\u857e\u4e4b\u7f8e\uff01 \u9999\u6e2f\u82ad\u857e\u821e\u5718\u5c07\u65bc2026\u5e74\u5fa9\u6d3b\u2026<\/span>\n                                <span class=\"hkb-pe-more hkb-pe-more--internal\">\n                    \u4e86\u89e3\u66f4\u591a                    <span class=\"hkb-pe-arrow\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\"><g><path d=\"M0 10.667V9.33398L20 9.33398V10.667L0 10.667Z\" fill=\"currentColor\"><\/path><path d=\"M19.7404 10.7457C16.2858 10.2674 13.0847 7.67139 11.2728 3.43073L12.3427 2.63417C14.0074 6.53041 16.9269 8.8651 20.0125 9.2923L19.7404 10.7457Z\" fill=\"currentColor\"><\/path><path d=\"M19.7404 9.25432C16.2858 9.7326 13.0847 12.3286 11.2728 16.5693L12.3427 17.3658C14.0074 13.4696 16.9269 11.1349 20.0125 10.7077L19.7404 9.25432Z\" fill=\"currentColor\"><\/path><\/g><\/svg><\/span>\n                <\/span>\n            <\/span>\n        <\/a>\n                                                                    <a class=\"hkb-pe-item\" href=\"https:\/\/www.hkballet.com\/zh-hant\/event\/silver-ballet-camp-the-nutcracker\/\">\n            <span class=\"hkb-pe-media\"><img decoding=\"async\" width=\"800\" height=\"552\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/1920x1324_FINAL-1024x706.jpg\" class=\"attachment-large size-large wp-post-image\" alt=\"\" srcset=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/1920x1324_FINAL-1024x706.jpg 1024w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/1920x1324_FINAL-300x207.jpg 300w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/1920x1324_FINAL-768x530.jpg 768w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/1920x1324_FINAL-1536x1059.jpg 1536w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/1920x1324_FINAL-2048x1412.jpg 2048w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/1920x1324_FINAL-600x414.jpg 600w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/span>\n            <span class=\"hkb-pe-content\">\n                <span class=\"hkb-pe-title\">\u9280\u9aee\u82ad\u857e\u5c0b\u5922\u5712\u300a\u80e1\u6843\u593e\u5b50\u300b<\/span>\n                                    <span class=\"hkb-pe-date\">2025\u5e744\u670818-21\u65e5<\/span>\n                                                    <span class=\"hkb-pe-desc gotham-regular\">\u9ad4\u9a57\u53e4\u5178\u82ad\u857e\u4e4b\u7f8e\uff01 \u9999\u6e2f\u82ad\u857e\u821e\u5718\uff08\u6e2f\u82ad\uff09\u65bc2024\u2026<\/span>\n                                <span class=\"hkb-pe-more hkb-pe-more--internal\">\n                    \u4e86\u89e3\u66f4\u591a                    <span class=\"hkb-pe-arrow\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\"><g><path d=\"M0 10.667V9.33398L20 9.33398V10.667L0 10.667Z\" fill=\"currentColor\"><\/path><path d=\"M19.7404 10.7457C16.2858 10.2674 13.0847 7.67139 11.2728 3.43073L12.3427 2.63417C14.0074 6.53041 16.9269 8.8651 20.0125 9.2923L19.7404 10.7457Z\" fill=\"currentColor\"><\/path><path d=\"M19.7404 9.25432C16.2858 9.7326 13.0847 12.3286 11.2728 16.5693L12.3427 17.3658C14.0074 13.4696 16.9269 11.1349 20.0125 10.7077L19.7404 9.25432Z\" fill=\"currentColor\"><\/path><\/g><\/svg><\/span>\n                <\/span>\n            <\/span>\n        <\/a>\n                                                                    <a class=\"hkb-pe-item\" href=\"https:\/\/www.hkballet.com\/zh-hant\/event\/silver-ballet-camp-swan-lake\/\">\n            <span class=\"hkb-pe-media\"><img decoding=\"async\" width=\"800\" height=\"552\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/Silver_Ballet_SL_1920x1324-1024x706.png\" class=\"attachment-large size-large wp-post-image\" alt=\"\" srcset=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/Silver_Ballet_SL_1920x1324-1024x706.png 1024w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/Silver_Ballet_SL_1920x1324-300x207.png 300w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/Silver_Ballet_SL_1920x1324-768x530.png 768w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/Silver_Ballet_SL_1920x1324-1536x1059.png 1536w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/Silver_Ballet_SL_1920x1324-2048x1412.png 2048w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/07\/Silver_Ballet_SL_1920x1324-600x414.png 600w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/span>\n            <span class=\"hkb-pe-content\">\n                <span class=\"hkb-pe-title\">\u9280\u9aee\u82ad\u857e\u5c0b\u5922\u5712\u300a\u5929\u9d5d\u6e56\u300b<\/span>\n                                    <span class=\"hkb-pe-date\">2024\u5e743\u670829-31\u65e5<\/span>\n                                                    <span class=\"hkb-pe-desc gotham-regular\">\u9f4a\u4f86\u9ad4\u9a57\u300a\u5929\u9d5d\u6e56\u300b\u9280\u9aee\u82ad\u857e\u7684\u6d6a\u6f2b\u8207\u9b54\u529b\uff01 \u5fa9\u6d3b\u7bc0\u671f\u2026<\/span>\n                                <span class=\"hkb-pe-more hkb-pe-more--internal\">\n                    \u4e86\u89e3\u66f4\u591a                    <span class=\"hkb-pe-arrow\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\"><g><path d=\"M0 10.667V9.33398L20 9.33398V10.667L0 10.667Z\" fill=\"currentColor\"><\/path><path d=\"M19.7404 10.7457C16.2858 10.2674 13.0847 7.67139 11.2728 3.43073L12.3427 2.63417C14.0074 6.53041 16.9269 8.8651 20.0125 9.2923L19.7404 10.7457Z\" fill=\"currentColor\"><\/path><path d=\"M19.7404 9.25432C16.2858 9.7326 13.0847 12.3286 11.2728 16.5693L12.3427 17.3658C14.0074 13.4696 16.9269 11.1349 20.0125 10.7077L19.7404 9.25432Z\" fill=\"currentColor\"><\/path><\/g><\/svg><\/span>\n                <\/span>\n            <\/span>\n        <\/a>\n                                                                    <\/div>\n\n                            <\/div>\n\n            <script>\n                (function () {\n                    var section = document.getElementById(\"hkb-past-events-566db99\");\n                    if (!section) return;\n\n                    var header = section.querySelector('[data-hkb-pe-toggle]');\n                    if (!header) return;\n\n                    function toggle() {\n                        var open = !section.classList.contains('is-open');\n                        section.classList.toggle('is-open', open);\n                        header.setAttribute('aria-expanded', open ? 'true' : 'false');\n                    }\n\n                    header.addEventListener('click', toggle);\n                    header.addEventListener('keydown', function (event) {\n                        if (event.key === 'Enter' || event.key === ' ') {\n                            event.preventDefault();\n                            toggle();\n                        }\n                    });\n\n                    \/\/ Client-side pagination: same look and ellipsis rules as\n                    \/\/ the shop pagination (includes\/main-function.php), but\n                    \/\/ switching pages only re-slices the already-rendered list\n                    \/\/ so the accordion never closes or reloads.\n                    var list = section.querySelector('.hkb-pe-list');\n                    var pager = section.querySelector('[data-hkb-pe-pagination]');\n                    if (list && pager) {\n                        var rows = Array.prototype.slice.call(list.children);\n                        var items = rows.filter(function (row) {\n                            return row.classList.contains('hkb-pe-item');\n                        });\n                        var perPage = parseInt(pager.getAttribute('data-per-page'), 10) || 6;\n                        var totalPages = Math.ceil(items.length \/ perPage);\n                        var currentPage = 1;\n                        var prevLabel = \"\\u4e0a\\u4e00\\u9805\";\n                        var nextLabel = \"\\u4e0b\\u4e00\\u9805\";\n\n                        function renderPage() {\n                            items.forEach(function (item, index) {\n                                var page = Math.floor(index \/ perPage) + 1;\n                                item.style.display = page === currentPage ? '' : 'none';\n                            });\n\n                            \/\/ A group heading stays visible only when at least\n                            \/\/ one of its own items is on the current page.\n                            rows.forEach(function (row, rowIndex) {\n                                if (!row.classList.contains('hkb-pe-group-heading')) return;\n                                var hasVisibleItem = false;\n                                for (var j = rowIndex + 1; j < rows.length; j++) {\n                                    if (rows[j].classList.contains('hkb-pe-group-heading')) break;\n                                    if (rows[j].style.display !== 'none') { hasVisibleItem = true; break; }\n                                }\n                                row.style.display = hasVisibleItem ? '' : 'none';\n                            });\n\n                            var parts = [];\n                            parts.push(currentPage > 1\n                                ? '<li><a href=\"#\" class=\"prev page-numbers\" data-page=\"' + (currentPage - 1) + '\">' + prevLabel + '<\/a><\/li>'\n                                : '<li><span class=\"prev page-numbers is-disabled\">' + prevLabel + '<\/span><\/li>');\n                            for (var i = 1; i <= totalPages; i++) {\n                                if (i === 1 || i === totalPages || Math.abs(i - currentPage) <= 1) {\n                                    parts.push(i === currentPage\n                                        ? '<li><span class=\"page-numbers current\">' + i + '<\/span><\/li>'\n                                        : '<li><a href=\"#\" class=\"page-numbers\" data-page=\"' + i + '\">' + i + '<\/a><\/li>');\n                                } else if ((i === 2 && currentPage > 3) || (i === totalPages - 1 && currentPage < totalPages - 2)) {\n                                    parts.push('<li><span class=\"page-numbers dots\">&hellip;<\/span><\/li>');\n                                }\n                            }\n                            parts.push(currentPage < totalPages\n                                ? '<li><a href=\"#\" class=\"next page-numbers\" data-page=\"' + (currentPage + 1) + '\">' + nextLabel + '<\/a><\/li>'\n                                : '<li><span class=\"next page-numbers is-disabled\">' + nextLabel + '<\/span><\/li>');\n\n                            pager.querySelector('ul').innerHTML = parts.join('');\n                        }\n\n                        pager.addEventListener('click', function (event) {\n                            var link = event.target.closest ? event.target.closest('a[data-page]') : null;\n                            if (!link) return;\n                            event.preventDefault();\n                            var page = parseInt(link.getAttribute('data-page'), 10);\n                            if (!page || page === currentPage) return;\n                            currentPage = Math.min(Math.max(page, 1), totalPages);\n                            renderPage();\n                            \/\/ If the list top scrolled out of view, bring the\n                            \/\/ reader back to the start of the new page.\n                            var body = section.querySelector('.hkb-pe-body');\n                            if (body && body.getBoundingClientRect().top < 0) {\n                                body.scrollIntoView({ behavior: 'smooth', block: 'start' });\n                            }\n                        });\n\n                        renderPage();\n                    }\n                })();\n            <\/script>\n        <\/section>\n        \t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-1ae2791 e-flex e-con-boxed e-con e-parent\" data-id=\"1ae2791\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5698cea elementor-widget elementor-widget-heading\" data-id=\"5698cea\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u60a8\u53ef\u80fd\u4e5f\u559c\u6b61...<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9b87021 elementor-grid-widescreen-2 elementor-grid-tablet-1 elementor-grid-3 elementor-grid-mobile-1 elementor-widget elementor-widget-loop-grid\" data-id=\"9b87021\" data-element_type=\"widget\" data-settings=\"{&quot;template_id&quot;:3011,&quot;columns_widescreen&quot;:2,&quot;columns_tablet&quot;:1,&quot;row_gap_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:20,&quot;sizes&quot;:[]},&quot;_skin&quot;:&quot;post&quot;,&quot;columns&quot;:&quot;3&quot;,&quot;columns_mobile&quot;:&quot;1&quot;,&quot;edit_handle_selector&quot;:&quot;[data-elementor-type=\\&quot;loop-item\\&quot;]&quot;,&quot;row_gap&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;row_gap_widescreen&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;row_gap_laptop&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;row_gap_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}\" data-widget_type=\"loop-grid.post\">\n\t\t\t\t\t\t\t<div class=\"elementor-loop-container elementor-grid\">\n\t\t<style id=\"loop-3011\">.elementor-3011 .elementor-element.elementor-element-ea1c23d{--display:flex;--gap:16px 16px;--row-gap:16px;--column-gap:16px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-3011 .elementor-element.elementor-element-039bdc6 img{width:100%;border-radius:2px 2px 2px 2px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-3011 .elementor-element.elementor-element-35a7ccc .elementor-button{background-color:#61CE7000;font-family:\"Roboto\", Sans-serif;font-size:18px;font-weight:500;fill:#211650;color:#211650;padding:0px 0px 0px 0px;}.elementor-3011 .elementor-element.elementor-element-35a7ccc .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-3011 .elementor-element.elementor-element-35a7ccc .elementor-button .elementor-button-content-wrapper{gap:12px;}.elementor-3011 .elementor-element.elementor-element-35a7ccc .elementor-button:hover, .elementor-3011 .elementor-element.elementor-element-35a7ccc .elementor-button:focus{color:#7A7396;}.elementor-3011 .elementor-element.elementor-element-35a7ccc .elementor-button:hover svg, .elementor-3011 .elementor-element.elementor-element-35a7ccc .elementor-button:focus svg{fill:#7A7396;}@media(max-width:767px){.elementor-3011 .elementor-element.elementor-element-ea1c23d{--gap:12px 12px;--row-gap:12px;--column-gap:12px;}.elementor-3011 .elementor-element.elementor-element-35a7ccc{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-3011 .elementor-element.elementor-element-35a7ccc .elementor-button{font-size:14px;}}\/* Start custom CSS for image, class: .elementor-element-039bdc6 *\/.elementor-3011 .elementor-element.elementor-element-039bdc6 a{\n    display: block;\n    width: 100%;\n}\n.elementor-3011 .elementor-element.elementor-element-039bdc6  {\n   overflow: hidden;\n}\n\/* card ratio 3:2 *\/\n.elementor-3011 .elementor-element.elementor-element-039bdc6 img{\n    aspect-ratio: 3 \/ 2;\n    object-fit: cover;\n    width: 100%;\n    height: auto;\n}\/* End custom CSS *\/<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"3011\" class=\"elementor elementor-3011 e-loop-item e-loop-item-26226 post-26226 engage type-engage status-publish has-post-thumbnail hentry engage_category-386\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-ea1c23d e-con-full e-flex e-con e-child\" data-id=\"ea1c23d\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-039bdc6 elementor-widget elementor-widget-image\" data-id=\"039bdc6\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.hkballet.com\/zh-hant\/engage\/silver-ballet-dare-to-dream\/\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"1324\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/06\/1920x1324.jpg\" class=\"attachment-full size-full wp-image-53206\" alt=\"\" srcset=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/06\/1920x1324.jpg 1920w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/06\/1920x1324-300x207.jpg 300w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/06\/1920x1324-1024x706.jpg 1024w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/06\/1920x1324-768x530.jpg 768w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/06\/1920x1324-1536x1059.jpg 1536w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/06\/1920x1324-600x414.jpg 600w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35a7ccc opinion-read-more elementor-widget elementor-widget-button\" data-id=\"35a7ccc\" data-element_type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/www.hkballet.com\/zh-hant\/engage\/silver-ballet-dare-to-dream\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t<span class=\"elementor-button-icon\">\n\t\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\"><g clip-path=\"url(#clip0_7181_2564)\"><path d=\"M0 10.667V9.33398L20 9.33398V10.667L0 10.667Z\" fill=\"#211650\"><\/path><path d=\"M19.7404 10.7457C16.2858 10.2674 13.0847 7.67139 11.2728 3.43073L12.3427 2.63417C14.0074 6.53041 16.9269 8.8651 20.0125 9.2923L19.7404 10.7457Z\" fill=\"#211650\"><\/path><path d=\"M19.7404 9.25432C16.2858 9.7326 13.0847 12.3286 11.2728 16.5693L12.3427 17.3658C14.0074 13.4696 16.9269 11.1349 20.0125 10.7077L19.7404 9.25432Z\" fill=\"#211650\"><\/path><\/g><defs><clipPath id=\"clip0_7181_2564\"><rect width=\"20\" height=\"20\" fill=\"white\"><\/rect><\/clipPath><\/defs><\/svg>\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">\u9280\u9aee\u82ad\u857e\uff1a\u6562\u5922\u6562\u8df3<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"3011\" class=\"elementor elementor-3011 e-loop-item e-loop-item-26228 post-26228 engage type-engage status-publish has-post-thumbnail hentry engage_category-386\" data-elementor-post-type=\"elementor_library\" data-custom-edit-handle=\"1\">\n\t\t\t<div class=\"elementor-element elementor-element-ea1c23d e-con-full e-flex e-con e-child\" data-id=\"ea1c23d\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-039bdc6 elementor-widget elementor-widget-image\" data-id=\"039bdc6\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.hkballet.com\/zh-hant\/engage\/silver-ballet-virtual-workshops\/\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"1324\" src=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/06\/pic2_1920_1324.png\" class=\"attachment-full size-full wp-image-23435\" alt=\"\" srcset=\"https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/06\/pic2_1920_1324.png 1920w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/06\/pic2_1920_1324-300x207.png 300w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/06\/pic2_1920_1324-1024x706.png 1024w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/06\/pic2_1920_1324-768x530.png 768w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/06\/pic2_1920_1324-1536x1059.png 1536w, https:\/\/www.hkballet.com\/wp-content\/uploads\/2026\/06\/pic2_1920_1324-600x414.png 600w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35a7ccc opinion-read-more elementor-widget elementor-widget-button\" data-id=\"35a7ccc\" data-element_type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/www.hkballet.com\/zh-hant\/engage\/silver-ballet-virtual-workshops\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t<span class=\"elementor-button-icon\">\n\t\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\"><g clip-path=\"url(#clip0_7181_2564)\"><path d=\"M0 10.667V9.33398L20 9.33398V10.667L0 10.667Z\" fill=\"#211650\"><\/path><path d=\"M19.7404 10.7457C16.2858 10.2674 13.0847 7.67139 11.2728 3.43073L12.3427 2.63417C14.0074 6.53041 16.9269 8.8651 20.0125 9.2923L19.7404 10.7457Z\" fill=\"#211650\"><\/path><path d=\"M19.7404 9.25432C16.2858 9.7326 13.0847 12.3286 11.2728 16.5693L12.3427 17.3658C14.0074 13.4696 16.9269 11.1349 20.0125 10.7077L19.7404 9.25432Z\" fill=\"#211650\"><\/path><\/g><defs><clipPath id=\"clip0_7181_2564\"><rect width=\"20\" height=\"20\" fill=\"white\"><\/rect><\/clipPath><\/defs><\/svg>\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">\u9280\u9aee\u82ad\u857e\u7db2\u4e0a\u5de5\u4f5c\u574a<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"featured_media":22608,"template":"","engage_category":[386],"class_list":["post-26224","engage","type-engage","status-publish","has-post-thumbnail","hentry","engage_category-386"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.hkballet.com\/zh-hant\/wp-json\/wp\/v2\/engage\/26224","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hkballet.com\/zh-hant\/wp-json\/wp\/v2\/engage"}],"about":[{"href":"https:\/\/www.hkballet.com\/zh-hant\/wp-json\/wp\/v2\/types\/engage"}],"version-history":[{"count":0,"href":"https:\/\/www.hkballet.com\/zh-hant\/wp-json\/wp\/v2\/engage\/26224\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hkballet.com\/zh-hant\/wp-json\/wp\/v2\/media\/22608"}],"wp:attachment":[{"href":"https:\/\/www.hkballet.com\/zh-hant\/wp-json\/wp\/v2\/media?parent=26224"}],"wp:term":[{"taxonomy":"engage_category","embeddable":true,"href":"https:\/\/www.hkballet.com\/zh-hant\/wp-json\/wp\/v2\/engage_category?post=26224"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}