1import{b as R,c as U}from"./chunk-2OUBDX2E.js";import{s as $}from"./chunk-GUHNXJPP.js";import{a as N}from"./chunk-3ZTKMN7G.js";import{c as Y}from"./chunk-QE3L7F27.js";import{$ as p,$b as F,Ab as _,Bc as A,Cb as g,Eb as l,Ec as H,Gb as L,Hb as T,Ia as M,Ib as j,Ma as S,Na as o,Nb as x,Qb as d,Rb as E,Sb as h,V as G,aa as u,ab as V,bc as m,cc as b,dc as z,fb as D,hc as C,ic as B,ja as w,mb as P,nb as v,ob as y,rb as O,sb as I,tb as f,ub as a,vb as s,wb as k}from"./chunk-7I7CLC6Q.js";var Q=["lightboxVideo"],q=r=>({count:r}),W=(r,t)=>t.value,J=(r,t)=>t.src;function Z(r,t){r&1&&(a(0,"span",18),d(1,"\u25BE"),s())}function ee(r,t){if(r&1){let e=_();a(0,"button",21),g("click",function(){let n=p(e).$implicit,c=l(3);return u(c.selectFilter(n.value))}),d(1),s()}if(r&2){let e=t.$implicit,i=l(3);x("filter-dropdown__item--active",i.selectedCategory()===e.value),o(),h(" ",e.label," ")}}function te(r,t){if(r&1){let e=_();a(0,"div",20),g("click",function(n){return p(e),u(n.stopPropagation())}),a(1,"button",21),g("click",function(){p(e);let n=l().$implicit,c=l();return u(c.selectFilter(n.value))}),d(2),s(),O(3,ee,2,3,"button",22,W),s()}if(r&2){let e=l().$implicit,i=l();o(),x("filter-dropdown__item--active",i.selectedCategory()===e.value),o(),h(" ",e.allLabel??"All "+e.label," "),o(),I(i.visibleChildren(e))}}function ie(r,t){if(r&1){let e=_();a(0,"div",16),g("mouseenter",function(){let n=p(e).$implicit,c=l();return u(c.openDropdownOnHover(n))})("mouseleave",function(){let n=p(e).$implicit,c=l();return u(c.closeDropdownOnLeave(n))}),a(1,"button",17),g("click",function(n){let c=p(e).$implicit,K=l();return u(K.toggleDropdown(c.value,n))}),d(2),v(3,Z,2,0,"span",18),s(),v(4,te,5,3,"div",19),s()}if(r&2){let e=t.$implicit,i=l();o(),x("filter-btn--active",i.isParentActive(e)),o(),h(" ",e.label," "),o(),y(e.children?3:-1),o(),y(e.children&&i.activeDropdown()===e.value?4:-1)}}function ne(r,t){if(r&1&&(d(0),m(1,"translate"),a(2,"strong"),d(3),s()),r&2){let e=l();h(" \u2014 ",b(1,2,"GALLERY.FILTERED_BY")," "),o(3),E(e.activeFilterLabel())}}function re(r,t){if(r&1&&(k(0,"video",25),a(1,"span",26),d(2,"\u25B6"),s()),r&2){let e=l().$implicit;f("src",e.src,M)("poster",e.poster??null,M)}}function oe(r,t){if(r&1&&k(0,"img",24),r&2){let e=l().$implicit;f("src",e.src,M)("alt",e.category)}}function ae(r,t){if(r&1){let e=_();a(0,"div",23),g("click",function(){let n=p(e).$implicit,c=l();return u(c.openLightbox(n))}),v(1,re,3,2)(2,oe,1,2,"img",24),s()}if(r&2){let e=t.$implicit;o(),y(e.type==="video"?1:2)}}function le(r,t){if(r&1){let e=_();a(0,"div",14)(1,"button",27),g("click",function(){p(e);let n=l();return u(n.loadMore())}),d(2),m(3,"translate"),s()()}r&2&&(o(2),E(b(3,1,"GALLERY.SEE_MORE")))}function se(r,t){if(r&1){let e=_();a(0,"button",34),g("click",function(){p(e);let n=l(2);return u(n.prevImage())}),d(1,"\u276E"),s()}}function ce(r,t){if(r&1&&k(0,"video",31,0),r&2){let e=l(2);f("src",e.selectedMedia.src,M)}}function de(r,t){if(r&1&&k(0,"img",32),r&2){let e=l(2);f("src",e.selectedMedia.src,M)}}function ge(r,t){if(r&1){let e=_();a(0,"button",35),g("click",function(){p(e);let n=l(2);return u(n.nextImage())}),d(1,"\u276F"),s()}}function pe(r,t){if(r&1){let e=_();a(0,"div",28),g("touchstart",function(n){p(e);let c=l();return u(c.onLightboxTouchStart(n))})("touchend",function(n){p(e);let c=l();return u(c.onLightboxTouchEnd(n))}),a(1,"span",29),g("click",function(){p(e);let n=l();return u(n.closeLightbox())}),d(2,"\xD7"),s(),v(3,se,2,0,"button",30),v(4,ce,2,1,"video",31)(5,de,1,1,"img",32),v(6,ge,2,0,"button",33),s()}if(r&2){let e=l();o(3),y(e.visibleImages().length>1?3:-1),o(),y(e.selectedMedia.type==="video"?4:5),o(2),y(e.visibleImages().length>1?6:-1)}}var X=class r{cmsService=G(R);languageService=G(U);categories=[{value:"all",label:"All"},{value:"pre-departure-lounge",label:"Pre-departure Lounge"},{value:"stations",label:"Stations"},{value:"club-car",label:"Club Car (smoking permitted)"},{value:"lounge-non-smoking",label:"Lounge Car (non-smoking)"},{value:"dining-car",label:"Dining Car"},{value:"kitchen-car",label:"Kitchen Car"},{value:"observation-car",label:"Observation Car"},{value:"conference-car",label:"Conference Car"},{value:"suites",label:"Suites",allLabel:"All Suites",children:[{value:"de-luxe-suite",label:"De Luxe Suite"},{value:"luxury-suite",label:"Luxury Suite"}]},{value:"ensuite-bathrooms",label:"Ensuite Bathrooms",allLabel:"Bathrooms",children:[{value:"bathroom-shower",label:"With Shower"},{value:"bathroom-bathtub",label:"With Bathtub"}]},{value:"dining",label:"Dining",allLabel:"Dining",children:[{value:"tea-and-snacks",label:"High Tea"},{value:"starters",label:"Starters"},{value:"mains",label:"Mains"},{value:"dessert",label:"Desserts"},{value:"drinks",label:"Beverages"}]},{value:"staff",label:"Staff"},{value:"guests",label:"Guests"},{value:"decor",label:"D\xE9cor and Interior Design"},{value:"train-exterior",label:"Train Exterior"},{value:"locomotives",label:"Locomotives"}
1,{value:"scenery",label:"Scenery"},{value:"excursions",label:"Excursions",allLabel:"All Excursions",children:[{value:"kimberley-big-hole",label:"The Kimberley Big Hole"},{value:"matjiesfontein",label:"Matjiesfontein historical town"},{value:"excursion-kruger",label:"Kruger National Park"},{value:"victoria-falls",label:"Victoria Falls"},{value:"howick-falls",label:"Howick Falls"}]},{value:"destinations",label:"Destinations",allLabel:"All Destinations",children:[{value:"dest-cape-town",label:"Cape Town"},{value:"dest-pretoria",label:"Pretoria"},{value:"wine-estates",label:"Wine Estates"},{value:"dest-durban",label:"Durban"},{value:"dest-kruger",label:"Kruger National Park"},{value:"dullstroom",label:"Dullstroom"},{value:"sun-city",label:"Sun City"},{value:"garden-route",label:"Garden Route"},{value:"gqeberha",label:"Gqeberha (Port Elizabeth)"}]},{value:"history",label:"History"},{value:"window-to-soul-of-africa",label:"Window to the Soul of Africa"}];selectedCategory=w("all");activeDropdown=w(null);galleryView=w("large");allMedia=w([]);pageSize=10;visibleCount=w(10);fallbackImages=[{src:"assets/gallery/one.jpg",category:"de-luxe-suite",type:"image"},{src:"assets/gallery/five.jpg",category:"scenery",type:"image"},{src:"assets/gallery/nine.jpg",category:"luxury-suite",type:"image"},{src:"assets/gallery/13.jpg",category:"dining-car",type:"image"},{src:"assets/gallery/18.jpg",category:"mains",type:"image"},{src:"assets/gallery/two.jpg",category:"starters",type:"image"},{src:"assets/gallery/six.jpg",category:"excursions",type:"image"},{src:"assets/gallery/ten.jpg",category:"drinks",type:"image"},{src:"assets/gallery/15.jpg",category:"lounge-non-smoking",type:"image"},{src:"assets/gallery/seven.jpg",category:"scenery",type:"image"},{src:"assets/gallery/Dining 007 Dessert.jpg",category:"dessert",type:"image"},{src:"assets/gallery/Dining 003 Dessert 1 - Ganache_with red.jpg",category:"dessert",type:"image"},{src:"assets/gallery/16.jpg",category:"de-luxe-suite",type:"image"},{src:"assets/gallery/17.jpg",category:"luxury-suite",type:"image"},{src:"assets/gallery/four.jpg",category:"scenery",type:"image"},{src:"assets/gallery/eight.jpg",category:"excursions",type:"image"},{src:"assets/gallery/twelve.jpg",category:"train-exterior",type:"image"},{src:"assets/gallery/19.jpg",category:"locomotives",type:"image"},{src:"assets/gallery/20.jpg",category:"train-exterior",type:"image"},{src:"assets/gallery/21.jpg",category:"kitchen-car",type:"image"},{src:"assets/gallery/22.jpg",category:"bathroom-bathtub",type:"image"},{src:"assets/gallery/three.jpg",category:"scenery",type:"image"},{src:"assets/videos/hero-banner.mp4",category:"scenery",type:"video"}];lightboxVideo;parentChildMap=new Map;constructor(){for(let t of this.categories)t.children&&this.parentChildMap.set(t.value,t.children.map(e=>e.value));B(t=>{let e=this.languageService.currentLanguage(),i=this.cmsService.getGalleryItems(e).subscribe({next:n=>{n.length>0&&this.allMedia.set(n.map(c=>({src:c.imageUrl??c.videoUrl??"assets/gallery/one.jpg",category:c.category,type:c.videoUrl?"video":"image"})))}});t(()=>i.unsubscribe())})}categoriesInUse=C(()=>{let t=this.allMedia().length>0?this.allMedia():this.fallbackImages;return new Set(t.map(e=>e.category))});visibleCategories=C(()=>{let t=this.categoriesInUse();return this.categories.filter(e=>e.value==="all"||t.has(e.value)?!0:e.children?e.children.some(i=>t.has(i.value)):!1)});visibleChildren(t){if(!t.children)return[];let e=this.categoriesInUse();return t.children.filter(i=>e.has(i.value))}filteredImages=C(()=>{let t=this.allMedia().length>0?this.allMedia():this.fallbackImages,e=this.selectedCategory();if(e==="all")return t;let i=this.parentChildMap.get(e);return i?t.filter(n=>n.category===e||i.includes(n.category)):t.filter(n=>n.category===e)});visibleImages=C(()=>this.filteredImages().slice(0,this.visibleCount()));hasMoreImages=C(()=>this.visibleCount()<this.filteredImages().length);loadMore(){this.visibleCount.update(t=>t+this.pageSize)}setGalleryView(t){this.galleryView.set(t)}activeFilterLabel=C(()=>{let t=this.selectedCategory();if(t==="all")return"All";for(let e of this.categories){if(e.value===t)return e.label;if(e.children){let i=e.children.find(n=>n.value===t);if(i)return i.label}}return"All"});selectedMedia=null;currentIndex=0;touchStartX=null;touchStartY=null;swipeThreshold=50;selectFilter(t){this.selectedCategory.set(t),this.activeDropdown.set(null),this.selectedMedia=null,this.currentIndex=0,this.visibleCount.set(this.pageSize)}toggleDropdown(t,e){if(e.stopPropagation(),!this.categories.find(n=>n.value===t)?.children){this.selectFilter(t);return}this.activeDropdown.set(this.activeDropdown()===t?null:t)}hasHover(){return typeof window<"u"&&window.matchMedia?.("(hover: hover)").matches}openDropdownOnHover(t){this.hasHover()&&t.children&&this.activeDropdown.set(t.value)}closeDropdownOnLeave(t){this.hasHover()&&t.children&&this.activeDropdown()===t.value&&this.activeDropdown.set(null)}onDocumentClick(){this.activeDropdown.set(null)}onKeydown(t){if(this.selectedMedia)switch(t.key){case"ArrowLeft":this.visibleImages().length>1&&(t.preventDefault(),this.prevImage());break;case"ArrowRight":this.visibleImages().length>1&&(t.preventDefault(),this.nextImage());break;case"Escape":t.preventDefault(),this.closeLightbox();break}}isParentActive(t){let e=this.selectedCategory();return t.value===e?!0:t.children?t.children.some(i=>i.value===e):!1}openLightbox(t){let e=this.visibleImages();this.currentIndex=e.findIndex(n=>n.src===t.src),this.selectedMedia=t;let i=document.getElementById("lightbox");i&&(i.style.display="flex")}closeLightbox(){this.lightboxVideo?.nativeElement.pause();let t=document.getElementById("lightbox");t&&(t.style.display="none"),this.selectedMedia=null}prevImage(){this.lightboxVideo?.nativeElement.pause();let t=this.visibleImages();this.currentIndex>0?this.currentIndex--:this.currentIndex=t.length-1,this.selectedMedia=t[this.currentIndex]}nextImage(){this.lightboxVideo?.nativeElement.pause();let t=this.visibleImages();this.currentIndex<t.length-1?this.currentIndex++:this.currentIndex=0,this.selectedMedia=t[this.currentIndex]}onCategoryChange(t){this.selectedCategory.set(t),this.selectedMedia=null,this.currentIndex=0,this.visibleCount.set(this.pageSize)}onLightboxTouchStart(t){let e=t.changedTouches[0];this.touchStartX=e.clientX,this.touchStartY=e.clientY}onLightboxTouchEnd(t){if(this.touchStartX===null||this.touchStartY===null)return;if(this.visibleImages().length<=1){this.touchStartX=this.touchStartY=null;return}let e=t.changedTouches[0],i=e.clientX-this.touchStartX,n=e.clientY-this.touchStartY;this.touchStartX=this.touchStartY=null,!(Math.abs(i)<this.swipeThreshold)&&(M
1ath.abs(n)>Math.abs(i)||(i<0?this.nextImage():this.prevImage()))}static \u0275fac=function(e){return new(e||r)};static \u0275cmp=V({type:r,selectors:[["app-gallery"]],viewQuery:function(e,i){if(e&1&&L(Q,5),e&2){let n;T(n=j())&&(i.lightboxVideo=n.first)}},hostBindings:function(e,i){e&1&&g("click",function(){return i.onDocumentClick()},S)("keydown",function(c){return i.onKeydown(c)},S)},decls:31,vars:36,consts:[["lightboxVideo",""],[1,"contact-page"],["backgroundImage","assets/images/galleryBack.jpg","minHeight","300px","textAlign","center",3,"title","overlayOpacity"],[1,"content-wrapper"],[1,"contact-section"],[1,"gallery-title"],[1,"gallery-subtitle"],[1,"filter-buttons"],[1,"filter-btn-wrapper"],[1,"gallery-results"],["role","group",1,"gallery-view-toggle"],["type","button",1,"gallery-view-toggle__btn",3,"click"],[1,"gallery-grid"],[1,"gallery-tile"],[1,"gallery-load-more"],["class","lightbox","id","lightbox",3,"touchstart","touchend",4,"ngIf"],[1,"filter-btn-wrapper",3,"mouseenter","mouseleave"],[1,"filter-btn",3,"click"],[1,"filter-btn__arrow"],[1,"filter-dropdown"],[1,"filter-dropdown",3,"click"],[1,"filter-dropdown__item",3,"click"],[1,"filter-dropdown__item",3,"filter-dropdown__item--active"],[1,"gallery-tile",3,"click"],[3,"src","alt"],["preload","metadata","muted","","playsinline","",3,"src","poster"],["aria-label","Play video",1,"play-overlay"],[1,"read-more-btn",3,"click"],["id","lightbox",1,"lightbox",3,"touchstart","touchend"],[1,"close",3,"click"],["aria-label","Previous image",1,"prev"],["controls","","preload","metadata","autoplay","","playsinline","",1,"lightbox-content",3,"src"],["alt","Expanded view",1,"lightbox-content",3,"src"],["aria-label","Next image",1,"next"],["aria-label","Previous image",1,"prev",3,"click"],["aria-label","Next image",1,"next",3,"click"]],template:function(e,i){e&1&&(a(0,"div",1),k(1,"app-hero",2),m(2,"translate"),a(3,"div",3)(4,"section",4)(5,"h2",5),d(6),m(7,"translate"),s(),a(8,"p",6),d(9),m(10,"translate"),s(),a(11,"div",7),O(12,ie,5,5,"div",8,W),s(),a(14,"p",9),d(15),m(16,"translate"),v(17,ne,4,4),s(),a(18,"div",10),m(19,"translate"),a(20,"button",11),g("click",function(){return i.setGalleryView("large")}),d(21),m(22,"translate"),s(),a(23,"button",11),g("click",function(){return i.setGalleryView("grid")}),d(24),m(25,"translate"),s()(),a(26,"div",12),O(27,ae,3,1,"div",13,J),s(),v(29,le,4,3,"div",14),D(30,pe,7,3,"div",15),s()()()),e&2&&(o(),f("title",b(2,19,"GALLERY.TITLE"))("overlayOpacity",.4),o(5),E(b(7,21,"GALLERY.HEADING")),o(3),h(" ",b(10,23,"GALLERY.SUBTITLE")," "),o(3),I(i.visibleCategories()),o(3),h(" ",z(16,25,"GALLERY.SHOWING_PHOTOS",F(34,q,i.filteredImages().length))," "),o(2),y(i.selectedCategory()!=="all"?17:-1),o(),P("aria-label",b(19,28,"GALLERY.VIEW_LABEL")),o(2),x("gallery-view-toggle__btn--active",i.galleryView()==="large"),P("aria-pressed",i.galleryView()==="large"),o(),h(" ",b(22,30,"GALLERY.VIEW_LARGE")," "),o(2),x("gallery-view-toggle__btn--active",i.galleryView()==="grid"),P("aria-pressed",i.galleryView()==="grid"),o(),h(" ",b(25,32,"GALLERY.VIEW_GRID")," "),o(2),x("gallery-grid--thumbnails",i.galleryView()==="grid"),o(),I(i.visibleImages()),o(2),y(i.hasMoreImages()?29:-1),o(),f("ngIf",i.selectedMedia))},dependencies:[H,A,N,$,Y],styles:['.contact-page[_ngcontent-%COMP%]{width:100%}.content-wrapper[_ngcontent-%COMP%]{padding:0 var(--spacing-sm);transition:background-color .3s ease}@media (min-width: 768px){.content-wrapper[_ngcontent-%COMP%]{padding:0 var(--spacing-lg)}}@media (min-width: 1400px){.content-wrapper[_ngcontent-%COMP%]{max-width:1600px;margin:0 auto}} .dark-mode .content-wrapper{background:var(--color-bg-primary)}.contact-section[_ngcontent-%COMP%]{padding:var(--spacing-xxl) 0;background:var(--color-white);transition:background-color .3s ease} .dark-mode .contact-section{background:var(--color-bg-primary)}.gallery-title[_ngcontent-%COMP%]{color:#1a1a1a;text-align:center;font-family:var(--font-family-primary);font-size:var(--font-size-xxl);font-style:normal;font-weight:700;line-height:1.3;transition:color .3s ease}@media (min-width: 768px){.gallery-title[_ngcontent-%COMP%]{font-size:2rem}} .dark-mode .gallery-title{color:var(--color-text-primary)}.gallery-subtitle[_ngcontent-%COMP%]{color:#0f0f0f;text-align:center;font-family:var(--font-family-primary);font-size:19px;font-style:normal;font-weight:300;line-height:72px;transition:color .3s ease} .dark-mode .gallery-subtitle{color:var(--color-text-secondary)}.filter-buttons[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:.5rem;max-width:1300px;margin:0 auto 1.5rem;padding:0 1.5rem;justify-content:center}.filter-btn-wrapper[_ngcontent-%COMP%]{position:relative}.filter-btn[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.35rem;white-space:nowrap;padding:8px 18px;font-family:var(--font-family-primary);font-size:13px;font-weight:500;letter-spacing:.3px;
1color:#1a1a1a;background:#fff;border:1px solid #d9d9d9;border-radius:var(--radius-base);cursor:pointer;transition:all .3s ease}@media (max-width: 480px){.filter-btn[_ngcontent-%COMP%]{padding:6px 12px;font-size:12px}}.filter-btn[_ngcontent-%COMP%]:hover{border-color:var(--color-gold-primary);color:var(--color-gold-primary)} .dark-mode .filter-btn{background:var(--color-bg-secondary);color:var(--color-text-primary);border-color:#fff3} .dark-mode .filter-btn:hover{border-color:var(--color-gold-primary);color:var(--color-gold-primary)}.filter-btn--active[_ngcontent-%COMP%]{background:var(--color-gold-primary);color:#fff;border-color:var(--color-gold-primary)}.filter-btn--active[_ngcontent-%COMP%]:hover{background:var(--color-gold-light);border-color:var(--color-gold-light);color:#fff} .dark-mode .filter-btn--active{background:var(--color-gold-primary);color:#fff;border-color:var(--color-gold-primary)} .dark-mode .filter-btn--active:hover{background:var(--color-gold-light);border-color:var(--color-gold-light);color:#fff}.filter-btn__arrow[_ngcontent-%COMP%]{font-size:10px;line-height:1}.filter-dropdown[_ngcontent-%COMP%]{position:absolute;top:calc(100% + 4px);left:0;min-width:180px;background:#fff;border:1px solid #d9d9d9;border-radius:var(--radius-base);box-shadow:0 4px 16px #0000001a;z-index:100;padding:4px 0}.filter-dropdown[_ngcontent-%COMP%]:before{content:"";position:absolute;top:-6px;left:0;right:0;height:6px} .dark-mode .filter-dropdown{background:var(--color-bg-secondary);border-color:#ffffff26;box-shadow:0 4px 16px #00000080}.filter-dropdown__item[_ngcontent-%COMP%]{display:block;width:100%;padding:8px 16px;font-family:var(--font-family-primary);font-size:13px;font-weight:400;color:#1a1a1a;background:none;border:none;text-align:left;cursor:pointer;transition:background-color .2s ease,color .2s ease}.filter-dropdown__item[_ngcontent-%COMP%]:hover{background:#c9a9621a;color:var(--color-gold-primary)} .dark-mode .filter-dropdown__item{color:var(--color-text-primary)} .dark-mode .filter-dropdown__item:hover{background:#c9a96226;color:var(--color-gold-primary)}.filter-dropdown__item--active[_ngcontent-%COMP%]{font-weight:600;color:var(--color-gold-primary);background:#c9a96214} .dark-mode .filter-dropdown__item--active{color:var(--color-gold-primary);background:#c9a9621f}.gallery-results[_ngcontent-%COMP%]{max-width:1300px;margin:0 auto 1.5rem;padding:0 1.5rem;font-family:var(--font-family-primary);font-size:14px;color:#666;transition:color .3s ease} .dark-mode .gallery-results{color:var(--color-text-secondary)}.gallery-view-toggle[_ngcontent-%COMP%]{display:flex;justify-content:center;gap:.5rem;margin:0 auto 1.5rem;padding:0 1.5rem}.gallery-view-toggle__btn[_ngcontent-%COMP%]{padding:8px 18px;font-family:var(--font-family-primary);font-size:13px;font-weight:500;letter-spacing:.3px;color:#1a1a1a;background:#fff;border:1px solid #d9d9d9;border-radius:var(--radius-base);cursor:pointer;transition:all .3s ease}@media (max-width: 480px){.gallery-view-toggle__btn[_ngcontent-%COMP%]{padding:6px 14px;font-size:12px}}.gallery-view-toggle__btn[_ngcontent-%COMP%]:hover{border-color:var(--color-gold-primary);color:var(--color-gold-primary)} .dark-mode .gallery-view-toggle__btn{background:var(--color-bg-secondary);color:var(--color-text-primary);border-color:#fff3} .dark-mode .gallery-view-toggle__btn:hover{border-color:var(--color-gold-primary);color:var(--color-gold-primary)}.gallery-view-toggle__btn--active[_ngcontent-%COMP%]{background:var(--color-gold-primary);color:#fff;border-color:var(--color-gold-primary)}.gallery-view-toggle__btn--active[_ngcontent-%COMP%]:hover{background:var(--color-gold-light);border-color:var(--color-gold-light);color:#fff} .dark-mode .gallery-view-toggle__btn--active{background:var(--color-gold-primary);color:#fff;border-color:var(--color-gold-primary)} .dark-mode .gallery-view-toggle__btn--active:hover{background:var(--color-gold-light);border-color:var(--color-gold-light);color:#fff}.gallery-grid[_ngcontent-%COMP%]{width:100%;max-width:1300px;margin:0 auto;column-count:4;column-gap:.6rem;padding:0 1.5rem}@media (max-width: 1200px){.gallery-grid[_ngcontent-%COMP%]{column-count:3}}@media (max-width: 900px){.gallery-grid[_ngcontent-%COMP%]{column-count:2}}@media (max-width: 600px){.gallery-grid[_ngcontent-%COMP%]{column-count:1}}.gallery-grid.gallery-grid--thumbnails[_ngcontent-%COMP%]{column-count:initial;display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem}@media (max-width: 768px){.gallery-grid.gallery-grid--thumbnails[_ngcontent-%COMP%]{grid-template-columns:repeat(3,1fr);gap:.4rem}}.gallery-grid.gallery-grid--thumbnails[_ngcontent-%COMP%] .gallery-tile[_ngcontent-%COMP%]{margin-bottom:0;aspect-ratio:1/1}.gallery-grid.gallery-grid--thumbnails[_ngcontent-%COMP%] .gallery-tile[_ngcontent-%COMP%] img[_ngcontent-%COMP%], .gallery-grid.gallery-grid--thumbnails[_ngcontent-%COMP%] .gallery-tile[_ngcontent-%COMP%] video[_ngcontent-%COMP%]{width:100%;height:100%;margin-bottom:0;object-fit:cover}.gallery-grid[_ngcontent-%COMP%] .gallery-tile[_ngcontent-%COMP%], .gallery-grid[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:100%;display:block;margin-bottom:.6rem;border-radius:6px;cursor:pointer;transition:transform .3s ease;break-inside:avoid;-webkit-column-break-inside:avoid;-moz-column-break-inside:avoid}.gallery-grid[_ngcontent-%COMP%] .gallery-tile[_ngcontent-%COMP%]{position:relative}.gallery-grid[_ngcontent-%COMP%] .gallery-tile[_ngcontent-%COMP%] img[_ngcontent-%COMP%], .gallery-grid[_ngcontent-%COMP%] .gallery-tile[_ngcontent-%COMP%] video[_ngcontent-%COMP%]{width:100%;display:block;border-radius:6px}.gallery-grid[_ngcontent-%COMP%] .play-overlay[_ngcontent-%COMP%]{position:absolute;inset:0;display:grid;place-items:center;font-size:3rem;color:#fff;text-shadow:0 0 12px rgba(0,0,0,.7);pointer-events:none;background:#0000002e;transition:background .2s ease;border-radius:6px}.gallery-grid[_ngcontent-%COMP%] .gallery-tile[_ngcontent-%COMP%]:hover .play-overlay[_ngcontent-%COMP%]{background:#00000052}.gallery-grid[_ngcontent-%COMP%] img[_ngcontent-%COMP%]:hover, .gallery-grid[_ngcontent-%COMP%] .gallery-tile[_ngcontent-%COMP%]:hover{transform:scale(1.02)}.lightbox[_ngcontent-%COMP%]{display:none;position:fixed;z-index:9999;top:0;left:0;width:100%;height:100%;background-color:#000;padding-top:60px;display:flex;justify-content:center;align-items:center;animation:_ngcontent-%COMP%_fadeIn .3s ease-in-out;overflow:hidden}.lightbox-content[_ngcontent-%COMP%]{max-width:90%;max-height:80vh;border-radius:6px;display:block;margin:auto}.close[_ngcontent-%COMP%]{position:absolute;top:25px;right:40px;color:#fff;font-size:40px;font-weight:700;cursor:pointer;transition:.3s}.close[_ngcontent-%COMP%]:hover{color:#bbb}.prev[_ngcontent-%COMP%], .next[_ngcontent-%COMP%]{cursor:pointer;position:absolute;top:50%;width:56px;height:56px;display:inline-flex;align-items:center;justify-content:center;font-size:28px;line-height:1;color:#fff;font-weight:700;background:#0000004d;border:none;border-radius:50%;padding:0;-webkit-user-select:none;user-select:none;transform:translateY(-50%);transition:background .3s,transform .3s}.prev[_ngcontent-%COMP%]:hover, .next[_ngcontent-%COMP%]:hover{background:#0009}.prev[_ngcontent-%COMP%]{left:20px}.next[_ngcontent-%COMP%]{right:20px}@media (max-width: 768px){.prev[_ngcontent-%COMP%], .next[_ngcontent-%COMP%]{top:auto;bottom:24px;transform:none;width:52px;height:52px;font-size:24px;background:#0000008c}.prev[_ngcontent-%COMP%]{left:50%;margin-left:-64px}.next[_ngcontent-%COMP%]{right:50%;margin-right:-64px}}@keyframes _ngcontent-%COMP%_fadeIn{0%{opacity:0}
1to{opacity:1}}.gallery-load-more[_ngcontent-%COMP%]{display:flex;justify-content:center;margin:2rem auto}.read-more-btn[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;background-color:var(--color-navy-dark);color:var(--color-white);border:none;height:44px;padding:0 24px;font-size:13px;font-weight:600;border-radius:var(--radius-base);cursor:pointer;transition:background-color .3s ease,transform .3s ease,box-shadow .3s ease}.read-more-btn[_ngcontent-%COMP%]:hover{background-color:var(--color-navy-medium);transform:translateY(-2px);box-shadow:0 4px 8px #0003} .dark-mode .read-more-btn{background-color:#ffffff1a;color:#fff} .dark-mode .read-more-btn:hover{background-color:#fff3}'],changeDetection:0})};export{X as GalleryComponent};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.