/* PROLIFIQ Booking Experience v1.2.0 — premium type, step hierarchy and useful microinteractions.
   This stylesheet is presentational: never touches order processing or RSVP field behaviors. */
html body #pqn-native-dialog#pqn-native-dialog {
  --pqh-ink: #f6fff8;
  --pqh-dim: #cee0d6;
  --pqh-lime: #cdf877;
  --pqh-panel: #172421;
  --pqh-stroke: rgba(166,218,179,.22);
  font-family:inherit!important;
  color:var(--pqh-ink)!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents {
  color:var(--pqh-ink)!important;
  font-family:inherit!important;
  font-size:16px!important;
  line-height:1.56!important;
  padding:clamp(17px,2.8vw,29px)!important;
  overflow-x:hidden!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(p,li,label,legend,dt,dd,.tribe-common-b1,.tribe-common-b2,.tribe-common-b3) {
  font-size:clamp(15px,1.3vw,16px)!important;
  line-height:1.55!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(h1,h2,h3,h4,h5,.tribe-common-h1,.tribe-common-h2,.tribe-common-h3,.tribe-common-h4,.tribe-common-h5) {
  font-family:inherit!important;
  letter-spacing:-.045em!important;
  font-weight:850!important;
  color:#fff!important;
  text-wrap:balance;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(h1,.tribe-common-h1) {
  font-size:clamp(25px,2.4vw,32px)!important;
  line-height:1.13!important;
  margin:0 0 15px!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(h2,.tribe-common-h2,.tribe-common-h3,.tribe-tickets__rsvp-title,.tribe-tickets__tickets-title) {
  font-size:clamp(21px,2.2vw,28px)!important;
  line-height:1.18!important;
  margin:8px 0 15px!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(h3,h4,h5,.tribe-common-h4,.tribe-common-h5,.tribe-tickets__rsvp-ar-form-title,.tribe-tickets__tickets-item-content-title) {
  font-size:clamp(18px,1.65vw,22px)!important;
  line-height:1.26!important;
  margin:11px 0 10px!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(label,legend,.tribe-common-form-control-text__label) {
  display:block!important;
  font-weight:720!important;
  font-size:15px!important;
  line-height:1.45!important;
  color:#f6fff8!important;
  margin-bottom:5px!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(.tribe-tickets__rsvp-ar-form,.tribe-tickets__rsvp-form,.tribe-tickets__tickets-wrapper) {
  font-family:inherit!important;
  color:#f3fff8!important;
  min-width:0!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(input[type="text"],input[type="email"],input[type="tel"],input[type="password"],input[type="number"],select,textarea) {
  font-size:16px!important;
  line-height:1.4!important;
  min-height:48px!important;
  padding:12px 14px!important;
  border-radius:11px!important;
  border:1px solid #647e76!important;
  background:#253733!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  transition:border-color .16s ease,box-shadow .16s ease!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(input[type="text"],input[type="email"],input[type="tel"],input[type="password"],input[type="number"],select,textarea):focus {
  outline:2px solid #d0ff88!important;
  outline-offset:1px!important;
  border-color:#d0ff88!important;
  box-shadow:0 0 0 4px rgba(205,248,119,.13)!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(button,input[type="submit"],.tribe-common-c-btn) {
  font-size:clamp(14px,1.15vw,16px)!important;
  line-height:1.25!important;
  font-weight:780!important;
  min-height:46px!important;
  border-radius:11px!important;
  padding:11px 17px!important;
  transition:transform .18s ease,filter .18s ease,box-shadow .18s ease!important;
}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
  html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(button:not([disabled]),input[type="submit"]:not([disabled])):hover {transform:translateY(-1px)!important;filter:brightness(1.08)!important}
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents .tribe-tickets__rsvp-ar-form-fields {
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:clamp(10px,1.4vw,16px)!important;
  max-width:100%!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(.tribe-tickets__rsvp-ar-form-attendees,.tribe-tickets__rsvp-ar-form-attendee,.tribe-tickets__tickets-item,.tribe-tickets__rsvp-form-fields) {
  border-radius:14px!important;
  border-color:rgba(182,215,191,.22)!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(.tribe-tickets__rsvp-ar-form-attendees,.tribe-tickets__rsvp-ar-form-attendee,.tribe-tickets__tickets-item) {
  background:#202d2b!important;
  padding:clamp(14px,2vw,22px)!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(.tribe-tickets__rsvp-ar-form-guest-list,.tribe-tickets__rsvp-ar-form-attendee-list) {
  list-style:none!important;
  padding-left:0!important;
  margin-left:0!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(.tribe-tickets__rsvp-ar-form-guest-list,.tribe-tickets__rsvp-ar-form-attendee-list) :is(li,li::marker) {list-style:none!important;content:none!important}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents [data-pqh-guest-label] {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:100px!important;
  height:auto!important;
  padding:10px 14px!important;
  border:1px solid rgba(190,221,196,.42)!important;
  background:#283b33!important;
  color:#f8fff9!important;
  border-radius:999px!important;
  font-weight:760!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents [data-pqh-guest-label]::after {
  content:attr(data-pqh-guest-label)!important;
  font-size:14px!important;
  color:#f8fff9!important;
  white-space:nowrap;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents [data-pqh-glyph] {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:46px!important;
  min-width:46px!important;
  max-width:46px!important;
  height:46px!important;
  padding:0!important;
  background:#314a40!important;
  border:1px solid #759187!important;
  border-radius:11px!important;
  font-size:0!important;
  color:#fff!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents [data-pqh-glyph]::after {
  content:attr(data-pqh-glyph)!important;
  font-family:inherit!important;
  font-weight:750!important;
  font-size:25px!important;
  line-height:1!important;
  color:#fff!important;
  text-shadow:none!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents [data-pqh-glyph] svg{display:none!important}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(.tribe-tickets__rsvp-ar-quantity,.tribe-tickets__rsvp-quantity,.tribe-tickets__tickets-item-quantity) {
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  flex-wrap:wrap!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(.tribe-tickets__rsvp-ar-quantity,.tribe-tickets__rsvp-quantity,.tribe-tickets__tickets-item-quantity) input[type="number"] {
  width:72px!important;
  min-width:72px!important;
  max-width:72px!important;
  min-height:46px!important;
  margin:0!important;
  font-weight:800!important;
  text-align:center!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents .pqn-checkout-guide {
  font-size:14px!important;
  line-height:1.55!important;
  margin:15px 0 19px!important;
  padding:13px 16px!important;
  border-radius:10px!important;
  border-left:3px solid var(--pqh-lime)!important;
  background:#26362f!important;
  color:#e7f9eb!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(.tribe-tickets__rsvp-success,.tribe-tickets__rsvp-ar-success,.tribe-common-c-alert--success) {
  padding:clamp(18px,3vw,32px)!important;
  border:1px solid rgba(206,248,108,.36)!important;
  border-radius:16px!important;
  background:radial-gradient(circle at 96% 0%,rgba(189,241,108,.10),transparent 42%),#1b3028!important;
  color:#fff!important;
  animation:pqhSuccessEnter .38s ease-out both;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(.tribe-tickets__rsvp-success,.tribe-tickets__rsvp-ar-success) :is(h2,h3,strong) {
  font-size:clamp(20px,2.4vw,27px)!important;
  letter-spacing:-.04em!important;
}
/* New content hierarchy, outside Event Tickets' own form handlers. */
html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-intro {
  position:relative!important;
  display:block!important;
  overflow:hidden!important;
  background:linear-gradient(135deg,rgba(46,85,57,.54),rgba(17,35,28,.65))!important;
  border:1px solid rgba(198,243,132,.31)!important;
  border-radius:17px!important;
  padding:clamp(16px,2.3vw,23px)!important;
  margin:0 0 19px!important;
  color:#fff!important;
  box-shadow:inset 0 1px rgba(255,255,255,.04);
  animation:pqhIntroIn .4s cubic-bezier(.2,.8,.2,1) both;
}
html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-intro:before {
  content:"";
  position:absolute;
  width:125px;height:125px;
  right:-72px;top:-75px;
  border-radius:50%;border:28px solid rgba(205,248,119,.07);
  pointer-events:none;
}
html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-intro__top {
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;
  margin:0 0 9px!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-intro__kicker {
  color:var(--pqh-lime)!important;font-size:11px!important;font-weight:850!important;
  letter-spacing:.17em!important;text-transform:uppercase!important;line-height:1.3!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-intro__count {
  color:#ecffe6!important;font-size:12px!important;font-weight:800!important;
  background:#2e4538!important;border:1px solid #638767!important;border-radius:999px!important;
  padding:5px 9px!important;white-space:nowrap;
}
html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-intro h2 {
  color:#fff!important;
  font-family:inherit!important;
  font-size:clamp(25px,3vw,36px)!important;
  letter-spacing:-.062em!important;
  font-weight:900!important;
  line-height:1.08!important;
  margin:0 0 10px!important;
  text-transform:none!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-intro p {
  font-family:inherit!important;color:#d8eadc!important;
  font-size:clamp(14px,1.4vw,16px)!important;line-height:1.5!important;
  max-width:52ch;margin:0 0 15px!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-steps {
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;
  list-style:none!important;margin:0!important;padding:0!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-steps li {
  display:flex!important;align-items:center!important;gap:6px!important;min-width:0!important;
  color:#a8c1b1!important;font-size:10px!important;font-weight:800!important;letter-spacing:.045em!important;
  line-height:1.2!important;text-transform:uppercase!important;
  padding:10px 9px!important;background:rgba(6,20,12,.40)!important;
  border:1px solid rgba(169,201,178,.16)!important;border-radius:9px!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-steps li::before {
  content:attr(data-step)!important;display:grid!important;place-items:center!important;
  flex:0 0 22px!important;width:22px;height:22px!important;
  border-radius:50%!important;background:#34473b!important;color:#d0e0d2!important;
  font-size:11px!important;font-weight:900!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-steps li.is-current {
  color:#fff!important;background:#2b4434!important;border-color:rgba(205,248,119,.65)!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-steps li.is-current::before,
html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-steps li.is-done::before {
  background:var(--pqh-lime)!important;color:#162510!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-steps li.is-done::before{content:"✓"!important}
html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-progress {
  display:block!important;width:100%!important;height:3px!important;margin:11px 0 0!important;
  background:rgba(173,215,185,.22)!important;border-radius:99px!important;overflow:hidden!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-progress::before {
  content:""!important;display:block!important;height:100%!important;width:33.333%!important;
  background:var(--pqh-lime)!important;border-radius:99px!important;
  transition:width .4s ease;
}
html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-intro[data-phase="2"] .pqh-booking-progress::before{width:66.66%!important}
html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-intro[data-phase="3"] .pqh-booking-progress::before{width:100%!important}
/* Keep the event identity prominent, not as a line of 10px text. */
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-dialog-inner>header strong,
html body #pqn-listing-overlay .pqn-listing-head strong {
  font-size:clamp(16px,1.5vw,19px)!important;
  font-weight:850!important;
  letter-spacing:-.03em!important;
  line-height:1.26!important;
  color:#fff!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-visual-brief strong,
html body #pqn-native-dialog#pqn-native-dialog .pqn-modal-info h3 {
  font-size:clamp(17px,1.8vw,23px)!important;
  font-weight:850!important;
  letter-spacing:-.035em!important;
  line-height:1.2!important;
  color:#fff!important;
}
html body #pqn-native-dialog#pqn-native-dialog .pqn-visual-brief :is(p,small),
html body #pqn-native-dialog#pqn-native-dialog .pqn-modal-info :is(p,small) {
  font-size:clamp(12px,1.2vw,14px)!important;
  line-height:1.47!important;
}
/* Light native panels retain dark ink; buttons and inputs retain their own contrast. */
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents [data-pqh-light-surface="1"] :is(p,span,strong,label,li,small,h1,h2,h3,h4,h5,legend) {
  color:#132420!important;-webkit-text-fill-color:#132420!important;
}
@keyframes pqhIntroIn{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@keyframes pqhSuccessEnter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:740px){
  html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents{font-size:16px!important;padding:16px 14px!important}
  html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-intro{padding:16px 14px!important;margin-bottom:16px!important}
  html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-intro h2{font-size:clamp(24px,6.4vw,30px)!important;line-height:1.12!important}
  html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-intro p{font-size:14px!important}
  html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-steps li{padding:8px 6px!important;gap:4px!important;font-size:9px!important;letter-spacing:0!important}
  html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-steps li::before{height:19px!important;width:19px!important;flex-basis:19px!important;font-size:10px!important}
  html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(h2,.tribe-common-h2,.tribe-common-h3){font-size:22px!important}
  html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(h3,.tribe-common-h4){font-size:19px!important}
  html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(button,input[type="submit"]){font-size:15px!important;min-height:46px!important}
}
@media(max-width:360px){
  html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-steps li{font-size:0!important;justify-content:center!important}
  html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-steps li::before{font-size:11px!important}
  html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-intro__top{flex-wrap:wrap!important}
}
@media(prefers-reduced-motion:reduce){
  html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-intro,
  html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(.tribe-tickets__rsvp-success,.tribe-tickets__rsvp-ar-success){animation:none!important}
  html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-progress::before{transition:none!important}
  html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents :is(button,input[type="submit"],select,textarea,input){transition:none!important}
}

/* Use a short, legible progress label across 320–390px devices; avoid wrapped words. */
html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-steps li{white-space:nowrap!important;justify-content:center!important}
html body #pqn-native-dialog#pqn-native-dialog .pqn-native-contents .tribe-tickets__rsvp-ar-form :is(h3,.tribe-common-h4){border-left:3px solid #cffa75!important;padding-left:12px!important;margin-top:16px!important}
@media(max-width:740px){
  html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-intro{padding:13px!important;margin-bottom:13px!important}
  html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-intro__top{margin-bottom:7px!important}
  html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-intro h2{margin:0 0 7px!important}
  html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-intro p{margin:0 0 10px!important}
  html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-steps li{padding:7px 5px!important;font-size:10px!important;letter-spacing:0!important;min-width:0!important}
  html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-progress{margin-top:8px!important}
}
@media(max-width:345px){
  html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-steps li{font-size:9px!important}
  html body #pqn-native-dialog#pqn-native-dialog .pqh-booking-steps li::before{height:17px!important;width:17px!important;flex-basis:17px!important}
}
