.elementor-kit-4{--e-global-color-primary:#eb4413;--e-global-color-secondary:#7c7414;--e-global-color-text:#000000;--e-global-color-accent:#9FBCB8;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-weight:600;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-weight:400;--e-global-typography-c09a023-font-family:"Montserrat";--e-global-typography-c09a023-font-weight:600;background-color:#000000;color:#000000;font-family:"Montserrat", Sans-serif;}.elementor-kit-4 e-page-transition{background-color:#FFBC7D;}.site-header{background-color:#FFFFFF;}.site-footer{background-color:#000000;padding-inline-end:0px;padding-inline-start:0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;--container-default-padding-top:10px;--container-default-padding-right:10px;--container-default-padding-bottom:10px;--container-default-padding-left:10px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-lightbox{background-color:#000000;--lightbox-header-icons-size:0px;}.site-header .header-inner{width:1262px;max-width:100%;}.site-header .site-branding .site-logo img{width:633px;max-width:633px;}.site-header .site-navigation ul.menu li a{color:var( --e-global-color-accent );}.site-header .site-navigation .menu li{text-shadow:0px 0px 0px rgba(0,0,0,0.3);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-4 p{margin-block-end:0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}.site-header .header-inner{width:0px;max-width:100%;}.site-header .site-branding .site-logo img{width:0px;max-width:0px;}}/* Start custom CSS *//* =========================================================
   PALM — GLOBAL CSS (FULL REPLACEMENT)
   Cleaned and rebuilt to remove homepage card contradictions
   ========================================================= */

/* ==============================
   TOKENS
   ============================== */
:root{
  --palm-font: 'Montserrat', sans-serif;
  --global-palm-orange: #e95421;
  --global-palm-gold: #d4af37;
  --global-palm-blue: var(--e-global-color-accent, #2a6fdb);

  --palm-radius: 14px;
  --palm-shadow: 0 4px 12px rgba(0,0,0,.35);
  --palm-shadow-hover: 0 0 20px rgba(233,84,33,.22), 0 8px 18px rgba(0,0,0,.45);

  /* Shared homepage media sizing */
  --home-content-max: 1260px;
  --home-gap: 28px;
  --home-section-gap: 84px;
  --home-edge-pad: 24px;
  --home-mobile-gap: 18px;
  --home-card-ar: 16 / 9;
}

/* ==============================
   GLOBAL TYPOGRAPHY
   ============================== */
html,
body{
  font-family: var(--palm-font) !important;
}

body :where(*):not(svg, svg *, [class*="icon"], [class*="fa"], i[class*="icon"], i[class*="fa"]),
h1,h2,h3,h4,h5,h6,p,small,strong,em,span,li,ul,ol,nav,header,footer,section,article,
a,label,input,select,textarea,button,
.elementor *,
.elementor a,
.elementor button,
.elementor .elementor-button,
.button,
.btn,
.wp-block-button__link,
.site-navigation a,
.site-navigation ul.menu{
  font-family: var(--palm-font) !important;
}

/* ==============================
   SITE STRUCTURE
   ============================== */
#site-header.site-header{
  background-color:#000;
  padding:.75rem 0;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:1rem;
}

.site-header{
  padding-top:10px;
  padding-bottom:10px;
  margin-top:0 !important;
}

.header-inner{
  max-width:1200px;
  margin:0 auto;
  padding:0 20px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
}

.site-logo img.custom-logo{
  max-height:150px;
  height:auto;
  width:auto;
  object-fit:contain;
  display:block;
  margin:0;
}

.site-navigation ul.menu{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:.75rem;
  margin:0;
  padding:0;
  list-style:none;
}

.site-navigation ul.menu a{
  font-size:1rem;
  font-weight:500;
  color:#fff !important;
  text-decoration:none;
  transition:color .2s ease;
}

.site-navigation ul.menu a:hover{
  color:#bbb !important;
}

footer,
.elementor-location-footer,
.elementor-location-footer *{
  background:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
}

/* ==============================
   HEADER / LOGIN / SOCIAL PILLS
   ============================== */
.eventive-login-message a:not(.hidden){
  background:#2d2d2d;
  color:#fff !important;
  padding:10px 16px;
  border-radius:999px;
  text-decoration:none;
  font-weight:500;
  display:inline-block;
  transition:background-color .2s ease;
}

.eventive-login-message a:not(.hidden):hover{
  background:#444;
}

body .eventive-login-message a,
body .site-header a[href*="login"],
body .site-header .eventive-login-message a{
  background:var(--global-palm-orange) !important;
  color:#fff !important;
  padding:10px 20px !important;
  border-radius:999px !important;
  font-weight:600 !important;
  text-decoration:none !important;
  transition:background .2s ease, color .2s ease !important;
}

body .eventive-login-message a:hover,
body .site-header a[href*="login"]:hover{
  background:color-mix(in srgb, var(--global-palm-orange) 85%, #000) !important;
  color:#fff !important;
}

.elementor-location-header :is(
  .elementor-widget-button .elementor-button,
  .eventive-login-message a[id^="eventive-login-trigger-"],
  .elementor-widget-social-icons .elementor-icon
){
  font-family:var(--palm-font) !important;
  border-radius:999px !important;
}

.elementor-location-header .elementor-widget-button .elementor-button:hover,
.elementor-location-header .eventive-login-message a[id^="eventive-login-trigger-"]:hover,
.elementor-location-header .elementor-widget-social-icons .elementor-icon:hover{
  background-color:#9c1d1d !important;
  color:#fff !important;
  transform:translateY(-1px) !important;
  box-shadow:0 6px 16px rgba(0,0,0,.14) !important;
}

.elementor-location-header .elementor-widget-social-icons .elementor-icon svg,
.elementor-location-header .elementor-widget-social-icons .elementor-icon svg *{
  fill:currentColor !important;
}

.elementor-location-header{
  position:relative;
  z-index:10000 !important;
}

.palm-main-nav nav.elementor-nav-menu--main ul.sub-menu.elementor-nav-menu--dropdown{
  transform:translateY(-16px) !important;
  margin-top:0 !important;
  padding-top:0 !important;
  background:#000 !important;
  z-index:10010 !important;
}

.palm-main-nav .elementor-nav-menu > li{
  position:relative !important;
}

.palm-main-nav + .elementor-nav-menu--dropdown.elementor-nav-menu__container{
  top:0 !important;
  margin-top:0 !important;
}

/* ==============================
   FOOTER MENU — HARD CENTER
   Bottom legal/footer menu only
   ============================== */

/* Center the footer container itself */
.elementor-1056 .elementor-element-8c0dc6d,
.elementor-1056 .elementor-element-8c0dc6d > .e-con-inner{
  width:100% !important;
  max-width:none !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  text-align:center !important;
  padding-left:0 !important;
  padding-right:0 !important;
}

/* Center the actual nav widget, even though Elementor gave it align-start */
.elementor-1056 .elementor-element-bd474e8,
.elementor-1056 .elementor-element-bd474e8 > .elementor-widget-container{
  width:100% !important;
  max-width:none !important;
  margin:0 auto !important;
  text-align:center !important;
}

/* Center the nav wrapper */
.elementor-1056 .elementor-element-bd474e8 nav.elementor-nav-menu--main{
  width:100% !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
}

/* Center the menu row itself */
.elementor-1056 .elementor-element-bd474e8 nav.elementor-nav-menu--main .elementor-nav-menu{
  width:100% !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:26px !important;
  margin:18px auto 10px !important;
  padding:0 !important;
  list-style:none !important;
}

/* Kill any leftover left-bias from Elementor */
.elementor-1056 .elementor-element-bd474e8.elementor-nav-menu__align-start{
  text-align:center !important;
}

.elementor-1056 .elementor-element-bd474e8 .elementor-nav-menu > li{
  float:none !important;
}

/* Link styling */
.elementor-1056 .elementor-element-bd474e8 .elementor-nav-menu--main .elementor-item{
  font-family:var(--palm-font) !important;
  font-size:10px !important;
  line-height:1 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  color:#fff !important;
  padding:0 !important;
  text-decoration:none !important;
  box-shadow:none !important;
  opacity:.9 !important;
}

.elementor-1056 .elementor-element-bd474e8 .elementor-nav-menu--main .elementor-item:hover,
.elementor-1056 .elementor-element-bd474e8 .elementor-nav-menu--main .elementor-item:focus{
  color:#fff !important;
  opacity:1 !important;
  box-shadow:none !important;
}

.elementor-1056 .elementor-element-bd474e8 .elementor-nav-menu--main.e--pointer-underline .elementor-item::after{
  content:none !important;
}

@media (max-width:767px){
  .elementor-1056 .elementor-element-bd474e8 nav.elementor-nav-menu--main .elementor-nav-menu{
    gap:16px !important;
    margin:12px auto !important;
  }

  .elementor-1056 .elementor-element-bd474e8 .elementor-nav-menu--main .elementor-item{
    font-size:10px !important;
    letter-spacing:.12em !important;
  }
}

/* ==============================
   EVENTIVE CHECKOUT — FIXED + PALM THEME
   ============================== */

/* keep page from scrolling when Eventive checkout/login is open */
body:has(.eventive-checkout),
body:has(.Eventive--Checkout),
body:has(.Eventive--LoginPage),
body:has(.eventive-modal[style*="display: block"]),
body.modal-open{
  overflow: hidden !important;
}

/* kill the bad blur layer entirely */
body:has(.eventive-checkout)::before,
body:has(.Eventive--Checkout)::before,
body:has(.Eventive--LoginPage)::before,
body:has(.eventive-modal[style*="display: block"])::before,
body.modal-open::before{
  content: none !important;
  display: none !important;
}

/* make sure the modal itself stays above everything */
.eventive-modal,
.eventive-modal-content,
.Eventive--Checkout,
.Eventive--LoginPage,
div[class*="eventive-checkout"],
div[class*="eventive-modal"]{
  position: relative !important;
  z-index: 99999 !important;
}

/* base checkout colors */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       [class*="eventive-checkout"]){
  color: #fff !important;
}

/* main panels / cards / sections */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       [class*="eventive-checkout"])
:where([class*="dialog"],
       [class*="modal"],
       [class*="sheet"],
       [class*="panel"],
       [class*="card"],
       [class*="surface"],
       [class*="container"],
       [class*="section"]){
  background: #000 !important;
  color: #fff !important;
  border-color: rgba(255,255,255,.12) !important;
  box-shadow: none !important;
}

/* text */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       [class*="eventive-checkout"])
:where(h1,h2,h3,h4,h5,h6,p,span,div,label,strong,small){
  color: #fff !important;
}

/* inputs */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       [class*="eventive-checkout"])
:where(input:not([type="checkbox"]):not([type="radio"]),
       select,
       textarea){
  background: #111 !important;
  color: #fff !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}

:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       [class*="eventive-checkout"])
:where(input::placeholder, textarea::placeholder){
  color: rgba(255,255,255,.55) !important;
}

/* uniform orange buttons */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       [class*="eventive-checkout"])
:where(button,
       [role="button"],
       a[class*="button"],
       input[type="submit"],
       input[type="button"]){
  background: var(--global-palm-orange) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       [class*="eventive-checkout"])
:where(button,
       [role="button"],
       a[class*="button"],
       input[type="submit"],
       input[type="button"]):hover{
  background: color-mix(in srgb, var(--global-palm-orange) 85%, #000) !important;
  color: #fff !important;
}

/* links */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       [class*="eventive-checkout"]) a{
  color: #fff !important;
}

/* ==============================
   EVENTIVE CHECKOUT — TOP HALF FIX
   ============================== */

/* modal backdrop shell */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       [class*="eventive-checkout"]){
  background: rgba(0,0,0,.82) !important;
}

/* main white checkout box / content area */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       [class*="eventive-checkout"])
:where(.modal-content,
       .dialog-content,
       .checkout-content,
       .cart-content,
       .ticketing-content,
       .inner,
       .content,
       main,
       section){
  background: #000 !important;
  color: #fff !important;
}

/* tables, rows, cells */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       [class*="eventive-checkout"])
:where(table, thead, tbody, tr, th, td){
  background: #000 !important;
  color: #fff !important;
  border-color: rgba(255,255,255,.14) !important;
}

/* muted labels in header row */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       [class*="eventive-checkout"])
:where(th, thead *, .label, .muted, .secondary, .caption){
  color: rgba(255,255,255,.72) !important;
}

/* number steppers / count pills / custom amount fields */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       [class*="eventive-checkout"])
:where(input,
       .input,
       .quantity,
       .stepper,
       .count,
       .amount,
       .total,
       [class*="quantity"],
       [class*="amount"],
       [class*="total"]){
  color: #fff !important;
  border-color: rgba(255,255,255,.16) !important;
}

/* black amount / total boxes */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       [class*="eventive-checkout"])
:where(.total,
       .amount,
       [class*="total"],
       [class*="amount"],
       [class*="price"]){
  background: #000 !important;
  color: #fff !important;
}

/* auth section at bottom stays black */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       [class*="eventive-checkout"])
:where([class*="login"],
       [class*="signup"],
       [class*="auth"],
       [class*="facebook"]){
  background: #000 !important;
  color: #fff !important;
}

/* facebook button can stay blue */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       [class*="eventive-checkout"])
:where([class*="facebook"], .facebook, .fb){
  color: #fff !important;
}

/* ==============================
   EVENTIVE CHECKOUT — SHELL / FRAME CLEANUP
   ============================== */

/* outer modal shell: kill white frame */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       .ReactModal__Content,
       [role="dialog"][aria-modal="true"],
       [class*="eventive-checkout"],
       [class*="checkout"]){
  background: #000 !important;
  background-image: none !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* remove the outer padding frame if Eventive is adding one */
:where(.eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       .ReactModal__Content,
       [role="dialog"][aria-modal="true"]){
  padding: 0 !important;
}

/* kill generic inner white/grey wrapper layers */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       .ReactModal__Content,
       [role="dialog"][aria-modal="true"],
       [class*="eventive-checkout"],
       [class*="checkout"])
:where(.modal-content,
       .dialog-content,
       .checkout-content,
       .cart-content,
       .ticketing-content,
       .inner,
       .content,
       .wrapper,
       .shell,
       .panel,
       .surface,
       .container,
       [class*="wrapper"],
       [class*="shell"],
       [class*="panel"],
       [class*="surface"],
       [class*="container"]){
  background: #000 !important;
  background-image: none !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}

/* those weird grey bars / strips */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       .ReactModal__Content,
       [role="dialog"][aria-modal="true"],
       [class*="eventive-checkout"],
       [class*="checkout"])
:where(header,
       footer,
       .header,
       .footer,
       .summary,
       .discount,
       .gift,
       .promo,
       [class*="header"],
       [class*="footer"],
       [class*="summary"],
       [class*="discount"],
       [class*="gift"],
       [class*="promo"],
       [class*="bar"],
       [class*="stripe"]){
  background: #000 !important;
  background-image: none !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* keep divider lines subtle instead of gray blocks */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       .ReactModal__Content,
       [role="dialog"][aria-modal="true"],
       [class*="eventive-checkout"],
       [class*="checkout"])
:where(table, thead, tbody, tr, th, td, hr){
  background: #000 !important;
  color: #fff !important;
  border-color: rgba(255,255,255,.14) !important;
}

/* Continue pill + other button wrappers */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       .ReactModal__Content,
       [role="dialog"][aria-modal="true"],
       [class*="eventive-checkout"],
       [class*="checkout"])
:where(.button-wrapper,
       .btn-wrapper,
       [class*="button-wrapper"],
       [class*="btn-wrapper"],
       [class*="ButtonWrapper"],
       [class*="cta"]){
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* actual buttons */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       .ReactModal__Content,
       [role="dialog"][aria-modal="true"],
       [class*="eventive-checkout"],
       [class*="checkout"])
:where(button,
       [role="button"],
       a[class*="button"],
       input[type="submit"],
       input[type="button"],
       .btn,
       [class*="btn"],
       [class*="Button"]){
  background: var(--global-palm-orange) !important;
  background-image: none !important;
  color: #fff !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  border-radius: 999px !important;
}

/* kill white inner spans/divs inside buttons */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       .ReactModal__Content,
       [role="dialog"][aria-modal="true"],
       [class*="eventive-checkout"],
       [class*="checkout"])
:where(button,
       [role="button"],
       a[class*="button"],
       input[type="submit"],
       input[type="button"],
       .btn,
       [class*="btn"],
       [class*="Button"]) *{
  background: transparent !important;
  background-image: none !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* same for button pseudo elements */
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       .ReactModal__Content,
       [role="dialog"][aria-modal="true"],
       [class*="eventive-checkout"],
       [class*="checkout"])
:where(button,
       [role="button"],
       a[class*="button"],
       .btn,
       [class*="btn"],
       [class*="Button"])::before,
:where(.eventive-modal,
       .eventive-modal-content,
       .Eventive--Checkout,
       .Eventive--LoginPage,
       .ReactModal__Content,
       [role="dialog"][aria-modal="true"],
       [class*="eventive-checkout"],
       [class*="checkout"])
:where(button,
       [role="button"],
       a[class*="button"],
       .btn,
       [class*="btn"],
       [class*="Button"])::after{
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}

/* ==============================
   LOADING / MESSAGE HELPERS
   ============================== */
#loading-placeholder{
  opacity:0;
  visibility:hidden;
  transition:opacity .4s ease, visibility .4s ease;
  background:#111;
  color:#fff;
  text-align:center;
  padding:1.25rem;
  font-size:1.1rem;
  border-radius:6px;
  margin:1.5rem auto 0;
  max-width:720px;
}

#loading-placeholder.show{
  opacity:1;
  visibility:visible;
}

#closed-message{
  transition:opacity .4s ease;
}

#events-container,
.weekly-calendar-container{
  overflow-anchor:none;
}

#events-container{
  min-height:clamp(520px, 60vh, 960px);
}

/* ==============================
   EVENTIVE HOMEPAGE WIDGET
   ============================== */
.elementor-element-ee08584 #events-container .event-name{
  position:relative;
  font-size:.9rem;
  line-height:1.3;
}

.elementor-element-ee08584 #events-container .event-name *{
  visibility:hidden !important;
  height:0 !important;
  overflow:hidden !important;
  display:none !important;
}

.elementor-element-ee08584 #events-container .event-name::before{
  content:attr(data-time);
  display:block;
  font-weight:700;
  font-size:.85rem;
  margin-bottom:2px;
  color:#fff;
}

.elementor-element-ee08584 #events-container .event-name::after{
  content:attr(data-title);
  display:block;
  white-space:pre-wrap;
  color:#fff;
}

.elementor-element-ee08584 #events-container .event-item{
  position:relative !important;
  cursor:pointer;
  background:transparent !important;
  border-radius:0 !important;
  padding:0 !important;
  box-shadow:none !important;
}

.elementor-element-ee08584 #events-container .film-poster{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:2 / 3;
  object-fit:cover;
  background:transparent !important;
  border-radius:6px !important;
  margin:0 auto;
  transition:transform .3s ease !important;
  box-shadow:
    0 0 20px rgba(233,84,33,.35) !important,
    0 4px 12px rgba(0,0,0,.5) !important;
}

.elementor-element-ee08584 #events-container .event-item:hover .film-poster{
  transform:scale(1.05) !important;
}

.elementor-element-ee08584 #events-container .event-item::after{
  content:"View Details" !important;
  position:absolute !important;
  top:50% !important;
  left:50% !important;
  transform:translate(-50%,-50%) !important;
  background:rgba(0,0,0,.7) !important;
  color:#fff !important;
  padding:.4rem .9rem !important;
  font-size:.85rem !important;
  border-radius:20px !important;
  letter-spacing:.4px !important;
  text-transform:uppercase !important;
  opacity:0 !important;
  pointer-events:none !important;
  transition:opacity .3s ease, transform .3s ease !important;
  z-index:2 !important;
}

.elementor-element-ee08584 #events-container .event-item:hover::after{
  opacity:1 !important;
  transform:translate(-50%,-50%) scale(1.05) !important;
}

#events-container .event-item{
  max-width:340px;
  display:flex;
  flex-direction:column;
  align-items:center;
  margin-bottom:2rem;
}

#events-container .event-details{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  width:100%;
}

#events-container .showtimes-container{
  display:flex !important;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:.5rem;
  margin-top:1rem;
}

#events-container .eventive-custom-button{
  margin:0 !important;
}

#events-container .event-details h3,
#events-container .film-details,
#events-container .event-details > p:not(.no-events-message):not(.no-showtimes):not(.closed-message):not(.empty-day-message){
  display:none !important;
}

#events-container .showtimes-container > span{
  display:inline-block !important;
}

.elementor-element-ee08584 #events-container .showtime,
#events-container .showtime{
  background:var(--global-palm-orange) !important;
  color:#fff !important;
  font-family:var(--palm-font) !important;
  font-size:.95rem !important;
  font-weight:600 !important;
  padding:.5rem 1rem !important;
  border:none !important;
  border-radius:999px !important;
  margin:4px !important;
  min-width:auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:.4rem !important;
  letter-spacing:.4px !important;
  text-transform:uppercase !important;
  cursor:pointer !important;
  transition:background-color .2s ease, transform .2s ease, box-shadow .2s ease !important;
  box-shadow:
    0 0 14px color-mix(in srgb, var(--global-palm-orange) 45%, transparent) !important,
    0 3px 8px rgba(0,0,0,.35) !important;
}

.elementor-element-ee08584 #events-container .showtime:hover,
#events-container .showtime:hover{
  background:color-mix(in srgb, var(--global-palm-orange) 85%, #000) !important;
  transform:translateY(-1px) !important;
  box-shadow:
    0 0 18px color-mix(in srgb, var(--global-palm-orange) 55%, transparent) !important,
    0 6px 14px rgba(0,0,0,.4) !important;
}

.event-item{
  opacity:1;
  transform:none;
  transition:none;
}

.event-item.fade-in{
  opacity:0;
  transform:translateY(12px);
  animation:fadeInUp .8s ease forwards;
}

@keyframes fadeInUp{
  to{
    opacity:1;
    transform:translateY(0);
  }
}

/* ==============================
   WEEKLY CALENDAR
   ============================== */
#weekly-calendar-container{
  position:relative !important;
  max-width:1200px !important;
  margin:0 auto !important;
  box-sizing:border-box !important;
}

#weekly-calendar-buttons{
  position:relative !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  width:100% !important;
  padding:0 !important;
}

#weekly-calendar-buttons .pills-row{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:16px !important;
  width:100% !important;
  margin:0 auto !important;
}

#weekly-calendar-buttons .day-button[data-day]{
  display:inline-flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:center !important;
  width:128px !important;
  height:88px !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:12px !important;
  background:#fff !important;
  color:#000 !important;
  border:1px solid #e6e6e6 !important;
  box-shadow:0 4px 14px rgba(0,0,0,.18) !important;
  line-height:1.1 !important;
  white-space:normal !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  box-sizing:border-box !important;
  transition:box-shadow .2s ease, transform .2s ease, background-color .2s ease !important;
}

#weekly-calendar-buttons .day-button[data-day] .button-content{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  width:100% !important;
  height:100% !important;
  padding:0 10px !important;
  margin:0 !important;
  border-radius:inherit !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
}

#weekly-calendar-buttons .day-button[data-day]:hover:not(.active):not([aria-selected="true"]){
  box-shadow:0 6px 16px rgba(0,0,0,.22) !important;
}

#weekly-calendar-buttons .day-button[data-day].active,
#weekly-calendar-buttons .day-button[data-day][aria-selected="true"],
#weekly-calendar-buttons .pills-row .day-button[data-day].active{
  background:var(--global-palm-orange) !important;
  border-color:var(--global-palm-orange) !important;
  color:#fff !important;
}

#weekly-calendar-buttons .day-button.active .day-name,
#weekly-calendar-buttons .day-button.active .day-date,
#weekly-calendar-buttons .day-button[aria-selected="true"] .day-name,
#weekly-calendar-buttons .day-button[aria-selected="true"] .day-date,
#weekly-calendar-buttons .pills-row .day-button[data-day].active :is(.day-name,.day-date,span,strong,em){
  color:#fff !important;
  fill:#fff !important;
}

#weekly-calendar-buttons .day-button:not([data-day]){
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  width:auto !important;
  height:auto !important;
  padding:0 !important;
  margin:0 !important;
}

#weekly-calendar-container #prev-week,
#weekly-calendar-container #next-week,
#weekly-calendar-container button[aria-label*="Previous"],
#weekly-calendar-container button[aria-label*="Next"]{
  position:absolute !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:32px !important;
  height:32px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  color:var(--global-palm-gold) !important;
  z-index:2 !important;
  cursor:pointer !important;
}

#weekly-calendar-container #prev-week,
#weekly-calendar-container button[aria-label*="Previous"]{
  left:12px !important;
}

#weekly-calendar-container #next-week,
#weekly-calendar-container button[aria-label*="Next"]{
  right:12px !important;
}

#weekly-calendar-container #prev-week:hover,
#weekly-calendar-container #next-week:hover,
#weekly-calendar-container button[aria-label*="Previous"]:hover,
#weekly-calendar-container button[aria-label*="Next"]:hover{
  color:var(--global-palm-gold) !important;
}

/* ==============================
   HOMEPAGE — CURRENT FILM SERIES
   ============================== */
body.home .elementor .elementor-element.elementor-element-9edf2f5{
  overflow:visible !important;
}

body.home .elementor .elementor-element.elementor-element-9edf2f5 .e-con-inner{
  width:min(var(--home-content-max), calc(100vw - (var(--home-edge-pad) * 2))) !important;
  max-width:none !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

body.home .elementor .elementor-element.elementor-element-9edf2f5 .elementor-heading-title,
body.home .elementor .elementor-element.elementor-element-9edf2f5 .elementor-widget-heading .elementor-widget-container{
  text-align:center !important;
}

body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-posts-container.elementor-posts.elementor-grid{
  display:grid !important;
  width:100% !important;
  max-width:none !important;
  margin:0 auto !important;
  grid-template-columns:repeat(6, minmax(0, 1fr)) !important;
  gap:var(--home-gap) !important;
  align-items:stretch !important;
}

body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post{
  grid-column:span 2 !important;
  width:100% !important;
  margin:0 !important;
  display:block !important;
}

body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post:last-child:nth-child(3n + 1){
  grid-column:3 / span 2 !important;
}

body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post:nth-last-child(2):nth-child(3n + 1){
  grid-column:2 / span 2 !important;
}

body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post:last-child:nth-child(3n + 2){
  grid-column:4 / span 2 !important;
}

body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post__card{
  position:relative !important;
  width:100% !important;
  height:auto !important;
  aspect-ratio:var(--home-card-ar) !important;
  overflow:hidden !important;
  border-radius:var(--palm-radius) !important;
  background:#000 !important;
  box-shadow:var(--palm-shadow) !important;
  transition:transform .25s ease, box-shadow .25s ease !important;
}

body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post__thumbnail__link,
body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post__thumbnail{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  display:block !important;
  overflow:hidden !important;
  background:#000 !important;
}

body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post__thumbnail img{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  display:block !important;
  transition:transform .35s ease !important;
}

body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post__text{
  position:absolute !important;
  inset:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 18px !important;
  z-index:2 !important;
  pointer-events:none !important;
}

body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post__title{
  margin:0 !important;
  line-height:1.08 !important;
}

body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post__title a{
  pointer-events:auto !important;
  color:#fff !important;
  text-decoration:none !important;
  text-align:center !important;
  font-family:var(--palm-font) !important;
  font-weight:400 !important;
  font-size:clamp(18px, 2.1vw, 28px) !important;
  text-shadow:0 2px 8px rgba(0,0,0,.35) !important;
  transition:color .2s ease !important;
}

body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post__title a:hover,
body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post__title a:focus-visible{
  color:var(--global-palm-orange) !important;
  outline:0 !important;
}

body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post__card::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:rgba(0,0,0,.16) !important;
  z-index:1 !important;
  pointer-events:none !important;
  transition:background .25s ease !important;
}

body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post__card:hover{
  transform:translateY(-2px) !important;
  box-shadow:var(--palm-shadow-hover) !important;
}

body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post__card:hover::after{
  background:rgba(0,0,0,.10) !important;
}

body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post__card:hover .elementor-post__thumbnail img{
  transform:scale(1.05) !important;
}

body.home .elementor .elementor-element.elementor-element-a6b8d23 :is(
  .elementor-post__badge,
  .elementor-post__excerpt,
  .elementor-post__meta-data,
  .elementor-post__read-more
){
  display:none !important;
}

/* ==============================
   HOMEPAGE — LOWER IMAGE CARD SECTION
   08bb3b0
   ============================== */
body.home .elementor .elementor-element.elementor-element-08bb3b0{
  width:min(var(--home-content-max), calc(100vw - (var(--home-edge-pad) * 2))) !important;
  max-width:none !important;
  margin:var(--home-section-gap) auto 0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:var(--home-gap) !important;
  box-sizing:border-box !important;
}

body.home .elementor .elementor-element.elementor-element-08bb3b0 > .elementor-element{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}

body.home .elementor .elementor-element.elementor-element-08bb3b0 .elementor-widget-image,
body.home .elementor .elementor-element.elementor-element-08bb3b0 .elementor-widget-image > .elementor-widget-container,
body.home .elementor .elementor-element.elementor-element-08bb3b0 .wp-caption{
  width:100% !important;
  max-width:none !important;
}

body.home .elementor .elementor-element.elementor-element-08bb3b0 .wp-caption{
  position:relative !important;
  overflow:hidden !important;
  border-radius:var(--palm-radius) !important;
  background:#000 !important;
  aspect-ratio:var(--home-card-ar) !important;
  box-shadow:var(--palm-shadow) !important;
  transition:transform .25s ease, box-shadow .25s ease !important;
  margin:0 !important;
}

body.home .elementor .elementor-element.elementor-element-08bb3b0 .wp-caption:hover{
  transform:translateY(-2px) !important;
  box-shadow:var(--palm-shadow-hover) !important;
}

body.home .elementor .elementor-element.elementor-element-08bb3b0 .wp-caption a{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
}

body.home .elementor .elementor-element.elementor-element-08bb3b0 .wp-caption img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
  transition:transform .35s ease !important;
}

body.home .elementor .elementor-element.elementor-element-08bb3b0 .wp-caption:hover img{
  transform:scale(1.05) !important;
}

body.home .elementor .elementor-element.elementor-element-08bb3b0 .widget-image-caption{
  position:absolute !important;
  inset:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 18px !important;
  margin:0 !important;
  z-index:2 !important;
  color:#fff !important;
  text-align:center !important;
  font-size:clamp(18px, 2.1vw, 28px) !important;
  line-height:1.08 !important;
  text-shadow:0 2px 8px rgba(0,0,0,.35) !important;
  background:rgba(0,0,0,.16) !important;
  transition:background .25s ease, color .2s ease !important;
}

body.home .elementor .elementor-element.elementor-element-08bb3b0 .wp-caption:hover .widget-image-caption{
  background:rgba(0,0,0,.10) !important;
  color:var(--global-palm-orange) !important;
}

/* ==============================
   HOMEPAGE — LEGACY CTA TILE SECTION
   890addf / 07c5c00 / 21a13e8
   ============================== */
body.home .elementor .elementor-element.elementor-element-890addf{
  margin-top:var(--home-section-gap) !important;
}

body.home .elementor .elementor-element.elementor-element-890addf .e-con-inner{
  width:min(var(--home-content-max), calc(100vw - (var(--home-edge-pad) * 2))) !important;
  max-width:none !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:var(--home-gap) !important;
  overflow:visible !important;
}

body.home .elementor .elementor-element.elementor-element-890addf .elementor-cta,
body.home .elementor .elementor-element.elementor-element-07c5c00 .elementor-cta,
body.home .elementor .elementor-element.elementor-element-21a13e8 .elementor-cta{
  position:relative !important;
  width:100% !important;
  max-width:none !important;
  height:auto !important;
  aspect-ratio:var(--home-card-ar) !important;
  overflow:hidden !important;
  border-radius:var(--palm-radius) !important;
  background:#000 !important;
  box-shadow:var(--palm-shadow) !important;
  transition:transform .25s ease, box-shadow .25s ease !important;
}

body.home .elementor .elementor-element.elementor-element-890addf .elementor-cta__bg-wrapper,
body.home .elementor .elementor-element.elementor-element-890addf .elementor-cta__bg,
body.home .elementor .elementor-element.elementor-element-07c5c00 .elementor-cta__bg,
body.home .elementor .elementor-element.elementor-element-21a13e8 .elementor-cta__bg,
body.home .elementor .elementor-element.elementor-element-07c5c00 .elementor-cta__bg-wrapper,
body.home .elementor .elementor-element.elementor-element-21a13e8 .elementor-cta__bg-wrapper{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  opacity:1 !important;
  visibility:visible !important;
  z-index:0 !important;
}

body.home .elementor .elementor-element.elementor-element-07c5c00 .elementor-cta__bg{
  background:url("https://thepalmtheatre.com/wp-content/uploads/2025/07/Palmie-2-1024x554.png") center / cover no-repeat !important;
}

body.home .elementor .elementor-element.elementor-element-21a13e8 .elementor-cta__bg{
  background:url("https://thepalmtheatre.com/wp-content/uploads/2025/09/K7A9599-1024x683.jpg") center / cover no-repeat !important;
}

body.home .elementor .elementor-element.elementor-element-890addf .elementor-cta__bg,
body.home .elementor .elementor-element.elementor-element-07c5c00 .elementor-cta__bg,
body.home .elementor .elementor-element.elementor-element-21a13e8 .elementor-cta__bg{
  background-position:center !important;
  background-size:cover !important;
  transition:transform .35s ease !important;
}

body.home .elementor .elementor-element.elementor-element-890addf .elementor-cta__bg-overlay,
body.home .elementor .elementor-element.elementor-element-07c5c00 .elementor-cta__bg-overlay,
body.home .elementor .elementor-element.elementor-element-21a13e8 .elementor-cta__bg-overlay{
  background:transparent !important;
  opacity:1 !important;
}

body.home .elementor .elementor-element.elementor-element-890addf .elementor-cta::after,
body.home .elementor .elementor-element.elementor-element-07c5c00 .elementor-cta::after,
body.home .elementor .elementor-element.elementor-element-21a13e8 .elementor-cta::after{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.16);
  transition:background .25s ease;
  pointer-events:none;
  z-index:1;
}

body.home .elementor .elementor-element.elementor-element-890addf .elementor-cta__content,
body.home .elementor .elementor-element.elementor-element-07c5c00 .elementor-cta__content,
body.home .elementor .elementor-element.elementor-element-21a13e8 .elementor-cta__content{
  position:absolute !important;
  inset:0 !important;
  display:grid !important;
  place-items:center !important;
  text-align:center !important;
  padding:0 16px !important;
  z-index:2 !important;
  pointer-events:none !important;
}

body.home .elementor .elementor-element.elementor-element-890addf .elementor-cta__title,
body.home .elementor .elementor-element.elementor-element-07c5c00 .elementor-cta__title,
body.home .elementor .elementor-element.elementor-element-21a13e8 .elementor-cta__title{
  color:#fff !important;
  margin:0 !important;
  font-weight:700 !important;
  font-size:clamp(22px, 2.5vw, 42px) !important;
  line-height:1.1 !important;
  text-shadow:0 2px 8px rgba(0,0,0,.35) !important;
}

body.home .elementor .elementor-element.elementor-element-890addf .elementor-cta__button-wrapper,
body.home .elementor .elementor-element.elementor-element-07c5c00 .elementor-cta__button-wrapper,
body.home .elementor .elementor-element.elementor-element-21a13e8 .elementor-cta__button-wrapper{
  display:none !important;
}

body.home .elementor .elementor-element.elementor-element-890addf .elementor-cta:hover,
body.home .elementor .elementor-element.elementor-element-07c5c00 .elementor-cta:hover,
body.home .elementor .elementor-element.elementor-element-21a13e8 .elementor-cta:hover{
  transform:translateY(-2px) !important;
  box-shadow:var(--palm-shadow-hover) !important;
}

body.home .elementor .elementor-element.elementor-element-890addf .elementor-cta:hover .elementor-cta__bg,
body.home .elementor .elementor-element.elementor-element-07c5c00 .elementor-cta:hover .elementor-cta__bg,
body.home .elementor .elementor-element.elementor-element-21a13e8 .elementor-cta:hover .elementor-cta__bg{
  transform:scale(1.05) !important;
}

body.home .elementor .elementor-element.elementor-element-890addf .elementor-cta:hover::after,
body.home .elementor .elementor-element.elementor-element-07c5c00 .elementor-cta:hover::after,
body.home .elementor .elementor-element.elementor-element-21a13e8 .elementor-cta:hover::after{
  background:rgba(0,0,0,.10) !important;
}

body.home .elementor .elementor-element.elementor-element-890addf .elementor-cta:hover .elementor-cta__title,
body.home .elementor .elementor-element.elementor-element-07c5c00 .elementor-cta:hover .elementor-cta__title,
body.home .elementor .elementor-element.elementor-element-21a13e8 .elementor-cta:hover .elementor-cta__title{
  color:var(--global-palm-orange) !important;
}

body.home .elementor .elementor-element.elementor-element-890addf .elementor-cta__button{
  position:absolute !important;
  inset:0 !important;
  opacity:0 !important;
  text-indent:-9999px !important;
  pointer-events:auto !important;
}

/* ==============================
   BLOG / POSTS EXEMPTION
   ============================== */
.elementor-element-9edf2f5 :where(*),
.elementor-element[data-id="9edf2f5"] :where(*),
.elementor-element-a6b8d23 :where(*),
.elementor-element[data-id="a6b8d23"] :where(*),
.elementor .elementor-element.elementor-element-9edf2f5,
.elementor .elementor-element.elementor-element-9edf2f5 *,
.elementor .elementor-element.elementor-element-a6b8d23,
.elementor .elementor-element.elementor-element-a6b8d23 *{
  font-family:'Montserrat', sans-serif !important;
  text-transform:none !important;
  letter-spacing:normal !important;
}

.elementor-element-9edf2f5 :is(h1,h2,h3,h4,h5,h6),
.elementor-element[data-id="9edf2f5"] :is(h1,h2,h3,h4,h5,h6),
.elementor-element-a6b8d23 :is(h1,h2,h3,h4,h5,h6),
.elementor-element[data-id="a6b8d23"] :is(h1,h2,h3,h4,h5,h6),
.elementor .elementor-element.elementor-element-9edf2f5 :is(h1,h2,h3,h4,h5,h6),
.elementor .elementor-element.elementor-element-a6b8d23 :is(h1,h2,h3,h4,h5,h6){
  font-family:'Montserrat', sans-serif !important;
  font-weight:var(--e-global-typography-primary-font-weight, inherit) !important;
}

.elementor-element-9edf2f5 :is(.elementor-button, .wp-block-button__link, button, .button, .btn, a),
.elementor-element[data-id="9edf2f5"] :is(.elementor-button, .wp-block-button__link, button, .button, .btn, a),
.elementor-element-a6b8d23 :is(.elementor-button, .wp-block-button__link, button, .button, .btn, a),
.elementor-element[data-id="a6b8d23"] :is(.elementor-button, .wp-block-button__link, button, .button, .btn, a),
.elementor .elementor-element.elementor-element-9edf2f5 :is(a, .elementor-button, .wp-block-button__link, button, .button, .btn),
.elementor .elementor-element.elementor-element-a6b8d23 :is(a, .elementor-button, .wp-block-button__link, button, .button, .btn){
  font-family:'Montserrat', sans-serif !important;
}

.elementor-element-9edf2f5 :where(*),
.elementor-element[data-id="9edf2f5"] :where(*),
.elementor-element-a6b8d23 :where(*),
.elementor-element[data-id="a6b8d23"] :where(*){
  box-shadow:none !important;
}

/* ==============================
   RESPONSIVE HOMEPAGE
   Keep it simple: one card per row on mobile
   ============================== */
@media (max-width:1024px){
  body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-posts-container.elementor-posts.elementor-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    width:min(920px, calc(100vw - (var(--home-edge-pad) * 2))) !important;
    gap:22px !important;
  }

  body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post{
    grid-column:auto !important;
  }

  body.home .elementor .elementor-element.elementor-element-08bb3b0,
  body.home .elementor .elementor-element.elementor-element-890addf .e-con-inner{
    width:min(920px, calc(100vw - (var(--home-edge-pad) * 2))) !important;
    gap:22px !important;
  }
}

@media (max-width:767px){
  .elementor-element-ee08584,
  .elementor-element-ee08584 .elementor-widget-container,
  .elementor-element-ee08584 .elementor-shortcode,
  #weekly-calendar-container{
    overflow:visible !important;
  }

  #weekly-calendar-container{
    display:grid !important;
    grid-template-columns:44px 1fr 44px !important;
    align-items:center !important;
    gap:8px !important;
    width:min(640px, calc(100vw - 24px)) !important;
    max-width:none !important;
    padding:0 8px !important;
    margin:10px auto 12px !important;
  }

  #weekly-calendar-container #prev-week,
  #weekly-calendar-container #next-week,
  #weekly-calendar-container button[aria-label*="Previous"],
  #weekly-calendar-container button[aria-label*="Next"]{
    position:static !important;
    transform:none !important;
    grid-row:1 !important;
    width:44px !important;
    height:44px !important;
    display:grid !important;
    place-items:center !important;
  }

  #weekly-calendar-buttons{
    grid-column:2 !important;
    grid-row:1 !important;
    display:grid !important;
    grid-template-columns:repeat(3, 1fr) !important;
    grid-auto-rows:92px !important;
    gap:12px !important;
    width:100% !important;
    margin:0 auto !important;
    padding:0 !important;
    overflow:hidden !important;
  }

  #weekly-calendar-buttons .pills-row{
    display:grid !important;
    grid-template-columns:repeat(3, 1fr) !important;
    grid-auto-rows:92px !important;
    gap:12px !important;
    width:100% !important;
    margin:0 auto !important;
    padding:0 !important;
  }

  #weekly-calendar-buttons .day-button[data-day]{
    width:100% !important;
    height:100% !important;
    border-radius:14px !important;
  }

  .elementor-element-ee08584 #events-container,
  .elementor-element-ee08584 #events-container .events-grid{
    display:block !important;
    grid-template-columns:none !important;
    grid-auto-flow:row !important;
    column-gap:0 !important;
    row-gap:0 !important;
  }

  .elementor-element-ee08584 #events-container .event-item{
    display:block !important;
    float:none !important;
    clear:both !important;
    width:100% !important;
    max-width:min(640px, calc(100vw - 24px)) !important;
    margin:0 auto 28px !important;
    padding:0 !important;
    background:transparent !important;
    border-radius:0 !important;
    box-shadow:none !important;
  }

  .elementor-element-ee08584 #events-container .film-link,
  .elementor-element-ee08584 #events-container .film-poster{
    display:block !important;
    width:100% !important;
    height:auto !important;
    max-width:none !important;
    margin:0 !important;
    border-radius:12px !important;
  }

  .elementor-element-ee08584 #events-container .event-details{
    text-align:center !important;
    padding-top:10px !important;
  }

  .elementor-element-ee08584 #events-container .showtimes-container,
  #events-container .showtimes-container{
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    gap:8px !important;
    margin-top:.5rem !important;
  }

  #events-container{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    box-sizing:border-box !important;
  }

  /* Film series: single block per row */
  body.home .elementor .elementor-element.elementor-element-9edf2f5 .e-con-inner,
  body.home .elementor .elementor-element.elementor-element-08bb3b0,
  body.home .elementor .elementor-element.elementor-element-890addf .e-con-inner{
    width:min(640px, calc(100vw - 24px)) !important;
    max-width:none !important;
  }

  body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-posts-container.elementor-posts.elementor-grid{
    grid-template-columns:1fr !important;
    width:100% !important;
    gap:var(--home-mobile-gap) !important;
  }

  body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post{
    grid-column:auto !important;
  }

  body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post__card{
    aspect-ratio:16 / 10 !important;
  }

  body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post__title a{
    font-size:clamp(20px, 6vw, 28px) !important;
  }

  /* Lower non-film cards: single block per row */
  body.home .elementor .elementor-element.elementor-element-08bb3b0{
    grid-template-columns:1fr !important;
    gap:20px !important;
    margin-top:56px !important;
  }

  body.home .elementor .elementor-element.elementor-element-890addf{
    margin-top:56px !important;
  }

  body.home .elementor .elementor-element.elementor-element-890addf .e-con-inner{
    grid-template-columns:1fr !important;
    gap:20px !important;
  }

  body.home .elementor .elementor-element.elementor-element-08bb3b0 .wp-caption,
  body.home .elementor .elementor-element.elementor-element-890addf .elementor-cta,
  body.home .elementor .elementor-element.elementor-element-07c5c00 .elementor-cta,
  body.home .elementor .elementor-element.elementor-element-21a13e8 .elementor-cta{
    aspect-ratio:16 / 10 !important;
  }
}

/* FOOTER — remove excess space above bottom legal menu */
.elementor-1056 .elementor-element-2c97805d > .e-con-inner{
  gap:0px !important;
}

.elementor-1056 .elementor-element-8c0dc6d{
  margin-top:0 !important;
  padding-top:0 !important;
  min-height:0 !important;
}

.elementor-1056 .elementor-element-8c0dc6d > .e-con-inner{
  margin-top:0 !important;
  padding-top:0 !important;
  min-height:0 !important;
}

.elementor-1056 .elementor-element-bd474e8,
.elementor-1056 .elementor-element-bd474e8 > .elementor-widget-container{
  margin-top:0 !important;
  padding-top:0 !important;
}

/* ==============================
   EVENTIVE CHECKOUT — FINAL SINGLE BLOCK
   Replace all prior checkout blocks with this one
   ============================== */

/* lighter background blur */
body:has(.eventive-modal[style*="display: block"])::before,
body:has(.eventive-checkout)::before,
body:has(.Eventive--Checkout)::before,
body:has(.Eventive--LoginPage)::before,
body:has(.modal.show)::before,
body:has(.elementor-lightbox)::before,
body.modal-open::before{
  backdrop-filter: blur(3px) brightness(.82) !important;
  background: rgba(0,0,0,.18) !important;
}

/* true modal host */
body .eventive-background-container{
  position: relative !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: min(1180px, calc(100vw - 56px)) !important;
  max-width: none !important;
  margin: 24px 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 24px !important;
  overflow: visible !important;
}

/* visible checkout box */
body .eventive-content-container{
  width: 100% !important;
  margin: 0 !important;
  padding: 18px 28px 28px !important;
  box-sizing: border-box !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0)),
    rgba(0,0,0,.96) !important;
  border: 1px solid rgba(212,175,55,.20) !important;
  border-radius: 24px !important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.035),
    0 18px 50px rgba(0,0,0,.42) !important;
  overflow: hidden !important;
  color: #fff !important;
}

/* kill last white host remnants */
body .eventive-background-container,
body .eventive-content-container,
body .Eventive--Checkout,
body .Eventive--Checkout > div,
body .Eventive--Checkout > div > div{
  background-color: transparent !important;
  color: #fff !important;
}

body .Eventive--Checkout h2{
  margin: 2px 0 22px !important;
  font-size: clamp(34px, 3vw, 50px) !important;
  font-weight: 400 !important;
  letter-spacing: .01em !important;
  color: #fff !important;
}

/* table */
body .Eventive--Checkout table.order-quantity-table,
body .Eventive--Checkout table.order-quantity-table thead,
body .Eventive--Checkout table.order-quantity-table tbody,
body .Eventive--Checkout table.order-quantity-table tr,
body .Eventive--Checkout table.order-quantity-table th,
body .Eventive--Checkout table.order-quantity-table td{
  background: transparent !important;
  color: #fff !important;
  border-color: rgba(255,255,255,.10) !important;
}

body .Eventive--Checkout table.order-quantity-table{
  table-layout: fixed !important;
  width: 100% !important;
}

/* column sizing so controls actually fit */
body .Eventive--Checkout th.order-quantity-item,
body .Eventive--Checkout td[class*="order-quantity-name"],
body .Eventive--Checkout td[class*="order-quantity-item"]{
  width: 31% !important;
}

body .Eventive--Checkout th.order-quantity-quantity,
body .Eventive--Checkout td[class*="order-quantity-quantity"]{
  width: 190px !important;
}

body .Eventive--Checkout th.order-quantity-price,
body .Eventive--Checkout td[class*="order-quantity-variable-price"],
body .Eventive--Checkout td[class*="order-quantity-price-"]{
  width: 18% !important;
}

body .Eventive--Checkout th.order-quantity-fee,
body .Eventive--Checkout td[class*="order-quantity-fee"]{
  width: 14% !important;
}

body .Eventive--Checkout th.order-quantity-total,
body .Eventive--Checkout td[class*="order-quantity-total"]{
  width: 16% !important;
}

/* stronger text sizing */
body .Eventive--Checkout table.order-quantity-table th{
  font-size: 17px !important;
  color: rgba(255,255,255,.70) !important;
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

body .Eventive--Checkout table.order-quantity-table td{
  font-size: 17px !important;
  padding-top: 18px !important;
  padding-bottom: 18px !important;
  vertical-align: middle !important;
}

body .Eventive--Checkout td[class*="order-quantity-name"] > div > div:first-child,
body .Eventive--Checkout .subitem-name{
  font-size: 18px !important;
  line-height: 1.1 !important;
  margin-bottom: .4em !important;
  color: #fff !important;
}

body .Eventive--Checkout td[class*="order-quantity-name"] > div > div:nth-child(2),
body .Eventive--Checkout td[class*="order-quantity-name"] > div > div:nth-child(3),
body .Eventive--Checkout .subitem-subname{
  font-size: 15px !important;
  line-height: 1.15 !important;
  color: rgba(255,255,255,.78) !important;
}

body .Eventive--Checkout td[class*="order-quantity-variable-price"] span,
body .Eventive--Checkout td[class*="order-quantity-fee"] span,
body .Eventive--Checkout td[class*="order-quantity-total"] span{
  font-size: 17px !important;
  color: #fff !important;
}

/* quantity controls */
body .Eventive--Checkout td[class*="order-quantity-quantity"]{
  overflow: visible !important;
}

body .Eventive--Checkout td[class*="order-quantity-quantity"] > div{
  margin-left: 0 !important;
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
}

body .Eventive--Checkout td[class*="order-quantity-quantity"] button{
  width: 56px !important;
  height: 56px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--global-palm-orange) !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
}

body .Eventive--Checkout td[class*="order-quantity-quantity"] button > div{
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body .Eventive--Checkout td[class*="order-quantity-quantity"] button span{
  color: #fff !important;
  font-size: 20px !important;
  line-height: 1 !important;
}

body .Eventive--Checkout td[class*="order-quantity-quantity"] div:has(> input[name="quantity"]){
  width: 28px !important;
  height: 56px !important;
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
}

body .Eventive--Checkout td[class*="order-quantity-quantity"] input[name="quantity"]{
  width: 100% !important;
  height: 56px !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: center !important;
  font-size: 20px !important;
  line-height: 56px !important;
  color: #fff !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* donation row */
body .Eventive--Checkout .subitem-donations{
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 12px !important;
}

body .Eventive--Checkout .subitem-donations button{
  width: 118px !important;
  min-width: 118px !important;
  height: 50px !important;
  line-height: 50px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--global-palm-orange) !important;
  box-shadow: none !important;
}

body .Eventive--Checkout .subitem-donations button > div{
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body .Eventive--Checkout .subitem-donations button span{
  padding: 0 !important;
  margin: 0 !important;
  color: #fff !important;
  font-size: 16px !important;
  line-height: 1 !important;
}

/* right-side donation amount box */
body .Eventive--Checkout td.order-quantity-total-1,
body .Eventive--Checkout td.order-quantity-total-1 *{
  box-shadow: none !important;
}

body .Eventive--Checkout td.order-quantity-total-1 .subitem-total{
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

body .Eventive--Checkout td.order-quantity-total-1 .subitem-total > div{
  width: 126px !important;
  height: 54px !important;
  margin: 0 !important;
  padding: 0 16px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  background: rgba(255,255,255,.035) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  border-radius: 18px !important;
  box-sizing: border-box !important;
}

body .Eventive--Checkout td.order-quantity-total-1 .subitem-total > div > div{
  display: none !important;
}

body .Eventive--Checkout td.order-quantity-total-1 input[name="currency"]{
  width: 100% !important;
  height: 54px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  color: #fff !important;
  font-size: 17px !important;
  line-height: 54px !important;
  box-shadow: none !important;
}

/* discount link / auth copy */
body .Eventive--Checkout div:has(> .eventive-discount-code){
  margin-top: 14px !important;
  margin-bottom: 26px !important;
  text-align: right !important;
}

body .Eventive--Checkout .eventive-discount-code,
body .Eventive--Checkout .eventive-discount-code span{
  font-size: 16px !important;
  color: rgba(255,255,255,.88) !important;
}

body .Eventive--Checkout .account-creation-container > div{
  max-width: 520px !important;
  margin: 0 auto !important;
}

body .Eventive--Checkout .account-creation-container > div > div:first-child{
  font-size: 16px !important;
  line-height: 1.35 !important;
  color: #fff !important;
}

/* email field + buttons */
body .Eventive--Checkout input[type="email"]{
  color: #fff !important;
  background: transparent !important;
}

body .Eventive--Checkout .account-creation-container button{
  min-width: 180px !important;
  height: 50px !important;
  line-height: 50px !important;
  border-radius: 999px !important;
}

/* responsive */
@media (max-width: 767px){
  body .eventive-background-container{
    width: calc(100vw - 24px) !important;
    margin: 12px 0 !important;
  }

  body .eventive-content-container{
    padding: 14px 14px 18px !important;
    border-radius: 18px !important;
  }

  body .Eventive--Checkout th.order-quantity-quantity,
  body .Eventive--Checkout td[class*="order-quantity-quantity"]{
    width: 160px !important;
  }

  body .Eventive--Checkout td[class*="order-quantity-quantity"] button{
    width: 50px !important;
    height: 50px !important;
  }

  body .Eventive--Checkout .subitem-donations button{
    width: 100px !important;
    min-width: 100px !important;
    height: 46px !important;
  }
}

/* ==============================
   EVENTIVE CHECKOUT — OPAQUE SURFACE REPAIR
   ============================== */

/* keep only the OUTER host transparent */
body .eventive-background-container{
  background: transparent !important;
  background-color: transparent !important;
}

/* make the actual checkout box opaque again */
body .eventive-content-container{
  background-color: rgba(0,0,0,.96) !important;
  background-image: linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0)) !important;
}

/* make all real inner surfaces black instead of transparent */
body .Eventive--Checkout,
body .Eventive--Checkout > div,
body .Eventive--Checkout > div > div,
body .Eventive--Checkout .Eventive--OrderQuantitySelect,
body .Eventive--Checkout .Eventive--OrderQuantitySelect > div,
body .Eventive--Checkout .Eventive--OrderQuantitySelect > div > div,
body .Eventive--Checkout .account-creation-container,
body .Eventive--Checkout .account-creation-container > div,
body .Eventive--Checkout form,
body .Eventive--Checkout table.order-quantity-table,
body .Eventive--Checkout table.order-quantity-table thead,
body .Eventive--Checkout table.order-quantity-table tbody,
body .Eventive--Checkout table.order-quantity-table tr,
body .Eventive--Checkout table.order-quantity-table th,
body .Eventive--Checkout table.order-quantity-table td{
  background-color: #000 !important;
  background-image: none !important;
}

/* keep the discount/auth area solid too */
body .Eventive--Checkout div:has(> .eventive-discount-code),
body .Eventive--Checkout .account-creation-container,
body .Eventive--Checkout .account-creation-container > div{
  background-color: #000 !important;
}

/* preserve the classy box look */
body .eventive-content-container{
  border: 1px solid rgba(212,175,55,.20) !important;
  border-radius: 24px !important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.035),
    0 18px 50px rgba(0,0,0,.42) !important;
}

/* ==============================
   EVENTIVE CHECKOUT — MICRO FIXES FOR CHECKOUT 11
   paste at VERY BOTTOM
   ============================== */

/* PINK BOX — center all right-column monetary values */
body .Eventive--Checkout td[class*="order-quantity-total"]{
  text-align:center !important;
  vertical-align:middle !important;
}

body .Eventive--Checkout td[class*="order-quantity-total"] span,
body .Eventive--Checkout td.order-quantity-total-1 input[name="currency"],
body .Eventive--Checkout td.order-quantity-total-2,
body .Eventive--Checkout td.order-quantity-total-3{
  display:inline-block !important;
  width:100% !important;
  text-align:center !important;
}

/* keep the donation amount field centered in its cell */
body .Eventive--Checkout td.order-quantity-total-1 .subitem-total{
  justify-content:center !important;
}

body .Eventive--Checkout td.order-quantity-total-1 .subitem-total > div{
  margin:0 auto !important;
}

/* GREEN BOX — force donation pills into one row */
body .Eventive--Checkout td.order-quantity-price-1,
body .Eventive--Checkout td.order-quantity-price-2{
  overflow:visible !important;
  white-space:nowrap !important;
}

body .Eventive--Checkout .subitem-donations{
  display:flex !important;
  flex-wrap:nowrap !important;
  justify-content:flex-start !important;
  align-items:center !important;
  gap:10px !important;
  width:100% !important;
}

body .Eventive--Checkout .subitem-donations button{
  width:96px !important;
  min-width:96px !important;
  height:44px !important;
  line-height:44px !important;
  margin:0 !important;
  flex:0 0 auto !important;
}

body .Eventive--Checkout .subitem-donations button:last-child{
  width:108px !important;
  min-width:108px !important;
}

/* BLUE BOX — more left padding before email text starts */
body .Eventive--Checkout input[type="email"],
body .Eventive--Checkout input[name="accountLookup"]{
  padding-left:14px !important;
  padding-right:14px !important;
  box-sizing:border-box !important;
}

/* RED BOX — kill the white wrapper behind Continue again */
body .Eventive--Checkout .account-creation-container div[style*="background-color: rgb(255, 255, 255)"]{
  background:transparent !important;
  background-color:transparent !important;
  box-shadow:none !important;
  border:0 !important;
  padding:0 !important;
}

body .Eventive--Checkout .account-creation-container div[style*="background-color: rgb(255, 255, 255)"] > button{
  background:var(--global-palm-orange) !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:999px !important;
}

/* keep the continue pill clean */
body .Eventive--Checkout .account-creation-container button[type="button"],
body .Eventive--Checkout .account-creation-container button{
  background:var(--global-palm-orange) !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:999px !important;
}

/* optional: slightly tighten the discount/auth area after all the above */
body .Eventive--Checkout div:has(> .eventive-discount-code){
  margin-bottom:20px !important;
}

/* ==============================
   EVENTIVE CHECKOUT — LOGGED-IN SCREEN PATCH
   white saved-card box + remove white buy wrapper
   ============================== */

/* 1) Logged-in saved-card notice:
   turn the yellow bars into one clean white notice with black text */
body .Eventive--Checkout div[style*="background-color: rgb(255, 241, 118)"]{
  background: #fff !important;
  background-color: #fff !important;
  color: #000 !important;
  box-shadow: none !important;
  border: 0 !important;
}

body .Eventive--Checkout div[style*="background-color: rgb(255, 241, 118)"] span,
body .Eventive--Checkout div[style*="background-color: rgb(255, 241, 118)"] a{
  color: #000 !important;
}

body .Eventive--Checkout div[style*="background-color: rgb(255, 241, 118)"]:first-child{
  padding: 12px 16px 4px !important;
  margin-top: 10px !important;
  border-radius: 14px 14px 0 0 !important;
  text-align: center !important;
}

body .Eventive--Checkout div[style*="background-color: rgb(255, 241, 118)"][style*="margin-top: -10px"]{
  padding: 4px 16px 12px !important;
  margin-top: 0 !important;
  border-radius: 0 0 14px 14px !important;
  text-align: center !important;
}

/* 2) kill the white wrapper behind BUY */
body .Eventive--Checkout button.eventive-button-cancel + div,
body .Eventive--Checkout button.eventive-button-cancel + div > div{
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  padding: 0 !important;
}

/* keep BUY as a clean orange pill */
body .Eventive--Checkout button.eventive-button-cancel + div button{
  background: var(--global-palm-orange) !important;
  background-color: var(--global-palm-orange) !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 999px !important;
  min-width: 160px !important;
}

body .Eventive--Checkout button.eventive-button-cancel + div button span{
  color: #fff !important;
}

/* optional: keep cancel visually consistent too */
body .Eventive--Checkout .eventive-button-cancel{
  background: var(--global-palm-orange) !important;
  background-color: var(--global-palm-orange) !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 999px !important;
}

body .Eventive--Checkout .eventive-button-cancel span{
  color: #fff !important;
}

/* ==============================
   EVENTIVE CHECKOUT — ACCOUNT CREATION FORM FIX
   ============================== */

/* form width / spacing */
body .Eventive--Checkout .account-creation-form{
  width: min(560px, 100%) !important;
  min-width: 0 !important;
  margin: 0 auto !important;
}

body .Eventive--Checkout .account-creation-form > div[style*="max-width: 380px"]{
  max-width: 560px !important;
  width: 100% !important;
  margin: 18px auto 0 !important;
}

/* intro copy */
body .Eventive--Checkout .account-creation-intro{
  font-size: 18px !important;
  line-height: 1.4 !important;
  color: #fff !important;
  margin-bottom: 12px !important;
}

/* each field block */
body .Eventive--Checkout .account-creation-email,
body .Eventive--Checkout .account-creation-name,
body .Eventive--Checkout .account-creation-password,
body .Eventive--Checkout .account-creation-confirm-password{
  width: 100% !important;
  height: 74px !important;
  display: block !important;
  position: relative !important;
  margin: 0 0 14px !important;
  background: rgba(255,255,255,.03) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 18px !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

/* visible labels */
body .Eventive--Checkout .account-creation-email > div:first-child,
body .Eventive--Checkout .account-creation-name > div:first-child,
body .Eventive--Checkout .account-creation-password > div:first-child,
body .Eventive--Checkout .account-creation-confirm-password > div:first-child{
  position: absolute !important;
  opacity: 1 !important;
  top: 12px !important;
  bottom: auto !important;
  left: 16px !important;
  color: rgba(255,255,255,.62) !important;
  font-size: 13px !important;
  line-height: 1 !important;
  pointer-events: none !important;
  z-index: 2 !important;
}

/* inputs */
body .Eventive--Checkout .account-creation-email input,
body .Eventive--Checkout .account-creation-name input,
body .Eventive--Checkout .account-creation-password input,
body .Eventive--Checkout .account-creation-confirm-password input{
  width: 100% !important;
  height: 100% !important;
  padding: 28px 16px 12px !important;
  margin: 0 !important;
  background: transparent !important;
  color: #fff !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  font-size: 22px !important;
  line-height: 1.2 !important;
  box-sizing: border-box !important;
}

/* disabled email should still be readable */
body .Eventive--Checkout .account-creation-email input[disabled]{
  color: rgba(255,255,255,.78) !important;
  -webkit-text-fill-color: rgba(255,255,255,.78) !important;
}

/* kill old underline junk */
body .Eventive--Checkout .account-creation-email hr,
body .Eventive--Checkout .account-creation-name hr,
body .Eventive--Checkout .account-creation-password hr,
body .Eventive--Checkout .account-creation-confirm-password hr{
  display: none !important;
}

/* edit email button */
body .Eventive--Checkout .account-creation-edit-email{
  right: 12px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  height: 40px !important;
  line-height: 40px !important;
  padding: 0 18px !important;
  background: var(--global-palm-orange) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
}

body .Eventive--Checkout .account-creation-edit-email span{
  color: #fff !important;
  padding: 0 !important;
  font-size: 14px !important;
  line-height: 40px !important;
}

/* terms */
body .Eventive--Checkout .account-creation-terms-and-privacy{
  color: rgba(255,255,255,.72) !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  margin-top: 18px !important;
  margin-bottom: 22px !important;
}

body .Eventive--Checkout .account-creation-terms-and-privacy a{
  color: rgba(255,255,255,.88) !important;
}

/* kill white wrapper behind Register */
body .Eventive--Checkout .account-creation-submit{
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  padding: 0 !important;
}

/* Register button */
body .Eventive--Checkout .account-creation-submit button{
  min-width: 280px !important;
  height: 56px !important;
  line-height: 56px !important;
  padding: 0 26px !important;
  background: var(--global-palm-orange) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body .Eventive--Checkout .account-creation-submit button > div,
body .Eventive--Checkout .account-creation-submit button > div > div{
  height: 56px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body .Eventive--Checkout .account-creation-submit button span{
  padding: 0 !important;
  margin: 0 !important;
  color: #fff !important;
  font-size: 18px !important;
  line-height: 1 !important;
}

/* mobile sanity */
@media (max-width: 767px){
  body .Eventive--Checkout .account-creation-form{
    width: 100% !important;
  }

  body .Eventive--Checkout .account-creation-submit button{
    min-width: 220px !important;
    width: 100% !important;
    max-width: 320px !important;
  }

  body .Eventive--Checkout .account-creation-email input,
  body .Eventive--Checkout .account-creation-name input,
  body .Eventive--Checkout .account-creation-password input,
  body .Eventive--Checkout .account-creation-confirm-password input{
    font-size: 18px !important;
  }
}

/* EVENTIVE CHECKOUT — logged-in notice text black */
body .Eventive--Checkout div[style*="background-color: rgb(255, 241, 118)"],
body .Eventive--Checkout div[style*="background-color: rgb(255, 241, 118)"] *{
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
}

body .Eventive--Checkout div[style*="background-color: rgb(255, 241, 118)"] a{
  color: #000 !important;
  text-decoration-color: #000 !important;
}

/* EVENTIVE CHECKOUT — payment form buy button white-wrapper fix */

body .Eventive--Checkout .Eventive--OrderPaymentWizard div[style*="float: right"] > div{
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  padding: 0 !important;
}

body .Eventive--Checkout .Eventive--OrderPaymentWizard button[type="submit"]{
  background: var(--global-palm-orange) !important;
  background-color: var(--global-palm-orange) !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 999px !important;
  min-width: 190px !important;
  height: 48px !important;
  line-height: 48px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body .Eventive--Checkout .Eventive--OrderPaymentWizard button[type="submit"] > div,
body .Eventive--Checkout .Eventive--OrderPaymentWizard button[type="submit"] > div > div{
  height: 48px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
}

body .Eventive--Checkout .Eventive--OrderPaymentWizard button[type="submit"] span{
  color: #fff !important;
  padding: 0 18px !important;
  margin: 0 !important;
  line-height: 1 !important;
}

/* EVENTIVE CHECKOUT — center the red / blue / green boxed text */

/* RED BOX: header labels centered inside each header cell */
body .Eventive--Checkout th.order-quantity-item,
body .Eventive--Checkout th.order-quantity-quantity,
body .Eventive--Checkout th.order-quantity-price,
body .Eventive--Checkout th.order-quantity-fee,
body .Eventive--Checkout th.order-quantity-total{
  text-align: center !important;
  vertical-align: middle !important;
}

/* BLUE BOX — center ALL price + fee cells, not just row 0 */
body .Eventive--Checkout td[class*="order-quantity-variable-price"],
body .Eventive--Checkout td[class*="order-quantity-fee"]{
  text-align: center !important;
  vertical-align: middle !important;
}

body .Eventive--Checkout td[class*="order-quantity-variable-price"] > div,
body .Eventive--Checkout td[class*="order-quantity-fee"] > div,
body .Eventive--Checkout td[class*="order-quantity-variable-price"] span,
body .Eventive--Checkout td[class*="order-quantity-fee"] span{
  width: 100% !important;
  text-align: center !important;
  margin: 0 auto !important;
}

/* GREEN BOX: bottom total centered inside its cell */
body .Eventive--Checkout td.order-quantity-total-2{
  text-align: center !important;
  vertical-align: middle !important;
}

/* keep the top-row total centered too, for consistency */
body .Eventive--Checkout td.order-quantity-total-0,
body .Eventive--Checkout td.order-quantity-total-0 span,
body .Eventive--Checkout td.order-quantity-total-1,
body .Eventive--Checkout td.order-quantity-total-1 input[name="currency"]{
  text-align: center !important;
}

/* EVENTIVE CHECKOUT — hard-center the green-box final total */
body .Eventive--Checkout td.order-quantity-total-2{
  text-align: center !important;
  vertical-align: middle !important;
  display: table-cell !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body .Eventive--Checkout td.order-quantity-total-2{
  position: relative !important;
}

body .Eventive--Checkout td.order-quantity-total-2::before{
  content: "" !important;
  display: inline-block !important;
  height: 100% !important;
  vertical-align: middle !important;
}

body .Eventive--Checkout td.order-quantity-total-2{
  white-space: nowrap !important;
}

/* EVENTIVE CHECKOUT — email / continue / or cleanup */

/* GREEN BOX — email text sits cleanly inside the pale field */
body .Eventive--Checkout .account-creation-container form > div{
  height: 56px !important;
}

body .Eventive--Checkout .account-creation-container input[type="email"],
body .Eventive--Checkout .account-creation-container input[name="accountLookup"]{
  height: 56px !important;
  line-height: 56px !important;
  padding: 0 22px !important;
  margin-top: 0 !important;
  box-sizing: border-box !important;
  vertical-align: middle !important;
  font-size: 18px !important;
}

/* BLUE BOX — tighter CONTINUE pill, text centered */
body .Eventive--Checkout .account-creation-container button{
  min-width: 150px !important;
  height: 44px !important;
  line-height: 44px !important;
  padding: 0 20px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body .Eventive--Checkout .account-creation-container button > div,
body .Eventive--Checkout .account-creation-container button > div > div{
  height: 44px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
}

body .Eventive--Checkout .account-creation-container button span{
  padding: 0 !important;
  margin: 0 !important;
  line-height: 1 !important;
  display: block !important;
  color: #fff !important;
}

/* RED BOX — remove line + white box, keep only white "or" */
body .Eventive--Checkout .account-creation-container div[style*="border-bottom"]{
  border-bottom: 0 !important;
  line-height: normal !important;
  margin: 20px auto 16px !important;
  width: auto !important;
  text-align: center !important;
}

body .Eventive--Checkout .account-creation-container div[style*="border-bottom"] > span{
  background: transparent !important;
  color: #fff !important;
  padding: 0 !important;
  font-style: italic !important;
  font-family: inherit !important;
  text-transform: lowercase !important;
  font-weight: 400 !important;
  box-shadow: none !important;
}

/* ==============================
   EVENTIVE CHECKOUT — ORDER SUCCESS PAGE POLISH
   RED = kill white button wrappers
   GOLD = center + enlarge ticket summary text
   GREEN = make success headers smaller
   ============================== */

/* GREEN BOX — make these two big headings smaller */
body .Eventive--Checkout > div > h2{
  font-size: clamp(40px, 3.8vw, 58px) !important;
  line-height: 1.08 !important;
  margin: 4px 0 18px !important;
}

body .Eventive--Checkout #Eventive--orderSummary--orderSuccess > div:first-child > h2{
  font-size: clamp(28px, 2.9vw, 46px) !important;
  line-height: 1.1 !important;
  margin: 0 64px 10px 0 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

/* GOLD BOX — center the ticket text block inside the bordered card and make it bigger */
body .Eventive--Checkout
#Eventive--orderSummary--orderSuccess
div[style*="border: 1px solid rgb(204, 204, 204); margin-bottom: 1em;"]{
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

body .Eventive--Checkout
#Eventive--orderSummary--orderSuccess
div[style*="margin-left: 0px; padding: 16px;"]{
  max-width: 560px !important;
  width: auto !important;
  margin: 0 auto !important;
  padding: 24px 20px !important;
  text-align: center !important;
  font-size: 22px !important;
  line-height: 1.25 !important;
}

body .Eventive--Checkout
#Eventive--orderSummary--orderSuccess
div[style*="margin-left: 0px; padding: 16px;"] > div:first-child{
  width: auto !important;
  margin: 0 auto 8px !important;
  text-align: center !important;
  font-size: 24px !important;
  line-height: 1.2 !important;
}

body .Eventive--Checkout
#Eventive--orderSummary--orderSuccess
div[style*="margin-left: 0px; padding: 16px;"]
div[style*="font-size: 14px; line-height: 18px;"]{
  width: auto !important;
  height: auto !important;
  margin: 0 auto !important;
  text-align: center !important;
  font-size: 18px !important;
  line-height: 1.4 !important;
  display: block !important;
}

body .Eventive--Checkout
#Eventive--orderSummary--orderSuccess
div[style*="margin-left: 0px; padding: 16px;"]
div[style*="width: 95%;"]{
  width: auto !important;
}

/* RED BOX — remove white wrapper behind SMS button */
body .Eventive--Checkout
#Eventive--orderSummary--orderSuccess
div:has(> button[disabled]){
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  padding: 0 !important;
}

body .Eventive--Checkout
#Eventive--orderSummary--orderSuccess
button[disabled]{
  background: var(--global-palm-orange) !important;
  background-color: var(--global-palm-orange) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  opacity: 1 !important;
  cursor: default !important;
}

body .Eventive--Checkout
#Eventive--orderSummary--orderSuccess
button[disabled] span{
  color: #fff !important;
}

/* RED BOX — remove white wrapper behind GO BACK */
body .Eventive--Checkout
#Eventive--orderSummary--orderSuccess
div[style*="margin-top: -12px;"] div:has(> button){
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  padding: 0 !important;
}

body .Eventive--Checkout
#Eventive--orderSummary--orderSuccess
div[style*="margin-top: -12px;"] button{
  background: var(--global-palm-orange) !important;
  background-color: var(--global-palm-orange) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
}

body .Eventive--Checkout
#Eventive--orderSummary--orderSuccess
div[style*="margin-top: -12px;"] button span{
  color: #fff !important;
}

/* ==============================
   LIGHTBOX / POPUP FIXES
   ============================== */
.elementor-lightbox{
  z-index:99999 !important;
}

.menu-item-3644 > ul.sub-menu.elementor-nav-menu--dropdown.sm-nowrap,
.elementor-nav-menu--dropdown .menu-item-has-children > ul.sub-menu.elementor-nav-menu--dropdown.sm-nowrap{
  top:16.2px !important;
  margin-top:0 !important;
}

.eventive-modal,
.eventive-modal *[class*="checkout"],
.eventive-modal-content,
.elementor-lightbox,
.elementor-lightbox *[class*="dialog"],
div[class*="eventive-modal"],
div[class*="eventive-checkout"],
div[class*="modal"]{
  border:none !important;
  outline:none !important;
  box-shadow:none !important;
  background-clip:border-box !important;
}

/* keep body locking ONLY for actual Eventive / generic modals
   NOT for Elementor lightbox, since Elementor leaves that node in the DOM */
body:has(.eventive-modal[style*="display: block"]),
body:has(.eventive-checkout),
body:has(.Eventive--Checkout),
body:has(.Eventive--LoginPage),
body:has(.modal.show),
body.modal-open{
  overflow:hidden !important;
}

body:has(.eventive-modal[style*="display: block"])::before,
body:has(.eventive-checkout)::before,
body:has(.Eventive--Checkout)::before,
body:has(.Eventive--LoginPage)::before,
body:has(.modal.show)::before,
body.modal-open::before{
  content:"";
  position:fixed;
  inset:0;
  backdrop-filter:blur(10px) brightness(.6);
  background:rgba(0,0,0,.35);
  z-index:99998 !important;
  pointer-events:none !important;
  transition:all .3s ease;
}

.eventive-modal,
.eventive-modal-content,
div[class*="eventive-checkout"],
div[class*="modal"]{
  position:relative !important;
  z-index:99999 !important;
}

/* ELEMENTOR LIGHTBOX — self-contained viewport overlay */
.elementor-lightbox{
  position:fixed !important;
  inset:0 !important;
  width:100vw !important;
  height:100vh !important;
  background:rgba(0,0,0,.94) !important;
  overflow:hidden !important;
}

/* fill viewport cleanly */
.elementor-lightbox .dialog-widget-content.dialog-lightbox-widget-content{
  position:fixed !important;
  inset:0 !important;
  top:0 !important;
  left:0 !important;
  width:100vw !important;
  height:100vh !important;
  padding:18px 24px 24px !important;
  box-sizing:border-box !important;
  background:transparent !important;
}

.elementor-lightbox .dialog-header.dialog-lightbox-header,
.elementor-lightbox .dialog-buttons-wrapper.dialog-lightbox-buttons-wrapper{
  display:none !important;
}

.elementor-lightbox .dialog-message.dialog-lightbox-message{
  width:100% !important;
  height:100% !important;
  margin:0 !important;
}

/* slideshow structure */
.elementor-lightbox .swiper{
  width:100% !important;
  height:100% !important;
}

.elementor-lightbox .swiper-wrapper{
  height:100% !important;
}

.elementor-lightbox .swiper-slide{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:100% !important;
}

.elementor-lightbox .swiper-zoom-container{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
}

/* actual image */
.elementor-lightbox .elementor-lightbox-image{
  display:block !important;
  width:auto !important;
  height:auto !important;
  max-width:94vw !important;
  max-height:calc(100vh - 56px) !important;
  object-fit:contain !important;
  margin:0 auto !important;
}

/* close button stays pinned */
.elementor-lightbox .dialog-close-button{
  position:fixed !important;
  top:18px !important;
  right:18px !important;
  z-index:100000 !important;
  width:auto !important;
  height:auto !important;
}

/* nav arrows stay centered to viewport */
.elementor-lightbox .elementor-swiper-button{
  position:fixed !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  z-index:100000 !important;
}

.elementor-lightbox .elementor-swiper-button-prev{
  left:18px !important;
}

.elementor-lightbox .elementor-swiper-button-next{
  right:18px !important;
}

/* keep title/footer readable but out of the way */
.elementor-lightbox .elementor-slideshow__footer{
  position:fixed !important;
  left:0 !important;
  right:0 !important;
  bottom:10px !important;
  z-index:100000 !important;
  background:transparent !important;
  pointer-events:none !important;
}

.elementor-lightbox .elementor-slideshow__title,
.elementor-lightbox .elementor-slideshow__description,
.elementor-lightbox .elementor-slideshow__counter{
  text-shadow:0 2px 10px rgba(0,0,0,.55) !important;
}

/* mobile tightening */
@media (max-width:767px){
  .elementor-lightbox .dialog-widget-content.dialog-lightbox-widget-content{
    padding:14px 12px 18px !important;
  }

  .elementor-lightbox .elementor-lightbox-image{
    max-width:96vw !important;
    max-height:calc(100vh - 48px) !important;
  }

  .elementor-lightbox .dialog-close-button{
    top:12px !important;
    right:12px !important;
  }

  .elementor-lightbox .elementor-swiper-button-prev{
    left:8px !important;
  }

  .elementor-lightbox .elementor-swiper-button-next{
    right:8px !important;
  }
}

/* ELEMENTOR LIGHTBOX — move caption below image */
.elementor-lightbox .dialog-message.dialog-lightbox-message{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
}

.elementor-lightbox .swiper{
  flex:0 1 auto !important;
  width:100% !important;
  height:auto !important;
}

.elementor-lightbox .swiper-wrapper,
.elementor-lightbox .swiper-slide,
.elementor-lightbox .swiper-zoom-container{
  height:auto !important;
}

.elementor-lightbox .elementor-lightbox-image{
  max-height:calc(100vh - 110px) !important;
}

.elementor-lightbox .elementor-slideshow__footer{
  position:static !important;
  left:auto !important;
  right:auto !important;
  bottom:auto !important;
  width:auto !important;
  margin:10px auto 0 !important;
  padding:0 !important;
  text-align:center !important;
  background:transparent !important;
  pointer-events:none !important;
}

.elementor-lightbox .elementor-slideshow__title,
.elementor-lightbox .elementor-slideshow__description{
  margin:0 !important;
  text-align:center !important;
}

/* EVENTIVE CHECKOUT — make the whole overlay smaller */
@media (min-width: 768px){
  body .eventive-background-container{
    transform: translateX(-50%) scale(0.88) !important;
    transform-origin: top center !important;
    margin: 8px 0 !important;
  }
}

/* HOMEPAGE — logged-in owned-ticket state
   Scan Ticket pill + overflow (...) pill */
.elementor-element-ee08584 .eventive-native-year-round .eventive__ticket-list-item__button-container{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:10px !important;
  width:100% !important;
}

/* kill the default white wrapper around Scan Ticket */
.elementor-element-ee08584 .eventive-native-year-round .eventive__ticket-list-item__button-container > .eventive__universal_ticket-button__button{
  display:block !important;
  margin:0 !important;
  min-width:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  border-radius:0 !important;
}

/* Scan Ticket pill */
.elementor-element-ee08584 .eventive-native-year-round .eventive__ticket-list-item__button-container > .eventive__universal_ticket-button__button > button{
  width:auto !important;
  min-width:170px !important;
  height:44px !important;
  line-height:44px !important;
  padding:0 22px !important;
  border-radius:999px !important;
  background:var(--global-palm-orange) !important;
  color:#fff !important;
  box-shadow:none !important;
  text-align:center !important;
  transition:background-color .2s ease, transform .2s ease, box-shadow .2s ease !important;
}

.elementor-element-ee08584 .eventive-native-year-round .eventive__ticket-list-item__button-container > .eventive__universal_ticket-button__button > button:hover{
  background:color-mix(in srgb, var(--global-palm-orange) 85%, #000) !important;
  transform:translateY(-1px) !important;
  box-shadow:
    0 0 18px color-mix(in srgb, var(--global-palm-orange) 55%, transparent) !important,
    0 6px 14px rgba(0,0,0,.4) !important;
}

.elementor-element-ee08584 .eventive-native-year-round .eventive__ticket-list-item__button-container > .eventive__universal_ticket-button__button > button > div,
.elementor-element-ee08584 .eventive-native-year-round .eventive__ticket-list-item__button-container > .eventive__universal_ticket-button__button > button > div > div{
  height:44px !important;
  border-radius:999px !important;
  background:transparent !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.elementor-element-ee08584 .eventive-native-year-round .eventive__ticket-list-item__button-container > .eventive__universal_ticket-button__button > button span{
  color:#fff !important;
  padding:0 !important;
  margin:0 !important;
  line-height:1 !important;
  letter-spacing:0 !important;
}

/* remove QR icon */
.elementor-element-ee08584 .eventive-native-year-round .eventive__ticket-list-item__button-container .icon-qrcode{
  display:none !important;
}

/* center the ... button below the pill */
.elementor-element-ee08584 .eventive-native-year-round .eventive__ticket-list-item__button-container > div:last-child{
  display:block !important;
  position:static !important;
  margin:0 !important;
  background:transparent !important;
}

/* make the ... button a clean white pill */
.elementor-element-ee08584 .eventive-native-year-round .eventive__ticket-list-item__button-container > div:last-child > button{
  width:68px !important;
  min-width:68px !important;
  height:40px !important;
  line-height:40px !important;
  padding:0 14px !important;
  border-radius:999px !important;
  background:#fff !important;
  color:#000 !important;
  box-shadow:none !important;
  text-align:center !important;
  transition:background-color .2s ease, transform .2s ease, box-shadow .2s ease !important;
}

.elementor-element-ee08584 .eventive-native-year-round .eventive__ticket-list-item__button-container > div:last-child > button:hover{
  background:#f3f3f3 !important;
  transform:translateY(-1px) !important;
  box-shadow:0 6px 14px rgba(0,0,0,.22) !important;
}

.elementor-element-ee08584 .eventive-native-year-round .eventive__ticket-list-item__button-container > div:last-child > button > div,
.elementor-element-ee08584 .eventive-native-year-round .eventive__ticket-list-item__button-container > div:last-child > button span{
  height:40px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
}

.elementor-element-ee08584 .eventive-native-year-round .eventive__ticket-list-item__button-container > div:last-child svg{
  width:20px !important;
  height:5px !important;
}

.elementor-element-ee08584 .eventive-native-year-round .eventive__ticket-list-item__button-container > div:last-child svg circle{
  fill:#000 !important;
}

/* PATCH — restore normal showtime pills so they don't look squeezed */
.elementor-element-ee08584 .eventive-native-year-round 
.eventive__ticket-button__container button,
.elementor-element-ee08584 .eventive-native-year-round 
.eventive__ticket-button__button button,
.elementor-element-ee08584 .eventive-native-year-round 
.eventive__universal_ticket-button__button button{
  height:44px !important;
  line-height:44px !important;
  border-radius:999px !important;
}

.elementor-element-ee08584 .eventive-native-year-round 
.eventive__ticket-button__container button > div,
.elementor-element-ee08584 .eventive-native-year-round 
.eventive__ticket-button__button button > div,
.elementor-element-ee08584 .eventive-native-year-round 
.eventive__universal_ticket-button__button button > div,
.elementor-element-ee08584 .eventive-native-year-round 
.eventive__ticket-button__container button > div > div,
.elementor-element-ee08584 .eventive-native-year-round 
.eventive__ticket-button__button button > div > div,
.elementor-element-ee08584 .eventive-native-year-round 
.eventive__universal_ticket-button__button button > div > div{
  height:44px !important;
  border-radius:999px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.elementor-element-ee08584 .eventive-native-year-round 
.eventive__ticket-button__container button span,
.elementor-element-ee08584 .eventive-native-year-round 
.eventive__ticket-button__button button span,
.elementor-element-ee08584 .eventive-native-year-round 
.eventive__universal_ticket-button__button button span{
  line-height:1 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}

/* then re-assert the owned-ticket stack so only that state stays customized */
.elementor-element-ee08584 .eventive-native-year-round .eventive__ticket-list-item__button-container{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  gap:10px !important;
  width:100% !important;
}

.elementor-element-ee08584 .eventive-native-year-round .eventive__ticket-list-item__button-container > .eventive__universal_ticket-button__button{
  display:block !important;
  margin:0 !important;
  min-width:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  border-radius:0 !important;
}

.elementor-element-ee08584 .eventive-native-year-round .eventive__ticket-list-item__button-container > .eventive__universal_ticket-button__button > button{
  min-width:170px !important;
  padding:0 22px !important;
  background:var(--global-palm-orange) !important;
  color:#fff !important;
}

.elementor-element-ee08584 .eventive-native-year-round .eventive__ticket-list-item__button-container .icon-qrcode{
  display:none !important;
}

.elementor-element-ee08584 .eventive-native-year-round .eventive__ticket-list-item__button-container > div:last-child > button{
  width:68px !important;
  min-width:68px !important;
  height:40px !important;
  line-height:40px !important;
  border-radius:999px !important;
  background:#fff !important;
  color:#000 !important;
}

/* SCAN TICKET MODAL — force the QR itself onto a white plate */
.scan-tickets-carousel [style*="/qr.svg"]{
  background-color:#fff !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  background-size:contain !important;
  border-radius:18px !important;
  box-sizing:border-box !important;
  padding:22px !important;
  opacity:1 !important;
  filter:none !important;
  mix-blend-mode:normal !important;
  isolation:isolate !important;
}

/* make sure the immediate slide wrappers are not dimming the QR */
.scan-tickets-carousel .slider-frame,
.scan-tickets-carousel .slider-list,
.scan-tickets-carousel .slider-list > div,
.scan-tickets-carousel .slider-list > div > div{
  opacity:1 !important;
  filter:none !important;
  mix-blend-mode:normal !important;
}

/* keep the ticket details readable below */
.scan-tickets-carousel strong,
.scan-tickets-carousel div{
  -webkit-text-fill-color:inherit !important;
}

.elementor-location-header .elementor-widget-social-icons .elementor-icon,
.elementor-location-header .elementor-widget-social-icons .elementor-icon i,
.elementor-location-header .elementor-widget-social-icons .elementor-icon svg,
.elementor-location-header .elementor-widget-social-icons .elementor-icon svg *{
  color:#fff !important;
  fill:#fff !important;
}

/* EVENTIVE CHECKOUT — actual donation field + bottom total centering fix */

body .Eventive--Checkout td.order-quantity-total-2,
body .Eventive--Checkout td.order-quantity-total-3{
  display: table-cell !important;
  text-align: center !important;
  vertical-align: middle !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

/* donation input wrapper */
body .Eventive--Checkout td.order-quantity-total-2 .subitem-total{
  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  margin: 0 !important;
}

body .Eventive--Checkout td.order-quantity-total-2 .subitem-total > div{
  width: 126px !important;
  margin: 0 auto !important;
  display: block !important;
}

body .Eventive--Checkout td.order-quantity-total-2 input[name="currency"]{
  width: 100% !important;
  text-align: center !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* bottom grand total */
body .Eventive--Checkout td.order-quantity-total-3,
body .Eventive--Checkout td.order-quantity-total-3 *{
  text-align: center !important;
}

/* Current Calendar only — more robust target */
body.home .elementor .elementor-element.elementor-element-08bb3b0 > .elementor-element:last-child .wp-caption .wp-caption-text,
body.home .elementor .elementor-element.elementor-element-08bb3b0 > .elementor-element:last-child .wp-caption .widget-image-caption{
  background:
    radial-gradient(
      circle at center,
      rgba(0,0,0,.42) 0%,
      rgba(0,0,0,.26) 32%,
      rgba(0,0,0,0) 68%
    ) !important;
  color:#fff !important;
  text-shadow:
    0 2px 8px rgba(0,0,0,.45),
    0 0 18px rgba(0,0,0,.35) !important;
}

body.home .elementor .elementor-element.elementor-element-08bb3b0 > .elementor-element:last-child .wp-caption:hover .wp-caption-text,
body.home .elementor .elementor-element.elementor-element-08bb3b0 > .elementor-element:last-child .wp-caption:hover .widget-image-caption{
  color:#fff !important;
}


/* CURRENT CALENDAR ONLY — remove caption box, darken image itself */
body.home .elementor .elementor-element.elementor-element-08bb3b0 .elementor-element.elementor-element-10813aa .widget-image-caption,
body.home .elementor .elementor-element.elementor-element-08bb3b0 .elementor-element.elementor-element-10813aa .wp-caption-text,
body.home .elementor .elementor-element.elementor-element-08bb3b0 .elementor-element.elementor-element-10813aa figcaption{
  background:transparent !important;
  box-shadow:none !important;
}

/* remove any old pseudo box behind the text */
body.home .elementor .elementor-element.elementor-element-08bb3b0 .elementor-element.elementor-element-10813aa .widget-image-caption::before,
body.home .elementor .elementor-element.elementor-element-08bb3b0 .elementor-element.elementor-element-10813aa .wp-caption-text::before,
body.home .elementor .elementor-element.elementor-element-08bb3b0 .elementor-element.elementor-element-10813aa figcaption::before{
  content:none !important;
  display:none !important;
}

/* actually darken the image */
body.home .elementor .elementor-element.elementor-element-08bb3b0 .elementor-element.elementor-element-10813aa .wp-caption img{
  filter:brightness(.68) !important;
}

/* keep it dark on hover too */
body.home .elementor .elementor-element.elementor-element-08bb3b0 .elementor-element.elementor-element-10813aa .wp-caption:hover img{
  filter:brightness(.68) !important;
}

/* SAFARI SHOWTIME CENTERING FIX — homepage year-round widget */
.elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes,
.elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex{
  display:flex !important;
flex-direction:row !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
  align-items:center !important;
}

.elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes .eventive__ticket-button__container,
.elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes .eventive__ticket-button__button,
.elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes .eventive__universal_ticket-button__button,
.elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex .eventive__ticket-button__container,
.elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex .eventive__ticket-button__button,
.elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex .eventive__universal_ticket-button__button{
  display:flex !important;
  justify-content:center !important;
  width:100% !important;
}

.elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes .eventive__ticket-button__container button,
.elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes .eventive__ticket-button__button button,
.elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes .eventive__universal_ticket-button__button button,
.elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex .eventive__ticket-button__container button,
.elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex .eventive__ticket-button__button button,
.elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex .eventive__universal_ticket-button__button button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  -webkit-appearance:none !important;
  appearance:none !important;
}

.elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes .eventive__ticket-button__container button > div,
.elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes .eventive__ticket-button__button button > div,
.elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes .eventive__universal_ticket-button__button button > div,
.elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes .eventive__ticket-button__container button > div > div,
.elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes .eventive__ticket-button__button button > div > div,
.elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes .eventive__universal_ticket-button__button button > div > div,
.elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex .eventive__ticket-button__container button > div,
.elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex .eventive__ticket-button__button button > div,
.elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex .eventive__universal_ticket-button__button button > div,
.elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex .eventive__ticket-button__container button > div > div,
.elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex .eventive__ticket-button__button button > div > div,
.elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex .eventive__universal_ticket-button__button button > div > div{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-width:0 !important;
}

.elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes .eventive__ticket-button__container button span,
.elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes .eventive__ticket-button__button button span,
.elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes .eventive__universal_ticket-button__button button span,
.elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex .eventive__ticket-button__container button span,
.elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex .eventive__ticket-button__button button span,
.elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex .eventive__universal_ticket-button__button button span{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  margin:0 auto !important;
  text-align:center !important;
  line-height:1 !important;
  white-space:nowrap !important;
}

/* SAFARI SHOWTIME CENTERING FIX — remove giant vertical gaps */
.elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes,
.elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex{
  justify-content:flex-start !important;
  align-content:flex-start !important;
  gap:12px !important;
  row-gap:12px !important;
  column-gap:12px !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
}

.elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes .eventive__ticket-button__container,
.elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes .eventive__ticket-button__button,
.elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes .eventive__universal_ticket-button__button,
.elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex .eventive__ticket-button__container,
.elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex .eventive__ticket-button__button,
.elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex .eventive__universal_ticket-button__button{
  width:auto !important;
  flex:0 0 auto !important;
  margin:0 !important;
}

/* =========================================================
   EVENTIVE CHECKOUT — MOBILE STACKED / CENTERED REBUILD
   replace the most recent mobile checkout block with this
   ========================================================= */
@media (max-width: 767px){

  /* shell */
  body .Eventive--Dialog.eventive-widget-container{
    padding-top: 0 !important;
    overflow-y: auto !important;
    background: rgba(0,0,0,.78) !important;
  }

  body .Eventive--Dialog.eventive-widget-container > div > div[data-iframe-height]{
    width: 100% !important;
    max-width: none !important;
    margin: 0 auto !important;
    padding-bottom: 28px !important;
    transform: none !important;
  }

  /* kill the framed outer box */
  body .eventive-background-container{
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  body .eventive-content-container{
    background: #000 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 10px 16px 24px !important;
    overflow: visible !important;
  }

  body .Eventive--Checkout,
  body .Eventive--Checkout > div,
  body .Eventive--Checkout > div > div,
  body .Eventive--Checkout .Eventive--OrderQuantitySelect,
  body .Eventive--Checkout .Eventive--OrderQuantitySelect > div{
    background: #000 !important;
  }

  /* title */
  body .Eventive--Checkout h2{
    margin: 0 0 16px !important;
    text-align: center !important;
    font-size: clamp(24px, 8.5vw, 36px) !important;
    line-height: 1.02 !important;
    font-weight: 400 !important;
  }

  /* turn the table into stacked mobile rows */
  body .Eventive--Checkout .Eventive--OrderQuantitySelect > div > table,
  body .Eventive--Checkout .Eventive--OrderQuantitySelect > div > table > tbody{
    display: block !important;
    width: 100% !important;
    border: 0 !important;
  }

  body .Eventive--Checkout .Eventive--OrderQuantitySelect > div > table{
    margin: 0 auto 10px !important;
    text-align: center !important;
  }

  body .Eventive--Checkout .Eventive--OrderQuantitySelect > div > table tr{
    display: block !important;
    width: 100% !important;
    padding: 14px 0 !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  body .Eventive--Checkout .Eventive--OrderQuantitySelect > div > table td{
    display: block !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    text-align: center !important;
  }

  /* label ABOVE value */
  body .Eventive--Checkout td[class*="label-"]{
    margin: 0 0 10px !important;
    color: rgba(255,255,255,.72) !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
    font-size: 14px !important;
    line-height: 1.05 !important;
  }

  /* content blocks */
  body .Eventive--Checkout td[class*="name-"],
  body .Eventive--Checkout td[class*="amount-"],
  body .Eventive--Checkout td[class*="total-"]:not([class*="label-"]){
    margin: 0 auto !important;
    text-align: center !important;
  }

  /* film / donation title copy */
  body .Eventive--Checkout td[class*="item-name-"] > div{
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    width: 100% !important;
    text-align: center !important;
  }

  body .Eventive--Checkout td[class*="item-name-"] > div > div:first-child,
  body .Eventive--Checkout .subitem-name{
    font-size: 18px !important;
    line-height: 1.08 !important;
    margin: 0 !important;
    color: #fff !important;
    max-width: 320px !important;
    text-align: center !important;
  }

  body .Eventive--Checkout td[class*="item-name-"] > div > div:nth-child(2),
  body .Eventive--Checkout td[class*="item-name-"] > div > div:nth-child(3),
  body .Eventive--Checkout .subitem-subname{
    font-size: 14px !important;
    line-height: 1.22 !important;
    margin: 0 !important;
    color: rgba(255,255,255,.80) !important;
    max-width: 330px !important;
    text-align: center !important;
    white-space: normal !important;
  }

  /* quantity row */
  body .Eventive--Checkout td[class*="quantity-amount-"] > div{
    margin: 0 auto !important;
    width: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 18px !important;
  }

  body .Eventive--Checkout td[class*="quantity-amount-"] button{
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: 0 0 48px !important;
    border-radius: 999px !important;
  }

  body .Eventive--Checkout td[class*="quantity-amount-"] button > div,
  body .Eventive--Checkout td[class*="quantity-amount-"] button > div > div{
    width: 100% !important;
    height: 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  body .Eventive--Checkout td[class*="quantity-amount-"] div:has(> input[name="quantity"]){
    width: 24px !important;
    height: 48px !important;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  body .Eventive--Checkout td[class*="quantity-amount-"] input[name="quantity"]{
    width: 100% !important;
    height: 48px !important;
    padding: 0 !important;
    text-align: center !important;
    font-size: 18px !important;
    line-height: 48px !important;
    border: 0 !important;
    background: transparent !important;
  }

  /* money rows */
  body .Eventive--Checkout td[class*="price-amount-"],
  body .Eventive--Checkout td[class*="fee-amount-"],
  body .Eventive--Checkout td[class*="total-amount-"],
  body .Eventive--Checkout td[class*="total-total-"]{
    font-size: 17px !important;
    line-height: 1.1 !important;
    color: #fff !important;
    text-align: center !important;
  }

  body .Eventive--Checkout td[class*="price-amount-"] span,
  body .Eventive--Checkout td[class*="fee-amount-"] span,
  body .Eventive--Checkout td[class*="total-amount-"] span,
  body .Eventive--Checkout td[class*="total-total-"] span{
    display: block !important;
    width: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
  }

  /* donation pills centered in 3 + 2 layout */
  body .Eventive--Checkout td[class*="donation-amount-price-"] > div{
    margin-top: 0 !important;
  }

  body .Eventive--Checkout .subitem-donations{
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: min(360px, 100%) !important;
    margin: 0 auto !important;
    align-items: stretch !important;
  }

  body .Eventive--Checkout .subitem-donations button{
    grid-column: span 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 44px !important;
    line-height: 44px !important;
    margin: 0 !important;
    border-radius: 999px !important;
  }

  body .Eventive--Checkout .subitem-donations button:nth-child(4),
  body .Eventive--Checkout .subitem-donations button:nth-child(5){
    grid-column: span 3 !important;
  }

  body .Eventive--Checkout .subitem-donations button > div,
  body .Eventive--Checkout .subitem-donations button > div > div{
    width: 100% !important;
    height: 44px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  body .Eventive--Checkout .subitem-donations button span{
    padding: 0 !important;
    margin: 0 !important;
    font-size: 16px !important;
    line-height: 1 !important;
  }

  /* donation input centered */
  body .Eventive--Checkout td[class*="donation-total-amount-"] .subitem-total{
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
  }

  body .Eventive--Checkout td[class*="donation-total-amount-"] .subitem-total > div{
    width: 132px !important;
    height: 48px !important;
    margin: 0 auto !important;
  }

  body .Eventive--Checkout td[class*="donation-total-amount-"] input[name="currency"]{
    width: 100% !important;
    height: 48px !important;
    text-align: center !important;
    padding: 0 !important;
    font-size: 17px !important;
    line-height: 48px !important;
  }

  /* separator rows */
  body .Eventive--Checkout tr[class*="separator"]{
    padding: 10px 0 !important;
  }

  body .Eventive--Checkout tr[class*="separator"] td{
    display: block !important;
    width: 100% !important;
  }

  body .Eventive--Checkout tr[class*="separator"] hr{
    width: 100% !important;
    max-width: 340px !important;
    margin: 0 auto !important;
  }

  /* final grand total row a touch stronger */
  body .Eventive--Checkout tr.order-quantity-total-row-2 td[class*="label-"]{
    margin-bottom: 8px !important;
  }

  body .Eventive--Checkout tr.order-quantity-total-row-2 td[class*="total-total-"]{
    font-size: 19px !important;
    font-weight: 600 !important;
  }
}

/* =========================================================
   EVENTIVE CHECKOUT — MOBILE CLEANUP PATCH
   append at VERY BOTTOM, below the stacked mobile block
   ========================================================= */
@media (max-width: 767px){

  /* -------------------------
     DONATION PILLS
     ------------------------- */
  body .Eventive--Checkout .subitem-donations{
    display:grid !important;
    grid-template-columns:repeat(6, minmax(0, 1fr)) !important;
    gap:10px !important;
    width:min(340px, 100%) !important;
    margin:0 auto !important;
    justify-items:stretch !important;
    align-items:stretch !important;
  }

  body .Eventive--Checkout .subitem-donations button,
  body .Eventive--Checkout .subitem-donations button:last-child{
    grid-column:span 2 !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    height:44px !important;
    line-height:44px !important;
    margin:0 !important;
    padding:0 !important;
    flex:none !important;
    border-radius:999px !important;
  }

  body .Eventive--Checkout .subitem-donations button:nth-child(4),
  body .Eventive--Checkout .subitem-donations button:nth-child(5){
    grid-column:span 3 !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
  }

  body .Eventive--Checkout .subitem-donations button > div,
  body .Eventive--Checkout .subitem-donations button > div > div{
    width:100% !important;
    height:44px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  body .Eventive--Checkout .subitem-donations button span{
    padding:0 !important;
    margin:0 !important;
    font-size:16px !important;
    line-height:1 !important;
  }

  /* -------------------------
     DONATION INPUT
     ------------------------- */
  body .Eventive--Checkout td[class*="donation-total-amount-"] .subitem-total{
    width:100% !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    margin:0 !important;
  }

  body .Eventive--Checkout td[class*="donation-total-amount-"] .subitem-total > div{
    width:150px !important;
    height:50px !important;
    margin:0 auto !important;
    background:rgba(255,255,255,.03) !important;
    border:1px solid rgba(255,255,255,.14) !important;
    border-radius:18px !important;
    overflow:hidden !important;
  }

  body .Eventive--Checkout td[class*="donation-total-amount-"] .subitem-total hr{
    display:none !important;
  }

  body .Eventive--Checkout td[class*="donation-total-amount-"] input[name="currency"]{
    width:100% !important;
    height:100% !important;
    padding:0 14px !important;
    margin:0 !important;
    text-align:center !important;
    line-height:50px !important;
    font-size:16px !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
  }

  /* -------------------------
     KILL WHITE BAR ABOVE DISCOUNT LINK
     ------------------------- */
  body .Eventive--Checkout div[style*="background-color: rgb(255, 255, 255)"]:has(+ div .eventive-discount-code),
  body .Eventive--Checkout div[style*="background-color: rgb(255, 255, 255)"]:has(+ div > div > .eventive-discount-code){
    display:none !important;
  }

  body .Eventive--Checkout div:has(> .eventive-discount-code),
  body .Eventive--Checkout div:has(> div > .eventive-discount-code){
    background:transparent !important;
    background-color:transparent !important;
    box-shadow:none !important;
    border:0 !important;
    min-height:0 !important;
    padding:0 !important;
    margin-top:14px !important;
    margin-bottom:22px !important;
    text-align:center !important;
  }

  body .Eventive--Checkout .eventive-discount-code,
  body .Eventive--Checkout .eventive-discount-code span{
    font-size:15px !important;
    line-height:1.2 !important;
    color:rgba(255,255,255,.88) !important;
    text-decoration:underline !important;
    text-underline-offset:2px !important;
  }

  /* -------------------------
     EMAIL / LOGIN AREA CLEANUP
     ------------------------- */
  body .Eventive--Checkout .account-creation-container{
    margin-top:8px !important;
  }

  body .Eventive--Checkout .account-creation-container > div{
    max-width:340px !important;
    margin:0 auto !important;
  }

  body .Eventive--Checkout .account-creation-container > div > div:first-child{
    font-size:14px !important;
    line-height:1.35 !important;
    margin-bottom:14px !important;
  }

  body .Eventive--Checkout .account-creation-container form > div{
    width:100% !important;
    height:54px !important;
    background:rgba(255,255,255,.03) !important;
    border:1px solid rgba(255,255,255,.14) !important;
    border-radius:18px !important;
    overflow:hidden !important;
  }

  body .Eventive--Checkout .account-creation-container form > div > div:first-child{
    position:absolute !important;
    top:18px !important;
    left:16px !important;
    bottom:auto !important;
    opacity:1 !important;
    color:rgba(255,255,255,.58) !important;
    font-size:15px !important;
    line-height:1 !important;
    pointer-events:none !important;
  }

  body .Eventive--Checkout .account-creation-container form hr{
    display:none !important;
  }

  body .Eventive--Checkout input[name="accountLookup"],
  body .Eventive--Checkout input[type="email"]{
    width:100% !important;
    height:100% !important;
    padding:0 16px !important;
    margin-top:0 !important;
    line-height:54px !important;
    font-size:16px !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
  }

  /* remove leftover white wrappers behind buttons */
  body .Eventive--Checkout .account-creation-container div[style*="background-color: rgb(255, 255, 255)"]{
    background:transparent !important;
    background-color:transparent !important;
    box-shadow:none !important;
    border:0 !important;
    padding:0 !important;
  }

  body .Eventive--Checkout .account-creation-container button{
    min-width:220px !important;
    height:46px !important;
    line-height:46px !important;
    border-radius:999px !important;
  }

  body .Eventive--Checkout .account-creation-container button > div,
  body .Eventive--Checkout .account-creation-container button > div > div{
    height:46px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  body .Eventive--Checkout .account-creation-container button span{
    padding:0 !important;
    margin:0 !important;
    font-size:16px !important;
    line-height:1 !important;
  }

  /* keep the “or” tighter */
  body .Eventive--Checkout .account-creation-container div[style*="border-bottom"]{
    margin:18px auto 12px !important;
  }

  /* -------------------------
     LITTLE SPACING TIGHTENERS
     ------------------------- */
  body .Eventive--Checkout tr.order-quantity-total-row-2{
    padding-bottom:8px !important;
  }

  body .Eventive--Checkout tr.order-quantity-donation-item-row-1{
    padding-top:8px !important;
  }

  body .Eventive--Checkout td[class*="item-name-"] > div > div:first-child{
    max-width:320px !important;
  }

  body .Eventive--Checkout td[class*="item-name-"] > div > div:nth-child(2),
  body .Eventive--Checkout .subitem-subname{
    max-width:330px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}

/* ==============================
   MOBILE HOMEPAGE PATCH
   1) social icons above logo
   2) tighter 3-day mobile calendar window
   ============================== */
@media (max-width:767px){

  /* GREEN BOX — move socials above the Palm logo */
  .elementor-location-header .elementor-widget-social-icons{
    order:-30 !important;
    align-self:center !important;
    margin:0 0 12px !important;
  }

  .elementor-location-header .elementor-widget-theme-site-logo,
  .elementor-location-header .site-logo,
  .elementor-location-header .elementor-widget-image{
    order:-20 !important;
    margin:0 !important;
  }

  .elementor-location-header .elementor-widget-social-icons .elementor-widget-container{
    margin:0 !important;
    padding:0 !important;
  }

  /* RED BOX — only 3 day pills visible at once */
  #weekly-calendar-container{
    grid-template-columns:36px 1fr 36px !important;
    gap:6px !important;
    align-items:center !important;
  }

  #weekly-calendar-container #prev-week,
  #weekly-calendar-container #next-week,
  #weekly-calendar-container button[aria-label*="Previous"],
  #weekly-calendar-container button[aria-label*="Next"]{
    width:36px !important;
    height:36px !important;
  }

  #weekly-calendar-buttons{
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    grid-auto-rows:88px !important;
    gap:10px !important;
    overflow:hidden !important;
  }

  #weekly-calendar-buttons .pills-row{
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    grid-auto-rows:88px !important;
    gap:10px !important;
  }

  #weekly-calendar-buttons .yr-day-btn[data-day],
  #weekly-calendar-buttons .day-button[data-day]{
    width:100% !important;
    height:100% !important;
    min-width:0 !important;
  }
}

/* ==============================
   MOBILE HEADER + 2-DAY PAIR PATCH
   ============================== */
@media (max-width:767px){

  /* keep header as positioning context */
  .elementor-location-header{
    position:relative !important;
  }

  /* socials centered, slightly lower, with orange circles restored */
  .elementor-location-header .elementor-widget-social-icons{
    order:-30 !important;
    width:100% !important;
    align-self:stretch !important;
    margin:6px 0 4px !important;
    text-align:center !important;
  }

  .elementor-location-header .elementor-widget-social-icons .elementor-widget-container{
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
  }

  .elementor-location-header .elementor-widget-social-icons .elementor-social-icons-wrapper{
    width:100% !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    gap:14px !important;
    margin:0 auto !important;
  }

  .elementor-location-header .elementor-widget-social-icons .elementor-icon{
    width:28px !important;
    height:28px !important;
    min-width:28px !important;
    min-height:28px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:var(--global-palm-orange) !important;
    border-radius:999px !important;
    box-shadow:none !important;
  }

  .elementor-location-header .elementor-widget-social-icons .elementor-icon i,
  .elementor-location-header .elementor-widget-social-icons .elementor-icon svg,
  .elementor-location-header .elementor-widget-social-icons .elementor-icon svg *{
    color:#fff !important;
    fill:#fff !important;
  }

  /* keep logo centered */
  .elementor-location-header .elementor-widget-theme-site-logo,
  .elementor-location-header .site-logo,
  .elementor-location-header .elementor-widget-image{
    order:-20 !important;
    margin:0 auto !important;
    position:relative !important;
    z-index:5 !important;
  }

  /* force mobile menu toggle near the logo instead of the screen edge */
  .elementor-location-header .elementor-widget-nav-menu{
    position:absolute !important;
    left:calc(50% + 108px) !important;
    top:68px !important;
    width:auto !important;
    margin:0 !important;
    z-index:20 !important;
  }

  .elementor-location-header .elementor-widget-nav-menu > .elementor-widget-container{
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
  }

  .elementor-location-header .elementor-menu-toggle{
    margin:0 !important;
    padding:0 !important;
    min-height:auto !important;
    min-width:auto !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  /* 2 visible pills only */
  #weekly-calendar-container{
    grid-template-columns:34px 1fr 34px !important;
    gap:6px !important;
    padding:0 6px !important;
  }

  #weekly-calendar-container #prev-week,
  #weekly-calendar-container #next-week,
  #weekly-calendar-container button[aria-label*="Previous"],
  #weekly-calendar-container button[aria-label*="Next"]{
    width:34px !important;
    height:34px !important;
  }

  #weekly-calendar-buttons{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    grid-auto-rows:86px !important;
    gap:10px !important;
  }

  #weekly-calendar-buttons .pills-row{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    grid-auto-rows:86px !important;
    gap:10px !important;
  }

  #weekly-calendar-buttons .yr-day-btn[data-day],
  #weekly-calendar-buttons .day-button[data-day]{
    width:100% !important;
    height:100% !important;
    min-width:0 !important;
  }
}

/* ==============================
   MOBILE COMPACT DATE BAR
   styled to match Palm pills
   ============================== */
.palm-mobile-datebar{
  display:none;
}

@media (max-width:767px){

  .palm-mobile-datebar{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) !important;
    gap:10px !important;
    width:min(640px, calc(100vw - 24px)) !important;
    margin:10px auto 14px !important;
    align-items:stretch !important;
  }

  .palm-mobile-datebar__active,
  .palm-mobile-datebar__calendar{
    position:relative !important;
    min-height:58px !important;
    padding:0 18px !important;
    margin:0 !important;
    border-radius:999px !important;
    box-shadow:none !important;
    cursor:pointer !important;
    -webkit-appearance:none !important;
    appearance:none !important;
    font-family:var(--palm-font) !important;
    transition:background-color .2s ease, color .2s ease, border-color .2s ease, transform .2s ease !important;
  }

  /* selected date pill = same orange pill feel */
  .palm-mobile-datebar__active{
    background:var(--global-palm-orange) !important;
    border:1px solid var(--global-palm-orange) !important;
    color:#fff !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    text-align:center !important;
  }

  .palm-mobile-datebar__dow{
    display:inline-block !important;
    margin:0 !important;
    font-size:15px !important;
    line-height:1 !important;
    letter-spacing:.06em !important;
    text-transform:uppercase !important;
    color:#fff !important;
    font-weight:500 !important;
  }

  .palm-mobile-datebar__date{
    display:inline-block !important;
    margin:0 !important;
    font-size:15px !important;
    line-height:1 !important;
    letter-spacing:.02em !important;
    color:#fff !important;
    font-weight:500 !important;
  }

  /* calendar pill = same outlined pill feel */
  .palm-mobile-datebar__calendar{
    background:transparent !important;
    border:1px solid var(--global-palm-orange) !important;
    color:var(--global-palm-orange) !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    text-align:center !important;
    overflow:hidden !important;
  }

  .palm-mobile-datebar__calendar-icon{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    color:var(--global-palm-orange) !important;
    flex:0 0 auto !important;
  }

  .palm-mobile-datebar__calendar-label{
    display:inline-block !important;
    margin:0 !important;
    font-size:15px !important;
    line-height:1 !important;
    letter-spacing:.06em !important;
    text-transform:uppercase !important;
    color:var(--global-palm-orange) !important;
    font-weight:500 !important;
  }

  .palm-mobile-datebar__active:hover,
  .palm-mobile-datebar__calendar:hover{
    transform:translateY(-1px) !important;
  }

  .palm-mobile-datebar__calendar:hover{
    background:rgba(233,84,33,.08) !important;
  }

  .palm-mobile-datebar__input{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    opacity:0 !important;
    cursor:pointer !important;
    border:0 !important;
  }

  /* keep native weekly strip hidden on mobile */
  #weekly-calendar-container,
  .weekly-calendar-container{
    position:absolute !important;
    left:-99999px !important;
    width:1px !important;
    height:1px !important;
    overflow:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
    margin:0 !important;
    padding:0 !important;
  }
}

/* ==============================
   MOBILE HEADER + DATEBAR PATCH
   fixes clipped pills, restores socials,
   adjusts mobile menu toggle
   ============================== */
@media (max-width:767px){

  /* let the new date pills breathe */
  .elementor-element-ee08584,
  .elementor-element-ee08584 .elementor-widget-container,
  .elementor-element-ee08584 .elementor-shortcode,
  .eventive-native-year-round{
    overflow:visible !important;
  }

  .palm-mobile-datebar{
    margin:18px auto 14px !important;
    padding-top:6px !important;
    overflow:visible !important;
  }

  .palm-mobile-datebar__active,
  .palm-mobile-datebar__calendar{
    min-height:58px !important;
  }

  /* restore social icons above logo */
  .elementor-location-header{
    position:relative !important;
    overflow:visible !important;
  }

  .elementor-location-header .elementor-widget-social-icons{
    display:block !important;
    width:100% !important;
    margin:8px 0 8px !important;
    text-align:center !important;
    z-index:15 !important;
    position:relative !important;
  }

  .elementor-location-header .elementor-widget-social-icons .elementor-widget-container{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
  }

  .elementor-location-header .elementor-widget-social-icons .elementor-social-icons-wrapper{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    gap:14px !important;
    width:auto !important;
    margin:0 auto !important;
  }

  .elementor-location-header .elementor-widget-social-icons .elementor-icon{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:28px !important;
    height:28px !important;
    min-width:28px !important;
    min-height:28px !important;
    background:var(--global-palm-orange) !important;
    border-radius:999px !important;
    box-shadow:none !important;
    opacity:1 !important;
    visibility:visible !important;
  }

  .elementor-location-header .elementor-widget-social-icons .elementor-icon i,
  .elementor-location-header .elementor-widget-social-icons .elementor-icon svg,
  .elementor-location-header .elementor-widget-social-icons .elementor-icon svg *{
    color:#fff !important;
    fill:#fff !important;
  }

  /* menu button: slightly bigger, a touch lower, better centered relative to logo right side */
  .elementor-location-header .elementor-widget-nav-menu{
    position:absolute !important;
    left:calc(50% + 104px) !important;
    top:78px !important;
    width:auto !important;
    margin:0 !important;
    z-index:20 !important;
  }

  .elementor-location-header .elementor-widget-nav-menu > .elementor-widget-container{
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
  }

  .elementor-location-header .elementor-menu-toggle{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    padding:0 !important;
    min-width:30px !important;
    min-height:30px !important;
    width:30px !important;
    height:30px !important;
    line-height:1 !important;
  }

  .elementor-location-header .elementor-menu-toggle i,
  .elementor-location-header .elementor-menu-toggle svg{
    font-size:24px !important;
    width:24px !important;
    height:24px !important;
  }
}

/* ==============================
   MOBILE HEADER ALIGNMENT PATCH
   socials horizontal + centered above logo
   logo stays centered
   menu button positioned to logo's right
   ============================== */
@media (max-width:767px){

  /* header as stable positioning context */
  .elementor-location-header{
    position:relative !important;
    overflow:visible !important;
  }

  /* socials: force horizontal row centered above logo */
  .elementor-location-header .elementor-widget-social-icons{
    position:relative !important;
    left:auto !important;
    top:auto !important;
    right:auto !important;
    bottom:auto !important;
    order:-30 !important;
    display:block !important;
    width:100% !important;
    max-width:none !important;
    margin:6px 0 12px !important;
    padding:0 !important;
    text-align:center !important;
    z-index:12 !important;
    transform:none !important;
  }

  .elementor-location-header .elementor-widget-social-icons .elementor-widget-container{
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    transform:none !important;
  }

  .elementor-location-header .elementor-widget-social-icons .elementor-social-icons-wrapper{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    justify-content:center !important;
    align-items:center !important;
    gap:14px !important;
    width:auto !important;
    margin:0 auto !important;
  }

  .elementor-location-header .elementor-widget-social-icons .elementor-grid{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    justify-content:center !important;
    align-items:center !important;
    gap:14px !important;
  }

  .elementor-location-header .elementor-widget-social-icons .elementor-icon{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:28px !important;
    height:28px !important;
    min-width:28px !important;
    min-height:28px !important;
    margin:0 !important;
    background:var(--global-palm-orange) !important;
    border-radius:999px !important;
    box-shadow:none !important;
    opacity:1 !important;
    visibility:visible !important;
  }

  .elementor-location-header .elementor-widget-social-icons .elementor-icon i,
  .elementor-location-header .elementor-widget-social-icons .elementor-icon svg,
  .elementor-location-header .elementor-widget-social-icons .elementor-icon svg *{
    color:#fff !important;
    fill:#fff !important;
  }

  /* logo: keep dead center and give it breathing room */
  .elementor-location-header .elementor-widget-theme-site-logo,
  .elementor-location-header .site-logo,
  .elementor-location-header .elementor-widget-image{
    order:-20 !important;
    width:100% !important;
    margin:0 auto !important;
    padding:0 !important;
    text-align:center !important;
    position:relative !important;
    z-index:5 !important;
  }

  .elementor-location-header .elementor-widget-theme-site-logo .elementor-widget-container,
  .elementor-location-header .site-logo,
  .elementor-location-header .elementor-widget-image .elementor-widget-container{
    width:100% !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    margin:0 auto !important;
  }

  /* menu button: absolute so it doesn't affect centering */
  .elementor-location-header .elementor-widget-nav-menu{
    position:absolute !important;
    left:calc(50% + 118px) !important;
    top:86px !important;
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    z-index:20 !important;
    transform:none !important;
  }

  .elementor-location-header .elementor-widget-nav-menu > .elementor-widget-container{
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
  }

  .elementor-location-header .elementor-menu-toggle{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    padding:0 !important;
    min-width:34px !important;
    min-height:34px !important;
    width:34px !important;
    height:34px !important;
    line-height:1 !important;
  }

  .elementor-location-header .elementor-menu-toggle i,
  .elementor-location-header .elementor-menu-toggle svg{
    font-size:26px !important;
    width:26px !important;
    height:26px !important;
  }
}

/* ==============================
   MOBILE HEADER — HARD FIX
   force socials above logo in one row
   keep logo centered
   pin menu to right of logo
   ============================== */
@media (max-width:767px){

  /* exact mobile header container from current DOM */
  .elementor-location-header .elementor-element-undefined-57f3e87{
    position:relative !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    overflow:visible !important;
    padding-top:10px !important;
    padding-bottom:6px !important;
  }

  /* ---------- SOCIALS: force them ABOVE logo, horizontal ---------- */
  .elementor-location-header .elementor-element-05a9aaf{
    order:1 !important;
    position:relative !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    transform:none !important;
    width:100% !important;
    max-width:none !important;
    margin:0 0 12px !important;
    padding:0 !important;
    display:block !important;
    text-align:center !important;
    z-index:15 !important;
    align-self:stretch !important;
  }

  .elementor-location-header .elementor-element-05a9aaf .elementor-widget-container{
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
  }

  .elementor-location-header .elementor-element-05a9aaf .elementor-social-icons-wrapper,
  .elementor-location-header .elementor-element-05a9aaf .elementor-grid{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    justify-content:center !important;
    align-items:center !important;
    gap:16px !important;
    width:auto !important;
    margin:0 auto !important;
  }

  .elementor-location-header .elementor-element-05a9aaf .elementor-grid-item{
    display:inline-flex !important;
    margin:0 !important;
    float:none !important;
  }

  .elementor-location-header .elementor-element-05a9aaf .elementor-icon{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    min-height:34px !important;
    margin:0 !important;
    padding:0 !important;
    background:var(--global-palm-orange) !important;
    border-radius:999px !important;
    box-shadow:none !important;
    opacity:1 !important;
    visibility:visible !important;
  }

  .elementor-location-header .elementor-element-05a9aaf .elementor-icon i,
  .elementor-location-header .elementor-element-05a9aaf .elementor-icon svg,
  .elementor-location-header .elementor-element-05a9aaf .elementor-icon svg *{
    color:#fff !important;
    fill:#fff !important;
  }

  /* ---------- LOGO: keep perfectly centered ---------- */
  .elementor-location-header .elementor-element-undefined-30bb0bf{
    order:2 !important;
    width:100% !important;
    margin:0 auto !important;
    padding:0 !important;
    position:relative !important;
    text-align:center !important;
    z-index:5 !important;
    align-self:stretch !important;
  }

  .elementor-location-header .elementor-element-undefined-30bb0bf .elementor-widget-container{
    width:100% !important;
    margin:0 auto !important;
    padding:0 !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
  }

  .elementor-location-header .elementor-element-undefined-30bb0bf img{
    display:block !important;
    margin:0 auto !important;
  }

  /* ---------- MENU: absolute so it cannot shove logo/socials sideways ---------- */
  .elementor-location-header .elementor-element-undefined-9cd8dec{
    order:3 !important;
    position:absolute !important;
    left:calc(50% + 116px) !important;
    top:74px !important;
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    z-index:20 !important;
    transform:none !important;
  }

  .elementor-location-header .elementor-element-undefined-9cd8dec > .elementor-widget-container{
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
  }

  .elementor-location-header .elementor-element-undefined-9cd8dec .elementor-menu-toggle{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:36px !important;
    height:36px !important;
    min-width:36px !important;
    min-height:36px !important;
    margin:0 !important;
    padding:0 !important;
    line-height:1 !important;
  }

  .elementor-location-header .elementor-element-undefined-9cd8dec .elementor-menu-toggle svg,
  .elementor-location-header .elementor-element-undefined-9cd8dec .elementor-menu-toggle i{
    width:28px !important;
    height:28px !important;
    font-size:28px !important;
  }
}

/* ==============================
   MOBILE HEADER — TIGHTEN SPACING
   + move menu into red box
   ============================== */
@media (max-width:767px){

  /* overall header stack tighter */
  .elementor-location-header .elementor-element-undefined-57f3e87{
    padding-top:6px !important;
    padding-bottom:0 !important;
    row-gap:0 !important;
  }

  /* socials closer to logo */
  .elementor-location-header .elementor-element-05a9aaf{
    margin:0 0 4px !important;
  }

  .elementor-location-header .elementor-element-05a9aaf .elementor-social-icons-wrapper,
  .elementor-location-header .elementor-element-05a9aaf .elementor-grid{
    gap:16px !important;
  }

  /* logo block tighter above and below */
  .elementor-location-header .elementor-element-undefined-30bb0bf{
    margin:0 auto 4px !important;
  }

  .elementor-location-header .elementor-element-undefined-30bb0bf .elementor-widget-container{
    margin:0 auto !important;
    padding:0 !important;
  }

  .elementor-location-header .elementor-element-undefined-30bb0bf img{
    margin:0 auto !important;
    display:block !important;
  }

  /* bring compact date bar closer to logo */
  .palm-mobile-datebar{
    margin:8px auto 12px !important;
    padding-top:0 !important;
  }

  /* put menu exactly more into that red-box zone */
  .elementor-location-header .elementor-element-undefined-9cd8dec{
    left:calc(50% + 96px) !important;
    top:112px !important;
  }

  .elementor-location-header .elementor-element-undefined-9cd8dec .elementor-menu-toggle{
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
    min-height:38px !important;
  }

  .elementor-location-header .elementor-element-undefined-9cd8dec .elementor-menu-toggle svg,
  .elementor-location-header .elementor-element-undefined-9cd8dec .elementor-menu-toggle i{
    width:30px !important;
    height:30px !important;
    font-size:30px !important;
  }
}

/* ==============================
   MOBILE HEADER RESET — CLEAN FIX
   socials above logo
   logo centered
   menu in red-box spot
   date pills unclipped
   ============================== */
@media (max-width:767px){

  /* ---------- schedule/date bar unclipping ---------- */
  .film-grid,
  .elementor-element-ee08584,
  .elementor-element-ee08584 .elementor-widget-container,
  .elementor-element-ee08584 .elementor-shortcode,
  .eventive-native-year-round,
  .palm-mobile-datebar{
    overflow:visible !important;
  }

  .palm-mobile-datebar{
    margin:10px auto 14px !important;
    padding-top:0 !important;
    position:relative !important;
    z-index:2 !important;
  }

  /* ---------- header parent ---------- */
  .elementor-7 .elementor-element-undefined-57f3e87{
    position:relative !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    overflow:visible !important;
    padding-top:8px !important;
    padding-bottom:8px !important;
    gap:0 !important;
  }

  /* ---------- socials: top row, horizontal ---------- */
  .elementor-7 .elementor-element-05a9aaf{
    order:1 !important;
    position:relative !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    transform:none !important;
    width:100% !important;
    margin:0 0 8px !important;
    padding:0 !important;
    display:block !important;
    text-align:center !important;
    align-self:stretch !important;
    z-index:15 !important;
  }

  .elementor-7 .elementor-element-05a9aaf .elementor-widget-container{
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
  }

  .elementor-7 .elementor-element-05a9aaf .elementor-social-icons-wrapper,
  .elementor-7 .elementor-element-05a9aaf .elementor-grid{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    justify-content:center !important;
    align-items:center !important;
    gap:16px !important;
    width:auto !important;
    margin:0 auto !important;
  }

  .elementor-7 .elementor-element-05a9aaf .elementor-grid-item{
    display:inline-flex !important;
    margin:0 !important;
    float:none !important;
  }

  .elementor-7 .elementor-element-05a9aaf .elementor-icon{
    width:36px !important;
    height:36px !important;
    min-width:36px !important;
    min-height:36px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    padding:0 !important;
    background:var(--global-palm-orange) !important;
    border-radius:999px !important;
    box-shadow:none !important;
    opacity:1 !important;
    visibility:visible !important;
  }

  .elementor-7 .elementor-element-05a9aaf .elementor-icon i,
  .elementor-7 .elementor-element-05a9aaf .elementor-icon svg,
  .elementor-7 .elementor-element-05a9aaf .elementor-icon svg *{
    color:#fff !important;
    fill:#fff !important;
  }

  /* ---------- logo: centered, no weird side shove ---------- */
  .elementor-7 .elementor-element-undefined-30bb0bf{
    order:2 !important;
    position:relative !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    transform:none !important;
    width:100% !important;
    margin:0 auto 6px !important;
    padding:0 !important;
    text-align:center !important;
    align-self:stretch !important;
    z-index:5 !important;
  }

  .elementor-7 .elementor-element-undefined-30bb0bf .elementor-widget-container{
    width:100% !important;
    margin:0 auto !important;
    padding:0 !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
  }

  .elementor-7 .elementor-element-undefined-30bb0bf img{
    display:block !important;
    margin:0 auto !important;
  }

  /* ---------- menu: pinned into the red-box area ---------- */
  .elementor-7 .elementor-element-undefined-9cd8dec{
    order:3 !important;
    position:absolute !important;
    left:auto !important;
    right:26px !important;
    top:92px !important;
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
    z-index:20 !important;
  }

  .elementor-7 .elementor-element-undefined-9cd8dec > .elementor-widget-container{
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
  }

  .elementor-7 .elementor-element-undefined-9cd8dec .elementor-menu-toggle{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
    min-height:38px !important;
    margin:0 !important;
    padding:0 !important;
    line-height:1 !important;
  }

  .elementor-7 .elementor-element-undefined-9cd8dec .elementor-menu-toggle svg,
  .elementor-7 .elementor-element-undefined-9cd8dec .elementor-menu-toggle i{
    width:30px !important;
    height:30px !important;
    font-size:30px !important;
  }
}

/* ==============================
   MOBILE — socials to footer
   + menu icon placement
   ============================== */
@media (max-width:767px){

  /* keep the date buttons from clipping */
  .film-grid,
  .elementor-element-ee08584,
  .elementor-element-ee08584 .elementor-widget-container,
  .elementor-element-ee08584 .elementor-shortcode,
  .eventive-native-year-round,
  .palm-mobile-datebar{
    overflow:visible !important;
  }

  .palm-mobile-datebar{
    margin:10px auto 14px !important;
    position:relative !important;
    z-index:2 !important;
  }

  /* header stays simple once socials are gone */
  .elementor-7 .elementor-element-undefined-57f3e87{
    position:relative !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    overflow:visible !important;
    padding-top:8px !important;
    padding-bottom:6px !important;
    gap:0 !important;
  }

  .elementor-7 .elementor-element-undefined-30bb0bf{
    width:100% !important;
    margin:0 auto 8px !important;
    text-align:center !important;
    position:relative !important;
    z-index:5 !important;
  }

  .elementor-7 .elementor-element-undefined-30bb0bf .elementor-widget-container{
    width:100% !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    margin:0 auto !important;
    padding:0 !important;
  }

  .elementor-7 .elementor-element-undefined-30bb0bf img{
    display:block !important;
    margin:0 auto !important;
  }

  /* menu icon moved into that red-box area */
  .elementor-7 .elementor-element-undefined-9cd8dec{
    position:absolute !important;
    right:20px !important;
    top:112px !important;
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
    z-index:20 !important;
  }

  .elementor-7 .elementor-element-undefined-9cd8dec > .elementor-widget-container{
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
  }

  .elementor-7 .elementor-element-undefined-9cd8dec .elementor-menu-toggle{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
    min-height:38px !important;
    margin:0 !important;
    padding:0 !important;
    line-height:1 !important;
  }

  .elementor-7 .elementor-element-undefined-9cd8dec .elementor-menu-toggle svg,
  .elementor-7 .elementor-element-undefined-9cd8dec .elementor-menu-toggle i{
    width:30px !important;
    height:30px !important;
    font-size:30px !important;
  }

  /* footer socials */
  .palm-socials-footer-mobile{
    width:100% !important;
    margin:18px auto 10px !important;
    text-align:center !important;
    order:99 !important;
  }

  .palm-socials-footer-mobile .elementor-widget-container{
    width:100% !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    margin:0 !important;
    padding:0 !important;
  }

  .palm-socials-footer-mobile .elementor-social-icons-wrapper,
  .palm-socials-footer-mobile .elementor-grid{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    justify-content:center !important;
    align-items:center !important;
    gap:16px !important;
    width:auto !important;
    margin:0 auto !important;
  }

  .palm-socials-footer-mobile .elementor-grid-item{
    display:inline-flex !important;
    margin:0 !important;
    float:none !important;
  }

  .palm-socials-footer-mobile .elementor-icon{
    width:36px !important;
    height:36px !important;
    min-width:36px !important;
    min-height:36px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    padding:0 !important;
    background:var(--global-palm-orange) !important;
    border-radius:999px !important;
    box-shadow:none !important;
    opacity:1 !important;
    visibility:visible !important;
  }

  .palm-socials-footer-mobile .elementor-icon i,
  .palm-socials-footer-mobile .elementor-icon svg,
  .palm-socials-footer-mobile .elementor-icon svg *{
    color:#fff !important;
    fill:#fff !important;
  }
}

@media (max-width:767px){
  .elementor-7 .elementor-element-undefined-9cd8dec{
    position:absolute !important;
    right:30px !important;
    top:82px !important;
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
    z-index:20 !important;
  }

  .elementor-7 .elementor-element-undefined-9cd8dec > .elementor-widget-container{
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
  }

  .elementor-7 .elementor-element-undefined-9cd8dec .elementor-menu-toggle{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
    min-height:38px !important;
    margin:0 !important;
    padding:0 !important;
    line-height:1 !important;
  }

  .elementor-7 .elementor-element-undefined-9cd8dec .elementor-menu-toggle svg,
  .elementor-7 .elementor-element-undefined-9cd8dec .elementor-menu-toggle i{
    width:30px !important;
    height:30px !important;
    font-size:30px !important;
  }
}

/* FOOTER — even mobile stacking / spacing */
@media (max-width: 767px){

  /* main footer stack */
  .elementor-1056 .elementor-element-2c97805d > .e-con-inner{
    display:flex !important;
    flex-direction:column !important;
    gap:34px !important;
  }

  /* each footer section */
  .elementor-1056 .elementor-element-2c97805d > .e-con-inner > .elementor-element{
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:12px !important;
  }

  /* kill inconsistent default widget spacing */
  .elementor-1056 .elementor-element-2c97805d .elementor-widget,
  .elementor-1056 .elementor-element-2c97805d .elementor-widget-container,
  .elementor-1056 .elementor-element-2c97805d h4,
  .elementor-1056 .elementor-element-2c97805d p,
  .elementor-1056 .elementor-element-2c97805d ul{
    margin:0 !important;
    padding:0 !important;
  }

  /* slightly nicer breathing room for the top logo block */
  .elementor-1056 .elementor-element-3a8f8208{
    gap:18px !important;
  }

  /* keep the address / hours lists evenly stacked */
  .elementor-1056 .elementor-element-2c97805d .elementor-icon-list-items{
    display:flex !important;
    flex-direction:column !important;
    gap:8px !important;
    margin:0 !important;
    padding:0 !important;
  }

  /* optional: tighten the subscribe text from the form a bit */
  .elementor-1056 .elementor-element-2f2b55b9{
    gap:14px !important;
  }
}

/* FOOTER — mobile cleanup for form + legal menu */
@media (max-width: 767px){

  /* =========================
     BLUE BOX — email field
     ========================= */
  .elementor-1056 .elementor-element-5999c3dd .elementor-form-fields-wrapper{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:14px !important;
  }

  .elementor-1056 .elementor-element-5999c3dd .elementor-field-group-email,
  .elementor-1056 .elementor-element-5999c3dd .e-form__buttons{
    width:100% !important;
    max-width:none !important;
    flex:0 0 auto !important;
  }

  .elementor-1056 .elementor-element-5999c3dd .elementor-field-group-email .elementor-field{
    width:100% !important;
    height:60px !important;
    padding:0 18px !important;
    border:1px solid rgba(255,255,255,.22) !important;
    border-radius:18px !important;
    background:rgba(255,255,255,.05) !important;
    color:#fff !important;
    text-align:center !important;
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.04),
      0 0 0 0 transparent !important;
    -webkit-appearance:none !important;
    appearance:none !important;
  }

  .elementor-1056 .elementor-element-5999c3dd .elementor-field-group-email .elementor-field::placeholder{
    color:rgba(255,255,255,.62) !important;
    text-align:center !important;
  }

  .elementor-1056 .elementor-element-5999c3dd .elementor-field-group-email .elementor-field:focus{
    border-color:var(--global-palm-orange) !important;
    box-shadow:
      0 0 0 1px var(--global-palm-orange),
      0 0 16px rgba(233,84,33,.14) !important;
    outline:none !important;
  }

  /* =========================
     GOLD BOX — subscribe pill
     ========================= */
  .elementor-1056 .elementor-element-5999c3dd .e-form__buttons{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
  }

  .elementor-1056 .elementor-element-5999c3dd .elementor-button{
    width:auto !important;
    min-width:220px !important;
    height:46px !important;
    padding:0 24px !important;
    border:0 !important;
    border-radius:999px !important;
    background:var(--global-palm-orange) !important;
    color:#fff !important;
    box-shadow:none !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
  }

  .elementor-1056 .elementor-element-5999c3dd .elementor-button-content-wrapper{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  .elementor-1056 .elementor-element-5999c3dd .elementor-button-text{
    color:#fff !important;
    line-height:1 !important;
    letter-spacing:.04em !important;
  }

  /* =========================
     PINK BOX — legal menu vertical
     ========================= */
  .elementor-1056 .elementor-element-bd474e8 nav.elementor-nav-menu--main{
    display:flex !important;
    justify-content:center !important;
  }

  .elementor-1056 .elementor-element-bd474e8 nav.elementor-nav-menu--main .elementor-nav-menu{
    width:100% !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:14px !important;
    margin:12px auto 0 !important;
    padding:0 !important;
  }

  .elementor-1056 .elementor-element-bd474e8 .elementor-nav-menu > li{
    width:100% !important;
    margin:0 !important;
    float:none !important;
  }

  .elementor-1056 .elementor-element-bd474e8 .elementor-nav-menu--main .elementor-item{
    display:block !important;
    width:100% !important;
    text-align:center !important;
    padding:0 !important;
    line-height:1.2 !important;
  }

  /* =========================
     GREEN BOX — kill footer menu icon
     ========================= */
  .elementor-1056 .elementor-element-8c0dc6d .elementor-menu-toggle,
  .elementor-1056 .elementor-element-bd474e8 .elementor-menu-toggle{
    display:none !important;
  }

  .elementor-1056 .elementor-element-bd474e8 .elementor-nav-menu--dropdown,
  .elementor-1056 .elementor-element-bd474e8 .elementor-nav-menu__container{
    box-shadow:none !important;
    border:0 !important;
  }
}

/* FOOTER — tighten mobile spacing + narrower subscribe pill */
@media (max-width: 767px){

  /* top red box — reduce space before Subscribe section */
  .elementor-1056 .elementor-element-2c97805d > .e-con-inner{
    gap:24px !important;
  }

  .elementor-1056 .elementor-element-2f2b55b9{
    gap:10px !important;
  }

  /* make the Subscribe pill less huge */
  .elementor-1056 .elementor-element-5999c3dd .elementor-button{
    min-width:170px !important;
    width:auto !important;
    height:42px !important;
    padding:0 22px !important;
  }

  .elementor-1056 .elementor-element-5999c3dd .elementor-button-content-wrapper{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  /* bottom red box — pull socials closer to the legal menu */
  .elementor-1056 .elementor-element-8c0dc6d > .e-con-inner{
    flex-direction:column !important;
    gap:8px !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
  }

  .elementor-1056 .elementor-element-bd474e8,
  .elementor-1056 .elementor-element-bd474e8 > .elementor-widget-container{
    margin-bottom:0 !important;
    padding-bottom:0 !important;
  }

  .elementor-1056 .elementor-element-bd474e8 nav.elementor-nav-menu--main .elementor-nav-menu{
    margin:8px auto 0 !important;
    gap:12px !important;
  }

  .elementor-1056 .palm-socials-footer-mobile,
  .elementor-1056 .palm-socials-footer-mobile > .elementor-widget-container{
    margin:0 !important;
    padding:0 !important;
  }
}

/* FOOTER — force Subscribe pill to shrink to content on mobile */
@media (max-width: 767px){

  .elementor-1056 .elementor-element-5999c3dd .elementor-form-fields-wrapper{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:14px !important;
  }

  .elementor-1056 .elementor-element-5999c3dd .elementor-field-type-submit.e-form__buttons{
    width:auto !important;
    max-width:none !important;
    flex:0 0 auto !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    margin:0 auto !important;
    padding:0 !important;
  }

  .elementor-1056 .elementor-element-5999c3dd .elementor-field-type-submit.e-form__buttons .elementor-button{
    width:auto !important;
    max-width:none !important;
    min-width:170px !important;
    height:42px !important;
    padding:0 22px !important;
    flex:0 0 auto !important;
    display:inline-flex !important;
    justify-content:center !important;
    align-items:center !important;
    border-radius:999px !important;
  }

  .elementor-1056 .elementor-element-5999c3dd .elementor-button-content-wrapper{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    width:auto !important;
  }
}

/* FOOTER — add more vertical space around legal menu + socials on mobile */
@media (max-width: 767px){

  /* more space below the Subscribe pill */
  .elementor-1056 .elementor-element-5999c3dd{
    margin-bottom:18px !important;
  }

  /* more space above the legal menu block */
  .elementor-1056 .elementor-element-8c0dc6d{
    margin-top:8px !important;
    padding-bottom:22px !important;
  }

  /* more space between legal menu and social icons */
  .elementor-1056 .elementor-element-8c0dc6d > .e-con-inner{
    flex-direction:column !important;
    gap:18px !important;
  }

  /* keep the menu itself a little cleaner */
  .elementor-1056 .elementor-element-bd474e8,
  .elementor-1056 .elementor-element-bd474e8 > .elementor-widget-container{
    margin:0 !important;
    padding:0 !important;
  }

  /* small extra breathing room over the socials */
  .elementor-1056 .palm-socials-footer-mobile,
  .elementor-1056 .palm-socials-footer-mobile > .elementor-widget-container{
    margin-top:4px !important;
  }
}

/* FOOTER — slightly more space between Subscribe pill and Diversity on mobile */
@media (max-width: 767px){
  .elementor-1056 .elementor-element-5999c3dd{
    margin-bottom:28px !important;
  }
}

/* FOOTER — center legal menu between subscribe pill and social icons on mobile */
@media (max-width: 767px){

  /* create the space ABOVE the legal menu */
  .elementor-1056 .elementor-element-8c0dc6d{
    margin-top:26px !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
  }

  /* control the space BETWEEN menu and socials from one place only */
  .elementor-1056 .elementor-element-8c0dc6d > .e-con-inner{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:20px !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
  }

  /* kill leftover widget margins */
  .elementor-1056 .elementor-element-bd474e8,
  .elementor-1056 .elementor-element-bd474e8 > .elementor-widget-container,
  .elementor-1056 .palm-socials-footer-mobile,
  .elementor-1056 .palm-socials-footer-mobile > .elementor-widget-container{
    margin:0 !important;
    padding:0 !important;
  }

  /* remove the old nav menu margins that were throwing this off */
  .elementor-1056 .elementor-element-bd474e8 nav.elementor-nav-menu--main .elementor-nav-menu{
    margin:0 !important;
    gap:12px !important;
  }

  /* keep socials tucked neatly below Contact */
  .elementor-1056 .palm-socials-footer-mobile{
    margin-top:0 !important;
  }
}

/* FOOTER — hard reset spacing so legal menu sits between Subscribe pill and socials */
@media (max-width: 767px){

  /* space ABOVE the menu/social block */
  .elementor-1056 .elementor-element.elementor-element-8c0dc6d{
    margin-top:26px !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
    min-height:0 !important;
  }

  /* control menu/social spacing from one place only */
  .elementor-1056 .elementor-element.elementor-element-8c0dc6d > .e-con-inner{
    display:grid !important;
    justify-items:center !important;
    align-items:start !important;
    row-gap:10px !important;
    margin:0 !important;
    padding:0 !important;
    min-height:0 !important;
  }

  /* kill leftover margins on the legal menu widget */
  .elementor-1056 .elementor-element.elementor-element-bd474e8,
  .elementor-1056 .elementor-element.elementor-element-bd474e8 > .elementor-widget-container,
  .elementor-1056 .elementor-element.elementor-element-bd474e8 nav.elementor-nav-menu--main,
  .elementor-1056 .elementor-element.elementor-element-bd474e8 nav.elementor-nav-menu--main .elementor-nav-menu{
    margin:0 !important;
    padding:0 !important;
  }

  /* keep the stacked legal links tight */
  .elementor-1056 .elementor-element.elementor-element-bd474e8 nav.elementor-nav-menu--main .elementor-nav-menu{
    gap:12px !important;
  }

  /* kill leftover margins on the footer socials */
  .elementor-1056 .elementor-element.elementor-element-05a9aaf,
  .elementor-1056 .elementor-element.elementor-element-05a9aaf > .elementor-widget-container,
  .elementor-1056 .elementor-element.elementor-element-05a9aaf .elementor-social-icons-wrapper{
    margin:0 !important;
    padding:0 !important;
  }
}

/* FOOTER — re-center legal menu + add a bit more space above it on mobile */
@media (max-width: 767px){

  /* keep the menu/social block centered */
  .elementor-1056 .elementor-element.elementor-element-8c0dc6d > .e-con-inner{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:10px !important;
    margin:0 !important;
    padding:0 !important;
  }

  /* THIS is the main spacing control:
     more room above Diversity, less room below Contact */
  .elementor-1056 .elementor-element.elementor-element-bd474e8{
    width:100% !important;
    margin:18px auto 4px !important;
    padding:0 !important;
    text-align:center !important;
  }

  .elementor-1056 .elementor-element.elementor-element-bd474e8 > .elementor-widget-container{
    width:100% !important;
    margin:0 auto !important;
    padding:0 !important;
    text-align:center !important;
  }

  .elementor-1056 .elementor-element.elementor-element-bd474e8 nav.elementor-nav-menu--main{
    width:100% !important;
    margin:0 auto !important;
    padding:0 !important;
    display:flex !important;
    justify-content:center !important;
    text-align:center !important;
  }

  .elementor-1056 .elementor-element.elementor-element-bd474e8 nav.elementor-nav-menu--main .elementor-nav-menu{
    width:100% !important;
    margin:0 auto !important;
    padding:0 !important;
    list-style:none !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:12px !important;
    text-align:center !important;
  }

  /* remove the wide full-width item behavior that pushed it off-center */
  .elementor-1056 .elementor-element.elementor-element-bd474e8 .elementor-nav-menu > li{
    width:auto !important;
    margin:0 !important;
    float:none !important;
    text-align:center !important;
  }

  .elementor-1056 .elementor-element.elementor-element-bd474e8 .elementor-nav-menu .elementor-item{
    display:inline-block !important;
    width:auto !important;
    margin:0 auto !important;
    padding:0 !important;
    text-align:center !important;
    line-height:1.2 !important;
  }

  /* socials closer to Contact */
  .elementor-1056 .elementor-element.elementor-element-05a9aaf,
  .elementor-1056 .elementor-element.elementor-element-05a9aaf > .elementor-widget-container{
    margin:0 !important;
    padding:0 !important;
  }
}

/* FILM SERIES PAGE — stop footer from riding up into the widget */
.page-id-828 .elementor-widget-shortcode,
.page-id-828 .elementor-widget-shortcode > .elementor-widget-container,
.page-id-828 .elementor-shortcode,
.page-id-828 .eventive-film-guide,
.page-id-828 .film-guide-wrap,
.page-id-828 .films-grid,
.page-id-828 .film-grid{
  display: flow-root !important;   /* contains floated children */
  position: relative !important;
  overflow: visible !important;
  min-height: 1px !important;
}

/* extra clearfix insurance */
.page-id-828 .elementor-widget-shortcode > .elementor-widget-container::after,
.page-id-828 .elementor-shortcode::after,
.page-id-828 .eventive-film-guide::after,
.page-id-828 .film-guide-wrap::after,
.page-id-828 .films-grid::after,
.page-id-828 .film-grid::after{
  content: "" !important;
  display: block !important;
  clear: both !important;
}

/* keep footer firmly below page content */
.page-id-828 footer.elementor-location-footer,
.page-id-828 .elementor-location-footer{
  clear: both !important;
  position: relative !important;
  z-index: 1 !important;
  margin-top: 40px !important;
}

/* =========================================================
   HEADER MENU + OVERLAID BLOG CARD TITLES
   ========================================================= */

/* BLUE BOX — desktop/header menu slightly less bold */
.elementor-location-header .elementor-nav-menu--main .elementor-item,
.elementor-location-header .elementor-nav-menu--main .elementor-item:visited,
.site-navigation ul.menu a{
  font-family:var(--palm-font) !important;
  font-weight:500 !important;
  letter-spacing:.01em !important;
}

/* PINK BOXES — all overlaid blog/post card titles sitewide */
body .elementor-post__card .elementor-post__text .elementor-post__title a,
body.home .elementor .elementor-element.elementor-element-a6b8d23 .elementor-post__title a{
  font-family:var(--palm-font) !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  letter-spacing:.02em !important;
}

/* HOMEPAGE — force the divider to render on the actual widget box */
.page-id-801 .elementor-801 .elementor-element-c41f1b7{
  width:min(1040px, calc(100vw - 48px)) !important;
  max-width:none !important;
  margin:28px auto 0 !important;
  padding:0 !important;
  flex:0 0 auto !important;
  align-self:center !important;
}

.page-id-801 .elementor-801 .elementor-element-c41f1b7 > .elementor-widget-container{
  display:block !important;
  width:100% !important;
  height:1px !important;
  min-height:1px !important;
  margin:0 !important;
  padding:0 !important;
  background:rgba(233,84,33,.58) !important;
  box-shadow:0 0 10px rgba(233,84,33,.16) !important;
  line-height:0 !important;
  overflow:visible !important;
}

/* kill Elementor's empty internal divider markup */
.page-id-801 .elementor-801 .elementor-element-c41f1b7 .elementor-divider,
.page-id-801 .elementor-801 .elementor-element-c41f1b7 .elementor-divider-separator{
  display:none !important;
}

@media (max-width:767px){
  .page-id-801 .elementor-801 .elementor-element-c41f1b7{
    width:min(640px, calc(100vw - 24px)) !important;
    margin:24px auto 0 !important;
  }
}

/* =========================================================
   EVENTIVE CHECKOUT — MONTSERRAT + SMALLER ALL-CAPS HEADER
   paste at VERY BOTTOM
   ========================================================= */

/* Force Montserrat across the entire checkout / ticket overlay */
body :is(
  .eventive-modal,
  .eventive-modal-content,
  .Eventive--Checkout,
  .Eventive--LoginPage,
  .Eventive--Dialog.eventive-widget-container,
  .eventive-background-container,
  .eventive-content-container
),
body :is(
  .eventive-modal,
  .eventive-modal-content,
  .Eventive--Checkout,
  .Eventive--LoginPage,
  .Eventive--Dialog.eventive-widget-container,
  .eventive-background-container,
  .eventive-content-container
) :where(
  h1,h2,h3,h4,h5,h6,
  p,span,div,label,strong,small,
  a,button,input,select,textarea,
  th,td,li,ul,ol
):not(svg, svg *, i, [class*="icon"], [class*="fa"], [class*="Icon"]){
  font-family:'Montserrat', sans-serif !important;
}

/* Checkout header */
body .Eventive--Checkout h2{
  font-family:'Montserrat', sans-serif !important;
  text-transform:uppercase !important;
  letter-spacing:.08em !important;
  font-size:clamp(28px, 2.4vw, 40px) !important;
  line-height:1.02 !important;
  font-weight:600 !important;
}

/* Mobile version: a tad smaller still */
@media (max-width:767px){
  body .Eventive--Checkout h2{
    font-size:clamp(20px, 6.4vw, 28px) !important;
    letter-spacing:.07em !important;
  }
}

/* FILM GUIDE PAGE — top heading like "New Releases" */
body .elementor.elementor-2916 .elementor-element.elementor-element-c70a047 .elementor-heading-title{
  font-family:'Montserrat', sans-serif !important;
  font-weight:700 !important;
  font-style:normal !important;
  font-size:36px !important;
  line-height:1.1 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
}

/* FILM GUIDE PAGE — enforce Montserrat on populated widget text */
body .elementor.elementor-2916 .elementor-element.elementor-element-cc142fc .wp-block-eventive-film-guide,
body .elementor.elementor-2916 .elementor-element.elementor-element-cc142fc .wp-block-eventive-film-guide :where(
  h1,h2,h3,h4,h5,h6,
  p,span,a,button,div,label,input,select,textarea
){
  font-family:'Montserrat', sans-serif !important;
}

/* optional: keep film titles strong */
body .elementor.elementor-2916 .elementor-element.elementor-element-cc142fc .catalog-film-title{
  font-weight:700 !important;
}

/* MOBILE — remove extra gap between showtimes and next poster */
@media (max-width: 767px){

  .page-id-801 .elementor-element-ee08584 .eventive-native-year-round .events-container{
    gap:0 !important;
    row-gap:0 !important;
  }

  .page-id-801 .elementor-element-ee08584 .eventive-native-year-round .yr-card{
    display:flex !important;
    flex-direction:column !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 0 18px !important;
    padding:0 !important;
  }

  .page-id-801 .elementor-element-ee08584 .eventive-native-year-round .yr-card__media,
  .page-id-801 .elementor-element-ee08584 .eventive-native-year-round .yr-card__body,
  .page-id-801 .elementor-element-ee08584 .eventive-native-year-round .yr-card__cta{
    margin:0 !important;
    padding:0 !important;
    min-height:0 !important;
  }

  .page-id-801 .elementor-element-ee08584 .eventive-native-year-round .yr-card__cta{
    margin-top:14px !important;
  }

  .page-id-801 .elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes,
  .page-id-801 .elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex{
    margin:0 !important;
    padding:0 !important;
    min-height:0 !important;
  }

  .page-id-801 .elementor-element-ee08584 .eventive-native-year-round .yr-showtime__btn{
    margin:0 !important;
  }
}

/* MOBILE — recenter year-round cards + keep a little breathing room */
@media (max-width: 767px){

  .page-id-801 .elementor-element-ee08584 .eventive-native-year-round .events-container{
    width:100% !important;
    max-width:none !important;
    margin:0 auto !important;
    padding:0 !important;
    box-sizing:border-box !important;
  }

  .page-id-801 .elementor-element-ee08584 .eventive-native-year-round .yr-card{
    width:min(640px, calc(100vw - 24px)) !important;
    max-width:none !important;
    margin:0 auto 22px !important; /* tad more space back */
    padding:0 !important;
    min-height:0 !important;
    height:auto !important;
    display:flex !important;
    flex-direction:column !important;
    box-sizing:border-box !important;
  }

  .page-id-801 .elementor-element-ee08584 .eventive-native-year-round .yr-card__media,
  .page-id-801 .elementor-element-ee08584 .eventive-native-year-round .yr-card__body,
  .page-id-801 .elementor-element-ee08584 .eventive-native-year-round .yr-card__cta{
    width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding:0 !important;
    min-height:0 !important;
    box-sizing:border-box !important;
  }

  .page-id-801 .elementor-element-ee08584 .eventive-native-year-round .yr-card__cta{
    margin-top:16px !important; /* brings back a tiny bit of space */
  }

  .page-id-801 .elementor-element-ee08584 .eventive-native-year-round .yr-card__showtimes,
  .page-id-801 .elementor-element-ee08584 .eventive-native-year-round .yr-showtimes-flex{
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;   /* re-center */
    align-items:center !important;
    align-content:flex-start !important;
    gap:12px !important;
    row-gap:12px !important;
    column-gap:12px !important;
    margin:0 auto !important;
    padding:0 !important;
    min-height:0 !important;
    width:100% !important;
    box-sizing:border-box !important;
  }

  .page-id-801 .elementor-element-ee08584 .eventive-native-year-round .yr-showtime__btn{
    flex:0 1 240px !important;
    display:flex !important;
    justify-content:center !important;
    margin:0 !important;
    box-sizing:border-box !important;
  }
}

/* MOBILE — add a little more breathing room above/below the widget */
@media (max-width: 767px){

  .page-id-801 .elementor-element-ee08584{
    margin-top:10px !important;
    margin-bottom:10px !important;
  }

  .page-id-801 .elementor-element-ee08584 .eventive-native-year-round{
    padding-top:4px !important;
    padding-bottom:4px !important;
  }

  .page-id-801 .elementor-element-ee08584 .eventive-native-year-round .yr-card{
    margin:0 auto 40px !important;
  }
}

/* MOBILE ONLY — more separation between the info chunks */
@media (max-width: 767px){

  .palm-mobile-info-stack{
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  /* intro paragraph -> first divider */
  .palm-mobile-info-stack .elementor-widget-text-editor:first-of-type{
    margin-bottom: 26px !important;
  }

  /* divider spacing */
  .palm-mobile-info-stack .elementor-widget-divider{
    margin-top: 26px !important;
    margin-bottom: 26px !important;
  }

  /* Visit Us / Opening Hours headings */
  .palm-mobile-info-stack .elementor-widget-heading{
    margin-bottom: 14px !important;
  }

  /* address / hours text blocks */
  .palm-mobile-info-stack .elementor-widget-text-editor{
    margin-bottom: 0 !important;
  }
}

/* MOBILE — tighten space above Subscribe */
@media (max-width: 767px){

  .elementor-1056 .elementor-element-2f2b55b9{
    margin-top: 0px !important;
    padding-top: 0 !important;
  }

  .elementor-1056 .elementor-element-2f2b55b9 .elementor-element-56ab122a{
    margin-bottom: 0 !important;
  }

}

@media (max-width:767px){
  .page-id-801 .eventive-native-year-round.is-palm-closed .events-container .yr-no-events.palm-closed-slot{
    margin:18px auto 14px !important;
  }
}

@media (max-width:767px){

  .palm-socials-footer-mobile{
    width:100% !important;
    display:block !important;
    order:999 !important;
    margin:16px 0 0 !important;
    padding:8px 0 0 !important;
    text-align:center !important;
    align-self:stretch !important;
  }

  .palm-socials-footer-mobile > .elementor-widget-container{
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
  }

  .palm-socials-footer-mobile .elementor-social-icons-wrapper,
  .palm-socials-footer-mobile .elementor-grid{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    justify-content:center !important;
    align-items:center !important;
    gap:14px !important;
    width:auto !important;
    margin:0 auto !important;
  }

  .palm-socials-footer-mobile .elementor-grid-item{
    display:inline-flex !important;
    float:none !important;
    margin:0 !important;
  }

  .palm-socials-footer-mobile .elementor-icon{
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    min-height:34px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    padding:0 !important;
    background:var(--global-palm-orange) !important;
    border-radius:999px !important;
    box-shadow:none !important;
  }

  .palm-socials-footer-mobile .elementor-icon i,
  .palm-socials-footer-mobile .elementor-icon svg,
  .palm-socials-footer-mobile .elementor-icon svg *{
    color:#fff !important;
    fill:#fff !important;
  }
}

@media (max-width:767px){

  /* hide socials while they are still inside the header */
  .elementor-location-header .elementor-element-05a9aaf{
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }

  /* once moved into footer, show them normally */
  .palm-socials-footer-mobile{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }
}

/* FILM SERIES PAGE ONLY — mobile spacing cleanup */
@media (max-width:767px){

  /* keep the page section containing itself */
  .page-id-828 .elementor-element-e69759c,
  .page-id-828 .elementor-element-e69759c > .e-con-inner,
  .page-id-828 .elementor-element-920bb00,
  .page-id-828 .elementor-element-920bb00 > .elementor-widget-container,
  .page-id-828 .elementor-element-920bb00 .elementor-posts-container{
    display:flow-root !important;
    position:relative !important;
    overflow:visible !important;
    min-height:1px !important;
  }

  .page-id-828 .elementor-element-920bb00 > .elementor-widget-container::after,
  .page-id-828 .elementor-element-920bb00 .elementor-posts-container::after,
  .page-id-828 .elementor-element-e69759c > .e-con-inner::after{
    content:"" !important;
    display:block !important;
    clear:both !important;
  }

  .page-id-828 .elementor-element-920bb00 article.elementor-post{
    float:none !important;
    position:relative !important;
  }

  /* move the section upward a bit */
  .page-id-828 .elementor-element-e69759c{
    padding-top:6px !important;
    padding-bottom:0 !important;
  }

  .page-id-828 .elementor-element-e69759c > .e-con-inner{
    gap:12px !important;
  }

  /* lift the CURRENT FILM SERIES heading */
  .page-id-828 .elementor-element-3407541,
  .page-id-828 .elementor-element-3407541 > .elementor-widget-container{
    margin-top:-33px !important;
    margin-bottom:14px !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
  }

  .page-id-828 .elementor-element-3407541 .elementor-heading-title{
    margin:0 !important;
  }

  /* remove the big black gap above the footer */
  .page-id-828 footer.elementor-location-footer,
  .page-id-828 .elementor-location-footer{
    clear:both !important;
    position:relative !important;
    z-index:2 !important;
    margin-top:8px !important;
    padding-top:0 !important;
  }
}/* End custom CSS */