/* Overrides for the static copy. Everything else is Wix's own CSS, untouched. */

/* Desktop nav: Wix measures the menu with JS and hides this overflow item. */
/* The overflow "More" item is hidden by site.js the way Wix does it (visibility, no height). */
[id$="dropWrapper"] { display: none !important; }

/* Mobile "quick actions" bar: Wix's own markup and CSS handle it. A single action
   (Piling London's phone button) renders as the floating button directly; a bar
   with no actions (London Piling) is hidden inline by Wix. */

/* Mobile menu. Wix's CSS hides #MENU_AS_CONTAINER (opacity 0, visibility hidden)
   and its runtime adds an "open" class; the id selector here outranks that. */
#MENU_AS_CONTAINER[data-undisplayed] { display: none; }
#MENU_AS_CONTAINER.is-open { opacity: 1 !important; visibility: visible !important; }
#MENU_AS_CONTAINER.is-open > [id^="overlay-"] { opacity: 1 !important; }
/* Open/close animation, as Wix's runtime does it: panel slides in from its side, overlay fades. */
#MENU_AS_CONTAINER > [id^="overlay-"] { transition: opacity 0.4s ease; }
#MENU_AS_CONTAINER > [id^="container-"] { transition: transform 0.4s ease; }
#MENU_AS_CONTAINER.is-closing, #MENU_AS_CONTAINER.is-opening { opacity: 1 !important; visibility: visible !important; }
#MENU_AS_CONTAINER.is-closing > [id^="overlay-"], #MENU_AS_CONTAINER.is-opening > [id^="overlay-"] { opacity: 0 !important; }
#MENU_AS_CONTAINER.is-closing > [id^="container-"], #MENU_AS_CONTAINER.is-opening > [id^="container-"] { transform: translateX(var(--menu-slide, 100%)); }
body.menu-open { overflow: hidden; }
.menu-close { position: absolute; top: 8px; right: 8px; width: 40px; height: 40px; border: 0; background: transparent; font-size: 32px; line-height: 1; color: inherit; cursor: pointer; z-index: 1; }
#MENU_AS_CONTAINER li.is-expanded > ul, #MENU_AS_CONTAINER [aria-expanded="true"] + ul { display: block !important; visibility: visible !important; height: auto !important; }
#MENU_AS_CONTAINER [data-testid="expandablemenu-toggle"][aria-expanded="false"] ~ ul { display: none; }

/* Rebuilt Wix Pro Gallery grid */
.sg-grid { display: grid; grid-template-columns: repeat(var(--sg-cols, 3), minmax(0, 1fr)); gap: var(--sg-gap, 35px); width: 100%; }
.sg-tile { aspect-ratio: var(--sg-ratio, 4/3); overflow: hidden; background: rgb(199, 199, 199); }
.sg-tile img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* Slideshow (Wix BoxSlideShow): slides stack, the runtime's keyframes do the move. */
.wixui-slideshow [data-testid="slidesWrapper"] > [id] { position: absolute; inset: 0; }
.wixui-slideshow [data-testid="slidesWrapper"] > [id]:not(.is-current):not(.is-leaving) { display: none; }
.wixui-slideshow [data-testid="slidesWrapper"] > [id].is-entering { animation: slide-horizontal-new var(--slide-ms, 1000ms) ease both; }
.wixui-slideshow [data-testid="slidesWrapper"] > [id].is-leaving { animation: slide-horizontal-old var(--slide-ms, 1000ms) ease both; }
.wixui-slideshow.is-reverse [data-testid="slidesWrapper"] > [id].is-entering { animation-name: slide-horizontal-new-rev; }
.wixui-slideshow.is-reverse [data-testid="slidesWrapper"] > [id].is-leaving { animation-name: slide-horizontal-old-rev; }
@keyframes slide-horizontal-new-rev { 0% { transform: translate(-100%); } }
@keyframes slide-horizontal-old-rev { 80% { opacity: 1; } to { opacity: 0; transform: translate(100%); } }

/* Forms */
/* Wix keeps the success text in the layout (hidden), so the form keeps its height. */
[data-form-success] { visibility: hidden; }
form.is-sent [data-form-success] { visibility: visible !important; }
.form-error { color: #b3261e; font: 14px/1.4 Helvetica, Arial, sans-serif; margin: 8px 0; }
form[data-site-form] button[aria-busy="true"] { opacity: 0.6; }
.cf-turnstile { min-height: 65px; }
