:root{--ink:#06121b;--night:#07131e;--navy:#0a2030;--paper:#f2f0ea;--white:#f8fbfc;--muted:#9db0bb;--cyan:#42e8df;--blue:#2fa7d6;--violet:#7459b9;--sun:#ffb65c;--line:rgba(255,255,255,.14);--serif:Georgia,"Times New Roman",serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img,video{display:block;max-width:100%}svg{width:1.1em;height:1.1em;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:2000;padding:.7rem 1rem;background:#fff;color:#000}.skip-link:focus{top:1rem}.overline{margin:0 0 1rem;color:var(--cyan);font-size:.72rem;font-weight:800;letter-spacing:.19em;text-transform:uppercase}.overline.dark{color:#087e88}.button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;gap:.7rem;padding:.75rem 1.1rem;border:1px solid transparent;border-radius:2px;font-size:.79rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;transition:transform .25s ease,background .25s ease,color .25s ease}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--cyan);color:var(--ink)}.button.quiet{border-color:rgba(255,255,255,.38);color:#fff;background:rgba(3,13,22,.24)}.text-link,.section-link{display:inline-flex;align-items:center;gap:.65rem;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.text-link:hover svg,.section-link:hover svg{transform:translateX(3px)}.text-link svg,.section-link svg{transition:transform .2s ease}

.site-header{position:fixed;inset:0 0 auto;z-index:100;display:flex;height:88px;align-items:center;justify-content:space-between;padding:0 clamp(1rem,4vw,4.75rem);border-bottom:1px solid transparent;color:#fff;transition:.3s ease}.site-header.scrolled{height:72px;background:rgba(5,17,27,.97);border-bottom-color:var(--line)}.brand img{width:128px;max-height:58px;object-fit:contain}.nav-links{display:flex;align-items:center;gap:clamp(1rem,2.4vw,2.3rem)}.nav-links>a{position:relative;font-size:.74rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.nav-links>a:not(.nav-cta):after{position:absolute;right:0;bottom:-8px;left:0;height:1px;background:var(--cyan);content:"";transform:scaleX(0);transform-origin:right;transition:transform .25s ease}.nav-links>a:hover:after,.nav-links>a:focus-visible:after{transform:scaleX(1);transform-origin:left}.nav-cta{display:flex;align-items:center;gap:.55rem;padding:.66rem .9rem;background:var(--cyan);color:var(--ink)}.menu-button{display:none;width:46px;height:46px;border:0;background:transparent;color:#fff}.menu-button span{display:block;width:24px;height:1px;margin:7px auto;background:currentColor}

.hero-slider{position:relative;height:max(680px,100svh);min-height:680px;overflow:hidden;background:var(--night);color:#fff}.hero-slide{position:absolute;inset:0;opacity:0;transform:scale(1.035);transition:opacity .9s ease,transform 7s ease}.hero-slide.active{opacity:1;transform:scale(1)}.hero-slide img,.hero-slide video{width:100%;height:100%;object-fit:cover;display:block;background:var(--night)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,12,20,.94) 0%,rgba(3,12,20,.66) 42%,rgba(3,12,20,.16) 77%),linear-gradient(0deg,rgba(4,15,24,.72),transparent 45%)}.hero-content{position:absolute;z-index:3;top:50%;left:clamp(1.2rem,8vw,8rem);width:min(760px,78vw);transform:translateY(-45%)}.hero-content h1{max-width:760px;margin:0;font-family:var(--serif);font-size:clamp(4rem,8.2vw,8rem);font-weight:400;line-height:.83;letter-spacing:-.06em}.hero-content h1 em{display:block;color:var(--cyan);font-weight:400}.hero-content>p:not(.overline){max-width:600px;margin:1.6rem 0 1.8rem;color:#d7e1e6;font-size:clamp(1rem,1.5vw,1.22rem)}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem}.hero-controls{position:absolute;z-index:4;right:clamp(1rem,4vw,4rem);bottom:2.4rem;display:flex;align-items:center;gap:1rem}.hero-controls>button{width:42px;height:42px;border:1px solid var(--line);background:rgba(5,18,29,.56);color:#fff}.hero-controls>div{display:flex;gap:.42rem}.hero-controls>div button{display:grid;width:26px;height:26px;padding:0;border:0;background:transparent;place-items:center}.hero-controls>div span{width:18px;height:2px;background:rgba(255,255,255,.38)}.hero-controls>div button.active span{background:var(--cyan)}.hero-index{position:absolute;z-index:4;right:4.5rem;top:46%;display:flex;align-items:center;gap:.75rem;color:#dce8ed;font-size:.7rem;letter-spacing:.12em;transform:rotate(90deg)}.hero-index i{display:block;width:70px;height:1px;background:rgba(255,255,255,.5)}

.signal-strip{display:grid;grid-template-columns:repeat(4,1fr);background:var(--cyan);color:var(--ink)}.signal-strip>*{padding:1.05rem 1.25rem;border-right:1px solid rgba(6,18,27,.22);font-size:.7rem;font-weight:800;letter-spacing:.09em;text-align:center;text-transform:uppercase}.events-section,.experiences-section,.gallery-preview-section{padding:clamp(5rem,9vw,9rem) clamp(1.2rem,6vw,6.5rem)}.events-section{background:var(--paper)}.editorial-heading{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.6fr);gap:4rem;align-items:end;margin-bottom:4rem}.editorial-heading h2,.gallery-heading h2{margin:0;font-family:var(--serif);font-size:clamp(3.2rem,6vw,6.6rem);font-weight:400;line-height:.92;letter-spacing:-.055em}.editorial-heading h2 em{color:#087e88;font-weight:400}.editorial-heading>p{max-width:520px;margin:0;color:#536570}.event-editorial-grid{display:grid;grid-template-columns:1.45fr .85fr;gap:1px;background:#bdc6c6}.event-editorial-grid article{display:grid;grid-template-columns:44% 1fr;min-height:290px;background:#fff}.event-editorial-grid .lead-event{grid-row:span 3;grid-template-columns:1fr;min-height:720px}.event-image{position:relative;min-height:240px;overflow:hidden;background:#0a1c28}.event-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.event-image:hover img{transform:scale(1.04)}.event-status{position:absolute;top:1rem;left:1rem;padding:.35rem .55rem;background:#fff;color:#07131e;font-size:.62rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.event-status.limited{background:var(--sun)}.event-status.sold_out,.event-status.cancelled{background:#b94a4a;color:#fff}.event-editorial-grid article>div{padding:1.6rem}.event-editorial-grid article>div>p{margin:0;color:#087e88;font-size:.65rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.event-editorial-grid h3{margin:.55rem 0;font-family:var(--serif);font-size:clamp(1.7rem,2.7vw,3rem);font-weight:400;line-height:1}.event-editorial-grid article>div>span{color:#5c6c74}.event-meta{display:flex;flex-wrap:wrap;gap:.45rem;margin:1.1rem 0}.event-meta b{padding:.25rem .45rem;border:1px solid #c7d0d1;font-size:.65rem;font-weight:800;text-transform:uppercase}.events-empty{max-width:780px;padding:clamp(2rem,5vw,4rem);border-left:5px solid var(--cyan);background:#fff}.events-empty>span{color:#087e88;font-size:.7rem;font-weight:800;text-transform:uppercase}.events-empty h3{margin:.5rem 0;font-family:var(--serif);font-size:clamp(2.4rem,4vw,4.2rem);font-weight:400}.events-empty p{max-width:620px;color:#56666f}.events-section>.section-link{margin-top:2.2rem}

.experiences-section{background:var(--night);color:#fff}.experiences-section .editorial-heading>p{color:#a9bac3}.experience-editorial{display:grid;grid-template-columns:1.25fr 1fr}.experience-editorial>a{position:relative;display:grid;grid-template-columns:70px 1fr auto;gap:1.2rem;align-items:center;min-height:170px;padding:1.7rem;border-top:1px solid var(--line);overflow:hidden}.experience-editorial>a:hover{background:#0c2638}.experience-editorial .featured-experience{grid-row:span 4;grid-template-columns:1fr;align-content:end;min-height:720px;padding:2.3rem}.experience-media{position:absolute;inset:0;opacity:.28}.experience-media:after{position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,16,25,.98),rgba(5,16,25,.1));content:""}.experience-media img{width:100%;height:100%;object-fit:cover}.experience-editorial>a>span,.experience-editorial>a>div:not(.experience-media),.experience-editorial>a>b{position:relative;z-index:2}.experience-editorial>a>span{color:var(--cyan);font-size:.7rem;font-weight:800}.experience-editorial small{color:var(--cyan);font-size:.65rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.experience-editorial h3{margin:.4rem 0;font-family:var(--serif);font-size:clamp(1.65rem,3vw,3.2rem);font-weight:400;line-height:1}.experience-editorial p{max-width:580px;margin:0;color:#aebdc5}.experience-editorial>a>b{display:flex;align-items:center;gap:.4rem;font-size:.68rem;text-transform:uppercase}.experience-editorial .featured-experience h3{font-size:clamp(3rem,5vw,5.5rem)}.experience-editorial .featured-experience p{font-size:1.05rem}

.party-story{display:grid;grid-template-columns:1.02fr .98fr;min-height:780px;background:#0d293a;color:#fff}.party-film{position:relative;min-height:640px;overflow:hidden}.party-film video{width:100%;height:100%;object-fit:cover}.party-film:after{position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,18,28,.5),transparent 55%);content:""}.party-film span{position:absolute;z-index:2;right:1.5rem;bottom:1.5rem;padding:.45rem .65rem;background:#06121b;font-size:.63rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.party-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(3rem,7vw,7rem)}.party-copy h2{margin:0;font-family:var(--serif);font-size:clamp(3.5rem,6vw,6.7rem);font-weight:400;line-height:.88;letter-spacing:-.055em}.party-copy h2 em{color:var(--cyan);font-weight:400}.party-copy>p:not(.overline){max-width:560px;color:#b5c5cc}.party-copy ol{margin:1.7rem 0;padding:0;border-top:1px solid var(--line);list-style:none}.party-copy li{display:flex;gap:1.1rem;padding:.85rem 0;border-bottom:1px solid var(--line)}.party-copy li span{color:var(--cyan);font-size:.7rem;font-weight:800}.party-copy>div{display:flex;flex-wrap:wrap;gap:.75rem}

.gallery-preview-section{display:grid;grid-template-columns:.55fr 1.45fr;gap:4rem;background:#e5e4de}.gallery-heading{position:sticky;top:120px;align-self:start}.gallery-heading .text-link{margin-top:2rem}.gallery-editorial-preview{display:grid;grid-template-columns:repeat(2,1fr);grid-auto-rows:220px;gap:1rem}.gallery-shot{position:relative;overflow:hidden;background:#07131e}.gallery-shot:first-child{grid-row:span 2}.gallery-shot:nth-child(4){grid-column:span 2}.gallery-shot img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.gallery-shot:hover img{transform:scale(1.04)}.gallery-shot span{position:absolute;right:.8rem;bottom:.8rem;left:.8rem;padding:.5rem;background:rgba(5,18,27,.85);color:#fff;font-size:.66rem;font-weight:700;text-transform:uppercase}

.booking-section{display:grid;grid-template-columns:.8fr 1.2fr;background:#07131e;color:#fff}.booking-intro{padding:clamp(4rem,7vw,7rem)}.booking-intro h2{margin:0;font-family:var(--serif);font-size:clamp(3.5rem,6vw,6.8rem);font-weight:400;line-height:.88;letter-spacing:-.055em}.booking-intro h2 em{color:var(--cyan);font-weight:400}.booking-intro>p:not(.overline){color:#a9bac3}.booking-intro>div{display:flex;flex-direction:column;margin-top:2rem}.booking-form{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;padding:clamp(3rem,6vw,6rem);background:#0a2030}.booking-tabs{display:grid;grid-column:1/-1;grid-template-columns:1fr 1fr;padding:.25rem;background:#06121b}.booking-tabs button{padding:.85rem;border:0;background:transparent;color:#9db0bb;font-size:.7rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.booking-tabs button.active{background:var(--cyan);color:#06121b}.field{display:flex;flex-direction:column;gap:.4rem}.field span,.admin-form label,.admin-upload label{font-size:.67rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.field input,.field select,.field textarea,.admin-form input,.admin-form select,.admin-form textarea,.admin-upload input,.admin-upload select,.admin-filters input,.admin-filters select,.enquiry-detail select,.enquiry-detail textarea{width:100%;min-height:48px;padding:.72rem .8rem;border:1px solid rgba(255,255,255,.2);border-radius:0;background:#07131e;color:#fff}.field textarea{resize:vertical}.field small{color:#9db0bb}.full{grid-column:1/-1}.consent{display:flex;gap:.7rem;align-items:flex-start;color:#a7b7bf;font-size:.78rem}.consent input{margin-top:.28rem}.honeypot{position:absolute!important;left:-9999px!important}.form-note{color:#91a6b1}.form-alert{display:flex;flex-direction:column;gap:.25rem;padding:1rem}.form-alert.error{border-left:3px solid #ef7777;background:#331a22}.form-alert.success{border-left:3px solid var(--cyan);background:#0b3134}.form-alert a{color:var(--cyan);font-weight:800}

.site-footer{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:3rem;padding:4.5rem clamp(1.2rem,6vw,6rem) 2rem;background:#040d14;color:#9eb0ba}.site-footer>div{display:flex;flex-direction:column;align-items:flex-start}.site-footer small{margin-bottom:.8rem;color:var(--cyan);font-size:.65rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.site-footer a,.site-footer span{font-size:.85rem}.site-footer a:hover{color:#fff}.footer-mark img{width:150px}.footer-mark p{max-width:340px}.footer-base{grid-column:1/-1;flex-direction:row!important;justify-content:space-between;padding-top:1.5rem;border-top:1px solid var(--line)}.floating-whatsapp{position:fixed;z-index:90;right:1rem;bottom:1rem;display:grid;width:48px;height:48px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:#25d366;color:#07131e;font-size:.7rem;font-weight:900;place-items:center;box-shadow:0 12px 35px rgba(0,0,0,.25)}

/* Public inner pages */
.subpage,.event-page{min-height:100vh;background:var(--paper)}.subpage .site-header,.event-page .site-header{position:sticky;background:#07131e}.sub-header{display:flex;min-height:82px;align-items:center;justify-content:space-between;padding:1rem clamp(1rem,5vw,5rem);background:#07131e;color:#fff}.sub-header img{width:130px}.sub-header nav{display:flex;align-items:center;gap:2rem;font-size:.75rem;font-weight:800;text-transform:uppercase}.sub-cta{padding:.65rem;background:var(--cyan);color:#06121b}.breadcrumb{display:flex;gap:.65rem;margin-bottom:1.2rem;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.detail-hero,.event-detail-hero{position:relative;min-height:680px;background:#07131e;color:#fff}.detail-hero>img,.event-detail-hero>img{position:absolute;width:100%;height:100%;object-fit:cover}.detail-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,17,27,.94),rgba(5,17,27,.25))}.detail-copy{position:relative;z-index:2;display:flex;max-width:800px;min-height:680px;flex-direction:column;justify-content:center;padding:clamp(5rem,8vw,8rem)}.detail-copy h1,.subpage-intro h1,.event-detail-copy h1{margin:0;font-family:var(--serif);font-size:clamp(3.5rem,7vw,7.8rem);font-weight:400;line-height:.88;letter-spacing:-.055em}.detail-copy>p:not(.overline){max-width:600px;color:#d0dce1}.detail-sections{padding:4rem clamp(1.2rem,7vw,8rem)}.detail-sections article{display:grid;grid-template-columns:80px 1fr;gap:1rem;max-width:980px;padding:2.2rem 0;border-top:1px solid #b8c2c3}.detail-sections article>span{color:#087e88;font-weight:800}.detail-sections h2,.prose-page h2,.faq-section h2{margin:0;font-family:var(--serif);font-size:clamp(2rem,4vw,4rem);font-weight:400}.detail-sections p,.prose-page p{max-width:760px;color:#52636c}.detail-cta{padding:5rem clamp(1.2rem,8vw,8rem);background:#0a2030;color:#fff}.detail-cta h2{margin:0 0 1.5rem;font-family:var(--serif);font-size:clamp(2.8rem,5vw,5.5rem);font-weight:400}.subpage-intro{padding:6rem clamp(1.2rem,8vw,8rem) 4rem}.subpage-intro>p:last-child{max-width:680px;color:#536570}.experience-links{padding:0 clamp(1.2rem,8vw,8rem) 6rem}.experience-links>a{display:grid;grid-template-columns:70px 1fr auto;gap:1.5rem;padding:2rem 0;border-top:1px solid #b8c2c3}.experience-links h2{margin:0;font-family:var(--serif);font-size:clamp(2rem,4vw,4rem);font-weight:400}.experience-links p{margin:0;color:#566770}.experience-links b{align-self:center}.prose-page,.faq-section,.contact-grid{padding:1rem clamp(1.2rem,8vw,8rem) 6rem}.faq-section details{max-width:900px;border-top:1px solid #aebabb}.faq-section summary{padding:1.25rem 0;font-weight:800;cursor:pointer}.faq-section details p{padding-bottom:1rem;color:#53646d}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px}.contact-grid>a{display:flex;flex-direction:column;padding:2rem;background:#fff}.contact-grid small{color:#087e88;font-weight:800;text-transform:uppercase}.sub-footer{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:3rem;padding:3rem clamp(1.2rem,6vw,6rem);background:#040d14;color:#aab9c0}.sub-footer>div{display:flex;flex-direction:column}.sub-footer img{width:140px}

/* Gallery */
.gallery-filter{display:flex;flex-wrap:wrap;gap:.5rem;padding:0 clamp(1.2rem,6vw,6rem) 2rem}.gallery-filter button{padding:.55rem .8rem;border:1px solid #a8b6ba;background:transparent;font-size:.68rem;font-weight:800;text-transform:uppercase}.gallery-filter button.active{background:#07131e;color:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:210px;gap:.75rem;padding:0 clamp(1rem,5vw,5rem) 6rem}.gallery-tile{position:relative;grid-column:span 4;overflow:hidden;padding:0;border:0;background:#07131e}.gallery-tile:nth-child(5n+1){grid-column:span 7;grid-row:span 2}.gallery-tile:nth-child(5n+2){grid-column:span 5;grid-row:span 2}.gallery-tile img,.gallery-tile video{width:100%;height:100%;object-fit:cover}.gallery-tile>span{position:absolute;right:.75rem;bottom:.75rem;padding:.4rem .55rem;background:#07131e;color:#fff;font-size:.65rem;text-transform:uppercase}.lightbox{position:fixed;z-index:1000;inset:0;display:grid;background:rgba(2,8,13,.96);color:#fff;place-items:center}.lightbox figure{display:flex;max-width:min(86vw,1200px);max-height:88vh;flex-direction:column;align-items:center}.lightbox figure img{max-height:82vh}.lightbox button{position:absolute;width:48px;height:48px;border:1px solid var(--line);background:#07131e;color:#fff}.lightbox-close{top:1rem;right:1rem}.lightbox-prev{left:1rem}.lightbox-next{right:1rem}

/* Event catalog/detail */
.events-catalog{padding:6rem clamp(1.2rem,6vw,6rem)}.event-catalog-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.event-catalog-grid article{background:#fff}.event-catalog-grid img{width:100%;height:340px;object-fit:cover}.event-catalog-grid article>div{padding:1.5rem}.event-detail-copy{position:relative;z-index:2;display:flex;min-height:680px;max-width:900px;flex-direction:column;justify-content:center;padding:clamp(5rem,8vw,8rem)}.event-detail-content{display:grid;grid-template-columns:1.2fr .8fr;gap:5rem;padding:5rem clamp(1.2rem,8vw,8rem)}.event-detail-content h2{font-family:var(--serif);font-size:clamp(2.2rem,4vw,4rem);font-weight:400}.event-detail-content aside{align-self:start;padding:1.5rem;border-top:4px solid var(--cyan);background:#fff}.event-detail-content dl>div{padding:.7rem 0;border-bottom:1px solid #d1d6d5}.event-detail-content dt{font-size:.65rem;font-weight:800;text-transform:uppercase}.event-detail-content dd{margin:0}.line-list{white-space:pre-line}

/* Admin */
.admin-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh;background:#eef1ef;color:#10212a}.admin-sidebar{position:sticky;top:0;display:flex;height:100vh;flex-direction:column;padding:2rem 1.2rem;background:#07131e;color:#a7b7bf}.admin-brand img{width:135px}.admin-sidebar nav{display:flex;flex:1;flex-direction:column;gap:.3rem;margin-top:3rem}.admin-sidebar nav a{padding:.65rem;border-left:2px solid transparent;font-size:.72rem;font-weight:800;text-transform:uppercase}.admin-sidebar nav a:hover{border-color:var(--cyan);color:#fff}.admin-sidebar>div{display:flex;flex-direction:column;border-top:1px solid var(--line);padding-top:1rem;font-size:.78rem}.admin-main{min-width:0;padding:2.5rem}.admin-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.admin-top p,.admin-panel-head p,.security-panel p{margin:0;color:#087e88;font-size:.68rem;font-weight:800;text-transform:uppercase}.admin-top h1{margin:0;font-family:var(--serif);font-size:2.8rem;font-weight:400}.admin-notice{position:sticky;z-index:50;top:1rem;padding:.8rem 1rem;background:#07131e;color:#fff}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-bottom:1.4rem;background:#cbd2d1}.admin-stats article{padding:1.2rem;background:#fff}.admin-stats span{display:block;font-size:.68rem;font-weight:800;text-transform:uppercase}.admin-stats strong{font-family:var(--serif);font-size:2.5rem;font-weight:400}.admin-panel{margin-bottom:1.4rem;padding:1.5rem;background:#fff}.admin-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.2rem}.admin-panel-head h2,.security-panel h2{margin:0;font-family:var(--serif);font-size:2.2rem;font-weight:400}.admin-button{min-height:42px;padding:.65rem .85rem;border:0;background:#0a2030;color:#fff;font-size:.68rem;font-weight:800;text-transform:uppercase}.admin-button.secondary{border:1px solid #9aabad;background:transparent;color:#07131e}.admin-button.danger{background:#942f3e}.admin-filters{display:grid;grid-template-columns:1fr 210px;gap:.75rem;margin-bottom:1rem}.admin-filters input,.admin-filters select,.admin-form input,.admin-form select,.admin-form textarea,.admin-upload input,.admin-upload select,.enquiry-detail select,.enquiry-detail textarea{border-color:#b7c3c4;background:#f7f8f6;color:#07131e}.enquiry-workspace{display:grid;grid-template-columns:.85fr 1.15fr;border:1px solid #d1d7d6}.enquiry-list{max-height:650px;overflow:auto}.enquiry-list button{display:flex;width:100%;justify-content:space-between;padding:1rem;border:0;border-bottom:1px solid #d9dedd;background:#fff;text-align:left}.enquiry-list button.active{background:#e3f7f4}.enquiry-list span{display:flex;flex-direction:column}.enquiry-list small{color:#697a82}.status{padding:.25rem .4rem;background:#dfe5e5;font-size:.6rem;font-style:normal;text-transform:uppercase}.enquiry-detail{padding:1.4rem;background:#f7f8f6}.detail-title{display:flex;justify-content:space-between}.enquiry-detail dl{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.enquiry-detail dt{font-size:.62rem;font-weight:800;text-transform:uppercase}.enquiry-detail dd{margin:0}.enquiry-detail .wide{grid-column:1/-1}.enquiry-detail label{display:block;margin-top:.8rem;font-size:.68rem;font-weight:800;text-transform:uppercase}.admin-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}.admin-form,.admin-upload,.event-admin-form{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.admin-form label,.admin-upload label,.event-admin-form label{display:flex;flex-direction:column;gap:.35rem}.admin-form label:has(textarea),.admin-upload label:has(textarea),.event-admin-form .wide{grid-column:1/-1}.media-list,.admin-event-list{display:grid;gap:.6rem;margin-top:1.2rem}.media-list article,.admin-event-list article{display:grid;grid-template-columns:90px 1fr auto;gap:1rem;align-items:center;padding:.75rem;border:1px solid #d2d8d7}.media-list img{width:90px;height:70px;object-fit:cover}.media-list article>div{display:flex;flex-direction:column}.media-list button{border:0;background:transparent;color:#942f3e}.admin-empty{padding:1rem;color:#65767e}.security-panel{display:grid;grid-template-columns:.7fr 1.3fr}.access-denied{display:grid;min-height:100vh;background:#07131e;color:#fff;place-content:center;text-align:center}.access-denied img{width:160px;margin:auto}

@media(max-width:980px){.nav-links{position:fixed;inset:0;display:none;flex-direction:column;justify-content:center;background:#07131e}.nav-links.open{display:flex}.nav-links>a{font-family:var(--serif);font-size:2rem;font-weight:400;text-transform:none}.nav-cta{font-family:var(--sans)!important;font-size:.8rem!important;text-transform:uppercase!important}.menu-button{position:relative;z-index:101;display:block}.hero-index{display:none}.signal-strip{grid-template-columns:repeat(2,1fr)}.editorial-heading{grid-template-columns:1fr;gap:1.5rem}.event-editorial-grid{grid-template-columns:1fr}.event-editorial-grid .lead-event{min-height:auto}.event-editorial-grid article,.event-editorial-grid .lead-event{grid-row:auto;grid-template-columns:42% 1fr}.experience-editorial{grid-template-columns:1fr}.experience-editorial .featured-experience{grid-row:auto;min-height:600px}.party-story,.booking-section,.gallery-preview-section{grid-template-columns:1fr}.party-film{min-height:720px}.gallery-heading{position:static}.site-footer{grid-template-columns:repeat(2,1fr)}.footer-mark,.footer-base{grid-column:1/-1}.event-detail-content{grid-template-columns:1fr}.admin-shell{grid-template-columns:1fr}.admin-sidebar{position:static;height:auto}.admin-sidebar nav{flex-direction:row;flex-wrap:wrap;margin:1.5rem 0}.enquiry-workspace{grid-template-columns:1fr}.admin-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.site-header{height:70px;padding:0 1rem}.brand img{width:108px}.hero-slider{height:760px;min-height:760px}.hero-content{top:46%;left:1.15rem;width:calc(100% - 2.3rem);transform:translateY(-42%)}.hero-content h1{font-size:clamp(3.4rem,17vw,5.3rem)}.hero-content>p:not(.overline){font-size:.95rem}.hero-actions{align-items:stretch;flex-direction:column}.hero-controls{right:1rem;bottom:1rem;left:1rem;justify-content:space-between}.signal-strip{grid-template-columns:1fr}.events-section,.experiences-section,.gallery-preview-section{padding:4.5rem 1rem}.event-editorial-grid article,.event-editorial-grid .lead-event{grid-template-columns:1fr}.event-editorial-grid .event-image{min-height:280px}.experience-editorial>a{grid-template-columns:42px 1fr;padding:1.2rem}.experience-editorial>a>b{display:none}.experience-editorial .featured-experience{min-height:520px;padding:1.4rem}.party-story{min-height:0}.party-film{min-height:560px}.party-copy,.booking-intro,.booking-form{padding:3.5rem 1rem}.gallery-editorial-preview{grid-template-columns:1fr;grid-auto-rows:300px}.gallery-shot:first-child,.gallery-shot:nth-child(4){grid-column:auto;grid-row:auto}.booking-form{grid-template-columns:1fr}.full{grid-column:auto}.site-footer{grid-template-columns:1fr;gap:2rem;padding:3.5rem 1rem}.footer-mark,.footer-base{grid-column:auto}.footer-base{gap:.5rem;flex-direction:column!important}.sub-header nav{display:none}.detail-copy,.event-detail-copy{padding:5rem 1rem}.detail-sections article{grid-template-columns:45px 1fr}.contact-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:340px;padding:0 1rem 4rem}.gallery-tile,.gallery-tile:nth-child(5n+1),.gallery-tile:nth-child(5n+2){grid-column:auto;grid-row:auto}.event-catalog-grid{grid-template-columns:1fr}.event-detail-content{padding:4rem 1rem}.admin-main{padding:1rem}.admin-stats{grid-template-columns:1fr 1fr}.admin-filters,.admin-form,.admin-upload,.event-admin-form{grid-template-columns:1fr}.enquiry-detail dl{grid-template-columns:1fr}.security-panel{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}.hero-slide{transform:none!important}.party-film video{display:none}.party-film{background:url('/gallery-yacht-04.webp') center/cover}}

/* WhatsApp actions and the Contact location section */
.whatsapp-link{display:inline-flex!important;align-items:center;gap:.5rem}.whatsapp-icon{width:1.18em;height:1.18em;flex:0 0 auto;fill:currentColor;stroke:none}.signal-strip .whatsapp-link{justify-content:center}.form-alert .whatsapp-link{align-self:flex-start}.contact-whatsapp{flex-direction:row!important;align-items:center;gap:.65rem}.contact-whatsapp>span{display:flex;flex-direction:column}.contact-whatsapp .whatsapp-icon{width:1.45rem;height:1.45rem;color:#25d366}.floating-whatsapp{display:grid!important;place-items:center}.floating-whatsapp .whatsapp-icon{width:1.6rem;height:1.6rem;color:#07131e}
.contact-map{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);gap:clamp(2rem,6vw,6rem);align-items:stretch;padding:clamp(4rem,7vw,7rem) clamp(1.2rem,8vw,8rem);border-top:1px solid #c6d0d1;background:var(--paper);color:var(--ink)}.contact-map-copy{align-self:center;max-width:430px}.contact-map-copy h2{margin:0;font-family:var(--serif);font-size:clamp(2.8rem,5vw,5.4rem);font-weight:400;line-height:.92;letter-spacing:-.05em}.contact-map-copy>p:not(.overline):not(.map-location){margin:1.35rem 0;color:#536570}.map-location{margin:1.4rem 0;color:#087e88;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.contact-map-frame{min-width:0;min-height:420px;overflow:hidden;border:1px solid #b8c7c9;background:#07131e}.contact-map-frame iframe{display:block;width:100%;height:100%;min-height:420px;border:0}
@media(max-width:980px){.contact-map{grid-template-columns:1fr}.contact-map-copy{max-width:620px}.contact-map-frame,.contact-map-frame iframe{min-height:360px}}
@media(max-width:640px){.contact-map{gap:2rem;padding:4.5rem 1rem}.contact-map-copy h2{font-size:clamp(2.8rem,13vw,4.5rem)}.contact-map-frame,.contact-map-frame iframe{min-height:300px}.floating-whatsapp{right:1rem;bottom:max(1rem,env(safe-area-inset-bottom));width:52px;height:52px}}

/* Static Verpex deployment helpers */
body{min-width:0}.static-note{font-size:.78rem;color:#9db0bb}.booking-form .button{border:0}.booking-form button[disabled]{opacity:.55;cursor:not-allowed}.form-alert{display:none}.form-alert.show{display:flex}.gallery-tile{cursor:pointer}.gallery-filter button{cursor:pointer}.site-header.static-solid{position:sticky;background:#07131e;border-bottom-color:var(--line)}
@media(max-width:980px){.site-header.static-solid{height:72px}}


/* Dynamic CMS content */
.cms-events-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(8,31,43,.15);margin-top:34px;border-top:1px solid rgba(8,31,43,.16);border-bottom:1px solid rgba(8,31,43,.16)}
.cms-event-card{background:#f5f0e7;display:grid;min-height:390px;text-decoration:none;color:#071822;overflow:hidden;position:relative}.cms-event-card img{width:100%;height:190px;object-fit:cover}.cms-event-body{padding:24px;display:flex;flex-direction:column;gap:10px}.cms-event-date{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:#087c8c}.cms-event-card h3{font-size:26px;margin:0;line-height:1.05}.cms-event-card p{margin:0;color:#48616a;line-height:1.55}.cms-event-meta{font-size:12px;color:#677b82;margin-top:auto}.cms-event-cta{font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;margin-top:10px}.cms-events-grid.catalog{margin-top:20px}.cms-events-grid.catalog .cms-event-card{min-height:360px}@media(max-width:850px){.cms-events-grid{grid-template-columns:1fr}.cms-event-card{min-height:auto}.cms-event-card img{height:230px}}


.gallery-play{position:absolute;left:50%;top:50%;z-index:3;display:grid;width:58px;height:58px;transform:translate(-50%,-50%);place-items:center;border-radius:50%;background:rgba(5,18,27,.82);color:#fff;font-style:normal;font-size:1.1rem;box-shadow:0 12px 30px rgba(0,0,0,.28);pointer-events:none}.gallery-tile[data-media-type="video"]>span{padding-left:.65rem}.lightbox figure video{max-width:min(86vw,1200px);max-height:82vh;background:#000}.lightbox figure figcaption{margin-top:.65rem;color:#d9e6eb;font-size:.75rem;letter-spacing:.04em}
.vip-media-section{padding:clamp(4.5rem,8vw,8rem) clamp(1.2rem,6vw,6rem);background:#e7e5df}.vip-media-heading{display:grid;grid-template-columns:1fr minmax(260px,.58fr);gap:3rem;align-items:end;margin-bottom:2.4rem}.vip-media-heading h2{margin:0;font-family:var(--serif);font-size:clamp(3rem,5.8vw,6rem);font-weight:400;line-height:.92;letter-spacing:-.05em}.vip-media-heading p{margin:0;color:#52636d}.vip-media-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:230px;gap:.8rem}.vip-media-grid figure{position:relative;margin:0;overflow:hidden;background:#07131e}.vip-media-grid figure:nth-child(1){grid-column:span 7;grid-row:span 2}.vip-media-grid figure:nth-child(2){grid-column:span 5;grid-row:span 2}.vip-media-grid figure:nth-child(3){grid-column:span 5}.vip-media-grid figure:nth-child(4){grid-column:span 7;grid-row:span 2}.vip-media-grid img,.vip-media-grid video{width:100%;height:100%;object-fit:cover}.vip-media-grid figcaption{position:absolute;right:.7rem;bottom:.7rem;left:.7rem;padding:.5rem .6rem;background:rgba(5,18,27,.84);color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.vip-media-grid video{background:#02080d}
@media(max-width:850px){.vip-media-heading{grid-template-columns:1fr;gap:1rem}.vip-media-grid{grid-template-columns:1fr;grid-auto-rows:auto}.vip-media-grid figure,.vip-media-grid figure:nth-child(n){grid-column:auto;grid-row:auto;min-height:280px}.vip-media-grid figure:has(video){min-height:520px}}


/* DJ Yacht Party — Past Events */
.past-events-section{padding:clamp(4.5rem,8vw,8rem) clamp(1.1rem,8vw,8rem);background:#eef2f0;color:#07131e}
.past-events-heading{display:grid;grid-template-columns:1.15fr .85fr;gap:4rem;align-items:end;margin-bottom:2.4rem}
.past-events-heading h2{margin:.35rem 0 0;font-family:var(--serif);font-size:clamp(3rem,6vw,6.4rem);font-weight:400;line-height:.88;letter-spacing:-.045em}
.past-events-heading h2 em{color:#0b9fa7;font-weight:400}
.past-events-heading>p{max-width:520px;margin:0;color:#4c626d;line-height:1.75}
.past-events-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;background:transparent;border:0;max-width:1320px;margin:0 auto}
.past-event-card{min-width:0;background:#07131e;color:#fff;border:1px solid rgba(7,19,30,.12);overflow:hidden}
.past-event-media{position:relative;aspect-ratio:9/14;overflow:hidden;background:#02080d}
.past-event-media video{display:block;width:100%;height:100%;object-fit:cover;background:#02080d}
.past-event-media>span{position:absolute;top:1rem;left:1rem;z-index:2;padding:.42rem .58rem;background:rgba(7,19,30,.78);backdrop-filter:blur(10px);font-size:.6rem;font-weight:850;letter-spacing:.14em}
.past-event-meta{padding:1rem 1rem 1.25rem;border-top:1px solid rgba(255,255,255,.12)}
.past-event-meta small{display:block;margin-bottom:.3rem;color:#40dedc;font-size:.6rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.past-event-meta h3{margin:0;font-size:.82rem;font-weight:700}
.past-events-foot{display:flex;gap:.8rem;align-items:center;margin-top:2rem}
.button.quiet.dark{border:1px solid #9aa9aa;color:#07131e}
@media(max-width:1100px){.past-events-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.past-events-heading{grid-template-columns:1fr;gap:1rem}.past-events-grid{grid-template-columns:1fr}.past-events-foot{align-items:stretch;flex-direction:column}.past-events-foot .button{justify-content:center}}
@media(max-width:480px){.past-events-grid{grid-template-columns:1fr}.past-event-media{aspect-ratio:9/13}}

/* Upcoming party tickets, discounts and live countdown */
.cms-upcoming-stack{display:grid;gap:1.2rem}.upcoming-featured-wrap{margin-top:34px}.upcoming-featured-wrap .cms-event-card{margin:0}
.cms-event-card{border:1px solid rgba(7,24,34,.1)}.cms-event-image{position:relative;overflow:hidden;background:#07131e}.cms-event-image img{width:100%;height:190px;object-fit:cover}.event-featured-badge{position:absolute;top:14px;left:14px;padding:.48rem .62rem;background:#42e8df;color:#06121b;font-size:.62rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.cms-event-top{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.event-price-wrap{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:baseline;gap:.35rem;text-align:right}.event-price-wrap small{width:100%;color:#6b7d84;font-size:.58rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.event-price{color:#07131e;font-size:1.35rem;line-height:1;font-weight:900}.event-price-old{color:#819097;font-size:.78rem;text-decoration:line-through}.event-discount{padding:.25rem .4rem;background:#ffb65c;color:#07131e;font-size:.6rem;font-weight:900;letter-spacing:.08em}.enquire-price{font-size:.72rem;color:#087c8c;text-transform:uppercase;letter-spacing:.05em}
.event-countdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:8px 0 2px;background:rgba(8,31,43,.16);border:1px solid rgba(8,31,43,.16)}.event-countdown>span{display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;padding:.72rem .35rem;background:#fff}.event-countdown b{font-family:var(--serif);font-size:1.35rem;font-weight:400;line-height:1}.event-countdown small{margin-top:.2rem;color:#65777f;font-size:.52rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.event-countdown.ended{opacity:.55}.cms-event-cta.button{align-self:flex-start;margin-top:.25rem}
.cms-event-card.featured{display:grid;grid-template-columns:minmax(320px,1.1fr) minmax(320px,.9fr);min-height:460px;background:#07131e;color:#fff;border:0}.cms-event-card.featured .cms-event-image{min-height:460px}.cms-event-card.featured .cms-event-image img{height:100%;min-height:460px}.cms-event-card.featured .cms-event-body{justify-content:center;padding:clamp(2rem,4vw,4rem)}.cms-event-card.featured .cms-event-date{color:#42e8df}.cms-event-card.featured h3{font-family:var(--serif);font-size:clamp(2.5rem,4vw,4.8rem);font-weight:400;letter-spacing:-.04em}.cms-event-card.featured p,.cms-event-card.featured .cms-event-meta{color:#b8c7cf}.cms-event-card.featured .event-price{color:#fff}.cms-event-card.featured .event-price-old{color:#8fa1aa}.cms-event-card.featured .event-countdown{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.15)}.cms-event-card.featured .event-countdown>span{background:rgba(255,255,255,.06)}.cms-event-card.featured .event-countdown small{color:#aebdc5}.cms-event-card.featured .event-countdown b{color:#fff}
@media(max-width:980px){.cms-event-card.featured{grid-template-columns:1fr}.cms-event-card.featured .cms-event-image,.cms-event-card.featured .cms-event-image img{min-height:360px;height:360px}}
@media(max-width:640px){.cms-event-top{flex-direction:column}.event-price-wrap{justify-content:flex-start;text-align:left}.cms-event-card.featured .cms-event-body{padding:1.4rem}.cms-event-card.featured .cms-event-image,.cms-event-card.featured .cms-event-image img{min-height:280px;height:280px}.event-countdown b{font-size:1.15rem}.event-countdown>span{padding:.65rem .2rem}}

/* === 2026-09-09: Upcoming events visibility + 4-column desktop + full responsive hardening === */
html,body{max-width:100%;overflow-x:hidden}body{overflow-wrap:anywhere}img,video,iframe{max-width:100%}.site-header,.sub-header,.site-footer,.events-section,.experiences-section,.gallery-preview-section,.events-catalog,.detail-sections,.detail-cta,.subpage-intro,.experience-links,.prose-page,.faq-section,.contact-grid,.contact-map{min-width:0}

/* Upcoming party layout: featured party first, then four cards per row on wide screens. */
.cms-events-grid,.cms-events-grid.cms-events-grid-four{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;background:transparent;border:0;margin-top:1.5rem}
.cms-events-grid.catalog{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-top:2rem}
.cms-event-card{min-width:0;min-height:0;border:1px solid rgba(7,24,34,.12);background:#fff}
.cms-event-card .cms-event-image,.cms-event-card .cms-event-image img{height:210px;min-height:0}
.cms-event-card .cms-event-body{padding:1.2rem}
.cms-event-card h3{font-size:clamp(1.35rem,1.7vw,2rem)}
.cms-event-card p{font-size:.9rem}
.cms-event-card.featured{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);width:100%;min-height:440px}
.cms-event-card.featured .cms-event-image,.cms-event-card.featured .cms-event-image img{height:100%;min-height:440px}
.cms-upcoming-stack{width:100%;min-width:0}.upcoming-featured-wrap{width:100%}
.events-catalog .editorial-heading{margin-bottom:2rem}

/* Responsive breakpoints for event cards. */
@media(max-width:1280px){.cms-events-grid,.cms-events-grid.cms-events-grid-four,.cms-events-grid.catalog{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:980px){.cms-events-grid,.cms-events-grid.cms-events-grid-four,.cms-events-grid.catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.cms-event-card.featured{grid-template-columns:1fr}.cms-event-card.featured .cms-event-image,.cms-event-card.featured .cms-event-image img{height:360px;min-height:360px}}
@media(max-width:620px){.cms-events-grid,.cms-events-grid.cms-events-grid-four,.cms-events-grid.catalog{grid-template-columns:1fr;gap:.9rem}.cms-event-card .cms-event-image,.cms-event-card .cms-event-image img{height:230px}.cms-event-card.featured .cms-event-image,.cms-event-card.featured .cms-event-image img{height:260px;min-height:260px}.cms-event-card .cms-event-body,.cms-event-card.featured .cms-event-body{padding:1.1rem}.cms-event-card h3{font-size:1.65rem}.cms-event-cta.button{width:100%}}
@media(max-width:420px){.event-countdown{grid-template-columns:repeat(2,minmax(0,1fr))}.event-countdown b{font-size:1.25rem}}

/* Whole-site mobile/tablet responsiveness. */
@media(max-width:980px){
  .site-header{padding-inline:1.15rem}.brand img{width:112px}.nav-links{padding:5rem 1.5rem 2rem;overflow-y:auto}.nav-links>a{font-size:clamp(1.7rem,7vw,2.4rem);text-align:center}.nav-links .nav-cta{width:min(320px,90vw);justify-content:center}
  .hero-slider{height:max(720px,100svh);min-height:720px}.hero-content{width:min(760px,calc(100% - 2.4rem));left:1.2rem}.hero-content h1{font-size:clamp(3.8rem,11vw,6.5rem)}
  .editorial-heading,.past-events-heading,.vip-media-heading{grid-template-columns:1fr;gap:1.25rem}.editorial-heading{margin-bottom:2.5rem}
  .events-section,.experiences-section,.gallery-preview-section,.events-catalog{padding-inline:clamp(1rem,4vw,2rem)}
  .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:300px;padding-inline:1rem}.gallery-tile,.gallery-tile:nth-child(5n+1),.gallery-tile:nth-child(5n+2){grid-column:auto;grid-row:auto}
  .detail-hero,.event-detail-hero,.detail-copy,.event-detail-copy{min-height:580px}.detail-copy,.event-detail-copy{padding-inline:clamp(1.2rem,5vw,3rem)}
  .experience-links>a{grid-template-columns:52px 1fr auto;gap:1rem}.contact-grid{grid-template-columns:1fr}.site-footer{padding-inline:1.2rem}
}
@media(max-width:640px){
  body{font-size:15px}.site-header,.site-header.static-solid{height:68px}.brand img{width:100px}.menu-button{width:42px;height:42px}
  .hero-slider{height:100svh;min-height:680px}.hero-content{top:50%;left:1rem;width:calc(100% - 2rem);transform:translateY(-46%)}.hero-content h1{font-size:clamp(3rem,15vw,4.8rem);line-height:.86}.hero-content>p:not(.overline){margin:1rem 0 1.25rem;font-size:.92rem}.hero-actions{gap:.55rem}.hero-actions .button{width:100%}.hero-controls{bottom:max(1rem,env(safe-area-inset-bottom))}
  .signal-strip>*{padding:.85rem .7rem}.events-section,.experiences-section,.gallery-preview-section,.events-catalog,.detail-sections,.detail-cta,.subpage-intro,.experience-links,.prose-page,.faq-section,.contact-grid{padding-left:1rem;padding-right:1rem}
  .editorial-heading h2,.gallery-heading h2{font-size:clamp(2.8rem,14vw,4.5rem)}.editorial-heading>p{font-size:.94rem}
  .events-empty{padding:1.4rem;border-left-width:4px}.events-empty h3{font-size:clamp(2rem,11vw,3rem)}
  .experience-editorial .featured-experience{min-height:480px}.experience-editorial>a{grid-template-columns:38px 1fr;min-height:140px;padding:1rem}.experience-editorial>a>b{display:none}.experience-editorial h3{font-size:clamp(1.55rem,8vw,2.5rem)}
  .party-film{min-height:480px}.party-copy{padding:3rem 1rem}.party-copy h2{font-size:clamp(3rem,14vw,4.8rem)}
  .gallery-grid{grid-template-columns:1fr;grid-auto-rows:320px;padding:0 1rem 4rem}.gallery-filter{padding-inline:1rem;overflow-x:auto;flex-wrap:nowrap}.gallery-filter button{flex:0 0 auto}
  .lightbox figure{max-width:92vw}.lightbox figure img,.lightbox figure video{max-height:76vh}.lightbox-prev{left:.35rem}.lightbox-next{right:.35rem}.lightbox-close{right:.35rem;top:.35rem}
  .detail-hero,.event-detail-hero,.detail-copy,.event-detail-copy{min-height:520px}.detail-copy h1,.subpage-intro h1,.event-detail-copy h1{font-size:clamp(3rem,14vw,5rem)}.detail-sections article{grid-template-columns:36px 1fr;gap:.7rem}.detail-cta h2{font-size:clamp(2.5rem,12vw,4rem)}
  .experience-links>a{grid-template-columns:38px 1fr;gap:.8rem;padding:1.35rem 0}.experience-links>a b{display:none}.experience-links h2{font-size:clamp(1.8rem,9vw,2.8rem)}
  .contact-map{padding:3.5rem 1rem}.contact-map-frame,.contact-map-frame iframe{min-height:280px}.site-footer{grid-template-columns:1fr;padding:3rem 1rem}.footer-base{align-items:flex-start}
  .past-events-section,.vip-media-section{padding:4rem 1rem}.past-events-grid{grid-template-columns:1fr}.past-event-media{aspect-ratio:9/13}
  .admin-top{align-items:flex-start;gap:1rem;flex-direction:column}.admin-shell aside{overflow-x:auto}.admin-stats{grid-template-columns:1fr 1fr}.items .item-card{grid-template-columns:1fr}.items .item-card .thumb{width:100%;height:180px}
}
@media(max-width:380px){.hero-slider{min-height:650px}.hero-content h1{font-size:2.85rem}.button{font-size:.7rem;padding:.7rem .85rem}.admin-stats{grid-template-columns:1fr}}


/* === HIDY 2026-09-09: Premium vertical upcoming-party cards === */
.events-section .cms-upcoming-stack{width:100%;margin-top:2rem}
.events-section .cms-events-grid,.events-catalog .cms-events-grid,.cms-events-grid.cms-events-grid-four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.9rem,1.4vw,1.25rem);width:100%;margin-top:1.5rem;background:transparent;border:0}
.cms-event-card,.cms-event-card.featured{display:flex!important;min-width:0;min-height:0!important;flex-direction:column;overflow:hidden;background:#071722!important;color:#fff!important;border:1px solid rgba(66,232,223,.18)!important;border-radius:6px;box-shadow:0 14px 34px rgba(2,13,20,.12);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.cms-event-card:hover{transform:translateY(-4px);border-color:rgba(66,232,223,.5)!important;box-shadow:0 20px 48px rgba(2,13,20,.2)}
.cms-event-card .cms-event-image,.cms-event-card.featured .cms-event-image{position:relative;width:100%;height:auto!important;min-height:0!important;aspect-ratio:4/5;overflow:hidden;background:#06131d}
.cms-event-card .cms-event-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,18,28,.03) 45%,rgba(5,18,28,.62) 100%);pointer-events:none}
.cms-event-card .cms-event-image img,.cms-event-card.featured .cms-event-image img{width:100%;height:100%!important;min-height:0!important;object-fit:cover;transition:transform .45s ease}
.cms-event-card:hover .cms-event-image img{transform:scale(1.035)}
.event-featured-badge{position:absolute;z-index:2;top:.85rem;left:.85rem;padding:.45rem .58rem;background:rgba(7,23,34,.88);color:#42e8df;border:1px solid rgba(66,232,223,.35);font-size:.58rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;backdrop-filter:blur(8px)}
.event-discount-badge{position:absolute;z-index:2;top:.85rem;right:.85rem;padding:.46rem .58rem;background:#42e8df;color:#06131d;font-size:.62rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.cms-event-card .cms-event-body,.cms-event-card.featured .cms-event-body{display:flex;flex:1;flex-direction:column;gap:.72rem;padding:1.15rem!important;background:#071722!important}
.cms-event-kicker{color:#42e8df;font-size:.57rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.cms-event-card h3,.cms-event-card.featured h3{margin:0;color:#fff!important;font-family:var(--serif);font-size:clamp(1.55rem,1.75vw,2.15rem)!important;font-weight:400!important;line-height:1.02;letter-spacing:-.025em!important}
.cms-event-schedule{display:flex;flex-wrap:wrap;gap:.42rem;align-items:center;color:#b9c8cf;font-size:.72rem;font-weight:700;letter-spacing:.035em;text-transform:uppercase}.cms-event-schedule b{color:#42e8df;font-size:.8rem}
.cms-event-card .event-price-wrap,.cms-event-card.featured .event-price-wrap{display:flex;justify-content:flex-start;align-items:baseline;gap:.45rem;text-align:left;margin-top:.1rem}.cms-event-card .event-price-wrap small{width:auto;color:#81949d;font-size:.54rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;margin-right:.15rem}
.cms-event-card .event-price,.cms-event-card.featured .event-price{color:#fff!important;font-size:1.18rem;font-weight:900;line-height:1}.cms-event-card .event-price-old,.cms-event-card.featured .event-price-old{color:#7f919a!important;font-size:.72rem;text-decoration:line-through}.cms-event-card .enquire-price{color:#42e8df!important;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase}
.cms-event-card .event-countdown,.cms-event-card.featured .event-countdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:.15rem 0 0;background:rgba(66,232,223,.18)!important;border:1px solid rgba(66,232,223,.2)!important}.cms-event-card .event-countdown>span,.cms-event-card.featured .event-countdown>span{min-width:0;padding:.66rem .18rem;background:#0b2230!important;color:#fff!important}.cms-event-card .event-countdown b,.cms-event-card.featured .event-countdown b{color:#fff!important;font-family:var(--sans);font-size:1rem;font-weight:900;line-height:1}.cms-event-card .event-countdown small,.cms-event-card.featured .event-countdown small{margin-top:.2rem;color:#7fa1aa!important;font-size:.46rem;font-weight:900;letter-spacing:.08em}
.cms-event-card .cms-event-meta,.cms-event-card.featured .cms-event-meta{margin-top:.05rem;color:#8ba1aa!important;font-size:.68rem}.cms-event-card .cms-event-cta.button,.cms-event-card.featured .cms-event-cta.button{display:flex;width:100%;min-height:46px;margin-top:auto;align-items:center;justify-content:space-between;padding:.82rem .9rem;background:#42e8df;color:#06131d;border:0;font-size:.67rem;font-weight:950;letter-spacing:.11em;text-transform:uppercase}.cms-event-card .cms-event-cta.button:hover{background:#77f0e9;transform:none}
.upcoming-featured-wrap{display:none!important}
@media(max-width:1280px){.events-section .cms-events-grid,.events-catalog .cms-events-grid,.cms-events-grid.cms-events-grid-four{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:920px){.events-section .cms-events-grid,.events-catalog .cms-events-grid,.cms-events-grid.cms-events-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}.cms-event-card .cms-event-image,.cms-event-card.featured .cms-event-image{aspect-ratio:4/4.6}}
@media(max-width:620px){.events-section .cms-events-grid,.events-catalog .cms-events-grid,.cms-events-grid.cms-events-grid-four{grid-template-columns:1fr;gap:1rem}.cms-event-card,.cms-event-card.featured{width:100%;max-width:460px;margin-inline:auto}.cms-event-card .cms-event-image,.cms-event-card.featured .cms-event-image{aspect-ratio:4/4.25}.cms-event-card .cms-event-body,.cms-event-card.featured .cms-event-body{padding:1rem!important}.cms-event-card h3,.cms-event-card.featured h3{font-size:clamp(1.7rem,8vw,2.2rem)!important}.cms-event-card .event-countdown,.cms-event-card.featured .event-countdown{grid-template-columns:repeat(4,minmax(0,1fr))}.cms-event-card .event-countdown b,.cms-event-card.featured .event-countdown b{font-size:.95rem}.cms-event-card .event-countdown small,.cms-event-card.featured .event-countdown small{font-size:.42rem}}

/* Free event support */
.event-free-badge{position:absolute;z-index:3;top:.85rem;right:.85rem;padding:.46rem .62rem;background:#fff;color:#06131d;border:1px solid rgba(66,232,223,.65);font-size:.62rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 8px 24px rgba(0,0,0,.14)}
.free-event .event-price-wrap{align-items:center}.free-entry-price{color:#42e8df!important;font-size:1.05rem!important;letter-spacing:.06em;text-transform:uppercase}.free-event .cms-event-cta.button{background:#fff;color:#06131d;border:1px solid #42e8df}.free-event .cms-event-cta.button:hover{background:#42e8df;color:#06131d}.free-event .event-featured-badge{max-width:calc(100% - 9rem)}
@media(max-width:620px){.event-free-badge{top:.7rem;right:.7rem}.event-featured-badge{top:.7rem;left:.7rem}}

/* Ceyvex Solutions footer credit */
.footer-base .developer-credit a{color:var(--cyan);font-weight:800;text-decoration:none;transition:color .2s ease,opacity .2s ease}
.footer-base .developer-credit a:hover,.footer-base .developer-credit a:focus-visible{color:#fff;text-decoration:underline;text-underline-offset:3px}


/* HIDY social media links - no JS required */
.footer-socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.footer-socials .social-link{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:8px 11px;border:1px solid rgba(255,255,255,.15);border-radius:999px;color:#d8e8ee;text-decoration:none;font-size:12px;font-weight:800;letter-spacing:.03em;transition:transform .2s ease,border-color .2s ease,color .2s ease,background .2s ease}
.footer-socials .social-link svg{width:17px;height:17px;fill:currentColor;flex:0 0 auto}
.footer-socials .social-link:hover,.footer-socials .social-link:focus-visible{transform:translateY(-1px);border-color:var(--cyan);color:#fff;background:rgba(55,215,223,.08)}
@media(max-width:640px){.footer-socials{gap:8px}.footer-socials .social-link{padding:8px 10px}.footer-socials .social-link span{font-size:11px}}
