/* Small controls remain legible over every editable slide background. */
.hero[aria-roledescription="carrusel"]{touch-action:pan-y pinch-zoom;cursor:grab}
.hero.is-dragging,.hero.is-dragging *{cursor:grabbing;user-select:none}
.hero-overlay .hero-copy{padding-bottom:100px}
.hero-overlay .hero-controls{position:absolute;inset:auto auto 20px 50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:4px;margin:0;padding:5px 7px;width:max-content;max-width:calc(100% - 24px);border-radius:999px;background:rgb(16 29 22 / .58);color:#fff;z-index:3;backdrop-filter:blur(6px)}
.hero-controls .icon-button{width:38px;height:38px;min-width:38px;border-radius:50%;color:#fff;border:1px solid rgb(255 255 255 / .3)}
.hero-controls .icon-button:hover{background:rgb(255 255 255 / .2)}
.hero-dots{display:flex;align-items:center;gap:0}
.hero-dot{display:grid;place-items:center;width:32px;height:38px;padding:0;border:0;background:transparent;cursor:pointer;color:#fff}
.hero-dot span{display:block;width:11px;height:11px;border:1.5px solid #fff;border-radius:50%;background:transparent;transition:background .2s,box-shadow .2s}
.hero-dot[aria-current="true"] span{background:#fff;box-shadow:0 0 0 4px rgb(255 255 255 / .22)}
.hero-dot:focus-visible,.hero-controls button:focus-visible{outline:2px solid #fff;outline-offset:2px}
.mobile-contact-links{display:grid;gap:18px;margin-top:20px}.mobile-contact-links a{width:fit-content;font-size:13px;line-height:1.6}
.mobile-extra-links ul{list-style:none;padding:0;margin:22px 0 0}.mobile-extra-links li{padding:8px 0;font-size:14px}
.events-hero .hero-copy{padding-bottom:90px}.events-hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:calc(var(--slide-position-x,50)*1%) calc(var(--slide-position,43)*1%);opacity:0;transition:opacity .35s}.events-hero-video.is-playing{opacity:1}
.events-video-toggle{position:absolute;bottom:22px;right:24px;z-index:3;display:flex;align-items:center;gap:8px;border:1px solid rgb(255 255 255 / .5);border-radius:999px;background:rgb(16 29 22 / .65);color:white;padding:10px 14px;font:12px var(--sans);cursor:pointer}.events-video-toggle svg{width:18px;height:18px}.events-video-toggle[hidden]{display:none}
@media(max-width:640px){.hero-overlay .hero-controls{bottom:16px}.events-hero-video{object-position:calc(var(--slide-mobile-position-x,50)*1%) calc(var(--slide-mobile-position-y,43)*1%)}.events-hero .hero-copy{padding-top:45px;padding-bottom:85px}.events-video-toggle{right:18px;bottom:18px}}
@media(prefers-reduced-motion:reduce){.hero-dot span,.events-hero-video{transition:none}}
/* Minimal slideshow navigation; the hit areas remain comfortable on touch. */
.hero-overlay .hero-controls{background:none;border:0;box-shadow:none;backdrop-filter:none;padding:0;gap:0}
.hero-dot{width:36px;height:44px;min-width:36px;min-height:44px;border-radius:0;box-shadow:none;appearance:none}
.hero-dot:hover,.hero-dot:active{background:transparent}
.hero-dot span{box-shadow:0 1px 4px rgb(0 0 0 / .45)}
.hero-dot[aria-current="true"] span{background:#fff;box-shadow:0 0 0 3px rgb(255 255 255 / .28),0 1px 4px rgb(0 0 0 / .45)}
.ft3-social{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:12px;line-height:1.5}
.ft3-social a{text-underline-offset:4px}.ft3-social a:hover{text-decoration:underline}
.ft3-social-footer{margin-top:28px}.ft3-social-header{justify-content:flex-end;font-size:11px;max-width:230px}
.ft3-instagram .section-heading{margin-bottom:12px}.ft3-instagram>.muted{max-width:650px;margin-bottom:28px}
.ft3-instagram #sb_instagram{padding:0!important}.ft3-admin-note{padding:18px;background:var(--soft);font-size:12px;border:1px solid var(--line)}
/* Prevent browser button padding and flex shrinking from flattening the plus. */
.product-pick{display:grid;place-items:center;padding:0;min-width:32px;width:32px;height:32px;min-height:32px;aspect-ratio:1;border-radius:50%;flex:0 0 32px;line-height:1;appearance:none}
.product-pick svg{display:block;flex:none;width:16px;height:16px;max-width:none;aspect-ratio:1}
.quantity{flex:0 0 auto}.quantity button{display:grid;place-items:center;padding:0;min-width:32px;flex-shrink:0;line-height:1;font-family:Arial,sans-serif;font-size:20px;appearance:none}
.quantity input{min-width:0;padding-inline:2px}.buy-row>.button{min-width:0}.buy-row>.button svg{flex:none;width:17px;height:17px}
@media(max-width:900px){.header-actions>.ft3-social-header{display:none}#menu-dialog .ft3-social-header{max-width:none;justify-content:flex-start;margin-top:25px}}
@media(max-width:640px){.product-info{padding-right:40px}.product-pick{width:32px;height:32px;min-width:32px;min-height:32px;bottom:0}.product-info h3{overflow-wrap:anywhere}.quantity button{width:32px!important}.buy-row{gap:8px;flex-wrap:wrap}.buy-row>.button{flex:1 1 145px;gap:9px;padding-inline:12px}.quick-layout .buy-row{flex-wrap:wrap}}
