/* PFX1 Site Studio 5.8.55 — Events & Booking canonical orange theme + lifecycle presentation. */
body.pfx1-events-visual-surface{
  --pfx-events-bg:#020914;
  --pfx-events-panel:#071729;
  --pfx-events-panel-2:#0a1d31;
  --pfx-events-line:rgba(255,122,0,.34);
  --pfx-events-orange:#ff7a00;
  --pfx-events-gold:#ffb000;
  --pfx-events-cyan:#ff9420;
  --pfx-events-blue:#ff7a00;
  --pfx-events-purple:#ffb000;
  --pfx-events-green:#22d99a;
  --pfx-events-muted:#8ca4ba;
  background:var(--pfx-events-bg)!important;
}
.pfx1-events-page{
  width:min(1280px,calc(100% - 32px));
  margin:34px auto 56px;
  color:#f7fbff;
  font-family:var(--pfx-font,var(--pfx-ui-font,inherit));
  direction:rtl;
}
.pfx1-events-page *{box-sizing:border-box}
.pfx1-events-page a{text-decoration:none}
.pfx1-events-hero{padding:26px 28px;margin-bottom:22px;border:1px solid var(--pfx-events-line);border-radius:22px;background:radial-gradient(circle at 78% 10%,rgba(255,122,0,.16),transparent 35%),linear-gradient(145deg,rgba(10,29,49,.98),rgba(3,13,26,.98));box-shadow:0 22px 55px rgba(0,0,0,.22)}
.pfx1-events-hero>span,.pfx1-event-kicker{display:inline-flex;align-items:center;min-height:28px;padding:0 11px;border:1px solid rgba(255,176,0,.45);border-radius:999px;background:rgba(255,122,0,.12);color:#ffd18a;font-size:11px;font-weight:800}
.pfx1-events-hero h1{margin:10px 0 8px;font-size:clamp(26px,3vw,42px);line-height:1.3}.pfx1-events-hero p{margin:0;color:var(--pfx-events-muted);line-height:1.9}
.pfx1-events-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pfx1-event-card{overflow:hidden;border:1px solid var(--pfx-events-line);border-radius:20px;background:linear-gradient(180deg,rgba(9,29,49,.98),rgba(4,16,29,.98));box-shadow:0 16px 38px rgba(0,0,0,.2)}
.pfx1-event-card__media{height:180px;overflow:hidden;border-bottom:1px solid var(--pfx-events-line)}.pfx1-event-card__media img{width:100%;height:100%;object-fit:cover;display:block}
.pfx1-event-card__body{display:flex;flex-direction:column;min-height:285px;padding:18px}.pfx1-event-card__meta{display:flex;gap:7px;flex-wrap:wrap}.pfx1-event-card__meta span{padding:4px 8px;border-radius:999px;background:rgba(255,122,0,.09);border:1px solid rgba(255,176,0,.22);color:#ffd08a;font-size:10px}.pfx1-event-card h2{margin:12px 0 6px;font-size:20px}.pfx1-event-card p{flex:1;margin:0;color:var(--pfx-events-muted);font-size:12px;line-height:1.9}.pfx1-event-card__hosts{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.pfx1-event-card__hosts span{font-size:10px;color:#c9d9e7}.pfx1-event-card__footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:13px;border-top:1px solid rgba(255,255,255,.07)}.pfx1-event-card__footer strong{font-size:14px;color:#fff}
.pfx1-event-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 20px;border:1px solid rgba(255,176,0,.48);border-radius:10px;background:linear-gradient(100deg,#ff6b00,#ffb000);color:#fff!important;font:800 12px/1.4 var(--pfx-font,var(--pfx-ui-font,inherit));cursor:pointer;transform:none!important;translate:none!important;scale:1!important;transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,filter .16s ease!important}.pfx1-event-button:hover,.pfx1-event-button:focus-visible{transform:none!important;translate:none!important;scale:1!important;filter:brightness(1.08);box-shadow:0 0 0 1px rgba(255,176,0,.16),0 8px 22px rgba(255,122,0,.20)}.pfx1-event-button.is-secondary{background:#0a1b2d;border-color:rgba(255,255,255,.18)}
.pfx1-events-empty{padding:40px;border:1px dashed rgba(139,167,190,.32);border-radius:18px;background:rgba(7,23,41,.65);text-align:center;color:var(--pfx-events-muted)}.pfx1-events-empty strong{display:block;margin-bottom:8px;color:#fff}.pfx1-events-empty.is-compact{padding:20px}
.pfx1-event-notice{margin:0 0 16px;padding:12px 15px;border-radius:12px;border:1px solid var(--pfx-events-line);background:#091c2d}.pfx1-event-notice.is-confirmed{border-color:rgba(34,217,154,.4);color:#8df2cd}.pfx1-event-notice.is-error{border-color:rgba(255,86,104,.45);color:#ffabb5}
.pfx1-event-back{display:inline-flex;margin-bottom:12px;color:#91cfff}.pfx1-event-detail__head{display:grid;grid-template-columns:minmax(280px,420px) minmax(0,1fr);gap:24px;padding:22px;border:1px solid var(--pfx-events-line);border-radius:22px;background:linear-gradient(145deg,#081a2c,#04111f)}.pfx1-event-detail__media{overflow:hidden;border-radius:16px;min-height:270px}.pfx1-event-detail__media img{width:100%;height:100%;object-fit:cover}.pfx1-event-detail__copy{align-self:center}.pfx1-event-detail__copy h1{margin:12px 0 8px;font-size:clamp(28px,4vw,48px);line-height:1.25}.pfx1-event-detail__copy p{color:var(--pfx-events-muted);line-height:2}.pfx1-event-facts{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.pfx1-event-facts span{padding:7px 10px;border-radius:9px;background:#0a2035;border:1px solid rgba(255,255,255,.08);color:#cce3f5;font-size:11px}
.pfx1-event-booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px;margin-top:18px;align-items:start}.pfx1-event-booking-main{display:grid;gap:16px;min-width:0}.pfx1-event-hosts,.pfx1-event-calendar,.pfx1-event-slots,.pfx1-event-summary{padding:18px;border:1px solid rgba(var(--pfx-event-rgb,255,122,0),.2);border-radius:20px;background:linear-gradient(180deg,#081a2b,#051421);box-shadow:0 16px 38px rgba(0,0,0,.14)}
.pfx1-event-section-title{display:grid;gap:4px;margin-bottom:14px}.pfx1-event-section-title>span,.pfx1-event-slots__head>div>span{color:var(--pfx-event-accent,#ff8a12);font-size:9px;font-weight:850;letter-spacing:.03em}.pfx1-event-section-title h2,.pfx1-event-slots__head h2{margin:0;font-size:17px;line-height:1.55}.pfx1-event-section-title p,.pfx1-event-slots__head p{margin:0;color:#7891a5;font-size:10px;line-height:1.7}
.pfx1-event-host-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pfx1-event-host{position:relative;display:flex;align-items:center;gap:11px;min-height:68px;padding:10px 12px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:linear-gradient(180deg,#081928,#06131f);color:#eaf6ff!important;overflow:hidden;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.pfx1-event-host::after{content:"";position:absolute;inset-inline-start:0;top:16%;bottom:16%;width:2px;border-radius:2px;background:var(--pfx-event-accent,#ff8a12);opacity:0;transition:opacity .16s ease}.pfx1-event-host:is(:hover,:focus-visible),.pfx1-event-host.is-active{border-color:rgba(var(--pfx-event-rgb,255,122,0),.55);background:linear-gradient(115deg,rgba(var(--pfx-event-rgb,255,122,0),.1),#071523);box-shadow:inset 0 0 0 1px rgba(var(--pfx-event-rgb,255,122,0),.08)}.pfx1-event-host:is(:hover,:focus-visible)::after,.pfx1-event-host.is-active::after{opacity:1}.pfx1-event-host img{width:48px;height:48px;border:1px solid rgba(var(--pfx-event-rgb,255,122,0),.28);border-radius:50%;object-fit:cover}.pfx1-event-host>span{display:grid;gap:3px}.pfx1-event-host strong{font-size:12px}.pfx1-event-host small{color:var(--pfx-events-muted);font-size:9px}
.pfx1-event-picker-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:14px;align-items:stretch}.pfx1-event-calendar{position:relative;overflow:visible;isolation:isolate}.pfx1-event-calendar__top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:13px}.pfx1-event-calendar__month{display:flex;align-items:center;gap:9px;flex-shrink:0}.pfx1-event-calendar__month>strong{min-width:98px;color:#eef8ff;font-size:12px;text-align:center}.pfx1-event-calendar__nav{display:flex;gap:5px}.pfx1-event-calendar__nav a{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(var(--pfx-event-rgb,255,122,0),.2);border-radius:10px;color:#dff5ff;background:#071625;font-size:20px;line-height:1;transition:border-color .16s ease,background-color .16s ease,color .16s ease}.pfx1-event-calendar__nav a:is(:hover,:focus-visible){border-color:rgba(var(--pfx-event-rgb,255,122,0),.58);background:rgba(var(--pfx-event-rgb,255,122,0),.09);color:var(--pfx-event-accent,#ff8a12)}
.pfx1-event-calendar__week,.pfx1-event-calendar__days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.pfx1-event-calendar__week{margin:3px 0 7px;color:#6e8497;font-size:9px;font-weight:800;text-align:center}.pfx1-event-calendar__week span{padding:5px}.pfx1-event-calendar__day{position:relative;display:grid;place-items:center;align-content:center;min-height:58px;padding:6px 4px;border:1px solid rgba(255,255,255,.06);border-radius:12px;background:#071725;color:#486176;overflow:visible}.pfx1-event-calendar__day-number{font-size:12px;font-weight:850;line-height:1}.pfx1-event-calendar__day:not(.is-disabled){border-color:rgba(var(--pfx-event-rgb,255,122,0),.22);background:linear-gradient(180deg,rgba(var(--pfx-event-rgb,255,122,0),.06),#071725);color:#dff5ff;box-shadow:inset 0 0 0 1px rgba(var(--pfx-event-rgb,255,122,0),.03);transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.pfx1-event-calendar__day:not(.is-disabled):is(:hover,:focus-visible){z-index:8;border-color:rgba(var(--pfx-event-rgb,255,122,0),.62);background:linear-gradient(180deg,rgba(var(--pfx-event-rgb,255,122,0),.12),#071725);box-shadow:0 10px 25px rgba(0,0,0,.2),inset 0 0 0 1px rgba(var(--pfx-event-rgb,255,122,0),.08)}.pfx1-event-calendar__day.is-selected{border-color:var(--pfx-event-accent,#ff8a12);background:linear-gradient(145deg,var(--pfx-event-accent-2,#ff6b00),var(--pfx-event-accent,#ffb000));color:#fff;box-shadow:0 9px 24px rgba(var(--pfx-event-rgb,255,122,0),.22)}.pfx1-event-calendar__day.is-today::before{content:"امروز";position:absolute;top:4px;inset-inline-end:5px;color:var(--pfx-event-accent,#ff8a12);font-size:6px;font-weight:900}.pfx1-event-calendar__day.is-selected.is-today::before{color:#fff}.pfx1-event-calendar__day-dot{width:5px;height:5px;margin-top:5px;border-radius:50%;background:var(--pfx-event-accent,#ff8a12);box-shadow:0 0 10px rgba(var(--pfx-event-rgb,255,122,0),.6)}.pfx1-event-calendar__day>small{margin-top:3px;color:#7e9aad;font-size:7px}.pfx1-event-calendar__day.is-selected>small{color:rgba(255,255,255,.82)}.pfx1-event-calendar__day.is-disabled{opacity:.52;cursor:not-allowed}.pfx1-event-calendar__days>.is-blank{min-height:58px}
.pfx1-event-calendar__popover{position:absolute;z-index:40;inset-inline-start:50%;bottom:calc(100% + 10px);display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:9px;width:210px;padding:10px;border:1px solid rgba(var(--pfx-event-rgb,255,122,0),.34);border-radius:14px;background:rgba(4,15,25,.98);box-shadow:0 20px 42px rgba(0,0,0,.38),0 0 0 1px rgba(255,255,255,.03);opacity:0;pointer-events:none;transform:translate(50%,5px);transition:opacity .16s ease,transform .16s ease}.pfx1-event-calendar__day:is(:hover,:focus-visible) .pfx1-event-calendar__popover{opacity:1;transform:translate(50%,0)}.pfx1-event-calendar__popover>img,.pfx1-event-calendar__avatar-fallback{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(var(--pfx-event-rgb,255,122,0),.4);border-radius:50%;background:rgba(var(--pfx-event-rgb,255,122,0),.12);object-fit:cover;color:#fff;font-size:15px;font-weight:900}.pfx1-event-calendar__popover>span:last-child{display:grid;gap:2px;text-align:right}.pfx1-event-calendar__popover strong{font-size:10px}.pfx1-event-calendar__popover small{color:#7890a4;font-size:8px}.pfx1-event-calendar__popover em{color:var(--pfx-event-accent,#ff8a12);font-size:8px;font-style:normal}.pfx1-event-calendar__legend{display:flex;align-items:center;gap:13px;flex-wrap:wrap;margin-top:12px;padding-top:11px;border-top:1px solid rgba(255,255,255,.05);color:#738ba0;font-size:8px}.pfx1-event-calendar__legend>span{display:inline-flex;align-items:center;gap:5px}.pfx1-event-calendar__legend i{width:7px;height:7px;border-radius:50%;background:#42586b}.pfx1-event-calendar__legend i.is-open{background:var(--pfx-event-accent,#ff8a12)}.pfx1-event-calendar__legend i.is-selected{background:linear-gradient(135deg,var(--pfx-event-accent-2,#ff6b00),var(--pfx-event-accent,#ffb000))}.pfx1-event-calendar__timezone{margin-inline-start:auto;color:#5f788d}
.pfx1-event-slots{display:flex;flex-direction:column;min-width:0}.pfx1-event-slots__head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:12px}.pfx1-event-cadence{display:grid;gap:2px;min-width:82px;padding:8px 9px;border:1px solid rgba(var(--pfx-event-rgb,255,122,0),.2);border-radius:11px;background:rgba(var(--pfx-event-rgb,255,122,0),.06);text-align:center}.pfx1-event-cadence strong{font-size:10px;color:#f2f8fc}.pfx1-event-cadence small{font-size:7px;color:var(--pfx-event-accent,#ff8a12)}.pfx1-event-slot-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pfx1-event-slot{margin:0}.pfx1-event-time-choice{position:relative;display:grid;gap:8px;width:100%;min-height:84px;padding:11px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:linear-gradient(180deg,#081927,#06131f);color:#eff9ff;text-align:right;cursor:pointer;box-shadow:none;transform:none!important;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.pfx1-event-time-choice:is(:hover,:focus-visible){border-color:rgba(var(--pfx-event-rgb,255,122,0),.55);background:linear-gradient(180deg,rgba(var(--pfx-event-rgb,255,122,0),.09),#06131f);box-shadow:0 10px 24px rgba(0,0,0,.16);outline:0}.pfx1-event-time-choice__clock{display:flex;align-items:baseline;justify-content:space-between;gap:6px}.pfx1-event-time-choice__clock strong{font-size:16px;letter-spacing:.02em}.pfx1-event-time-choice__clock small{color:#708a9e;font-size:8px}.pfx1-event-time-choice__status{display:inline-flex;align-items:center;gap:5px;color:#84d9bc;font-size:8px}.pfx1-event-time-choice__status i{width:5px;height:5px;border-radius:50%;background:#22d99a;box-shadow:0 0 8px rgba(34,217,154,.55)}.pfx1-event-time-choice__action{display:inline-flex;align-items:center;justify-content:center;min-height:24px;border-radius:8px;background:rgba(var(--pfx-event-rgb,255,122,0),.08);color:var(--pfx-event-accent,#ff8a12);font-size:8px;font-weight:850}.pfx1-event-time-choice:is(:hover,:focus-visible) .pfx1-event-time-choice__action{background:rgba(var(--pfx-event-rgb,255,122,0),.15)}
.pfx1-event-summary{position:sticky;top:24px;height:max-content}.pfx1-event-summary dl{margin:0}.pfx1-event-summary dl>div{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.06)}.pfx1-event-summary dt{color:var(--pfx-events-muted);font-size:10px}.pfx1-event-summary dd{margin:0;color:#fff;font-weight:750;font-size:11px}.pfx1-event-summary p{margin:14px 0 0;color:#718ba2;font-size:9px;line-height:1.9}
.pfx1-bookings-list{display:grid;gap:12px}.pfx1-booking-card{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px;border:1px solid var(--pfx-events-line);border-radius:16px;background:#071729}.pfx1-booking-card h2{margin:5px 0;font-size:17px}.pfx1-booking-card p,.pfx1-booking-card small{margin:0;color:var(--pfx-events-muted)}
@media(max-width:1050px){.pfx1-events-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pfx1-event-booking-layout{grid-template-columns:1fr}.pfx1-event-summary{position:static}.pfx1-event-picker-grid{grid-template-columns:1fr}.pfx1-event-detail__head{grid-template-columns:1fr}.pfx1-event-detail__media{max-height:340px}}
@media(max-width:680px){.pfx1-events-page{width:min(100% - 20px,1280px);margin-top:20px}.pfx1-events-grid,.pfx1-event-host-grid{grid-template-columns:1fr}.pfx1-events-hero,.pfx1-event-detail__head,.pfx1-event-hosts,.pfx1-event-calendar,.pfx1-event-slots,.pfx1-event-summary{padding:14px}.pfx1-event-calendar__top,.pfx1-event-slots__head{align-items:stretch;flex-direction:column}.pfx1-event-calendar__month{justify-content:space-between}.pfx1-event-calendar__week,.pfx1-event-calendar__days{gap:4px}.pfx1-event-calendar__day,.pfx1-event-calendar__days>.is-blank{min-height:46px}.pfx1-event-calendar__popover{display:none}.pfx1-event-slot-list{grid-template-columns:1fr 1fr}.pfx1-booking-card{align-items:stretch;flex-direction:column}.pfx1-booking-card .pfx1-event-button{width:100%}}


/* 5.8.55 — reservation lifecycle states. */
.pfx1-booking-state{display:inline-flex;align-items:center;min-height:25px;padding:3px 9px;border:1px solid rgba(255,176,0,.25);border-radius:999px;background:rgba(255,122,0,.09);color:#ffd08a;font-size:10px;font-weight:800}
.pfx1-booking-state.is-success{border-color:rgba(34,217,154,.34);background:rgba(34,217,154,.08);color:#73e9b7}.pfx1-booking-state.is-warning{border-color:rgba(255,176,0,.36);color:#ffd36b}.pfx1-booking-state.is-danger{border-color:rgba(255,91,108,.42);background:rgba(255,91,108,.08);color:#ff98a5}.pfx1-booking-state.is-muted{border-color:rgba(148,163,184,.22);background:rgba(148,163,184,.06);color:#8296a8}
.pfx1-booking-card{border-right:3px solid rgba(255,122,0,.58)}.pfx1-booking-card.is-success{border-right-color:#22d99a}.pfx1-booking-card.is-danger{border-right-color:#ff5b6c}.pfx1-booking-card.is-muted{border-right-color:#64748b}.pfx1-booking-card.is-focus{box-shadow:0 0 0 1px rgba(255,176,0,.42),0 18px 40px rgba(255,122,0,.12)}
.pfx1-booking-card__main{display:grid;gap:5px;min-width:0}.pfx1-booking-card__actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pfx1-booking-card__actions form{margin:0}
.pfx1-event-link-lock{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:9px 11px;border:1px solid rgba(255,176,0,.24);border-radius:10px;background:rgba(255,122,0,.06)}.pfx1-event-link-lock span{color:#9cb0c1;font-size:10px}.pfx1-event-link-lock strong{direction:ltr;color:#ffd36b;font-size:12px;font-variant-numeric:tabular-nums}.pfx1-event-link-lock.is-ended strong{color:#73e9b7}
.pfx1-event-link-wait,.pfx1-event-review-note{margin-top:9px;padding:8px 10px;border-radius:9px;font-size:10px;line-height:1.8}.pfx1-event-link-wait{border:1px solid rgba(255,176,0,.25);background:rgba(255,176,0,.06);color:#ffd36b}.pfx1-event-review-note{border:1px solid rgba(255,91,108,.28);background:rgba(255,91,108,.06);color:#ffadb7}
.pfx1-event-button.is-join{background:linear-gradient(100deg,#ff6b00,#ffb000);box-shadow:0 8px 22px rgba(255,122,0,.16)}

.pfx1-event-calendar.is-loading{opacity:.55;pointer-events:none;transition:opacity .16s ease}.pfx1-event-calendar.has-load-error{box-shadow:inset 0 0 0 1px rgba(255,91,91,.35)}

/* 5.8.58 — nearest real availability landing + clear no-slot state. */
.pfx1-event-auto-date{padding:10px 12px;border:1px solid rgba(255,176,0,.28);border-radius:11px;background:rgba(255,122,0,.07);color:#b8c9d8;font-size:11px;line-height:1.8}.pfx1-event-auto-date strong{color:#ffd36b}.pfx1-events-empty.is-compact p{margin:7px 0 0;color:#8da3b6;line-height:1.8}.pfx1-events-empty .pfx1-event-button.is-nearest{margin-top:12px;min-height:38px}

/* PFX1 Site Studio 5.8.71 — premium recurring Events system. */
.pfx1-events-page{
  --pfx-event-accent:#ff7a00;
  --pfx-event-accent-2:#ffb000;
  --pfx-event-rgb:255,122,0;
}
.pfx1-event-theme--orange{--pfx-event-accent:#ff7a00;--pfx-event-accent-2:#ffb000;--pfx-event-rgb:255,122,0}
.pfx1-event-theme--cyan{--pfx-event-accent:#18c8f4;--pfx-event-accent-2:#0a82d2;--pfx-event-rgb:24,200,244}
.pfx1-event-theme--violet{--pfx-event-accent:#a66cff;--pfx-event-accent-2:#6d38d8;--pfx-event-rgb:166,108,255}
.pfx1-event-theme--gold{--pfx-event-accent:#f2c46d;--pfx-event-accent-2:#bd7614;--pfx-event-rgb:242,196,109}
.pfx1-event-theme--emerald{--pfx-event-accent:#22d99a;--pfx-event-accent-2:#07875e;--pfx-event-rgb:34,217,154}
.pfx1-event-theme--crimson{--pfx-event-accent:#ff6071;--pfx-event-accent-2:#a8263b;--pfx-event-rgb:255,96,113}
.pfx1-event-theme--slate{--pfx-event-accent:#b7c3cf;--pfx-event-accent-2:#667789;--pfx-event-rgb:183,195,207}

.pfx1-events-hero--editorial{display:grid;grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:28px;min-height:250px;padding:34px 38px;background:
  radial-gradient(circle at 78% 22%,rgba(255,122,0,.13),transparent 28%),
  linear-gradient(135deg,rgba(8,24,39,.98),rgba(3,11,22,.99));
}
.pfx1-events-hero--editorial h1{max-width:860px;font-size:clamp(30px,4.1vw,58px);letter-spacing:-.025em}.pfx1-events-hero--editorial p{max-width:760px;font-size:13px}
.pfx1-events-hero__mark{display:grid;place-items:center;align-content:center;aspect-ratio:1;border:1px solid rgba(255,176,0,.22);border-radius:50%;background:radial-gradient(circle,rgba(255,122,0,.13),rgba(255,122,0,.02) 55%,transparent 70%);box-shadow:inset 0 0 50px rgba(255,122,0,.04)}
.pfx1-events-hero__mark strong{font-size:34px;letter-spacing:.05em}.pfx1-events-hero__mark span{margin-top:-4px;color:#d89b55;font-size:9px;letter-spacing:.22em}

.pfx1-events-grid--premium{gap:18px}.pfx1-event-card--premium{position:relative;display:grid;grid-template-rows:190px minmax(0,1fr);overflow:hidden;border-color:rgba(var(--pfx-event-rgb),.3);background:linear-gradient(180deg,rgba(8,24,40,.99),rgba(3,13,24,.99));box-shadow:0 18px 50px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.025)}
.pfx1-event-card--premium::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,rgba(var(--pfx-event-rgb),.06),transparent 40%);opacity:.9}
.pfx1-event-card--premium .pfx1-event-card__media{position:relative;height:auto;border:0;background:#05111d}.pfx1-event-card--premium .pfx1-event-card__media img{filter:saturate(.82) contrast(1.03);transition:filter .2s ease}.pfx1-event-card--premium .pfx1-event-card__media-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 22%,rgba(2,9,20,.9) 100%)}
.pfx1-event-card__abstract{display:grid;place-items:center;height:100%;background:radial-gradient(circle at 50% 35%,rgba(var(--pfx-event-rgb),.22),transparent 35%),linear-gradient(135deg,#081727,#030c16)}.pfx1-event-card__abstract span{color:rgba(var(--pfx-event-rgb),.85);font-size:32px;font-weight:900;letter-spacing:.08em}
.pfx1-event-card__type{position:absolute;right:14px;top:14px;z-index:2;display:inline-flex;padding:5px 9px;border:1px solid rgba(var(--pfx-event-rgb),.4);border-radius:999px;background:rgba(3,12,22,.72);backdrop-filter:blur(10px);color:var(--pfx-event-accent);font-size:10px;font-weight:800}
.pfx1-event-card--premium .pfx1-event-card__body{position:relative;min-height:330px;padding:18px 18px 16px}.pfx1-event-card__recurrence{color:var(--pfx-event-accent);font-size:10px;font-weight:800}.pfx1-event-card--premium h2{margin:8px 0 7px;font-size:22px}.pfx1-event-card__tagline{min-height:46px!important;color:#a7bacb!important;font-size:11px!important;line-height:1.9!important}
.pfx1-event-card__next{display:grid;gap:3px;margin-top:12px;padding:10px 11px;border-right:2px solid var(--pfx-event-accent);background:rgba(var(--pfx-event-rgb),.055)}.pfx1-event-card__next span{color:#6f879a;font-size:9px}.pfx1-event-card__next strong{color:#eaf5ff;font-size:11px}.pfx1-event-card__next.is-empty{border-right-color:#64748b;filter:saturate(.3)}
.pfx1-event-card--premium .pfx1-event-card__hosts{margin:10px 0 12px}.pfx1-event-card--premium .pfx1-event-card__footer{margin-top:auto}.pfx1-event-card--premium .pfx1-event-card__footer strong{color:var(--pfx-event-accent)}
.pfx1-event-card--premium .pfx1-event-button{border-color:rgba(var(--pfx-event-rgb),.42);background:linear-gradient(110deg,var(--pfx-event-accent-2),var(--pfx-event-accent));box-shadow:0 8px 22px rgba(var(--pfx-event-rgb),.14)}
.pfx1-event-card--premium.is-dormant{filter:grayscale(.72);opacity:.58}.pfx1-event-card--premium.is-dormant .pfx1-event-card__media img{filter:grayscale(1) brightness(.72)}.pfx1-event-button.is-disabled{cursor:not-allowed;background:#101b27!important;border-color:rgba(148,163,184,.2)!important;color:#718397!important;box-shadow:none!important}

.pfx1-event-detail{display:grid;gap:18px}.pfx1-event-detail .pfx1-event-back{color:var(--pfx-event-accent);font-weight:700}
.pfx1-event-single-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);min-height:520px;overflow:hidden;border:1px solid rgba(var(--pfx-event-rgb),.34);border-radius:26px;background:linear-gradient(135deg,rgba(6,20,34,.99),rgba(2,9,18,.99));box-shadow:0 28px 70px rgba(0,0,0,.25),0 0 50px rgba(var(--pfx-event-rgb),.04)}
.pfx1-event-single-hero::after{content:"";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,var(--pfx-event-accent),transparent);opacity:.7}
.pfx1-event-single-hero__copy{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;padding:48px 48px 44px}.pfx1-event-single-hero__topline{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pfx1-event-single-hero__copy h1{max-width:780px;margin:16px 0 8px;font-size:clamp(38px,5vw,68px);line-height:1.18;letter-spacing:-.035em}.pfx1-event-single-hero__tagline{max-width:690px;margin:0;color:#b8c8d6;font-size:clamp(15px,1.5vw,20px);line-height:1.9}
.pfx1-event-recurrence-pill{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border:1px solid rgba(var(--pfx-event-rgb),.24);border-radius:999px;background:rgba(var(--pfx-event-rgb),.06);color:var(--pfx-event-accent);font-size:10px;font-weight:800}
.pfx1-event-single-hero .pfx1-event-kicker{border-color:rgba(var(--pfx-event-rgb),.36);background:rgba(var(--pfx-event-rgb),.08);color:var(--pfx-event-accent)}
.pfx1-event-next-session{display:grid;gap:4px;max-width:520px;margin-top:28px;padding:13px 15px;border-right:2px solid var(--pfx-event-accent);background:linear-gradient(90deg,transparent,rgba(var(--pfx-event-rgb),.07))}.pfx1-event-next-session span{color:#728ca1;font-size:9px}.pfx1-event-next-session strong{font-size:14px}.pfx1-event-next-session small{color:#91a8ba;font-size:10px}.pfx1-event-next-session.is-empty{border-right-color:#53687b}
.pfx1-event-button--hero{align-self:flex-start;margin-top:20px;border-color:rgba(var(--pfx-event-rgb),.48);background:linear-gradient(105deg,var(--pfx-event-accent-2),var(--pfx-event-accent));box-shadow:0 14px 30px rgba(var(--pfx-event-rgb),.16)}
.pfx1-event-single-hero__visual{position:relative;min-width:0;overflow:hidden;background:radial-gradient(circle at 45% 40%,rgba(var(--pfx-event-rgb),.2),transparent 38%),#030b14}.pfx1-event-single-hero__visual::before{content:"";position:absolute;z-index:2;inset:0;background:linear-gradient(90deg,rgba(3,11,20,.98) 0,rgba(3,11,20,.42) 24%,transparent 58%),linear-gradient(180deg,transparent 60%,rgba(3,11,20,.72))}.pfx1-event-single-hero__visual img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.8) contrast(1.06)}.pfx1-event-single-hero__glow{position:absolute;inset:15% 10%;border-radius:50%;box-shadow:0 0 120px 20px rgba(var(--pfx-event-rgb),.13);pointer-events:none}.pfx1-event-single-hero__monogram{display:grid;place-items:center;align-content:center;height:100%;gap:4px}.pfx1-event-single-hero__monogram span{font-size:70px;font-weight:900;color:rgba(var(--pfx-event-rgb),.75);letter-spacing:.08em}.pfx1-event-single-hero__monogram strong{color:#b7c7d4;font-size:12px}

.pfx1-event-single-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));overflow:hidden;border:1px solid rgba(var(--pfx-event-rgb),.24);border-radius:18px;background:#061522}.pfx1-event-single-facts>div{display:grid;gap:4px;padding:16px 18px;border-left:1px solid rgba(255,255,255,.06)}.pfx1-event-single-facts>div:last-child{border-left:0}.pfx1-event-single-facts span{color:#6f879a;font-size:9px}.pfx1-event-single-facts strong{color:#e9f4fc;font-size:11px;line-height:1.7}
.pfx1-event-single-story{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px}.pfx1-event-single-story__copy,.pfx1-event-single-story__sessions{padding:24px;border:1px solid rgba(var(--pfx-event-rgb),.2);border-radius:20px;background:linear-gradient(180deg,#071826,#04111d)}.pfx1-event-single-story__copy>span,.pfx1-event-single-story__heading>span{color:var(--pfx-event-accent);font-size:10px;font-weight:800}.pfx1-event-single-story__copy h2{max-width:720px;margin:8px 0 14px;font-size:24px;line-height:1.55}.pfx1-event-single-story__text{color:#94aabd;font-size:12px;line-height:2}.pfx1-event-single-story__text p{margin:0 0 10px}.pfx1-event-single-story__heading{display:grid;gap:4px;margin-bottom:12px}.pfx1-event-single-story__heading strong{font-size:17px}.pfx1-event-mini-session{display:grid;grid-template-columns:1fr auto;gap:4px 10px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.06)}.pfx1-event-mini-session:last-child{border-bottom:0}.pfx1-event-mini-session strong{font-size:11px}.pfx1-event-mini-session span{color:#879daf;font-size:10px}.pfx1-event-mini-session small{grid-column:2;grid-row:1/3;align-self:center;color:var(--pfx-event-accent);font-size:9px}

.pfx1-event-reservation-surface{scroll-margin-top:30px;padding:22px;border:1px solid rgba(var(--pfx-event-rgb),.28);border-radius:22px;background:linear-gradient(180deg,rgba(6,22,36,.99),rgba(3,13,23,.99));box-shadow:0 22px 55px rgba(0,0,0,.18)}.pfx1-event-reservation-surface__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.07)}.pfx1-event-reservation-surface__head>div>span{color:var(--pfx-event-accent);font-size:10px;font-weight:800}.pfx1-event-reservation-surface__head h2{margin:5px 0 3px;font-size:23px}.pfx1-event-reservation-surface__head p{margin:0;color:#8298aa;font-size:10px}.pfx1-event-reservation-surface__head>strong{color:var(--pfx-event-accent);font-size:18px;white-space:nowrap}
.pfx1-event-reservation-surface .pfx1-event-hosts,.pfx1-event-reservation-surface .pfx1-event-calendar,.pfx1-event-reservation-surface .pfx1-event-slots,.pfx1-event-reservation-surface .pfx1-event-summary{border-color:rgba(var(--pfx-event-rgb),.18);background:#061522}.pfx1-event-reservation-surface .pfx1-event-host.is-active{border-color:rgba(var(--pfx-event-rgb),.62);background:rgba(var(--pfx-event-rgb),.08)}.pfx1-event-reservation-surface .pfx1-event-calendar__days>a.is-selected{background:linear-gradient(135deg,var(--pfx-event-accent-2),var(--pfx-event-accent));border-color:var(--pfx-event-accent);box-shadow:0 7px 18px rgba(var(--pfx-event-rgb),.2)}.pfx1-event-reservation-surface .pfx1-event-button{border-color:rgba(var(--pfx-event-rgb),.44);background:linear-gradient(105deg,var(--pfx-event-accent-2),var(--pfx-event-accent));box-shadow:0 8px 22px rgba(var(--pfx-event-rgb),.14)}.pfx1-event-summary__eyebrow{color:var(--pfx-event-accent);font-size:9px;font-weight:800}
.pfx1-events-page--booking-only{width:min(1080px,calc(100% - 32px))}

.pfx1-event-session-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pfx1-event-session-strip article{display:grid;gap:4px;padding:14px;border:1px solid rgba(var(--pfx-event-rgb),.22);border-radius:13px;background:#061522}.pfx1-event-session-strip article strong{font-size:12px}.pfx1-event-session-strip article span{color:#8ca2b4;font-size:10px}.pfx1-event-session-strip article small{color:var(--pfx-event-accent);font-size:9px}

@media(max-width:1050px){.pfx1-event-single-hero{grid-template-columns:1fr;min-height:0}.pfx1-event-single-hero__visual{min-height:340px;order:-1}.pfx1-event-single-hero__copy{padding:32px}.pfx1-event-single-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.pfx1-event-single-story{grid-template-columns:1fr}.pfx1-events-hero--editorial{grid-template-columns:1fr}.pfx1-events-hero__mark{display:none}}
@media(max-width:680px){.pfx1-event-single-hero__copy{padding:22px 18px}.pfx1-event-single-hero__copy h1{font-size:38px}.pfx1-event-single-hero__visual{min-height:240px}.pfx1-event-single-facts{grid-template-columns:1fr 1fr}.pfx1-event-single-facts>div{border-bottom:1px solid rgba(255,255,255,.05)}.pfx1-event-single-story__copy,.pfx1-event-single-story__sessions,.pfx1-event-reservation-surface{padding:15px}.pfx1-event-reservation-surface__head{align-items:flex-start;flex-direction:column}.pfx1-event-session-strip{grid-template-columns:1fr}.pfx1-events-hero--editorial{padding:24px 18px}}

/* ==========================================================
 * PFX1 Site Studio 5.8.75 — Events Booking verified visual pass
 * Presentation only. The booking/domain logic remains source-owned.
 * ========================================================== */

/* Surface + typography ---------------------------------------------------- */
body.pfx1-events-visual-surface{
  background:
    radial-gradient(circle at 78% 16%,rgba(0,168,255,.055),transparent 30%),
    radial-gradient(circle at 14% 78%,rgba(24,200,244,.035),transparent 34%),
    #020812 !important;
}
body.pfx1-events-visual-surface .pfx1-events-page,
body.pfx1-events-visual-surface .pfx1-events-page :is(button,a,input,select,textarea,strong,small,span,p,h1,h2,h3,dt,dd){
  font-family:var(--pfx-ui-font,var(--pfx-site-runtime-font,inherit)) !important;
}
body.pfx1-events-visual-surface .pfx1-events-page{
  color:#eaf5ff;
  --pfx-events-bg:#020812;
  --pfx-events-panel:#06131f;
  --pfx-events-panel-2:#081a2a;
  --pfx-events-muted:#8399ac;
}
body.pfx1-events-visual-surface .pfx1-event-detail{gap:20px}

/* Listing hero stays asset-independent; never hard-code a media URL here. */
body.pfx1-events-visual-surface .pfx1-events-hero--editorial{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:290px;
  border-color:rgba(24,200,244,.22);
  background:
    radial-gradient(circle at 84% 20%,rgba(24,200,244,.13),transparent 27%),
    radial-gradient(circle at 18% 90%,rgba(10,130,210,.09),transparent 31%),
    linear-gradient(135deg,#071929 0%,#04111d 52%,#020812 100%);
  box-shadow:0 28px 70px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.025);
}
body.pfx1-events-visual-surface .pfx1-events-hero--editorial::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  opacity:.28;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px);
  background-size:34px 34px;
  mask-image:linear-gradient(90deg,transparent,#000 30%,#000 72%,transparent);
}
body.pfx1-events-visual-surface .pfx1-events-hero--editorial h1{color:#f1f8ff}
body.pfx1-events-visual-surface .pfx1-events-hero--editorial p{color:#91a6b8}
body.pfx1-events-visual-surface .pfx1-events-hero__mark{
  border-color:rgba(24,200,244,.28);
  background:radial-gradient(circle,rgba(24,200,244,.14),rgba(3,14,24,.72) 68%);
  box-shadow:inset 0 0 38px rgba(24,200,244,.05);
}

/* Event detail hero: the real event image becomes the full-bleed backdrop. */
body.pfx1-events-visual-surface .pfx1-event-single-hero{
  display:block;
  min-height:520px;
  isolation:isolate;
  overflow:hidden;
  border-color:rgba(var(--pfx-event-rgb),.32);
  background:#020914;
  box-shadow:0 30px 76px rgba(0,0,0,.32),0 0 58px rgba(var(--pfx-event-rgb),.055);
}
body.pfx1-events-visual-surface .pfx1-event-single-hero__visual{
  position:absolute;
  inset:0;
  z-index:0;
  min-height:100%;
  overflow:hidden;
  background:#020914;
}
body.pfx1-events-visual-surface .pfx1-event-single-hero__visual::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:
    linear-gradient(to left,rgba(2,8,18,.98) 0%,rgba(2,8,18,.91) 37%,rgba(2,8,18,.58) 63%,rgba(2,8,18,.30) 82%,rgba(2,8,18,.52) 100%),
    linear-gradient(180deg,rgba(2,8,18,.12) 42%,rgba(2,8,18,.74) 100%);
}
body.pfx1-events-visual-surface .pfx1-event-single-hero__visual img{
  width:100%;
  height:100%;
  min-height:520px;
  object-fit:cover;
  object-position:center;
  filter:saturate(.9) contrast(1.04) brightness(.88);
  transform:none !important;
}
body.pfx1-events-visual-surface .pfx1-event-single-hero__glow{
  z-index:3;
  inset:14% 8%;
  box-shadow:0 0 150px 22px rgba(var(--pfx-event-rgb),.11);
}
body.pfx1-events-visual-surface .pfx1-event-single-hero__copy{
  position:relative;
  z-index:4;
  width:min(64%,780px);
  min-height:520px;
  margin-inline-start:0;
  margin-inline-end:auto;
  padding:58px 52px 50px;
  text-shadow:0 2px 18px rgba(0,0,0,.22);
}
body.pfx1-events-visual-surface .pfx1-event-single-hero__copy h1{
  margin-top:18px;
  color:#f4f9ff;
  font-size:clamp(42px,5.2vw,72px);
  font-weight:900;
  line-height:1.16;
  letter-spacing:-.04em;
}
body.pfx1-events-visual-surface .pfx1-event-single-hero__tagline{
  color:#b8c8d6;
  font-size:clamp(15px,1.45vw,20px);
  line-height:1.95;
}
body.pfx1-events-visual-surface .pfx1-event-next-session{
  max-width:560px;
  margin-top:30px;
  padding:14px 16px;
  border-inline-start:0;
  border-inline-end:2px solid var(--pfx-event-accent);
  background:linear-gradient(90deg,transparent,rgba(var(--pfx-event-rgb),.09));
  backdrop-filter:blur(6px);
}
body.pfx1-events-visual-surface .pfx1-event-button--hero{
  min-height:46px;
  padding-inline:22px;
  border-radius:12px;
  box-shadow:0 12px 30px rgba(var(--pfx-event-rgb),.16);
}

/* Booking shell ---------------------------------------------------------- */
body.pfx1-events-visual-surface .pfx1-event-reservation-surface{
  position:relative;
  isolation:isolate;
  padding:24px;
  border-color:rgba(var(--pfx-event-rgb),.23);
  border-radius:24px;
  background:
    radial-gradient(circle at 86% 2%,rgba(var(--pfx-event-rgb),.055),transparent 25%),
    linear-gradient(180deg,#061522 0%,#03101b 100%);
  box-shadow:0 26px 65px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.02);
}
body.pfx1-events-visual-surface .pfx1-event-reservation-surface__head{
  align-items:center;
  margin-bottom:20px;
  padding-bottom:18px;
  border-bottom-color:rgba(255,255,255,.06);
}
body.pfx1-events-visual-surface .pfx1-event-reservation-surface__head h2{
  color:#eef8ff;
  font-size:25px;
  font-weight:900;
}
body.pfx1-events-visual-surface .pfx1-event-reservation-surface__head p{
  color:#7f96a9;
  font-size:10px;
  line-height:1.9;
}
body.pfx1-events-visual-surface .pfx1-event-reservation-surface__head>strong{
  padding:8px 0;
  color:var(--pfx-event-accent);
  font-size:18px;
  font-weight:900;
}
body.pfx1-events-visual-surface .pfx1-event-booking-layout{
  position:relative;
  isolation:isolate;
  gap:18px;
}
body.pfx1-events-visual-surface .pfx1-event-booking-main{
  position:relative;
  z-index:1;
  gap:16px;
}
body.pfx1-events-visual-surface .pfx1-event-reservation-surface :is(.pfx1-event-hosts,.pfx1-event-calendar,.pfx1-event-slots,.pfx1-event-summary){
  border-color:rgba(var(--pfx-event-rgb),.17);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(7,24,38,.96),rgba(4,17,28,.98));
  box-shadow:0 16px 34px rgba(0,0,0,.14),inset 0 1px 0 rgba(255,255,255,.018);
}
body.pfx1-events-visual-surface .pfx1-event-section-title>span,
body.pfx1-events-visual-surface .pfx1-event-slots__head>div>span{
  color:var(--pfx-event-accent);
  font-size:9px;
  font-weight:900;
}
body.pfx1-events-visual-surface .pfx1-event-section-title h2,
body.pfx1-events-visual-surface .pfx1-event-slots__head h2{
  color:#eef8ff;
  font-size:18px;
  font-weight:850;
}
body.pfx1-events-visual-surface .pfx1-event-section-title p,
body.pfx1-events-visual-surface .pfx1-event-slots__head p{color:#718a9e}

/* Instructor card: stable geometry; no translate/scale on hover. */
body.pfx1-events-visual-surface .pfx1-event-hosts{
  position:relative;
  z-index:3;
}
body.pfx1-events-visual-surface .pfx1-event-host{
  min-height:72px;
  border-color:rgba(255,255,255,.075);
  border-radius:14px;
  background:linear-gradient(180deg,#081b2b,#061522);
  transform:none !important;
  translate:none !important;
  scale:1 !important;
  transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease !important;
}
body.pfx1-events-visual-surface .pfx1-event-host:is(:hover,:focus-visible),
body.pfx1-events-visual-surface .pfx1-event-host.is-active{
  border-color:rgba(var(--pfx-event-rgb),.54);
  background:linear-gradient(120deg,rgba(var(--pfx-event-rgb),.085),#071725 62%);
  box-shadow:inset 0 0 0 1px rgba(var(--pfx-event-rgb),.055),0 10px 24px rgba(0,0,0,.12);
  transform:none !important;
  translate:none !important;
  scale:1 !important;
}
body.pfx1-events-visual-surface .pfx1-event-host strong{font-size:12px;font-weight:850}
body.pfx1-events-visual-surface .pfx1-event-host small{color:#7e95a8;font-size:9px}

/* Calendar: its instructor preview must render ABOVE the slots panel. */
body.pfx1-events-visual-surface .pfx1-event-picker-grid{
  position:relative;
  isolation:isolate;
  gap:14px;
}
body.pfx1-events-visual-surface .pfx1-event-calendar{
  position:relative;
  z-index:10;
  overflow:visible;
  isolation:isolate;
}
body.pfx1-events-visual-surface .pfx1-event-slots{
  position:relative;
  z-index:2;
  overflow:visible;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__nav a{
  border-color:rgba(var(--pfx-event-rgb),.22);
  background:#071724;
  box-shadow:none;
  transform:none !important;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__nav a:is(:hover,:focus-visible){
  border-color:rgba(var(--pfx-event-rgb),.58);
  background:rgba(var(--pfx-event-rgb),.09);
  box-shadow:0 0 0 1px rgba(var(--pfx-event-rgb),.04);
  transform:none !important;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__day{
  min-height:60px;
  border-radius:12px;
  transform:none !important;
  translate:none !important;
  scale:1 !important;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__day:not(.is-disabled){
  background:linear-gradient(180deg,rgba(var(--pfx-event-rgb),.045),#071725);
  transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease !important;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__day:not(.is-disabled):is(:hover,:focus-visible){
  z-index:60;
  border-color:rgba(var(--pfx-event-rgb),.62);
  background:linear-gradient(180deg,rgba(var(--pfx-event-rgb),.11),#071725);
  box-shadow:0 9px 22px rgba(0,0,0,.18),inset 0 0 0 1px rgba(var(--pfx-event-rgb),.06);
  transform:none !important;
  translate:none !important;
  scale:1 !important;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__day.is-selected{
  color:#fff;
  background:linear-gradient(145deg,var(--pfx-event-accent-2),var(--pfx-event-accent));
  box-shadow:0 8px 20px rgba(var(--pfx-event-rgb),.18);
}
body.pfx1-events-visual-surface .pfx1-event-calendar__popover{
  z-index:999;
  left:50%;
  right:auto;
  inset-inline-start:auto;
  inset-inline-end:auto;
  bottom:calc(100% + 9px);
  width:196px;
  min-height:64px;
  border-color:rgba(var(--pfx-event-rgb),.36);
  background:rgba(3,14,24,.985);
  box-shadow:0 22px 50px rgba(0,0,0,.46),0 0 0 1px rgba(255,255,255,.025);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translate(-50%,6px) !important;
  transition:opacity .15s ease,transform .15s ease,visibility .15s ease !important;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__day:is(:hover,:focus-visible) .pfx1-event-calendar__popover{
  opacity:1;
  visibility:visible;
  transform:translate(-50%,0) !important;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__popover strong{color:#f2f8fd;font-size:10px;font-weight:850}
body.pfx1-events-visual-surface .pfx1-event-calendar__popover small{color:#8198aa}
body.pfx1-events-visual-surface .pfx1-event-calendar__popover em{color:var(--pfx-event-accent);font-weight:800}

/* Slot cards: explicit child visibility defeats global button-hover effects. */
body.pfx1-events-visual-surface .pfx1-event-slot-list{gap:9px}
body.pfx1-events-visual-surface .pfx1-event-time-choice{
  position:relative;
  isolation:isolate;
  overflow:hidden !important;
  min-height:92px;
  padding:12px;
  border:1px solid rgba(255,255,255,.075) !important;
  border-radius:13px;
  appearance:none;
  -webkit-appearance:none;
  background:linear-gradient(180deg,#081b2a 0%,#061522 100%) !important;
  color:#eef8ff !important;
  filter:none !important;
  opacity:1 !important;
  transform:none !important;
  translate:none !important;
  scale:1 !important;
  box-shadow:none !important;
  transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease !important;
}
body.pfx1-events-visual-surface .pfx1-event-time-choice::before{
  content:"";
  position:absolute;
  z-index:0;
  inset:0;
  pointer-events:none;
  opacity:0;
  background:radial-gradient(circle at 18% 0%,rgba(var(--pfx-event-rgb),.14),transparent 46%);
  transition:opacity .16s ease;
}
body.pfx1-events-visual-surface .pfx1-event-time-choice:is(:hover,:focus-visible){
  border-color:rgba(var(--pfx-event-rgb),.56) !important;
  background:linear-gradient(180deg,rgba(var(--pfx-event-rgb),.085) 0%,#061522 70%) !important;
  color:#fff !important;
  filter:none !important;
  opacity:1 !important;
  transform:none !important;
  translate:none !important;
  scale:1 !important;
  box-shadow:0 10px 24px rgba(0,0,0,.17),inset 0 0 0 1px rgba(var(--pfx-event-rgb),.035) !important;
}
body.pfx1-events-visual-surface .pfx1-event-time-choice:is(:hover,:focus-visible)::before{opacity:1}
body.pfx1-events-visual-surface .pfx1-event-time-choice :is(.pfx1-event-time-choice__clock,.pfx1-event-time-choice__clock strong,.pfx1-event-time-choice__clock small,.pfx1-event-time-choice__status,.pfx1-event-time-choice__action){
  position:relative;
  z-index:2;
  visibility:visible !important;
  opacity:1 !important;
  filter:none !important;
  transform:none !important;
}
body.pfx1-events-visual-surface .pfx1-event-time-choice__clock{
  display:grid !important;
  grid-template-columns:auto 1fr;
  align-items:baseline;
  gap:8px;
  min-height:23px;
  direction:rtl;
}
body.pfx1-events-visual-surface .pfx1-event-time-choice__clock strong{
  color:#f4fbff !important;
  font-size:16px;
  font-weight:900;
  line-height:1.25;
  white-space:nowrap;
}
body.pfx1-events-visual-surface .pfx1-event-time-choice__clock small{
  display:block !important;
  color:#829bae !important;
  font-size:8px;
  font-weight:650;
  line-height:1.4;
  text-align:left;
  white-space:nowrap;
}
body.pfx1-events-visual-surface .pfx1-event-time-choice:is(:hover,:focus-visible) .pfx1-event-time-choice__clock small{
  color:#b8cfde !important;
}
body.pfx1-events-visual-surface .pfx1-event-time-choice__status{color:#7de0bc !important;font-size:8px;font-weight:750}
body.pfx1-events-visual-surface .pfx1-event-time-choice__action{
  min-height:25px;
  border:1px solid rgba(var(--pfx-event-rgb),.09);
  background:rgba(var(--pfx-event-rgb),.07) !important;
  color:var(--pfx-event-accent) !important;
  font-weight:900;
}
body.pfx1-events-visual-surface .pfx1-event-time-choice:is(:hover,:focus-visible) .pfx1-event-time-choice__action{
  border-color:rgba(var(--pfx-event-rgb),.16);
  background:rgba(var(--pfx-event-rgb),.13) !important;
}

/* Summary + support cards ------------------------------------------------ */
body.pfx1-events-visual-surface .pfx1-event-summary{
  position:sticky;
  z-index:1;
  top:24px;
  background:linear-gradient(180deg,#071927,#04111d) !important;
}
body.pfx1-events-visual-surface .pfx1-event-summary h2{color:#eef8ff;font-size:24px;font-weight:900;line-height:1.45}
body.pfx1-events-visual-surface .pfx1-event-summary dl>div{border-bottom-color:rgba(255,255,255,.055)}
body.pfx1-events-visual-surface .pfx1-event-summary dt{color:#6f879a}
body.pfx1-events-visual-surface .pfx1-event-summary dd{color:#eff8ff}
body.pfx1-events-visual-surface .pfx1-event-single-facts,
body.pfx1-events-visual-surface .pfx1-event-single-story__copy,
body.pfx1-events-visual-surface .pfx1-event-single-story__sessions{
  border-color:rgba(var(--pfx-event-rgb),.18);
  background:linear-gradient(180deg,#061624,#04111c);
  box-shadow:0 16px 34px rgba(0,0,0,.11);
}

/* Responsive ------------------------------------------------------------- */
@media(max-width:1050px){
  body.pfx1-events-visual-surface .pfx1-event-single-hero{min-height:470px}
  body.pfx1-events-visual-surface .pfx1-event-single-hero__visual img{min-height:470px}
  body.pfx1-events-visual-surface .pfx1-event-single-hero__copy{width:min(76%,760px);min-height:470px;padding:42px 34px}
  body.pfx1-events-visual-surface .pfx1-event-single-hero__visual{order:initial}
  body.pfx1-events-visual-surface .pfx1-event-summary{position:static}
}
@media(max-width:680px){
  body.pfx1-events-visual-surface .pfx1-event-reservation-surface{padding:15px;border-radius:18px}
  body.pfx1-events-visual-surface .pfx1-event-reservation-surface__head{align-items:flex-start;flex-direction:column;gap:10px}
  body.pfx1-events-visual-surface .pfx1-event-single-hero{min-height:440px;border-radius:20px}
  body.pfx1-events-visual-surface .pfx1-event-single-hero__visual::before{
    background:linear-gradient(180deg,rgba(2,8,18,.42) 0%,rgba(2,8,18,.78) 45%,rgba(2,8,18,.97) 100%);
  }
  body.pfx1-events-visual-surface .pfx1-event-single-hero__visual img{min-height:440px;object-position:center}
  body.pfx1-events-visual-surface .pfx1-event-single-hero__copy{
    width:100%;
    min-height:440px;
    justify-content:flex-end;
    margin:0;
    padding:24px 19px 26px;
  }
  body.pfx1-events-visual-surface .pfx1-event-single-hero__copy h1{font-size:38px;letter-spacing:-.025em}
  body.pfx1-events-visual-surface .pfx1-event-single-hero__tagline{font-size:14px;line-height:1.85}
  body.pfx1-events-visual-surface .pfx1-event-next-session{margin-top:20px;background:rgba(3,13,23,.58)}
  body.pfx1-events-visual-surface .pfx1-event-calendar__popover{display:none !important}
  body.pfx1-events-visual-surface .pfx1-event-time-choice{min-height:88px}
}
@media(max-width:460px){
  body.pfx1-events-visual-surface .pfx1-event-slot-list{grid-template-columns:1fr}
  body.pfx1-events-visual-surface .pfx1-event-single-facts{grid-template-columns:1fr}
  body.pfx1-events-visual-surface .pfx1-event-single-facts>div{border-left:0;border-bottom:1px solid rgba(255,255,255,.05)}
}



/* ==========================================================
 * PFX1 Site Studio 5.8.76 — Events single-page simplification pass
 * Scope: remove hero glow circle, support hero narrative box,
 * remove footer/background contrast, and tighten booking copy surfaces.
 * ========================================================== */
body.pfx1-events-visual-surface .pfx1-event-single-hero__glow{display:none !important}
body.pfx1-events-visual-surface .pfx1-event-single-hero__story{
  max-width:560px;
  margin-top:28px;
  padding:16px 18px;
  border-inline-end:2px solid var(--pfx-event-accent);
  background:linear-gradient(90deg,transparent,rgba(var(--pfx-event-rgb),.08));
  backdrop-filter:blur(6px);
}
body.pfx1-events-visual-surface .pfx1-event-single-hero__story p{
  margin:0 0 10px;
  color:#d7e4ee;
  font-size:12px;
  line-height:2;
}
body.pfx1-events-visual-surface .pfx1-event-single-hero__story p:last-child{margin-bottom:0}
body.pfx1-events-visual-surface .pfx1-event-reservation-surface{
  background:linear-gradient(180deg,#061522 0%,#03101b 100%) !important;
}
body.pfx1-events-visual-surface .pfx1-event-cadence{
  min-width:72px;
  padding:7px 10px;
}
body.pfx1-events-visual-surface .pfx1-event-cadence small{display:none !important}
body.pfx1-events-visual-surface :is(#page,.site,.site-content,.content-area,main){
  background:transparent !important;
  background-color:transparent !important;
}
body.pfx1-events-visual-surface :is(.elementor-location-footer,footer.site-footer,.site-footer,
.elementor-location-footer .e-con,.elementor-location-footer .elementor-section,
.elementor-location-footer .elementor-container,.elementor-location-footer .elementor-widget-wrap){
  background:transparent !important;
  background-color:transparent !important;
  box-shadow:none !important;
}
@media(max-width:680px){
  body.pfx1-events-visual-surface .pfx1-event-single-hero__story{margin-top:18px;padding:13px 14px}
  body.pfx1-events-visual-surface .pfx1-event-single-hero__story p{font-size:11px;line-height:1.95}
}


/* ==========================================================
 * PFX1 Site Studio 5.8.77 — Events booking interaction + theme bridge
 * - Uses the universal page accent contract supplied by the site header/nav
 * - Keeps geometry stable while improving booking hierarchy/readability
 * ========================================================== */

/* Events page owns the orange theme contract consumed by Elementor header,
   tablet navigation, mobile navigation and footer. */
body.pfx1-events-visual-surface{
  --pfx-shell-width:1360px;
  --pfx-shell-edge-gap:20px;
  --pfx-accent:#ff7a00;
  --pfx-accent-rgb:255,122,0;
  --pfx-accent-deep:#ffb000;
  --pfx-accent-deep-rgb:255,176,0;
  --pfx-accent-highlight:#ff9420;
  --pfx-accent-highlight-rgb:255,148,32;
  --pfx-events-bg:#020914;
  background:#020914 !important;
}

/* Header remains Elementor-owned; these inherited variables recolor the
   universal header CSS. Fallback below adds the same page accent when the
   canonical pfx-header-shell is present. */
body.pfx1-events-visual-surface :is(.elementor-location-header,[data-elementor-type="header"]) .pfx-header-shell{
  border-color:rgba(var(--pfx-accent-rgb),.36) !important;
  background:
    radial-gradient(circle at 10% 0%,rgba(var(--pfx-accent-rgb),.15),transparent 32%),
    radial-gradient(circle at 76% 0%,rgba(var(--pfx-accent-deep-rgb),.13),transparent 38%),
    radial-gradient(circle at 100% 100%,rgba(var(--pfx-accent-highlight-rgb),.08),transparent 36%),
    linear-gradient(180deg,rgba(3,7,17,.86),rgba(2,4,10,.97)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.075),
    0 0 22px rgba(var(--pfx-accent-rgb),.055),
    0 0 42px rgba(var(--pfx-accent-deep-rgb),.055),
    0 18px 54px rgba(0,0,0,.30) !important;
}
body.pfx1-events-visual-surface :is(.elementor-location-header,[data-elementor-type="header"]) .pfx-header-shell:is(:hover,:focus-within){
  border-color:rgba(var(--pfx-accent-highlight-rgb),.76) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 0 22px rgba(var(--pfx-accent-rgb),.20),
    0 0 48px rgba(var(--pfx-accent-deep-rgb),.16),
    0 0 72px rgba(var(--pfx-accent-highlight-rgb),.075),
    0 18px 54px rgba(0,0,0,.30) !important;
}

/* Footer surface parity: same dark glass + event glow, no cyan island. */
body.pfx1-events-visual-surface :is(.elementor-location-footer,[data-elementor-type="footer"]){
  --pfx-accent:#ff7a00;
  --pfx-accent-rgb:255,122,0;
  --pfx-accent-deep:#ffb000;
  --pfx-accent-deep-rgb:255,176,0;
  --pfx-accent-highlight:#ff9420;
  --pfx-accent-highlight-rgb:255,148,32;
  background:transparent !important;
}
body.pfx1-events-visual-surface :is(.elementor-location-footer,[data-elementor-type="footer"]) > :is(.e-con,.elementor-element):first-child{
  border-color:rgba(var(--pfx-accent-rgb),.30) !important;
  background:
    radial-gradient(circle at 50% 0%,rgba(var(--pfx-accent-rgb),.08),transparent 50%),
    linear-gradient(180deg,rgba(4,10,15,.95),rgba(2,7,12,.985)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 0 20px rgba(var(--pfx-accent-rgb),.08),
    0 0 38px rgba(var(--pfx-accent-deep-rgb),.04),
    0 16px 38px rgba(0,0,0,.28) !important;
}

/* Back navigation is a real system button, without geometry motion. */
body.pfx1-events-visual-surface .pfx1-event-back{
  width:max-content;
  min-height:38px;
  margin-bottom:16px;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  border:1px solid rgba(var(--pfx-accent-rgb),.30);
  border-radius:11px;
  background:linear-gradient(180deg,rgba(11,24,36,.88),rgba(5,13,23,.84));
  color:#dbe8f4 !important;
  font-size:11px;
  font-weight:800;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 0 14px rgba(var(--pfx-accent-rgb),.035);
  transform:none !important;
  transition:border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease !important;
}
body.pfx1-events-visual-surface .pfx1-event-back::before{
  content:"←";
  color:var(--pfx-accent);
  font-size:14px;
  line-height:1;
}
body.pfx1-events-visual-surface .pfx1-event-back:is(:hover,:focus-visible){
  border-color:rgba(var(--pfx-accent-highlight-rgb),.64);
  background:
    radial-gradient(circle at 50% 0%,rgba(var(--pfx-accent-rgb),.12),transparent 70%),
    linear-gradient(180deg,rgba(13,28,43,.96),rgba(6,15,26,.94));
  color:#fff !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 0 18px rgba(var(--pfx-accent-rgb),.12),0 8px 20px rgba(0,0,0,.20);
  transform:none !important;
}

/* Price belongs to the reservation decision, not a distant opposite edge. */
body.pfx1-events-visual-surface .pfx1-event-reservation-surface__head{
  justify-content:flex-start;
  align-items:flex-start;
}
body.pfx1-events-visual-surface .pfx1-event-reservation-surface__intro{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  gap:5px 16px;
  width:100%;
}
body.pfx1-events-visual-surface .pfx1-event-reservation-surface__intro>span{
  flex:0 0 100%;
  color:var(--pfx-event-accent);
  font-size:10px;
  font-weight:850;
}
body.pfx1-events-visual-surface .pfx1-event-reservation-surface__intro>h2{
  margin:0;
}
body.pfx1-events-visual-surface .pfx1-event-reservation-price{
  display:inline-flex;
  align-items:baseline;
  gap:8px;
  min-height:36px;
  padding:7px 11px;
  border:1px solid rgba(var(--pfx-accent-rgb),.27);
  border-radius:10px;
  background:rgba(var(--pfx-accent-rgb),.065);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
body.pfx1-events-visual-surface .pfx1-event-reservation-price span{
  color:#7e96aa;
  font-size:9px;
  font-weight:700;
}
body.pfx1-events-visual-surface .pfx1-event-reservation-price strong{
  color:var(--pfx-accent-highlight);
  font-size:16px;
  font-weight:900;
  white-space:nowrap;
}

/* No-refresh host selection gets a subtle busy state while the fragment swaps. */
body.pfx1-events-visual-surface .pfx1-event-booking-layout.is-loading{
  pointer-events:none;
  opacity:.62;
  transition:opacity .14s ease;
}

/* Give slot panel enough width for a single-line heading. */
body.pfx1-events-visual-surface .pfx1-event-picker-grid{
  grid-template-columns:minmax(0,1.28fr) minmax(310px,.78fr);
}
body.pfx1-events-visual-surface .pfx1-event-slots__head h2{
  white-space:nowrap;
  font-size:17px;
}
body.pfx1-events-visual-surface .pfx1-event-slots__head{
  gap:8px;
}

/* Availability marker: checked micro-badge instead of a dot/zero. */
body.pfx1-events-visual-surface .pfx1-event-time-choice__status{
  gap:6px;
}
body.pfx1-events-visual-surface .pfx1-event-time-choice__status i{
  position:relative;
  width:11px;
  height:11px;
  flex:0 0 11px;
  border:1px solid rgba(34,217,154,.68);
  border-radius:3px;
  background:rgba(34,217,154,.10);
  box-shadow:0 0 8px rgba(34,217,154,.14);
}
body.pfx1-events-visual-surface .pfx1-event-time-choice__status i::after{
  content:"";
  position:absolute;
  width:5px;
  height:3px;
  left:2px;
  top:2px;
  border-left:1.5px solid #4ce1ae;
  border-bottom:1.5px solid #4ce1ae;
  transform:rotate(-45deg);
}

/* Calendar hover digits are deliberately white <-> orange. Global link blue
   must never leak into the date number. */
body.pfx1-events-visual-surface .pfx1-event-calendar__day:not(.is-disabled) .pfx1-event-calendar__day-number{
  color:#f4f9fd !important;
  text-shadow:none !important;
  transition:color .16s ease,text-shadow .16s ease !important;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__day:not(.is-disabled):is(:hover,:focus-visible) .pfx1-event-calendar__day-number{
  color:#ff9420 !important;
  text-shadow:0 0 10px rgba(255,122,0,.20) !important;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__day.is-selected .pfx1-event-calendar__day-number{
  color:#fff !important;
}

/* Readable host popup: larger identity text, still compact and above slots. */
body.pfx1-events-visual-surface .pfx1-event-calendar__popover{
  width:228px;
  min-height:76px;
  grid-template-columns:46px minmax(0,1fr);
  gap:11px;
  padding:12px;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__popover>img,
body.pfx1-events-visual-surface .pfx1-event-calendar__avatar-fallback{
  width:46px;
  height:46px;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__popover>span:last-child{gap:3px}
body.pfx1-events-visual-surface .pfx1-event-calendar__popover strong{
  color:#fff;
  font-size:12px;
  font-weight:900;
  line-height:1.55;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__popover small{
  color:#9bb0c0;
  font-size:9px;
  line-height:1.55;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__popover em{
  color:#ff9420;
  font-size:9px;
  font-weight:850;
  line-height:1.55;
}

@media(max-width:1050px){
  body.pfx1-events-visual-surface .pfx1-event-picker-grid{grid-template-columns:minmax(0,1fr) minmax(285px,.75fr)}
  body.pfx1-events-visual-surface .pfx1-event-slots__head h2{font-size:16px}
}
@media(max-width:760px){
  body.pfx1-events-visual-surface .pfx1-event-picker-grid{grid-template-columns:1fr}
  body.pfx1-events-visual-surface .pfx1-event-slots__head h2{white-space:normal}
  body.pfx1-events-visual-surface .pfx1-event-reservation-surface__intro{align-items:flex-start}
}


/* ==========================================================
 * PFX1 Site Studio 5.8.78 — Events refinement pass
 * - remove footer seam
 * - simplify summary card and remove sticky behavior
 * - tighten calendar spacing
 * ========================================================== */

/* Remove the visible seam between the page and the footer while keeping
   the footer in the same orange family. */
body.pfx1-events-visual-surface :is(.elementor-location-footer,[data-elementor-type="footer"]){
  border-top:0 !important;
  box-shadow:none !important;
  margin-top:0 !important;
}
body.pfx1-events-visual-surface :is(.elementor-location-footer,[data-elementor-type="footer"]) > :is(.e-con,.elementor-element):first-child{
  border-top:0 !important;
  border-top-color:transparent !important;
  margin-top:0 !important;
  box-shadow:
    0 18px 38px rgba(0,0,0,.28),
    0 0 24px rgba(var(--pfx-accent-rgb),.055),
    0 0 40px rgba(var(--pfx-accent-deep-rgb),.03) !important;
}

/* Reservation summary: more premium and static. */
body.pfx1-events-visual-surface .pfx1-event-summary{
  position:static !important;
  top:auto !important;
  align-self:start;
  padding:16px 16px 14px;
  border-radius:22px;
  border:1px solid rgba(var(--pfx-event-rgb),.24);
  background:
    radial-gradient(circle at 100% 0%,rgba(var(--pfx-event-rgb),.10),transparent 42%),
    linear-gradient(180deg,rgba(7,24,38,.98),rgba(4,14,24,.98)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.04),
    0 18px 38px rgba(0,0,0,.18),
    0 0 22px rgba(var(--pfx-event-rgb),.055) !important;
}
body.pfx1-events-visual-surface .pfx1-event-summary__eyebrow{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-bottom:10px;
  padding:6px 10px;
  border:1px solid rgba(var(--pfx-event-rgb),.18);
  border-radius:999px;
  background:rgba(var(--pfx-event-rgb),.07);
  color:var(--pfx-event-accent);
  font-size:9px;
  font-weight:900;
}
body.pfx1-events-visual-surface .pfx1-event-summary h2{
  margin:0 0 12px;
  font-size:21px;
  line-height:1.4;
}
body.pfx1-events-visual-surface .pfx1-event-summary dl{
  display:grid;
  gap:8px;
}
body.pfx1-events-visual-surface .pfx1-event-summary dl>div{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  padding:11px 12px;
  border:1px solid rgba(255,255,255,.055);
  border-radius:14px;
  background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,.01));
}
body.pfx1-events-visual-surface .pfx1-event-summary dt{
  font-size:10px;
  line-height:1.75;
}
body.pfx1-events-visual-surface .pfx1-event-summary dd{
  font-size:12px;
  font-weight:900;
  text-align:left;
  white-space:nowrap;
}
body.pfx1-events-visual-surface .pfx1-event-summary p{
  margin:12px 0 0;
  padding-top:10px;
  border-top:1px solid rgba(255,255,255,.05);
  color:#7e96aa;
  font-size:9px;
  line-height:1.95;
}

/* Calendar tightening: less empty air, cleaner density. */
body.pfx1-events-visual-surface .pfx1-event-calendar{
  padding:15px 15px 12px;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__top{
  gap:12px;
  margin-bottom:9px;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__month{
  gap:7px;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__month>strong{
  min-width:88px;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__week,
body.pfx1-events-visual-surface .pfx1-event-calendar__days{
  gap:5px;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__week{
  margin:2px 0 5px;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__week span{
  padding:4px;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__day,
body.pfx1-events-visual-surface .pfx1-event-calendar__days>.is-blank{
  min-height:52px;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__day{
  padding:5px 4px;
  border-radius:11px;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__day-dot{
  margin-top:4px;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__legend{
  margin-top:9px;
  padding-top:8px;
  gap:10px;
}

@media(max-width:680px){
  body.pfx1-events-visual-surface .pfx1-event-summary{padding:14px}
  body.pfx1-events-visual-surface .pfx1-event-summary dl>div{padding:10px 11px}
  body.pfx1-events-visual-surface .pfx1-event-calendar{padding:13px 12px 11px}
  body.pfx1-events-visual-surface .pfx1-event-calendar__week,
  body.pfx1-events-visual-surface .pfx1-event-calendar__days{gap:4px}
  body.pfx1-events-visual-surface .pfx1-event-calendar__day,
  body.pfx1-events-visual-surface .pfx1-event-calendar__days>.is-blank{min-height:46px}
}


/* ==========================================================
 * PFX1 Site Studio 5.8.79 — calendar popover micro-spacing
 * ========================================================== */
body.pfx1-events-visual-surface .pfx1-event-calendar__popover{
  min-height:72px;
  padding:11px 12px 9px;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__popover>span:last-child{
  gap:2px;
  align-content:start;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__popover small{
  margin:0;
  line-height:1.45;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__popover em.pfx1-event-calendar__meta-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  column-gap:4px;
  row-gap:0;
  margin-top:-1px;
  margin-bottom:0;
  line-height:1.32;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__meta-count,
body.pfx1-events-visual-surface .pfx1-event-calendar__meta-time{
  display:inline-flex;
  align-items:center;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__meta-sep{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto;
  min-width:8px;
  margin-inline:0;
  transform:translateY(-.5px);
  opacity:.92;
}
@media(max-width:680px){
  body.pfx1-events-visual-surface .pfx1-event-calendar__popover{
    padding:10px 11px 8px;
  }
}


/* ==========================================================
 * PFX1 Site Studio 5.8.79 — Calendar cell vertical rhythm
 * Scope: compact number / availability dot / time-count stack
 * while keeping balanced top and bottom breathing room.
 * ========================================================== */
body.pfx1-events-visual-surface .pfx1-event-calendar__day:not(.is-disabled){
  grid-template-rows:auto 4px auto;
  align-content:center;
  row-gap:2px;
  min-height:50px;
  padding:4px 4px;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__day:not(.is-disabled) .pfx1-event-calendar__day-number{
  line-height:1.05;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__day-dot{
  width:4px;
  height:4px;
  margin-top:0 !important;
  align-self:center;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__day:not(.is-disabled)>small{
  margin-top:0 !important;
  line-height:1.15;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__days>.is-blank{
  min-height:50px;
}
@media(max-width:680px){
  body.pfx1-events-visual-surface .pfx1-event-calendar__day:not(.is-disabled){
    min-height:45px;
    padding-block:3px;
    row-gap:1px;
  }
  body.pfx1-events-visual-surface .pfx1-event-calendar__days>.is-blank{min-height:45px}
}


/* ==========================================================
 * PFX1 Site Studio 5.8.80 — Calendar heading single-line lock
 * Keep the calendar title and its helper copy on one line each.
 * ========================================================== */
body.pfx1-events-visual-surface .pfx1-event-calendar__top{
  display:grid;
  grid-template-columns:minmax(190px,1fr) auto;
  align-items:start;
  column-gap:10px;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__top .pfx1-event-section-title{
  min-width:0;
  margin-bottom:0;
  gap:3px;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__top .pfx1-event-section-title h2{
  white-space:nowrap !important;
  font-size:17px;
  line-height:1.45;
}
body.pfx1-events-visual-surface .pfx1-event-calendar__top .pfx1-event-section-title p{
  white-space:nowrap !important;
  font-size:9px;
  line-height:1.55;
}
@media(max-width:760px){
  body.pfx1-events-visual-surface .pfx1-event-calendar__top{
    grid-template-columns:1fr;
    row-gap:8px;
  }
  body.pfx1-events-visual-surface .pfx1-event-calendar__top .pfx1-event-section-title h2{
    font-size:16px;
  }
  body.pfx1-events-visual-surface .pfx1-event-calendar__top .pfx1-event-section-title p{
    font-size:8.5px;
  }
}


/* ==========================================================
 * PFX1 Site Studio 5.8.81 — Events footer top-line removal
 * Scope: remove the decorative horizontal seam/line immediately
 * above the Elementor footer on Events pages only.
 * ========================================================== */
body.pfx1-events-visual-surface :is(.elementor-location-footer,[data-elementor-type="footer"]){
  border-top:0 !important;
  outline:0 !important;
}
body.pfx1-events-visual-surface :is(.elementor-location-footer,[data-elementor-type="footer"]) > :is(.e-con,.elementor-element):first-child{
  border-top:0 !important;
  border-top-color:transparent !important;
  outline:0 !important;
}
body.pfx1-events-visual-surface :is(.elementor-location-footer,[data-elementor-type="footer"]) > :is(.e-con,.elementor-element):first-child::before,
body.pfx1-events-visual-surface :is(.elementor-location-footer,[data-elementor-type="footer"]) > :is(.e-con,.elementor-element):first-child::after,
body.pfx1-events-visual-surface :is(.elementor-location-footer,[data-elementor-type="footer"]) > :is(.e-con,.elementor-element)[class*="pfx-footer"]::before,
body.pfx1-events-visual-surface :is(.elementor-location-footer,[data-elementor-type="footer"]) > :is(.e-con,.elementor-element)[class*="pfx-footer"]::after{
  content:none !important;
  display:none !important;
  height:0 !important;
  border:0 !important;
  background:none !important;
  box-shadow:none !important;
}
body.pfx1-events-visual-surface :is(.elementor-location-footer,[data-elementor-type="footer"]) > :is(.e-con,.elementor-element):first-child > .elementor-background-overlay{
  border-top:0 !important;
  box-shadow:none !important;
}


/* ==========================================================
 * PFX1 Site Studio 5.8.82 — Events footer root/shell parity fix
 * Root cause: the full-width Elementor .pfx-footer wrapper was receiving
 * a dark/glow surface different from the Events page background. The
 * perceived "line" was the boundary between those two full-width surfaces.
 * Keep the outer footer transparent/same-page; style only .pfx-footer-shell.
 * ========================================================== */
body.pfx1-events-visual-surface{
  --pfx-events-page-bg:#020914;
}

/* Full-width footer wrappers must be visually identical to the page. */
body.pfx1-events-visual-surface :is(
  footer[data-elementor-type="footer"],
  .elementor-location-footer,
  [data-elementor-type="footer"]
){
  margin-top:0 !important;
  padding-top:0 !important;
  border-top:0 !important;
  outline:0 !important;
  background:var(--pfx-events-page-bg) !important;
  background-color:var(--pfx-events-page-bg) !important;
  background-image:none !important;
  box-shadow:none !important;
}

body.pfx1-events-visual-surface :is(
  footer[data-elementor-type="footer"],
  .elementor-location-footer,
  [data-elementor-type="footer"]
) .pfx-footer{
  margin-top:0 !important;
  padding-top:0 !important;
  border:0 !important;
  outline:0 !important;
  background:var(--pfx-events-page-bg) !important;
  background-color:var(--pfx-events-page-bg) !important;
  background-image:none !important;
  box-shadow:none !important;
}

body.pfx1-events-visual-surface :is(
  footer[data-elementor-type="footer"],
  .elementor-location-footer,
  [data-elementor-type="footer"]
) .pfx-footer::before,
body.pfx1-events-visual-surface :is(
  footer[data-elementor-type="footer"],
  .elementor-location-footer,
  [data-elementor-type="footer"]
) .pfx-footer::after,
body.pfx1-events-visual-surface :is(
  footer[data-elementor-type="footer"],
  .elementor-location-footer,
  [data-elementor-type="footer"]
) .pfx-footer > .elementor-background-overlay{
  content:none !important;
  display:none !important;
  border:0 !important;
  background:none !important;
  box-shadow:none !important;
  opacity:0 !important;
}

/* The inner footer card owns the event accent/glass presentation. */
body.pfx1-events-visual-surface :is(
  footer[data-elementor-type="footer"],
  .elementor-location-footer,
  [data-elementor-type="footer"]
) .pfx-footer-shell{
  border:1px solid rgba(var(--pfx-accent-rgb),.30) !important;
  background:
    radial-gradient(circle at 50% 0%,rgba(var(--pfx-accent-rgb),.075),transparent 52%),
    linear-gradient(180deg,rgba(4,10,15,.955),rgba(2,7,12,.985)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 0 20px rgba(var(--pfx-accent-rgb),.075),
    0 0 36px rgba(var(--pfx-accent-deep-rgb),.035),
    0 16px 38px rgba(0,0,0,.28) !important;
}

/* No full-width top separator from any footer child. */
body.pfx1-events-visual-surface :is(
  footer[data-elementor-type="footer"],
  .elementor-location-footer,
  [data-elementor-type="footer"]
) > :is(.e-con,.elementor-element):first-child{
  margin-top:0 !important;
  border-top:0 !important;
  border-top-color:transparent !important;
  outline:0 !important;
  background:var(--pfx-events-page-bg) !important;
  background-color:var(--pfx-events-page-bg) !important;
  background-image:none !important;
  box-shadow:none !important;
}


/* ==========================================================
 * PFX1 Site Studio 5.8.83 — Events catalog premium editorial pass
 * Listing page only. Improves archive hero + cards.
 * ========================================================== */
body.pfx1-events-visual-surface .pfx1-events-page{
  width:min(1280px,calc(100% - 28px));
  margin:28px auto 58px;
}
body.pfx1-events-visual-surface .pfx1-events-hero--editorial{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.18fr) 210px;
  align-items:center;
  gap:24px;
  min-height:328px;
  padding:34px 36px;
  margin-bottom:22px;
  border:1px solid rgba(24,200,244,.18);
  border-radius:28px;
  background:
    radial-gradient(circle at 78% 22%, rgba(0,168,255,.16), transparent 28%),
    radial-gradient(circle at 16% 78%, rgba(255,176,0,.08), transparent 28%),
    linear-gradient(110deg, rgba(4,19,33,.985), rgba(2,12,22,.985));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.04),
    0 24px 62px rgba(0,0,0,.22),
    0 0 40px rgba(0,168,255,.04);
}
body.pfx1-events-visual-surface .pfx1-events-hero--editorial::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:
    linear-gradient(135deg, rgba(255,255,255,.03), transparent 24%),
    linear-gradient(180deg, transparent 70%, rgba(255,176,0,.04));
}
body.pfx1-events-visual-surface .pfx1-events-hero--editorial::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(255,176,0,.72), transparent);
  opacity:.72;
}
body.pfx1-events-visual-surface .pfx1-events-hero--editorial > div:first-child{
  position:relative;
  z-index:1;
  max-width:900px;
}
body.pfx1-events-visual-surface .pfx1-events-hero--editorial > div:first-child > span{
  min-height:31px;
  padding-inline:14px;
  font-size:11px;
  border-color:rgba(255,176,0,.36);
  background:rgba(255,122,0,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}
body.pfx1-events-visual-surface .pfx1-events-hero--editorial h1{
  max-width:930px;
  margin:16px 0 10px;
  font-size:clamp(42px,5.3vw,76px);
  line-height:1.12;
  letter-spacing:-.045em;
  text-wrap:balance;
}
body.pfx1-events-visual-surface .pfx1-events-hero--editorial p{
  max-width:860px;
  margin:0;
  color:#a3b9cb;
  font-size:15px;
  line-height:2;
}
body.pfx1-events-visual-surface .pfx1-events-hero__mark{
  position:relative;
  z-index:1;
  justify-self:start;
  align-self:center;
  width:176px;
  aspect-ratio:1 / 1;
  display:grid;
  place-items:center;
  align-content:center;
  gap:8px;
  border:1px solid rgba(0,168,255,.28);
  border-radius:50%;
  background:
    radial-gradient(circle at 50% 42%, rgba(0,168,255,.2), transparent 44%),
    linear-gradient(180deg, rgba(8,24,39,.92), rgba(4,14,24,.96));
  box-shadow:
    inset 0 0 34px rgba(0,168,255,.06),
    0 0 28px rgba(0,168,255,.055);
}
body.pfx1-events-visual-surface .pfx1-events-hero__mark strong{
  font-size:52px;
  line-height:1;
  letter-spacing:-.05em;
  color:#edf8ff;
}
body.pfx1-events-visual-surface .pfx1-events-hero__mark span{
  font-size:11px;
  font-weight:800;
  letter-spacing:.2em;
  color:#ffba5a;
}

body.pfx1-events-visual-surface .pfx1-events-grid--premium{
  gap:20px;
  align-items:stretch;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium{
  border-radius:24px;
  grid-template-rows:208px minmax(0,1fr);
  border-color:rgba(var(--pfx-event-rgb),.24);
  background:
    linear-gradient(180deg, rgba(7,22,37,.995), rgba(3,12,22,.99));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.03),
    0 18px 48px rgba(0,0,0,.16),
    0 0 28px rgba(var(--pfx-event-rgb),.03);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, filter .18s ease;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium:is(:hover,:focus-within){
  transform:translateY(-4px);
  border-color:rgba(var(--pfx-event-rgb),.42);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.04),
    0 26px 60px rgba(0,0,0,.22),
    0 0 36px rgba(var(--pfx-event-rgb),.08);
}
body.pfx1-events-visual-surface .pfx1-event-card--premium::before{
  background:linear-gradient(135deg, rgba(var(--pfx-event-rgb),.07), transparent 44%);
}
body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__media{
  overflow:hidden;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__media img{
  transform:scale(1.01);
  filter:saturate(.88) contrast(1.04) brightness(.96);
  transition:transform .22s ease, filter .22s ease;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium:is(:hover,:focus-within) .pfx1-event-card__media img{
  transform:scale(1.035);
  filter:saturate(.95) contrast(1.05) brightness(1);
}
body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__media-shade{
  background:linear-gradient(180deg, rgba(2,9,20,.04) 0%, rgba(2,9,20,.54) 60%, rgba(2,9,20,.95) 100%);
}
body.pfx1-events-visual-surface .pfx1-event-card__type{
  top:16px;
  right:16px;
  min-height:31px;
  padding:0 12px;
  font-size:10px;
  border-color:rgba(var(--pfx-event-rgb),.34);
  background:rgba(4,13,24,.76);
  box-shadow:0 8px 22px rgba(0,0,0,.14);
}
body.pfx1-events-visual-surface .pfx1-event-card__abstract{
  background:
    radial-gradient(circle at 50% 38%, rgba(var(--pfx-event-rgb),.16), transparent 36%),
    linear-gradient(140deg, #081829, #030c16);
}
body.pfx1-events-visual-surface .pfx1-event-card__abstract span{
  color:rgba(var(--pfx-event-rgb),.88);
  text-shadow:0 0 24px rgba(var(--pfx-event-rgb),.08);
}
body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__body{
  min-height:364px;
  padding:18px 18px 16px;
}
body.pfx1-events-visual-surface .pfx1-event-card__recurrence{
  display:inline-flex;
  align-items:center;
  gap:6px;
  width:max-content;
  min-height:24px;
  padding-inline:9px;
  border:1px solid rgba(var(--pfx-event-rgb),.18);
  border-radius:999px;
  background:rgba(var(--pfx-event-rgb),.05);
  font-size:9px;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium h2{
  margin:12px 0 8px;
  font-size:clamp(27px,2.1vw,34px);
  line-height:1.26;
  letter-spacing:-.03em;
}
body.pfx1-events-visual-surface .pfx1-event-card__tagline{
  min-height:50px !important;
  color:#b0c2d1 !important;
  font-size:12px !important;
  line-height:1.95 !important;
}
body.pfx1-events-visual-surface .pfx1-event-card__next{
  gap:5px;
  margin-top:14px;
  padding:12px 13px;
  border-right:2px solid var(--pfx-event-accent);
  border-radius:0 14px 14px 0;
  background:linear-gradient(90deg, rgba(var(--pfx-event-rgb),.08), rgba(var(--pfx-event-rgb),.03));
}
body.pfx1-events-visual-surface .pfx1-event-card__next span{
  color:#7e96a9;
  font-size:9px;
  font-weight:700;
}
body.pfx1-events-visual-surface .pfx1-event-card__next strong{
  font-size:12px;
  line-height:1.85;
}
body.pfx1-events-visual-surface .pfx1-event-card__hosts{
  gap:8px;
  margin:12px 0 14px;
}
body.pfx1-events-visual-surface .pfx1-event-card__hosts span{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 10px;
  border:1px solid rgba(255,255,255,.07);
  border-radius:999px;
  background:rgba(255,255,255,.02);
  color:#d7e6f3;
  font-size:10px;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__footer{
  align-items:flex-end;
  gap:14px;
  padding-top:14px;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__footer strong{
  display:grid;
  gap:4px;
  align-self:flex-end;
  color:var(--pfx-event-accent);
  font-size:24px;
  line-height:1;
  letter-spacing:-.02em;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__footer strong::before{
  content:"هزینه رزرو";
  color:#7e97aa;
  font-size:9px;
  font-weight:700;
  letter-spacing:.02em;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-button{
  min-width:154px;
  min-height:40px;
  padding-inline:18px;
  border-radius:12px;
  font-size:12px;
  box-shadow:0 12px 28px rgba(var(--pfx-event-rgb),.16);
}
body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-button.is-disabled{
  min-width:118px;
  background:linear-gradient(180deg, rgba(17,28,40,.9), rgba(11,20,30,.96)) !important;
  color:#7f92a1 !important;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium.is-dormant{
  filter:none;
  opacity:.82;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium.is-dormant .pfx1-event-card__media img{
  filter:saturate(.52) grayscale(.24) brightness(.84);
}
body.pfx1-events-visual-surface .pfx1-event-card--premium.is-dormant .pfx1-event-card__body{
  opacity:.88;
}

@media(max-width:1100px){
  body.pfx1-events-visual-surface .pfx1-events-hero--editorial{
    grid-template-columns:1fr;
    min-height:0;
    padding:28px 24px;
    gap:18px;
  }
  body.pfx1-events-visual-surface .pfx1-events-hero__mark{
    width:140px;
    justify-self:start;
  }
  body.pfx1-events-visual-surface .pfx1-events-grid--premium{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:680px){
  body.pfx1-events-visual-surface .pfx1-events-page{
    width:min(100% - 18px,1280px);
    margin:18px auto 44px;
  }
  body.pfx1-events-visual-surface .pfx1-events-hero--editorial{
    padding:22px 16px;
    border-radius:22px;
  }
  body.pfx1-events-visual-surface .pfx1-events-hero--editorial h1{
    font-size:34px;
    line-height:1.22;
  }
  body.pfx1-events-visual-surface .pfx1-events-hero--editorial p{
    font-size:13px;
    line-height:1.9;
  }
  body.pfx1-events-visual-surface .pfx1-events-hero__mark{
    width:116px;
  }
  body.pfx1-events-visual-surface .pfx1-events-hero__mark strong{
    font-size:36px;
  }
  body.pfx1-events-visual-surface .pfx1-events-grid--premium{
    grid-template-columns:1fr;
    gap:16px;
  }
  body.pfx1-events-visual-surface .pfx1-event-card--premium{
    grid-template-rows:190px minmax(0,1fr);
    border-radius:21px;
  }
  body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__body{
    min-height:unset;
    padding:16px;
  }
  body.pfx1-events-visual-surface .pfx1-event-card--premium h2{
    font-size:26px;
  }
  body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__footer{
    align-items:stretch;
    flex-direction:column-reverse;
  }
  body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__footer strong,
  body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-button{
    width:100%;
  }
}


/* ==========================================================
 * PFX1 Site Studio 5.8.85 — Events archive showcase + card repair
 * Fixes missing showcase layout and refines archive visual hierarchy.
 * ========================================================== */
body.pfx1-events-visual-surface .pfx1-events-page{
  width:min(1280px,calc(100% - 28px));
  margin:24px auto 58px;
}
body.pfx1-events-visual-surface .pfx1-events-showcase{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);
  gap:0;
  overflow:hidden;
  margin-bottom:24px;
  border:1px solid rgba(24,200,244,.18);
  border-radius:30px;
  background:
    radial-gradient(circle at 14% 22%, rgba(0,168,255,.10), transparent 26%),
    radial-gradient(circle at 82% 20%, rgba(162,97,255,.12), transparent 30%),
    linear-gradient(145deg, rgba(3,16,29,.985), rgba(2,10,20,.99));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.04),
    0 24px 68px rgba(0,0,0,.22),
    0 0 30px rgba(0,168,255,.05);
}
body.pfx1-events-visual-surface .pfx1-events-showcase::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(255,255,255,.02), transparent 20%, transparent 82%, rgba(255,176,0,.04)),
    linear-gradient(180deg, transparent 72%, rgba(255,176,0,.03));
}
body.pfx1-events-visual-surface .pfx1-events-showcase__intro,
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight{position:relative;z-index:1;}
body.pfx1-events-visual-surface .pfx1-events-showcase__intro{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:18px;
  min-height:530px;
  padding:46px 40px;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__eyebrow{
  display:inline-flex;
  align-items:center;
  width:max-content;
  min-height:31px;
  padding-inline:14px;
  border:1px solid rgba(255,176,0,.34);
  border-radius:999px;
  background:rgba(255,176,0,.07);
  color:#ffbe63;
  font-size:11px;
  font-weight:800;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__intro h1{
  margin:0;
  color:#eef6ff;
  font-size:clamp(40px,4.65vw,66px);
  line-height:1.18;
  letter-spacing:-.045em;
  text-wrap:balance;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__intro p{
  max-width:560px;
  margin:0;
  color:#afc1d0;
  font-size:15px;
  line-height:2;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  padding-top:4px;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__actions .pfx1-event-button{
  min-width:166px;
}
body.pfx1-events-visual-surface .pfx1-event-button.is-ghost{
  color:#e9f3ff !important;
  background:linear-gradient(180deg, rgba(10,19,31,.8), rgba(6,13,23,.94)) !important;
  border-color:rgba(24,200,244,.24) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 10px 24px rgba(0,0,0,.12) !important;
}
body.pfx1-events-visual-surface .pfx1-event-button.is-ghost:is(:hover,:focus-visible){
  border-color:rgba(24,200,244,.44) !important;
  box-shadow:0 14px 28px rgba(0,0,0,.18),0 0 20px rgba(24,200,244,.10) !important;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight{
  min-height:530px;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-media,
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-media > img,
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-media > div{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-media > img,
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-media > div{
  object-fit:cover;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-shade{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(7,12,21,.04) 0%, rgba(6,10,18,.38) 48%, rgba(3,9,18,.96) 100%);
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  gap:14px;
  max-width:620px;
  padding:28px 28px 24px;
  margin:0 22px 22px;
  margin-top:auto;
  border:1px solid rgba(166,110,255,.26);
  border-radius:26px;
  background:linear-gradient(180deg, rgba(6,12,24,.82), rgba(4,10,18,.94));
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  box-shadow:0 18px 42px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.04);
}
body.pfx1-events-visual-surface .pfx1-events-showcase__badge{
  display:inline-flex;
  align-items:center;
  width:max-content;
  min-height:31px;
  padding-inline:13px;
  border-radius:999px;
  border:1px solid rgba(165,110,255,.34);
  background:rgba(165,110,255,.10);
  color:#d3bcff;
  font-size:11px;
  font-weight:800;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy h2{
  margin:0;
  color:#eef6ff;
  font-size:clamp(34px,3vw,52px);
  line-height:1.18;
  letter-spacing:-.04em;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy p{
  margin:0;
  color:#d5dfeb;
  font-size:14px;
  line-height:1.95;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  overflow:hidden;
  margin-top:8px;
  border:1px solid rgba(164,110,255,.16);
  border-radius:18px;
  background:rgba(3,10,18,.62);
}
body.pfx1-events-visual-surface .pfx1-events-showcase__stats > div{
  display:grid;
  gap:8px;
  align-content:center;
  min-height:88px;
  padding:16px 14px;
  text-align:center;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__stats > div + div{border-right:1px solid rgba(255,255,255,.07);}
body.pfx1-events-visual-surface .pfx1-events-showcase__stats small{
  color:#a88af0;
  font-size:11px;
  font-weight:700;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__stats strong{
  color:#eef6ff;
  font-size:14px;
  line-height:1.8;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}

body.pfx1-events-visual-surface .pfx1-events-grid--premium{
  gap:18px;
  align-items:stretch;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium{
  grid-template-rows:188px minmax(0,1fr);
  border-radius:24px;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__body{
  min-height:382px;
  padding:18px 18px 18px;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium h2{
  margin:10px 0 8px;
  color:var(--pfx-event-accent);
  font-size:clamp(22px,1.75vw,29px);
  line-height:1.35;
  letter-spacing:-.02em;
  font-weight:800;
}
body.pfx1-events-visual-surface .pfx1-event-card__tagline{
  min-height:46px !important;
  color:#d0dce8 !important;
  font-size:12px !important;
  line-height:1.95 !important;
}
body.pfx1-events-visual-surface .pfx1-event-card__next{
  display:grid;
  gap:8px;
  min-height:96px;
  margin-top:14px;
  padding:13px 14px 14px;
  align-content:start;
}
body.pfx1-events-visual-surface .pfx1-event-card__next span{
  color:#8ca1b3;
  font-size:10px;
  font-weight:700;
}
body.pfx1-events-visual-surface .pfx1-event-card__next strong{
  color:#ecf5ff;
  font-size:12px !important;
  line-height:1.9 !important;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden;
}
body.pfx1-events-visual-surface .pfx1-event-card__hosts{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:8px 10px;
  align-items:start;
  margin:13px 0 12px;
}
body.pfx1-events-visual-surface .pfx1-event-card__hosts-label{
  color:#90a6b8;
  font-size:10px;
  font-weight:800;
  line-height:2.2;
}
body.pfx1-events-visual-surface .pfx1-event-card__hosts-list{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
body.pfx1-events-visual-surface .pfx1-event-card__hosts-list span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding-inline:11px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:999px;
  background:rgba(255,255,255,.025);
  color:#dbe8f4;
  font-size:10px;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__footer{
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__footer strong{
  display:grid;
  gap:8px;
  justify-items:end;
  color:var(--pfx-event-accent);
  font-size:16px;
  line-height:1;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__footer strong::before{
  color:#889db0;
}
body.pfx1-events-visual-surface .pfx1-event-card__price-value,
body.pfx1-events-visual-surface .pfx1-event-card__price-currency,
body.pfx1-events-visual-surface .pfx1-event-card__price-free{display:block;}
body.pfx1-events-visual-surface .pfx1-event-card__price-value{
  font-size:18px;
  line-height:1;
  letter-spacing:-.02em;
}
body.pfx1-events-visual-surface .pfx1-event-card__price-currency{
  font-size:14px;
  line-height:1;
}
body.pfx1-events-visual-surface .pfx1-event-card__price-free{
  font-size:15px;
  line-height:1.15;
}

@media(max-width:1160px){
  body.pfx1-events-visual-surface .pfx1-events-showcase{grid-template-columns:1fr;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__intro{min-height:unset;padding:34px 24px 22px;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight{min-height:430px;}
}
@media(max-width:840px){
  body.pfx1-events-visual-surface .pfx1-events-showcase__intro h1{font-size:34px;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__intro p,
  body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy p{font-size:13px;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy{margin:0 14px 14px;padding:22px 18px;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy h2{font-size:30px;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__stats{grid-template-columns:1fr;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__stats > div + div{border-right:0;border-top:1px solid rgba(255,255,255,.07);}
}
@media(max-width:680px){
  body.pfx1-events-visual-surface .pfx1-events-page{width:min(100% - 18px,1280px);margin:18px auto 44px;}
  body.pfx1-events-visual-surface .pfx1-events-showcase{border-radius:22px;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__intro{padding:26px 16px 18px;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight{min-height:360px;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__actions .pfx1-event-button{width:100%;}
  body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__body{min-height:unset;}
  body.pfx1-events-visual-surface .pfx1-event-card__hosts{grid-template-columns:1fr;}
}


/* ==========================================================
 * PFX1 Site Studio 5.8.86 — Events archive hero realignment
 * Closer to approved reference: balanced typography, left intro,
 * right spotlight card, tighter visual rhythm.
 * ========================================================== */
body.pfx1-events-visual-surface .pfx1-events-showcase{
  direction:ltr;
  grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);
  gap:0;
  border-radius:34px;
  border-color:rgba(22,191,243,.17);
  background:
    radial-gradient(circle at 12% 20%, rgba(0,160,255,.10), transparent 24%),
    radial-gradient(circle at 86% 20%, rgba(136,86,255,.14), transparent 28%),
    linear-gradient(145deg, rgba(4,17,31,.985), rgba(3,11,23,.995));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.045),
    0 24px 68px rgba(0,0,0,.24),
    0 0 34px rgba(0,162,255,.05);
}
body.pfx1-events-visual-surface .pfx1-events-showcase__intro,
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy,
body.pfx1-events-visual-surface .pfx1-events-showcase__stats{
  direction:rtl;
  text-align:right;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__intro{
  min-height:496px;
  padding:42px 42px 42px 36px;
  gap:18px;
  overflow:hidden;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__intro::before{
  content:"";
  position:absolute;
  left:-70px;
  bottom:-70px;
  width:360px;
  height:360px;
  border-radius:50%;
  background:
    radial-gradient(circle, rgba(0,168,255,.16) 0%, rgba(0,168,255,.08) 26%, transparent 62%);
  filter:blur(12px);
  pointer-events:none;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__intro::after{
  content:"";
  position:absolute;
  right:56px;
  bottom:76px;
  width:164px;
  height:2px;
  background:linear-gradient(90deg, transparent, rgba(24,200,244,.55), rgba(255,190,99,.75), transparent);
  opacity:.9;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__eyebrow{
  min-height:30px;
  padding-inline:14px;
  font-size:11px;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__intro h1{
  max-width:520px;
  margin:0;
  color:#eef6ff;
  font-size:clamp(32px,3.55vw,54px);
  line-height:1.28;
  letter-spacing:-.038em;
  font-weight:900;
  text-wrap:balance;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__intro p{
  max-width:500px;
  color:#c2d1dd;
  font-size:15px;
  line-height:2.02;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__actions{
  gap:14px;
  padding-top:4px;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__actions .pfx1-event-button{
  min-width:182px;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight{
  display:flex;
  align-items:flex-end;
  min-height:496px;
  padding:24px 22px 22px 10px;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-media{
  inset:22px 22px 22px 0;
  border:1px solid rgba(167,117,255,.22);
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 18px 44px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.04);
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-shade{
  background:
    radial-gradient(circle at 72% 18%, rgba(152,88,255,.32), transparent 28%),
    linear-gradient(180deg, rgba(27,12,52,.16) 0%, rgba(16,9,34,.28) 30%, rgba(8,10,22,.62) 72%, rgba(5,9,18,.96) 100%);
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy{
  width:min(100% - 26px, 760px);
  max-width:none;
  gap:14px;
  padding:26px 26px 20px;
  margin:0 0 18px auto;
  border-radius:28px;
  border:1px solid rgba(166,110,255,.28);
  background:linear-gradient(180deg, rgba(16,12,40,.52), rgba(7,11,22,.92));
  box-shadow:0 18px 42px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.05);
}
body.pfx1-events-visual-surface .pfx1-events-showcase__badge{
  min-height:30px;
  font-size:11px;
  background:rgba(166,110,255,.12);
  color:#dfcbff;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy h2{
  color:#f4f8ff;
  font-size:clamp(26px,2.4vw,46px);
  line-height:1.24;
  letter-spacing:-.03em;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy p{
  color:#d8e2ec;
  font-size:14px;
  line-height:1.95;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__cta{
  width:max-content;
  min-width:174px;
  margin-top:2px;
  background:linear-gradient(180deg, rgba(158,116,255,.98), rgba(122,86,235,.98)) !important;
  border-color:rgba(196,166,255,.42) !important;
  box-shadow:0 14px 30px rgba(103,71,206,.26), inset 0 1px 0 rgba(255,255,255,.12) !important;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__stats{
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin-top:6px;
  border-color:rgba(190,163,255,.14);
  border-radius:20px;
  background:rgba(7,9,20,.58);
}
body.pfx1-events-visual-surface .pfx1-events-showcase__stats > div{
  min-height:78px;
  gap:6px;
  padding:14px 12px;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__stats small{
  color:#b28dff;
  font-size:11px;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__stats strong{
  font-size:13px;
  line-height:1.8;
}
body.pfx1-events-visual-surface .pfx1-events-grid--premium{
  gap:20px;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium{
  border-radius:26px;
  box-shadow:0 18px 42px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.03);
}
body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__body{
  min-height:370px;
  padding:18px 18px 18px;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium h2{
  margin:12px 0 8px;
  font-size:clamp(21px,1.55vw,27px);
  line-height:1.38;
}
body.pfx1-events-visual-surface .pfx1-event-card__tagline{
  min-height:42px !important;
  font-size:12px !important;
  line-height:1.9 !important;
}
body.pfx1-events-visual-surface .pfx1-event-card__next{
  min-height:90px;
  margin-top:14px;
  padding:12px 14px;
}
body.pfx1-events-visual-surface .pfx1-event-card__hosts{
  margin:12px 0 10px;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__footer strong{
  gap:7px;
  font-size:15px;
}
body.pfx1-events-visual-surface .pfx1-event-card__price-value{font-size:19px;}
body.pfx1-events-visual-surface .pfx1-event-card__price-currency{font-size:13px;}

@media(max-width:1180px){
  body.pfx1-events-visual-surface .pfx1-events-showcase{grid-template-columns:1fr;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__intro{
    min-height:unset;
    padding:34px 24px 18px;
  }
  body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight{
    min-height:430px;
    padding:0 14px 16px;
  }
  body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-media{inset:0 0 0 0;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy{width:min(100% - 18px, 760px);margin:0 0 16px auto;}
}
@media(max-width:860px){
  body.pfx1-events-visual-surface .pfx1-events-showcase__intro h1{font-size:34px;line-height:1.34;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy h2{font-size:28px;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__stats{grid-template-columns:1fr;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__stats > div + div{border-right:0;border-top:1px solid rgba(255,255,255,.07);}
}
@media(max-width:680px){
  body.pfx1-events-visual-surface .pfx1-events-showcase{border-radius:24px;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__intro{padding:24px 16px 14px;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__intro::after{display:none;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__actions .pfx1-event-button,
  body.pfx1-events-visual-surface .pfx1-events-showcase__cta{width:100%;min-width:0;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight{min-height:360px;padding:0 10px 10px;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy{padding:20px 16px 16px;border-radius:22px;}
  body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__body{min-height:unset;}
}


/* ==========================================================
 * PFX1 Site Studio 5.8.88 — Events archive slogan typography
 * Exact two-line slogan with orange semantic accents.
 * ========================================================== */
body.pfx1-events-visual-surface .pfx1-events-showcase__intro .pfx1-events-showcase__slogan{
  display:grid;
  gap:2px;
  max-width:560px;
  margin:0;
  color:#eef6ff;
  font-family:var(--pfx-ui-font,var(--pfx-site-runtime-font,inherit)) !important;
  font-size:clamp(32px,3.35vw,50px);
  font-weight:900;
  line-height:1.34;
  letter-spacing:-.035em;
  text-wrap:initial;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__slogan-line{
  display:block;
  white-space:nowrap;
  color:#eef6ff;
  font:inherit;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__slogan .is-accent{
  color:var(--pfx-accent,#ff7a00) !important;
  font:inherit;
  font-style:normal;
  text-shadow:0 0 18px rgba(var(--pfx-accent-rgb,255,122,0),.16);
}
@media(max-width:860px){
  body.pfx1-events-visual-surface .pfx1-events-showcase__intro .pfx1-events-showcase__slogan{
    font-size:clamp(29px,6vw,38px);
    line-height:1.38;
  }
}
@media(max-width:560px){
  body.pfx1-events-visual-surface .pfx1-events-showcase__slogan-line{
    white-space:normal;
  }
}


/* ==========================================================
 * PFX1 Site Studio 5.8.89 — Events archive background + typography repair
 * Restores showcase backgrounds, keeps typography inside canvas and
 * aligns hero/card copy and buttons to the global site font system.
 * ========================================================== */
body.pfx1-events-visual-surface .pfx1-events-showcase{
  background-image:
    linear-gradient(90deg, rgba(2,11,22,.93) 0%, rgba(3,13,25,.86) 34%, rgba(5,11,22,.54) 64%, rgba(3,10,19,.80) 100%),
    var(--pfx-showcase-bg, none);
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__intro{
  gap:14px;
  padding:42px 34px;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__intro .pfx1-events-showcase__slogan{
  max-width:100%;
  font-family:var(--pfx-font,var(--pfx-ui-font,inherit)) !important;
  font-size:clamp(24px,2.65vw,36px);
  font-weight:900;
  line-height:1.42;
  letter-spacing:-.028em;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__slogan-line{
  display:block;
  white-space:normal;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__intro p,
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy p,
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy h2,
body.pfx1-events-visual-surface .pfx1-events-showcase__stats small,
body.pfx1-events-visual-surface .pfx1-events-showcase__stats strong,
body.pfx1-events-visual-surface .pfx1-event-card--premium h2,
body.pfx1-events-visual-surface .pfx1-event-card__tagline,
body.pfx1-events-visual-surface .pfx1-event-card__next span,
body.pfx1-events-visual-surface .pfx1-event-card__next strong,
body.pfx1-events-visual-surface .pfx1-event-card__hosts-label,
body.pfx1-events-visual-surface .pfx1-event-card__hosts-list span,
body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__footer strong,
body.pfx1-events-visual-surface .pfx1-event-card__price-value,
body.pfx1-events-visual-surface .pfx1-event-card__price-currency,
body.pfx1-events-visual-surface .pfx1-event-button,
body.pfx1-events-visual-surface .pfx1-event-button.is-disabled{
  font-family:var(--pfx-font,var(--pfx-ui-font,inherit)) !important;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__intro p{
  max-width:480px;
  font-size:14px;
  line-height:2;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__actions .pfx1-event-button,
body.pfx1-events-visual-surface .pfx1-events-showcase__cta,
body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-button,
body.pfx1-events-visual-surface .pfx1-event-button.is-disabled{
  font-size:12px !important;
  font-weight:800 !important;
  line-height:1.4 !important;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight{
  display:flex;
  align-items:flex-end;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-media{
  background-image:var(--pfx-spotlight-bg, none);
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy{
  gap:12px;
  max-width:560px;
  padding:24px 24px 20px;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy h2{
  font-size:clamp(24px,2.2vw,34px);
  line-height:1.32;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy p{
  font-size:13px;
  line-height:1.95;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__stats strong{
  font-size:12px;
  line-height:1.9;
  -webkit-line-clamp:3;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium h2{
  font-size:clamp(20px,1.45vw,24px);
  line-height:1.42;
}
body.pfx1-events-visual-surface .pfx1-event-card__tagline{
  font-size:12px !important;
  line-height:1.9 !important;
}
body.pfx1-events-visual-surface .pfx1-event-card__next{
  min-height:88px;
}
body.pfx1-events-visual-surface .pfx1-event-card__next strong{
  font-size:11.5px !important;
  line-height:1.95 !important;
}
@media (max-width:1180px){
  body.pfx1-events-visual-surface .pfx1-events-showcase__intro{padding:32px 22px 18px;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__intro .pfx1-events-showcase__slogan{font-size:clamp(24px,4.5vw,32px);}
}
@media (max-width:860px){
  body.pfx1-events-visual-surface .pfx1-events-showcase__intro .pfx1-events-showcase__slogan{font-size:clamp(22px,6vw,28px);line-height:1.5;}
}


/* ==========================================================
 * PFX1 Site Studio 5.8.90 — Events spotlight shade removal
 * + footer hover glow restoration
 * ========================================================== */

/* User-requested removal: do not place an extra shade layer over the
   featured-event media. The media/background itself remains intact. */
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-shade{
  display:none !important;
  content:none !important;
  background:none !important;
  opacity:0 !important;
  pointer-events:none !important;
}

/* Restore the footer card interaction that was suppressed by earlier
   root/shell parity overrides. Keep geometry fixed; only accent/glow changes. */
body.pfx1-events-visual-surface :is(
  footer[data-elementor-type="footer"],
  .elementor-location-footer,
  [data-elementor-type="footer"]
) .pfx-footer-shell{
  transition:
    border-color 180ms ease,
    background 180ms ease,
    box-shadow 180ms ease !important;
  transform:none !important;
}



/* ==========================================================
 * PFX1 Site Studio 5.8.91 — Events featured image element purge
 * The spotlight artwork is background-only. Any stale/cached legacy <img>
 * inside spotlight media is forcibly removed from presentation.
 * ========================================================== */
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-media{
  background-image:var(--pfx-spotlight-bg, none) !important;
  background-position:center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-media > img,
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-shade{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  width:0 !important;
  height:0 !important;
  position:absolute !important;
  pointer-events:none !important;
}


/* ==========================================================
 * PFX1 Site Studio 5.8.92 — Featured spotlight media root purge
 * The archive hero owns one full-surface background only. There must be no
 * second media/image layer inside the right spotlight column, including
 * stale HTML returned by caches.
 * ========================================================== */
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-media,
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-media > *,
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-shade{
  display:none !important;
  content:none !important;
  background:none !important;
  background-image:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  width:0 !important;
  height:0 !important;
  min-width:0 !important;
  min-height:0 !important;
  position:absolute !important;
  inset:auto !important;
  pointer-events:none !important;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:0 !important;
  background:transparent !important;
  background-image:none !important;
  padding:28px !important;
}
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy{
  position:relative !important;
  inset:auto !important;
  width:min(100%,520px) !important;
  max-width:520px !important;
  margin:0 !important;
  padding:28px 26px 22px !important;
  background:linear-gradient(180deg,rgba(13,10,31,.86),rgba(5,10,19,.94)) !important;
  backdrop-filter:blur(14px) !important;
  -webkit-backdrop-filter:blur(14px) !important;
}
@media(max-width:1180px){
  body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight{padding:16px 18px 22px !important;}
  body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy{width:min(100%,720px) !important;max-width:720px !important;}
}


/* ==========================================================
 * PFX1 Site Studio 5.8.93 — Events hero/header width parity
 * Make the events archive hero use the exact same shell width contract
 * as the Elementor header, independent of the shortcode parent width.
 * ========================================================== */
body.pfx1-events-visual-surface .pfx1-events-showcase{
  width:min(
    var(--pfx-shell-width,1360px),
    calc(100vw - (var(--pfx-shell-edge-gap,20px) * 2))
  ) !important;
  max-width:none !important;
  left:50% !important;
  right:auto !important;
  margin-left:0 !important;
  margin-right:0 !important;
  transform:translateX(-50%) !important;
}

@media(max-width:767px){
  body.pfx1-events-visual-surface .pfx1-events-showcase{
    width:calc(100vw - 20px) !important;
  }
}


/* ==========================================================
 * PFX1 Site Studio 5.8.94 — Events hero/header alignment repair
 * Replaces the 5.8.93 transform breakout with symmetric calculated margins.
 * This keeps the hero centered, prevents horizontal overflow and matches the
 * same shell-width/edge-gap contract used by the Elementor header.
 * ========================================================== */
body.pfx1-events-visual-surface{
  overflow-x:clip !important;
}
body.pfx1-events-visual-surface .pfx1-events-showcase{
  --pfx-events-hero-width:min(
    var(--pfx-shell-width,1360px),
    calc(100vw - (var(--pfx-shell-edge-gap,20px) * 2))
  );
  width:var(--pfx-events-hero-width) !important;
  max-width:var(--pfx-events-hero-width) !important;
  left:auto !important;
  right:auto !important;
  transform:none !important;
  margin-left:calc((100% - var(--pfx-events-hero-width)) / 2) !important;
  margin-right:calc((100% - var(--pfx-events-hero-width)) / 2) !important;
}
@media(max-width:767px){
  body.pfx1-events-visual-surface .pfx1-events-showcase{
    --pfx-events-hero-width:calc(100vw - 20px);
  }
}


/* ==========================================================
 * PFX1 Site Studio 5.8.96 — Event-detail theme inheritance
 * Header, footer and booking controls inherit the selected event theme.
 * ========================================================== */
body.pfx1-events-visual-surface:has(.pfx1-event-detail.pfx1-event-theme--cyan){
  --pfx-accent:#18c8f4;
  --pfx-accent-rgb:24,200,244;
  --pfx-accent-deep:#0a82d2;
  --pfx-accent-deep-rgb:10,130,210;
  --pfx-accent-highlight:#39dcff;
  --pfx-accent-highlight-rgb:57,220,255;
}
body.pfx1-events-visual-surface:has(.pfx1-event-detail.pfx1-event-theme--gold){
  --pfx-accent:#f2c46d;
  --pfx-accent-rgb:242,196,109;
  --pfx-accent-deep:#bd7614;
  --pfx-accent-deep-rgb:189,118,20;
  --pfx-accent-highlight:#ffda8c;
  --pfx-accent-highlight-rgb:255,218,140;
}
body.pfx1-events-visual-surface:has(.pfx1-event-detail.pfx1-event-theme--violet){
  --pfx-accent:#a66cff;
  --pfx-accent-rgb:166,108,255;
  --pfx-accent-deep:#6d38d8;
  --pfx-accent-deep-rgb:109,56,216;
  --pfx-accent-highlight:#c99bff;
  --pfx-accent-highlight-rgb:201,155,255;
}
body.pfx1-events-visual-surface:has(.pfx1-event-detail.pfx1-event-theme--emerald){
  --pfx-accent:#22d99a;
  --pfx-accent-rgb:34,217,154;
  --pfx-accent-deep:#07875e;
  --pfx-accent-deep-rgb:7,135,94;
  --pfx-accent-highlight:#6af0c0;
  --pfx-accent-highlight-rgb:106,240,192;
}
body.pfx1-events-visual-surface:has(.pfx1-event-detail.pfx1-event-theme--crimson){
  --pfx-accent:#ff6071;
  --pfx-accent-rgb:255,96,113;
  --pfx-accent-deep:#a8263b;
  --pfx-accent-deep-rgb:168,38,59;
  --pfx-accent-highlight:#ff96a2;
  --pfx-accent-highlight-rgb:255,150,162;
}
body.pfx1-events-visual-surface:has(.pfx1-event-detail.pfx1-event-theme--slate){
  --pfx-accent:#b7c3cf;
  --pfx-accent-rgb:183,195,207;
  --pfx-accent-deep:#667789;
  --pfx-accent-deep-rgb:102,119,137;
  --pfx-accent-highlight:#d9e1e8;
  --pfx-accent-highlight-rgb:217,225,232;
}

/* Header and footer use the same event-owned accent variables. */
body.pfx1-events-visual-surface:has(.pfx1-event-detail) :is(.elementor-location-header,[data-elementor-type="header"]) .pfx-header-shell{
  border-color:rgba(var(--pfx-accent-rgb),.36) !important;
  background:
    radial-gradient(circle at 10% 0%,rgba(var(--pfx-accent-rgb),.15),transparent 32%),
    radial-gradient(circle at 76% 0%,rgba(var(--pfx-accent-deep-rgb),.13),transparent 38%),
    linear-gradient(180deg,rgba(3,7,17,.86),rgba(2,4,10,.97)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.075),0 0 22px rgba(var(--pfx-accent-rgb),.07),0 0 42px rgba(var(--pfx-accent-deep-rgb),.06),0 18px 54px rgba(0,0,0,.30) !important;
}
body.pfx1-events-visual-surface:has(.pfx1-event-detail) :is(.elementor-location-footer,[data-elementor-type="footer"]) .pfx-footer-shell{
  border-color:rgba(var(--pfx-accent-rgb),.30) !important;
  background:radial-gradient(circle at 50% 0%,rgba(var(--pfx-accent-rgb),.075),transparent 52%),linear-gradient(180deg,rgba(4,10,15,.955),rgba(2,7,12,.985)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 0 20px rgba(var(--pfx-accent-rgb),.075),0 0 36px rgba(var(--pfx-accent-deep-rgb),.04),0 16px 38px rgba(0,0,0,.28) !important;
}

/* Remove the last hard-coded orange remnants inside detail booking UI. */
body.pfx1-events-visual-surface .pfx1-event-detail .pfx1-event-calendar__day:not(.is-disabled):is(:hover,:focus-visible) .pfx1-event-calendar__day-number{
  color:var(--pfx-event-accent) !important;
  text-shadow:0 0 10px rgba(var(--pfx-event-rgb),.20) !important;
}
body.pfx1-events-visual-surface .pfx1-event-detail .pfx1-event-calendar__popover em{
  color:var(--pfx-event-accent) !important;
}
body.pfx1-events-visual-surface .pfx1-event-detail .pfx1-event-reservation-price strong,
body.pfx1-events-visual-surface .pfx1-event-detail .pfx1-event-reservation-surface__head>strong{
  color:var(--pfx-event-accent) !important;
}


/* ==========================================================
 * PFX1 Site Studio 5.8.97 — Event surface/header/footer parity
 * The selected Event visual theme owns the entire page surface, header,
 * footer and booking accents. This applies to every current/future event
 * that uses one of the manager-selectable theme keys.
 * ========================================================== */

/* Canonical page-owned tokens. Keep these separate from --pfx-accent because
   older Elementor footer CSS may locally redefine --pfx-accent. */
body.pfx1-events-visual-surface:has(.pfx1-event-detail){
  --pfx-event-page-accent:#ff7a00;
  --pfx-event-page-accent-rgb:255,122,0;
  --pfx-event-page-deep:#ffb000;
  --pfx-event-page-deep-rgb:255,176,0;
  --pfx-event-page-highlight:#ff9420;
  --pfx-event-page-highlight-rgb:255,148,32;
  --pfx-event-page-bg:#02040a;
  --pfx-event-page-bg-2:#030812;
}
body.pfx1-events-visual-surface:has(.pfx1-event-detail.pfx1-event-theme--orange){
  --pfx-event-page-accent:#ff7a00;
  --pfx-event-page-accent-rgb:255,122,0;
  --pfx-event-page-deep:#ffb000;
  --pfx-event-page-deep-rgb:255,176,0;
  --pfx-event-page-highlight:#ff9420;
  --pfx-event-page-highlight-rgb:255,148,32;
}
body.pfx1-events-visual-surface:has(.pfx1-event-detail.pfx1-event-theme--cyan){
  --pfx-event-page-accent:#18c8f4;
  --pfx-event-page-accent-rgb:24,200,244;
  --pfx-event-page-deep:#0a82d2;
  --pfx-event-page-deep-rgb:10,130,210;
  --pfx-event-page-highlight:#39dcff;
  --pfx-event-page-highlight-rgb:57,220,255;
}
body.pfx1-events-visual-surface:has(.pfx1-event-detail.pfx1-event-theme--gold){
  --pfx-event-page-accent:#f2c46d;
  --pfx-event-page-accent-rgb:242,196,109;
  --pfx-event-page-deep:#bd7614;
  --pfx-event-page-deep-rgb:189,118,20;
  --pfx-event-page-highlight:#ffda8c;
  --pfx-event-page-highlight-rgb:255,218,140;
}
body.pfx1-events-visual-surface:has(.pfx1-event-detail.pfx1-event-theme--violet){
  --pfx-event-page-accent:#a66cff;
  --pfx-event-page-accent-rgb:166,108,255;
  --pfx-event-page-deep:#6d38d8;
  --pfx-event-page-deep-rgb:109,56,216;
  --pfx-event-page-highlight:#c99bff;
  --pfx-event-page-highlight-rgb:201,155,255;
}
body.pfx1-events-visual-surface:has(.pfx1-event-detail.pfx1-event-theme--emerald){
  --pfx-event-page-accent:#22d99a;
  --pfx-event-page-accent-rgb:34,217,154;
  --pfx-event-page-deep:#07875e;
  --pfx-event-page-deep-rgb:7,135,94;
  --pfx-event-page-highlight:#6af0c0;
  --pfx-event-page-highlight-rgb:106,240,192;
}
body.pfx1-events-visual-surface:has(.pfx1-event-detail.pfx1-event-theme--crimson){
  --pfx-event-page-accent:#ff6071;
  --pfx-event-page-accent-rgb:255,96,113;
  --pfx-event-page-deep:#a8263b;
  --pfx-event-page-deep-rgb:168,38,59;
  --pfx-event-page-highlight:#ff96a2;
  --pfx-event-page-highlight-rgb:255,150,162;
}
body.pfx1-events-visual-surface:has(.pfx1-event-detail.pfx1-event-theme--slate){
  --pfx-event-page-accent:#b7c3cf;
  --pfx-event-page-accent-rgb:183,195,207;
  --pfx-event-page-deep:#667789;
  --pfx-event-page-deep-rgb:102,119,137;
  --pfx-event-page-highlight:#d9e1e8;
  --pfx-event-page-highlight-rgb:217,225,232;
}

/* Re-export the selected theme into the universal site contract. */
body.pfx1-events-visual-surface:has(.pfx1-event-detail){
  --pfx-accent:var(--pfx-event-page-accent) !important;
  --pfx-accent-rgb:var(--pfx-event-page-accent-rgb) !important;
  --pfx-accent-deep:var(--pfx-event-page-deep) !important;
  --pfx-accent-deep-rgb:var(--pfx-event-page-deep-rgb) !important;
  --pfx-accent-highlight:var(--pfx-event-page-highlight) !important;
  --pfx-accent-highlight-rgb:var(--pfx-event-page-highlight-rgb) !important;
  --pfx-events-page-bg:var(--pfx-event-page-bg) !important;

  /* Same dark material used by the header, with only a restrained event tint. */
  background:
    radial-gradient(circle at 78% 8%,rgba(var(--pfx-event-page-accent-rgb),.055),transparent 32%),
    radial-gradient(circle at 14% 72%,rgba(var(--pfx-event-page-deep-rgb),.028),transparent 38%),
    linear-gradient(180deg,var(--pfx-event-page-bg-2) 0%,var(--pfx-event-page-bg) 42%,var(--pfx-event-page-bg) 100%) !important;
  background-color:var(--pfx-event-page-bg) !important;
}

/* Keep every full-width page wrapper transparent so the same event surface
   remains visible from header through content to footer. */
body.pfx1-events-visual-surface:has(.pfx1-event-detail) :is(
  #page,.site,.site-content,.content-area,#content,main,.page-content
){
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
}

/* Header shell uses the exact page material instead of a separate blue/black
   surface. Accent still changes per event. */
body.pfx1-events-visual-surface:has(.pfx1-event-detail) :is(
  .elementor-location-header,[data-elementor-type="header"]
) .pfx-header-shell{
  --pfx-accent:var(--pfx-event-page-accent) !important;
  --pfx-accent-rgb:var(--pfx-event-page-accent-rgb) !important;
  --pfx-accent-deep:var(--pfx-event-page-deep) !important;
  --pfx-accent-deep-rgb:var(--pfx-event-page-deep-rgb) !important;
  --pfx-accent-highlight:var(--pfx-event-page-highlight) !important;
  --pfx-accent-highlight-rgb:var(--pfx-event-page-highlight-rgb) !important;
  border-color:rgba(var(--pfx-event-page-accent-rgb),.34) !important;
  background:
    radial-gradient(circle at 10% 0%,rgba(var(--pfx-event-page-accent-rgb),.11),transparent 34%),
    radial-gradient(circle at 78% 0%,rgba(var(--pfx-event-page-deep-rgb),.075),transparent 40%),
    linear-gradient(180deg,var(--pfx-event-page-bg-2),var(--pfx-event-page-bg)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 0 20px rgba(var(--pfx-event-page-accent-rgb),.065),
    0 0 38px rgba(var(--pfx-event-page-deep-rgb),.035),
    0 14px 38px rgba(0,0,0,.30) !important;
}
body.pfx1-events-visual-surface:has(.pfx1-event-detail) :is(
  .elementor-location-header,[data-elementor-type="header"]
) .pfx-header-shell:is(:hover,:focus-within){
  border-color:rgba(var(--pfx-event-page-highlight-rgb),.62) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.075),
    0 0 24px rgba(var(--pfx-event-page-accent-rgb),.16),
    0 0 46px rgba(var(--pfx-event-page-deep-rgb),.075),
    0 14px 38px rgba(0,0,0,.32) !important;
}

/* Footer root is the same surface as the page. Older orange-local variables
   are intentionally overwritten here so every manually selected Event theme
   propagates to the footer too. */
body.pfx1-events-visual-surface:has(.pfx1-event-detail) :is(
  footer[data-elementor-type="footer"],.elementor-location-footer,[data-elementor-type="footer"]
){
  --pfx-accent:var(--pfx-event-page-accent) !important;
  --pfx-accent-rgb:var(--pfx-event-page-accent-rgb) !important;
  --pfx-accent-deep:var(--pfx-event-page-deep) !important;
  --pfx-accent-deep-rgb:var(--pfx-event-page-deep-rgb) !important;
  --pfx-accent-highlight:var(--pfx-event-page-highlight) !important;
  --pfx-accent-highlight-rgb:var(--pfx-event-page-highlight-rgb) !important;
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
}
body.pfx1-events-visual-surface:has(.pfx1-event-detail) :is(
  footer[data-elementor-type="footer"],.elementor-location-footer,[data-elementor-type="footer"]
) .pfx-footer{
  --pfx-accent:var(--pfx-event-page-accent) !important;
  --pfx-accent-rgb:var(--pfx-event-page-accent-rgb) !important;
  --pfx-accent-deep:var(--pfx-event-page-deep) !important;
  --pfx-accent-deep-rgb:var(--pfx-event-page-deep-rgb) !important;
  --pfx-accent-highlight:var(--pfx-event-page-highlight) !important;
  --pfx-accent-highlight-rgb:var(--pfx-event-page-highlight-rgb) !important;
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
}
body.pfx1-events-visual-surface:has(.pfx1-event-detail) :is(
  footer[data-elementor-type="footer"],.elementor-location-footer,[data-elementor-type="footer"]
) .pfx-footer-shell{
  --pfx-accent:var(--pfx-event-page-accent) !important;
  --pfx-accent-rgb:var(--pfx-event-page-accent-rgb) !important;
  --pfx-accent-deep:var(--pfx-event-page-deep) !important;
  --pfx-accent-deep-rgb:var(--pfx-event-page-deep-rgb) !important;
  --pfx-accent-highlight:var(--pfx-event-page-highlight) !important;
  --pfx-accent-highlight-rgb:var(--pfx-event-page-highlight-rgb) !important;
  border-color:rgba(var(--pfx-event-page-accent-rgb),.31) !important;
  background:
    radial-gradient(circle at 50% 0%,rgba(var(--pfx-event-page-accent-rgb),.085),transparent 52%),
    radial-gradient(circle at 86% 18%,rgba(var(--pfx-event-page-deep-rgb),.045),transparent 46%),
    linear-gradient(180deg,var(--pfx-event-page-bg-2),var(--pfx-event-page-bg)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.055),
    0 0 20px rgba(var(--pfx-event-page-accent-rgb),.075),
    0 0 36px rgba(var(--pfx-event-page-deep-rgb),.04),
    0 16px 38px rgba(0,0,0,.28) !important;
}


/* Elementor footer typography/icons that were authored with the old orange
   accent now follow the current Event automatically. */
body.pfx1-events-visual-surface:has(.pfx1-event-detail) :is(
  footer[data-elementor-type="footer"],.elementor-location-footer,[data-elementor-type="footer"]
) .pfx-footer-shell :is(.elementor-heading-title,h2,h3,h4){
  color:var(--pfx-event-page-accent) !important;
}
body.pfx1-events-visual-surface:has(.pfx1-event-detail) :is(
  footer[data-elementor-type="footer"],.elementor-location-footer,[data-elementor-type="footer"]
) .pfx-footer-shell :is(.elementor-icon,.elementor-social-icon,.elementor-button){
  border-color:rgba(var(--pfx-event-page-accent-rgb),.28) !important;
}


/* Booking controls consume the same canonical page theme; this catches any
   future detail component that accidentally falls back to the old orange. */
body.pfx1-events-visual-surface:has(.pfx1-event-detail) .pfx1-event-detail{
  --pfx-accent:var(--pfx-event-page-accent);
  --pfx-accent-rgb:var(--pfx-event-page-accent-rgb);
  --pfx-accent-deep:var(--pfx-event-page-deep);
  --pfx-accent-deep-rgb:var(--pfx-event-page-deep-rgb);
  --pfx-accent-highlight:var(--pfx-event-page-highlight);
  --pfx-accent-highlight-rgb:var(--pfx-event-page-highlight-rgb);
}


/* ==========================================================
 * PFX1 Site Studio 5.8.98 — Event detail root-surface + shell-width parity
 * - one exact base material from header through page and footer
 * - canonical detail wrapper/hero aligned to universal header shell width
 * - public back control removed defensively for stale/cached markup
 * Applies to every manager-selectable Event visual theme.
 * ========================================================== */

/* One exact dark substrate. Accent glows remain theme-owned, but no separate
   page/Elementor background is allowed to create a visible color band. */
html:has(body.pfx1-events-visual-surface .pfx1-event-detail),
body.pfx1-events-visual-surface:has(.pfx1-event-detail){
  --pfx-event-page-bg:#02040a !important;
  --pfx-event-page-bg-2:#02040a !important;
  --pfx-events-page-bg:#02040a !important;
  background:#02040a !important;
  background-color:#02040a !important;
  background-image:none !important;
}

body.pfx1-events-visual-surface:has(.pfx1-event-detail) :is(
  #page,
  .site,
  #content,
  .site-content,
  .content-area,
  main#content,
  main.site-main,
  .site-main,
  .page-content,
  article.page,
  .elementor[data-elementor-type="wp-page"],
  .elementor[data-elementor-type="wp-page"] > .elementor-element:first-child
){
  background:#02040a !important;
  background-color:#02040a !important;
  background-image:none !important;
  box-shadow:none !important;
}

/* Header root stays on the same substrate; only the inner shell owns theme
   tint/glow. This removes the dark-tone discontinuity under the header. */
body.pfx1-events-visual-surface:has(.pfx1-event-detail) :is(
  header[data-elementor-type="header"],
  .elementor-location-header,
  [data-elementor-type="header"]
){
  background:#02040a !important;
  background-color:#02040a !important;
  background-image:none !important;
}

body.pfx1-events-visual-surface:has(.pfx1-event-detail) :is(
  .elementor-location-header,[data-elementor-type="header"]
) .pfx-header-shell{
  background:
    radial-gradient(circle at 10% 0%,rgba(var(--pfx-event-page-accent-rgb),.105),transparent 34%),
    radial-gradient(circle at 78% 0%,rgba(var(--pfx-event-page-deep-rgb),.07),transparent 40%),
    linear-gradient(#02040a,#02040a) !important;
}

/* Footer root exactly matches the page. Inner footer shell keeps the selected
   Event accent, but its base material is the same #02040a. */
body.pfx1-events-visual-surface:has(.pfx1-event-detail) :is(
  footer[data-elementor-type="footer"],
  .elementor-location-footer,
  [data-elementor-type="footer"],
  footer[data-elementor-type="footer"] .pfx-footer,
  .elementor-location-footer .pfx-footer,
  [data-elementor-type="footer"] .pfx-footer
){
  background:#02040a !important;
  background-color:#02040a !important;
  background-image:none !important;
}
body.pfx1-events-visual-surface:has(.pfx1-event-detail) :is(
  footer[data-elementor-type="footer"],.elementor-location-footer,[data-elementor-type="footer"]
) .pfx-footer-shell{
  background:
    radial-gradient(circle at 50% 0%,rgba(var(--pfx-event-page-accent-rgb),.085),transparent 52%),
    radial-gradient(circle at 86% 18%,rgba(var(--pfx-event-page-deep-rgb),.04),transparent 46%),
    linear-gradient(#02040a,#02040a) !important;
}

/* Canonical detail shell width = canonical header shell width. No translate,
   no negative breakout and therefore no horizontal-scroll regression. */
body.pfx1-events-visual-surface:has(.pfx1-event-detail) .pfx1-events-page{
  width:min(
    var(--pfx-shell-width,1360px),
    calc(100vw - (var(--pfx-shell-edge-gap,20px) * 2))
  ) !important;
  max-width:none !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:0 !important;
  padding-right:0 !important;
}
body.pfx1-events-visual-surface:has(.pfx1-event-detail) .pfx1-event-detail,
body.pfx1-events-visual-surface:has(.pfx1-event-detail) .pfx1-event-single-hero{
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
  transform:none !important;
}

/* The canonical PHP no longer outputs this link; keep this rule so old HTML
   caches/fragments cannot resurrect it. */
body.pfx1-events-visual-surface .pfx1-event-detail .pfx1-event-back{
  display:none !important;
}

@media(max-width:767px){
  body.pfx1-events-visual-surface:has(.pfx1-event-detail) .pfx1-events-page{
    width:calc(100vw - 20px) !important;
  }
}


/* ==========================================================
 * PFX1 Site Studio 5.8.99 — Events archive multicolor identity
 * Archive/listing only: the Events hub is no longer owned by orange.
 * It uses a controlled mix of the ten PFX1 section accents while
 * individual event detail pages continue to inherit their own theme.
 * ========================================================== */
body.pfx1-events-visual-surface:not(:has(.pfx1-event-detail)){
  --pfx-events-mix-1:#00A8FF;
  --pfx-events-mix-1-rgb:0,168,255;
  --pfx-events-mix-2:#1D4ED8;
  --pfx-events-mix-2-rgb:29,78,216;
  --pfx-events-mix-3:#16C784;
  --pfx-events-mix-3-rgb:22,199,132;
  --pfx-events-mix-4:#8B5CF6;
  --pfx-events-mix-4-rgb:139,92,246;
  --pfx-events-mix-5:#C026D3;
  --pfx-events-mix-5-rgb:192,38,211;
  --pfx-events-mix-6:#E63946;
  --pfx-events-mix-6-rgb:230,57,70;
  --pfx-events-mix-7:#D946EF;
  --pfx-events-mix-7-rgb:217,70,239;
  --pfx-events-mix-8:#FF4F81;
  --pfx-events-mix-8-rgb:255,79,129;
  --pfx-events-mix-9:#FACC15;
  --pfx-events-mix-9-rgb:250,204,21;
  --pfx-events-mix-10:#94A3B8;
  --pfx-events-mix-10-rgb:148,163,184;
  --pfx-events-archive-bg:#02040a;

  /* Export a neutral primary contract for small controls. The shell glow
     itself uses the full ten-color composition below. */
  --pfx-accent:var(--pfx-events-mix-1);
  --pfx-accent-rgb:var(--pfx-events-mix-1-rgb);
  --pfx-accent-deep:var(--pfx-events-mix-4);
  --pfx-accent-deep-rgb:var(--pfx-events-mix-4-rgb);
  --pfx-accent-highlight:var(--pfx-events-mix-9);
  --pfx-accent-highlight-rgb:var(--pfx-events-mix-9-rgb);

  background:var(--pfx-events-archive-bg) !important;
  background-color:var(--pfx-events-archive-bg) !important;
  background-image:
    radial-gradient(circle at 8% 18%,rgba(var(--pfx-events-mix-1-rgb),.035),transparent 24%),
    radial-gradient(circle at 92% 20%,rgba(var(--pfx-events-mix-4-rgb),.035),transparent 25%),
    radial-gradient(circle at 54% 92%,rgba(var(--pfx-events-mix-9-rgb),.022),transparent 28%) !important;
}

/* Archive shell width is the same contract as the universal header. This
   replaces the older hero-only breakout calculation: parent + hero now agree. */
body.pfx1-events-visual-surface:not(:has(.pfx1-event-detail)) .pfx1-events-page{
  width:min(
    var(--pfx-shell-width,1360px),
    calc(100vw - (var(--pfx-shell-edge-gap,20px) * 2))
  ) !important;
  max-width:none !important;
  margin:24px auto 58px !important;
  padding-inline:0 !important;
}
body.pfx1-events-visual-surface:not(:has(.pfx1-event-detail)) .pfx1-events-showcase{
  width:100% !important;
  max-width:none !important;
  margin:0 0 24px !important;
  left:auto !important;
  right:auto !important;
  transform:none !important;
  border-color:rgba(var(--pfx-events-mix-1-rgb),.20) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.045),
    0 0 20px rgba(var(--pfx-events-mix-1-rgb),.055),
    0 0 34px rgba(var(--pfx-events-mix-4-rgb),.045),
    0 0 44px rgba(var(--pfx-events-mix-8-rgb),.025),
    0 22px 58px rgba(0,0,0,.24) !important;
}

/* Universal Elementor header: same dark material, controlled multi-accent
   glow and a 10-stop spectral top line. */
body.pfx1-events-visual-surface:not(:has(.pfx1-event-detail)) :is(
  header[data-elementor-type="header"],.elementor-location-header,[data-elementor-type="header"]
){
  background:var(--pfx-events-archive-bg) !important;
  background-color:var(--pfx-events-archive-bg) !important;
  background-image:none !important;
}
body.pfx1-events-visual-surface:not(:has(.pfx1-event-detail)) :is(
  .elementor-location-header,[data-elementor-type="header"]
) .pfx-header-shell{
  border-color:rgba(var(--pfx-events-mix-1-rgb),.25) !important;
  background:
    radial-gradient(circle at 5% 0%,rgba(var(--pfx-events-mix-1-rgb),.13),transparent 27%),
    radial-gradient(circle at 28% 0%,rgba(var(--pfx-events-mix-3-rgb),.055),transparent 25%),
    radial-gradient(circle at 51% 0%,rgba(var(--pfx-events-mix-4-rgb),.09),transparent 28%),
    radial-gradient(circle at 72% 0%,rgba(var(--pfx-events-mix-7-rgb),.055),transparent 26%),
    radial-gradient(circle at 96% 0%,rgba(var(--pfx-events-mix-9-rgb),.075),transparent 30%),
    linear-gradient(180deg,rgba(4,10,17,.955),rgba(2,4,10,.99)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    0 0 18px rgba(var(--pfx-events-mix-1-rgb),.07),
    0 0 28px rgba(var(--pfx-events-mix-4-rgb),.05),
    0 0 36px rgba(var(--pfx-events-mix-8-rgb),.03),
    0 14px 40px rgba(0,0,0,.32) !important;
}
body.pfx1-events-visual-surface:not(:has(.pfx1-event-detail)) :is(
  .elementor-location-header,[data-elementor-type="header"]
) .pfx-header-shell::after{
  background:linear-gradient(90deg,
    transparent 0%,
    var(--pfx-events-mix-1) 7%,
    var(--pfx-events-mix-2) 17%,
    var(--pfx-events-mix-3) 27%,
    var(--pfx-events-mix-4) 38%,
    var(--pfx-events-mix-5) 49%,
    var(--pfx-events-mix-6) 59%,
    var(--pfx-events-mix-7) 69%,
    var(--pfx-events-mix-8) 79%,
    var(--pfx-events-mix-9) 89%,
    var(--pfx-events-mix-10) 96%,
    transparent 100%) !important;
  box-shadow:
    0 0 12px rgba(var(--pfx-events-mix-1-rgb),.18),
    0 0 18px rgba(var(--pfx-events-mix-4-rgb),.13),
    0 0 24px rgba(var(--pfx-events-mix-8-rgb),.08),
    0 0 28px rgba(var(--pfx-events-mix-9-rgb),.055) !important;
}
body.pfx1-events-visual-surface:not(:has(.pfx1-event-detail)) :is(
  .elementor-location-header,[data-elementor-type="header"]
) .pfx-header-shell:is(:hover,:focus-within){
  border-color:rgba(var(--pfx-events-mix-4-rgb),.46) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.085),
    0 0 24px rgba(var(--pfx-events-mix-1-rgb),.13),
    0 0 38px rgba(var(--pfx-events-mix-4-rgb),.10),
    0 0 50px rgba(var(--pfx-events-mix-8-rgb),.055),
    0 14px 40px rgba(0,0,0,.34) !important;
}

/* Footer uses the same archive mix. Outer wrapper remains page-identical;
   only the inner shell owns glass, spectrum and hover glow. */
body.pfx1-events-visual-surface:not(:has(.pfx1-event-detail)) :is(
  footer[data-elementor-type="footer"],.elementor-location-footer,[data-elementor-type="footer"]
),
body.pfx1-events-visual-surface:not(:has(.pfx1-event-detail)) :is(
  footer[data-elementor-type="footer"],.elementor-location-footer,[data-elementor-type="footer"]
) .pfx-footer{
  background:var(--pfx-events-archive-bg) !important;
  background-color:var(--pfx-events-archive-bg) !important;
  background-image:none !important;
}
body.pfx1-events-visual-surface:not(:has(.pfx1-event-detail)) :is(
  footer[data-elementor-type="footer"],.elementor-location-footer,[data-elementor-type="footer"]
) .pfx-footer-shell{
  border-color:rgba(var(--pfx-events-mix-4-rgb),.25) !important;
  background:
    radial-gradient(circle at 8% 0%,rgba(var(--pfx-events-mix-1-rgb),.09),transparent 26%),
    radial-gradient(circle at 32% 0%,rgba(var(--pfx-events-mix-3-rgb),.045),transparent 26%),
    radial-gradient(circle at 54% 0%,rgba(var(--pfx-events-mix-4-rgb),.075),transparent 29%),
    radial-gradient(circle at 76% 0%,rgba(var(--pfx-events-mix-8-rgb),.045),transparent 27%),
    radial-gradient(circle at 96% 0%,rgba(var(--pfx-events-mix-9-rgb),.06),transparent 30%),
    linear-gradient(180deg,rgba(4,10,15,.965),rgba(2,4,10,.995)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.055),
    0 0 18px rgba(var(--pfx-events-mix-1-rgb),.055),
    0 0 28px rgba(var(--pfx-events-mix-4-rgb),.045),
    0 0 36px rgba(var(--pfx-events-mix-8-rgb),.028),
    0 16px 38px rgba(0,0,0,.30) !important;
}
body.pfx1-events-visual-surface:not(:has(.pfx1-event-detail)) :is(
  footer[data-elementor-type="footer"],.elementor-location-footer,[data-elementor-type="footer"]
) .pfx-footer-shell::before{
  background:linear-gradient(90deg,
    transparent,
    var(--pfx-events-mix-1),
    var(--pfx-events-mix-2),
    var(--pfx-events-mix-3),
    var(--pfx-events-mix-4),
    var(--pfx-events-mix-5),
    var(--pfx-events-mix-6),
    var(--pfx-events-mix-7),
    var(--pfx-events-mix-8),
    var(--pfx-events-mix-9),
    var(--pfx-events-mix-10),
    transparent) !important;
}


/* Archive footer headings/interactive accents are intentionally neutral-white
   with controlled spectrum on interaction; orange is no longer Event-owned. */
body.pfx1-events-visual-surface:not(:has(.pfx1-event-detail)) :is(
  footer[data-elementor-type="footer"],.elementor-location-footer,[data-elementor-type="footer"]
) .pfx-footer-shell :is(.elementor-heading-title,h2,h3,h4){
  color:#eaf4ff !important;
}


@media(max-width:767px){
  body.pfx1-events-visual-surface:not(:has(.pfx1-event-detail)) .pfx1-events-page{
    width:calc(100vw - 20px) !important;
    margin-top:18px !important;
  }
}


/* ==========================================================
 * PFX1 Site Studio 5.9.0 — Event shell root alignment + logo hover cleanup
 * - make the Hello/Elementor page host full width before applying shell width
 * - use one exact event substrate for document/header/page/footer roots
 * - keep header/footer logo image widgets transparent in every interaction
 * ========================================================== */
body.pfx1-events-visual-surface{
  --pfx-event-shell-base:#020914;
  --pfx-event-shell-gap:var(--pfx-shell-edge-gap,20px);
  --pfx-event-shell-max:var(--pfx-shell-width,1360px);
  overflow-x:clip !important;
}

/* The former alignment bug was upstream of the Event component: Hello/Elementor
   could keep main/page-content narrower than the universal header. Make that
   host full width first; the Event shell can then share the exact header math. */
body.pfx1-events-visual-surface :is(
  main#content,
  main.site-main,
  .site-main,
  #content,
  .site-content,
  .content-area,
  .page-content,
  article.page,
  .elementor[data-elementor-type="wp-page"]
){
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  margin-left:0 !important;
  margin-right:0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
  background:var(--pfx-event-shell-base) !important;
  background-color:var(--pfx-event-shell-base) !important;
  background-image:none !important;
  box-shadow:none !important;
}

html:has(body.pfx1-events-visual-surface),
body.pfx1-events-visual-surface,
body.pfx1-events-visual-surface #page,
body.pfx1-events-visual-surface .site{
  background:var(--pfx-event-shell-base) !important;
  background-color:var(--pfx-event-shell-base) !important;
  background-image:none !important;
}

/* One geometry contract for archive and every Event detail page. */
body.pfx1-events-visual-surface .pfx1-events-page{
  width:min(
    var(--pfx-event-shell-max),
    calc(100% - (var(--pfx-event-shell-gap) * 2))
  ) !important;
  max-width:var(--pfx-event-shell-max) !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:0 !important;
  padding-right:0 !important;
  transform:none !important;
}
body.pfx1-events-visual-surface :is(
  .pfx1-events-showcase,
  .pfx1-event-detail,
  .pfx1-event-single-hero,
  .pfx1-event-single-facts,
  .pfx1-event-reservation-surface
){
  width:100% !important;
  max-width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
  transform:none !important;
}

/* Document/header/footer outer roots are literally the same substrate. The
   selected Event accent is allowed only inside the glass shells as glow/tint. */
body.pfx1-events-visual-surface :is(
  header[data-elementor-type="header"],
  .elementor-location-header,
  footer[data-elementor-type="footer"],
  .elementor-location-footer,
  [data-elementor-type="header"],
  [data-elementor-type="footer"],
  .pfx-footer
){
  background:var(--pfx-event-shell-base) !important;
  background-color:var(--pfx-event-shell-base) !important;
  background-image:none !important;
}

body.pfx1-events-visual-surface:has(.pfx1-event-detail) :is(
  .elementor-location-header,[data-elementor-type="header"]
) .pfx-header-shell,
body.pfx1-events-visual-surface:has(.pfx1-event-detail) :is(
  .elementor-location-footer,[data-elementor-type="footer"]
) .pfx-footer-shell{
  background:
    radial-gradient(circle at 12% 0%,rgba(var(--pfx-event-page-accent-rgb),.075),transparent 34%),
    radial-gradient(circle at 82% 0%,rgba(var(--pfx-event-page-deep-rgb),.05),transparent 40%),
    linear-gradient(var(--pfx-event-shell-base),var(--pfx-event-shell-base)) !important;
}

/* Logo widgets must never become cards/rectangles on hover. Preserve only a
   shape-following drop-shadow on the actual transparent logo pixels. */
body.pfx1-events-visual-surface :is(
  .elementor-location-header,[data-elementor-type="header"]
) .pfx-header-shell :is(
  .elementor-widget-image,
  .elementor-widget-image .elementor-widget-container,
  .elementor-widget-image a
),
body.pfx1-events-visual-surface :is(
  .elementor-location-footer,[data-elementor-type="footer"]
) .pfx-footer-shell :is(
  .elementor-widget-image,
  .elementor-widget-image .elementor-widget-container,
  .elementor-widget-image a
){
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  transform:none !important;
}
body.pfx1-events-visual-surface :is(
  .elementor-location-header,[data-elementor-type="header"]
) .pfx-header-shell :is(
  .elementor-widget-image,
  .elementor-widget-image .elementor-widget-container,
  .elementor-widget-image a
):is(:hover,:focus,:focus-visible,:focus-within){
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  transform:none !important;
}
body.pfx1-events-visual-surface :is(
  .elementor-location-header,[data-elementor-type="header"],
  .elementor-location-footer,[data-elementor-type="footer"]
) :is(.pfx-header-shell,.pfx-footer-shell) .elementor-widget-image img{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  transform:none !important;
  filter:drop-shadow(0 0 10px rgba(var(--pfx-accent-rgb),.13)) !important;
}

@media(max-width:767px){
  body.pfx1-events-visual-surface{
    --pfx-event-shell-gap:10px;
  }
}


/* ==========================================================
 * PFX1 Site Studio 5.9.1 — Events archive single-canvas + multicolor icon hover
 * Archive/listing page only. Removes duplicate full-page substrates so the
 * canonical site canvas is the only page background, while hero/cards retain
 * their intentional component surfaces. Header/footer action hovers use the
 * Events ten-accent identity instead of a single orange/yellow tone.
 * ========================================================== */
body.pfx1-events-visual-surface:not(:has(.pfx1-event-detail)){
  --pfx-events-site-canvas:var(
    --pfx-global-page-bg,
    var(--pfx-page-bg,var(--pfx-a1-bg-page,var(--pfx-ui-bg-page,#020610)))
  );
  --pfx-events-archive-bg:var(--pfx-events-site-canvas);
  background:var(--pfx-events-site-canvas) !important;
  background-color:var(--pfx-events-site-canvas) !important;
  background-image:none !important;
}

/* The archive had three visible dark bands: document canvas, Elementor page
   host and shortcode host. Keep only the document/site canvas. */
body.pfx1-events-visual-surface:not(:has(.pfx1-event-detail)) :is(
  #page,
  .site,
  main#content,
  main.site-main,
  .site-main,
  #content,
  .site-content,
  .content-area,
  .page-content,
  article.page,
  .elementor[data-elementor-type="wp-page"],
  .elementor[data-elementor-type="wp-page"] > .e-con,
  .elementor[data-elementor-type="wp-page"] > .elementor-element,
  .page-content > .e-con,
  .page-content > .elementor-element
){
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  outline:0 !important;
}

/* The shortcode wrapper carries geometry only; it never paints a page layer. */
body.pfx1-events-visual-surface:not(:has(.pfx1-event-detail)) .pfx1-events-page{
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
}

/* Header/footer outer roots also expose the canonical site canvas. The inner
   glass shells retain their own multicolor glass/glow identity. */
body.pfx1-events-visual-surface:not(:has(.pfx1-event-detail)) :is(
  header[data-elementor-type="header"],
  .elementor-location-header,
  [data-elementor-type="header"],
  footer[data-elementor-type="footer"],
  .elementor-location-footer,
  [data-elementor-type="footer"],
  .pfx-footer
){
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
}

/* Header cart/account/menu actions: controlled ten-color hover, no orange-only
   card and no geometry movement. Covers both canonical PFX classes and generic
   Elementor icon/button widgets used by responsive headers. */
body.pfx1-events-visual-surface:not(:has(.pfx1-event-detail)) :is(
  .elementor-location-header,[data-elementor-type="header"]
) .pfx-header-shell :is(
  .pfx-header-login .elementor-button,
  .pfx-header-cta .elementor-button,
  .elementor-widget-icon a,
  .elementor-widget-icon .elementor-icon,
  .elementor-menu-cart__toggle .elementor-button,
  .elementor-menu-cart__toggle_button
){
  transform:none !important;
  translate:none !important;
  scale:1 !important;
  transition:color .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease !important;
}
body.pfx1-events-visual-surface:not(:has(.pfx1-event-detail)) :is(
  .elementor-location-header,[data-elementor-type="header"]
) .pfx-header-shell :is(
  .pfx-header-login .elementor-button,
  .pfx-header-cta .elementor-button,
  .elementor-widget-icon a,
  .elementor-widget-icon .elementor-icon,
  .elementor-menu-cart__toggle .elementor-button,
  .elementor-menu-cart__toggle_button
):is(:hover,:focus-visible,:focus-within){
  color:#fff !important;
  border-color:rgba(var(--pfx-events-mix-4-rgb),.56) !important;
  background:
    radial-gradient(circle at 20% 0%,rgba(var(--pfx-events-mix-1-rgb),.34),transparent 48%),
    radial-gradient(circle at 88% 100%,rgba(var(--pfx-events-mix-9-rgb),.18),transparent 50%),
    linear-gradient(120deg,
      rgba(var(--pfx-events-mix-1-rgb),.30) 0%,
      rgba(var(--pfx-events-mix-4-rgb),.34) 48%,
      rgba(var(--pfx-events-mix-8-rgb),.28) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    0 0 14px rgba(var(--pfx-events-mix-1-rgb),.20),
    0 0 24px rgba(var(--pfx-events-mix-4-rgb),.16),
    0 0 34px rgba(var(--pfx-events-mix-8-rgb),.09) !important;
  transform:none !important;
}

/* Footer social/action icons follow the same spectrum and stay visually light;
   the logo itself remains excluded by the 5.9.0 logo-hover contract. */
body.pfx1-events-visual-surface:not(:has(.pfx1-event-detail)) :is(
  footer[data-elementor-type="footer"],.elementor-location-footer,[data-elementor-type="footer"]
) .pfx-footer-shell :is(
  .elementor-social-icon,
  .elementor-widget-icon a,
  .elementor-widget-icon .elementor-icon,
  .elementor-button
){
  transform:none !important;
  translate:none !important;
  scale:1 !important;
  transition:color .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease !important;
}



/* ==========================================================
 * PFX1 Site Studio 5.9.2 — Events archive premium price module
 * Makes event pricing clearer, denser and visually consistent with
 * the selected event accent while preserving the existing card CTA.
 * ========================================================== */
body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__footer{
  align-items:center;
  gap:14px;
  padding-top:14px;
  border-top-color:rgba(255,255,255,.065);
}
body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__footer > strong{
  position:relative;
  display:grid;
  grid-template-columns:auto auto;
  grid-template-rows:auto auto;
  align-items:end;
  justify-content:end;
  gap:6px 7px;
  min-width:126px;
  min-height:58px;
  margin:0;
  padding:9px 11px 10px;
  border:1px solid rgba(var(--pfx-event-rgb),.22);
  border-radius:14px;
  background:
    radial-gradient(circle at 100% 0%,rgba(var(--pfx-event-rgb),.10),transparent 48%),
    linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.01));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.035),
    0 8px 20px rgba(0,0,0,.12),
    0 0 16px rgba(var(--pfx-event-rgb),.035);
  color:var(--pfx-event-accent);
  font-family:var(--pfx-font,var(--pfx-ui-font,inherit)) !important;
  text-align:right;
  white-space:nowrap;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__footer > strong::before{
  content:"هزینه رزرو";
  grid-column:1 / -1;
  grid-row:1;
  margin:0;
  color:#8299ab;
  font-family:inherit !important;
  font-size:9px;
  font-weight:750;
  line-height:1.25;
  letter-spacing:0;
}
body.pfx1-events-visual-surface .pfx1-event-card__price-value{
  grid-column:1;
  grid-row:2;
  display:block;
  color:var(--pfx-event-accent) !important;
  font-family:inherit !important;
  font-size:20px !important;
  font-weight:900 !important;
  line-height:1 !important;
  letter-spacing:-.015em;
  text-shadow:0 0 14px rgba(var(--pfx-event-rgb),.12);
}
body.pfx1-events-visual-surface .pfx1-event-card__price-currency{
  grid-column:2;
  grid-row:2;
  display:block;
  align-self:end;
  padding-bottom:1px;
  color:color-mix(in srgb,var(--pfx-event-accent) 78%,#fff 22%) !important;
  font-family:inherit !important;
  font-size:11px !important;
  font-weight:800 !important;
  line-height:1 !important;
}
body.pfx1-events-visual-surface .pfx1-event-card__price-free{
  grid-column:1 / -1;
  grid-row:2;
  display:block;
  color:var(--pfx-event-accent) !important;
  font-family:inherit !important;
  font-size:15px !important;
  font-weight:900 !important;
  line-height:1.1 !important;
}
body.pfx1-events-visual-surface .pfx1-event-card--premium:is(:hover,:focus-within) .pfx1-event-card__footer > strong{
  border-color:rgba(var(--pfx-event-rgb),.34);
  background:
    radial-gradient(circle at 100% 0%,rgba(var(--pfx-event-rgb),.14),transparent 50%),
    linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.012));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.045),
    0 10px 24px rgba(0,0,0,.14),
    0 0 20px rgba(var(--pfx-event-rgb),.065);
}
@media(max-width:680px){
  body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__footer{
    align-items:stretch;
    gap:10px;
  }
  body.pfx1-events-visual-surface .pfx1-event-card--premium .pfx1-event-card__footer > strong{
    width:100%;
    min-width:0;
    justify-content:start;
  }
}


/* ==========================================================
 * PFX1 Site Studio 5.9.3 — Event hero CTA typography parity
 * Keeps detail-hero CTA text identical to the canonical Event buttons.
 * ========================================================== */
body.pfx1-events-visual-surface .pfx1-event-detail .pfx1-event-button.pfx1-event-button--hero{
  font-family:var(--pfx-font,var(--pfx-ui-font,var(--pfx-site-runtime-font,inherit))) !important;
  font-size:12px !important;
  font-weight:800 !important;
  line-height:1.4 !important;
  letter-spacing:0 !important;
  font-style:normal !important;
  text-transform:none !important;
  white-space:nowrap !important;
  text-decoration:none !important;
}
body.pfx1-events-visual-surface .pfx1-event-detail .pfx1-event-button.pfx1-event-button--hero :is(span,strong,small){
  font:inherit !important;
  letter-spacing:inherit !important;
}


/* ==========================================================
 * PFX1 Site Studio 5.9.4 — Events featured title weight parity
 * ========================================================== */
body.pfx1-events-visual-surface .pfx1-events-showcase__spotlight-copy h2{
  font-family:var(--pfx-font,var(--pfx-ui-font,inherit)) !important;
  font-weight:900 !important;
  font-synthesis:none;
}

/* 5.9.8 — public My Bookings semantic badges, prominent schedule and event-start urgency. */
.pfx1-booking-badges{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:2px}
.pfx1-booking-state.is-info{border-color:rgba(56,189,248,.30);background:rgba(56,189,248,.07);color:#7dd3fc}
.pfx1-booking-schedule{display:grid;gap:4px;margin-top:4px;padding:9px 10px;border:1px solid rgba(56,189,248,.16);border-radius:10px;background:rgba(56,189,248,.045)}
.pfx1-booking-schedule span{color:#7894a9;font-size:9px;font-weight:700}
.pfx1-booking-schedule strong{color:#f8fafc;font-size:13px;font-weight:900;line-height:1.55;font-variant-numeric:tabular-nums}
.pfx1-event-link-lock.is-event-warning{border-color:rgba(250,204,21,.38);background:rgba(250,204,21,.075)}
.pfx1-event-link-lock.is-event-warning span,.pfx1-event-link-lock.is-event-warning strong{color:#fde047}
.pfx1-event-link-lock.is-event-danger{border-color:rgba(248,113,113,.44);background:rgba(248,113,113,.09)}
.pfx1-event-link-lock.is-event-danger span,.pfx1-event-link-lock.is-event-danger strong{color:#fca5a5}

/* 5.9.18 — Event add-to-cart uses only the canonical header Mini Cart; no duplicate toast surface. */

/* PFX1 Site Studio 5.9.20 — dismissible Event notices + legacy toast retirement. */
.pfx1-event-notice{position:relative;padding-inline-start:48px!important}
.pfx1-event-notice__dismiss{position:absolute;inset-inline-start:12px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:27px;height:27px;padding:0;border:1px solid rgba(255,255,255,.13);border-radius:8px;background:rgba(2,10,18,.38);color:currentColor;font:700 17px/1 sans-serif;cursor:pointer}
.pfx1-event-notice__dismiss:is(:hover,:focus-visible){border-color:currentColor;outline:0}
.pfx1-event-cart-toast{display:none!important}

/* ========================================================================
   PFX1 Site Studio 5.9.22 — Event notice -> canonical global alert contract
   ======================================================================== */
body.pfx1-events-visual-surface .pfx1-event-notice {
  --pfx-event-notice-rgb: 22,136,255;
  position: relative !important;
  width: min(100%, 1360px) !important;
  min-height: 58px !important;
  margin: 0 auto 16px !important;
  padding: 12px 56px 12px 52px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  border: 1px solid rgba(var(--pfx-event-notice-rgb),.40) !important;
  border-radius: 13px !important;
  background: linear-gradient(135deg,rgba(8,55,96,.34),rgba(6,31,54,.24)) !important;
  color: #d5ecff !important;
  box-shadow: 0 0 24px rgba(var(--pfx-event-notice-rgb),.045),inset 0 1px 0 rgba(255,255,255,.025) !important;
  box-sizing: border-box !important;
  font-family: var(--pfx-font-family,"PFX1 Font",sans-serif) !important;
  font-size: 13px !important;
  font-weight: 750 !important;
  line-height: 1.85 !important;
  text-align: right !important;
}
body.pfx1-events-visual-surface .pfx1-event-notice::before {
  content: "i" !important;
  position: absolute !important;
  inset-inline-start: 13px !important;
  top: 50% !important;
  width: 32px !important;
  height: 32px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(var(--pfx-event-notice-rgb),.34) !important;
  border-radius: 10px !important;
  background: rgba(var(--pfx-event-notice-rgb),.10) !important;
  color: currentColor !important;
  font: 900 14px/1 Arial,sans-serif !important;
  box-shadow: 0 0 16px rgba(var(--pfx-event-notice-rgb),.05) !important;
  transform: translateY(-50%) !important;
}
body.pfx1-events-visual-surface .pfx1-event-notice.is-confirmed {
  --pfx-event-notice-rgb: 24,199,139;
  border-color: rgba(24,199,139,.42) !important;
  background: linear-gradient(135deg,rgba(8,79,57,.34),rgba(8,42,34,.22)) !important;
  color: #c9ffe9 !important;
}
body.pfx1-events-visual-surface .pfx1-event-notice.is-confirmed::before { content: "✓" !important; }
body.pfx1-events-visual-surface .pfx1-event-notice.is-pending_review {
  --pfx-event-notice-rgb: 242,169,40;
  border-color: rgba(242,169,40,.48) !important;
  background: linear-gradient(135deg,rgba(101,67,8,.34),rgba(45,34,11,.22)) !important;
  color: #ffe2a0 !important;
}
body.pfx1-events-visual-surface .pfx1-event-notice.is-pending_review::before { content: "!" !important; }
body.pfx1-events-visual-surface .pfx1-event-notice.is-error {
  --pfx-event-notice-rgb: 255,109,120;
  border-color: rgba(255,109,120,.44) !important;
  background: linear-gradient(135deg,rgba(91,24,32,.34),rgba(45,18,24,.24)) !important;
  color: #ffd7db !important;
}
body.pfx1-events-visual-surface .pfx1-event-notice.is-error::before { content: "!" !important; }

/* Global button rules must never inflate the notice close control. */
body.pfx1-events-visual-surface .pfx1-event-notice > .pfx1-event-notice__dismiss {
  all: unset !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  position: absolute !important;
  inset-inline-end: 13px !important;
  top: 50% !important;
  width: 28px !important;
  height: 28px !important;
  display: grid !important;
  place-items: center !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(var(--pfx-event-notice-rgb),.34) !important;
  border-radius: 9px !important;
  background: rgba(var(--pfx-event-notice-rgb),.075) !important;
  color: currentColor !important;
  font: 900 17px/1 Arial,sans-serif !important;
  cursor: pointer !important;
  transform: translateY(-50%) !important;
  transition: border-color .16s ease,background .16s ease,color .16s ease !important;
}
body.pfx1-events-visual-surface .pfx1-event-notice > .pfx1-event-notice__dismiss:is(:hover,:focus-visible) {
  border-color: rgba(var(--pfx-event-notice-rgb),.66) !important;
  background: rgba(var(--pfx-event-notice-rgb),.16) !important;
  color: #fff !important;
  outline: 0 !important;
}

@media (max-width: 767px) {
  body.pfx1-events-visual-surface .pfx1-event-notice {
    min-height: 54px !important;
    margin-bottom: 12px !important;
    padding: 11px 50px 11px 48px !important;
    border-radius: 11px !important;
    font-size: 11.5px !important;
    line-height: 1.75 !important;
  }
  body.pfx1-events-visual-surface .pfx1-event-notice::before {
    inset-inline-start: 10px !important;
    width: 29px !important;
    height: 29px !important;
    border-radius: 9px !important;
  }
  body.pfx1-events-visual-surface .pfx1-event-notice > .pfx1-event-notice__dismiss {
    inset-inline-end: 10px !important;
    width: 26px !important;
    height: 26px !important;
  }
}


/* 5.9.26 — nearest available CTA parity + shorter no-slot copy. */
body.pfx1-events-visual-surface .pfx1-events-empty.is-compact p,
.pfx1-events-empty.is-compact p{
  margin:8px 0 0;
  color:#9bb0c2;
  line-height:1.95;
  font-size:12px;
}
body.pfx1-events-visual-surface .pfx1-events-empty .pfx1-event-button.is-nearest,
.pfx1-events-empty .pfx1-event-button.is-nearest{
  margin-top:14px;
  min-height:44px;
  padding-inline:22px;
  border-radius:12px;
  font-family:var(--pfx-global-font,var(--pfx-font,var(--pfx-ui-font,inherit)))!important;
  font-size:12px;
  font-weight:800;
  letter-spacing:0;
  box-shadow:0 12px 26px rgba(var(--pfx-event-rgb,255,122,0),.18);
}

/* 5.9.26 — premium single-scroll mini cart for events / products. */
body.pfx1-frontend-field-contract :is(
  .elementor-menu-cart__container,
  .widget_shopping_cart_content,
  .woocommerce.widget_shopping_cart,
  .wc-block-mini-cart__drawer
){
  --pfx-mini-cart-scroll-track:rgba(7,22,36,.88);
  --pfx-mini-cart-scroll-thumb:linear-gradient(180deg,rgba(34,211,238,.86),rgba(99,102,241,.86));
}
body.pfx1-frontend-field-contract :is(
  .elementor-menu-cart__container .dialog-message,
  .elementor-menu-cart__container .elementor-menu-cart__main,
  .elementor-menu-cart__container .widget_shopping_cart_content,
  .woocommerce.widget_shopping_cart,
  .wc-block-mini-cart__drawer
){
  overflow:hidden!important;
}
body.pfx1-frontend-field-contract :is(
  .elementor-menu-cart__products,
  .woocommerce-mini-cart,
  .wc-block-mini-cart__items
){
  max-height:min(52vh,430px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:#5dd8f5 var(--pfx-mini-cart-scroll-track);
  padding-inline-end:4px;
}
body.pfx1-frontend-field-contract :is(
  .elementor-menu-cart__products,
  .woocommerce-mini-cart,
  .wc-block-mini-cart__items
)::-webkit-scrollbar{width:10px}
body.pfx1-frontend-field-contract :is(
  .elementor-menu-cart__products,
  .woocommerce-mini-cart,
  .wc-block-mini-cart__items
)::-webkit-scrollbar-track{
  background:var(--pfx-mini-cart-scroll-track);
  border-radius:999px;
}
body.pfx1-frontend-field-contract :is(
  .elementor-menu-cart__products,
  .woocommerce-mini-cart,
  .wc-block-mini-cart__items
)::-webkit-scrollbar-thumb{
  background:var(--pfx-mini-cart-scroll-thumb);
  border-radius:999px;
  border:2px solid var(--pfx-mini-cart-scroll-track);
}


/* ========================================================================
   5.9.39 — EVENTS ARCHIVE / CONTROLLED MULTICOLOR SLOGAN ACCENTS
   The two semantic phrases keep their existing markup but become a
   controlled Cyan → Blue → Violet → Magenta brand gradient.
   Surrounding slogan text remains canonical white.
   ======================================================================== */
body.pfx1-events-visual-surface .pfx1-events-showcase__slogan .is-accent{
  display:inline-block;
  color:#22d3ee !important;
  background:linear-gradient(90deg,#22d3ee 0%,#3b82f6 32%,#8b5cf6 66%,#d946ef 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent !important;
  text-shadow:none !important;
  filter:drop-shadow(0 0 12px rgba(99,102,241,.20));
}
@supports not ((-webkit-background-clip:text) or (background-clip:text)){
  body.pfx1-events-visual-surface .pfx1-events-showcase__slogan .is-accent{
    color:#3b82f6 !important;
    -webkit-text-fill-color:currentColor !important;
    background:none;
  }
}
