.ecui-notice{padding:12px 14px;border:1px solid #dcdcde;background:#fff8e5}
.ecui-engine-compat{display:none!important}

/* The real Pinpoint engine is off-screen from first paint. Never display:none or visibility:hidden. */
.ecui-engine-host{position:fixed!important;left:-20000px!important;top:0!important;width:1180px!important;max-width:none!important;height:auto!important;overflow:visible!important;visibility:visible!important;opacity:.001!important;pointer-events:none!important;z-index:-99999!important}
.ecui-engine-host .eccf-elementor-bridge,.ecui-engine-host .eccf-bridge-engine{width:1180px!important;max-width:none!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}

.ecui-calendar-shell{width:100%;max-width:100%;min-width:0;border:1px solid #d9dfdb;border-radius:12px;background:#fff;padding:16px;box-sizing:border-box}
.ecui-calendar-toolbar{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;gap:10px;margin-bottom:14px}
.ecui-calendar-toolbar>div{text-align:center;color:#1f2923}
.ecui-calendar-toolbar strong{display:block;font-size:19px;line-height:1.2}
.ecui-calendar-toolbar small{display:block;margin-top:3px;color:#68726c;font-size:12px;font-weight:400}
.ecui-arrow{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #cbd4ce;border-radius:10px;background:#fff;color:#087a3a;font-size:27px;line-height:1;cursor:pointer}
.ecui-arrow:hover{border-color:#16803d;background:#f2f8f4}
.ecui-arrow:disabled{opacity:.28;cursor:not-allowed;background:#f5f5f5}

.ecui-months{display:grid;grid-template-columns:repeat(var(--ecui-visible,3),minmax(0,1fr));gap:16px}
.ecui-month{border:1px solid #e1e5e2;border-radius:9px;padding:11px;background:#fff;min-width:0}
.ecui-month h3{font-size:17px;margin:0 0 9px;text-align:center;color:#202923}
.ecui-weekdays,.ecui-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}
.ecui-weekdays span{font-size:11px;font-weight:650;text-align:center;color:#68726c;padding:3px 0}
.ecui-day{display:flex;align-items:center;justify-content:center;min-width:0;min-height:34px;padding:0;border-radius:5px;font:inherit;font-size:13px;border:1px solid transparent;box-sizing:border-box}
button.ecui-day{cursor:pointer}
.ecui-day.is-free{background:#e9f5ec;border-color:#c4dfca;color:#14532d}
.ecui-day.is-booked{background:#f5e7e7;border-color:#dfc1c1;color:#7a2525;font-weight:650;background-image:linear-gradient(135deg,transparent calc(50% - .5px),rgba(122,37,37,.45) calc(50% - .5px),rgba(122,37,37,.45) calc(50% + .5px),transparent calc(50% + .5px))}
.ecui-day.is-unavailable{background:#ededed;border-color:#d5d5d5;color:#777;background-image:linear-gradient(135deg,transparent calc(50% - .5px),rgba(92,92,92,.45) calc(50% - .5px),rgba(92,92,92,.45) calc(50% + .5px),transparent calc(50% + .5px))}
.ecui-day.is-past{background:#f3f3f3;color:#aaa}
.ecui-day.is-empty{background:transparent;border-color:transparent}
.ecui-day.is-start-choice{box-shadow:inset 0 0 0 1px #16803d;font-weight:800}
.ecui-day.is-start-choice:hover{outline:2px solid #16803d;outline-offset:1px}
.ecui-day.is-end-choice{box-shadow:inset 0 0 0 2px #2f7fc1;font-weight:800}
.ecui-day.is-selected-range{background:#d7eddf!important;border-color:#16803d!important;color:#0f5128!important}
.ecui-day.is-selected-start,.ecui-day.is-selected-end{background:#16803d!important;border-color:#16803d!important;color:#fff!important;font-weight:800}
.ecui-day.is-free:not(.is-start-choice):not(.is-end-choice).is-not-selectable{cursor:default}

.ecui-calendar-status{margin:13px 0 0;padding:10px 12px;border-radius:8px;background:#f5f7f6;color:#405047;font-size:14px}
.ecui-calendar-status.is-error{background:#fff0f0;color:#8a2424}
.ecui-calendar-status.is-syncing{background:#fff8e5;color:#70550e}
.ecui-calendar-legend{display:flex;gap:15px;flex-wrap:wrap;align-items:center;margin-top:10px;font-size:12px;color:#68726c}
.ecui-calendar-legend span{display:inline-flex;gap:5px;align-items:center}
.ecui-calendar-legend i{width:12px;height:12px;border-radius:3px;display:inline-block;border:1px solid #bbb}
.ecui-calendar-legend i.free{background:#e9f5ec;border-color:#c4dfca}
.ecui-calendar-legend i.booked{background:#f5e7e7;border-color:#dfc1c1;background-image:linear-gradient(135deg,transparent calc(50% - .5px),rgba(122,37,37,.45) calc(50% - .5px),rgba(122,37,37,.45) calc(50% + .5px),transparent calc(50% + .5px))}
.ecui-calendar-legend i.unavailable{background:#ededed;border-color:#d5d5d5;background-image:linear-gradient(135deg,transparent calc(50% - .5px),rgba(92,92,92,.45) calc(50% - .5px),rgba(92,92,92,.45) calc(50% + .5px),transparent calc(50% + .5px))}
.ecui-calendar-legend i.selected{background:#16803d;border-color:#16803d}

.ecui-summary-card{width:100%;max-width:100%;min-width:0;border:1px solid #d9dfdb;border-radius:12px;background:#fff;padding:18px;box-sizing:border-box;overflow-wrap:normal;word-break:normal;hyphens:none}
.ecui-summary-box{display:grid;gap:13px}
.ecui-summary-box h3{margin:0 0 4px;font-size:22px;color:#087a20}
.ecui-summary-line{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:start;gap:8px 18px;padding:3px 0}
.ecui-summary-line span{color:#69736d;white-space:nowrap;overflow-wrap:normal;word-break:normal;hyphens:none}
.ecui-summary-line strong{min-width:0;text-align:right;white-space:normal;overflow-wrap:break-word;word-break:normal;hyphens:none}
.ecui-summary-items{display:grid;gap:7px;padding-top:2px}
.ecui-summary-item{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:9px 11px;border-radius:8px;background:#f5f7f6}
.ecui-summary-item-label{min-width:0;overflow-wrap:break-word;word-break:normal;hyphens:none}
.ecui-summary-item-amount{font-weight:400;white-space:nowrap}
.ecui-summary-subtotal{border-top:1px solid #e2e7e4;padding-top:10px!important;margin-top:2px}
.ecui-summary-total{display:flex;justify-content:space-between;align-items:center;margin:4px -18px -18px;padding:15px 18px;border-radius:0 0 12px 12px;background:#16803d;color:#fff;font-size:18px;font-weight:800}
.ecui-inline-value{font-weight:700}
.ecui-debug{margin:16px 0;padding:12px;border:1px solid #dcdcde;background:#f6f7f7;font:13px/1.5 monospace;white-space:pre-wrap}

@media(max-width:900px){.ecui-months{grid-template-columns:1fr}.ecui-calendar-shell{padding:13px}.ecui-month{padding:10px}}
@media(max-width:600px){.ecui-calendar-shell,.ecui-summary-card{max-width:100%;min-width:0}.ecui-summary-card{padding:14px}.ecui-summary-total{margin-left:-14px;margin-right:-14px;margin-bottom:-14px}.ecui-summary-line{grid-template-columns:1fr;gap:2px;padding:6px 0}.ecui-summary-line strong{text-align:left}.ecui-summary-item{gap:8px}.ecui-summary-line span,.ecui-summary-line strong,.ecui-summary-item-label{min-width:0;overflow-wrap:break-word;word-break:normal;hyphens:none}.ecui-calendar-toolbar{grid-template-columns:44px minmax(0,1fr) 44px;gap:7px}.ecui-calendar-toolbar>div{min-width:0}.ecui-calendar-toolbar strong{font-size:17px}.ecui-arrow{width:40px;height:40px}.ecui-day{min-height:38px}.ecui-calendar-legend{gap:9px}}
@media(max-width:420px){.ecui-calendar-shell{padding:10px}.ecui-month{padding:8px}.ecui-months{gap:10px}.ecui-calendar-toolbar{grid-template-columns:38px minmax(0,1fr) 38px;gap:5px;margin-bottom:10px}.ecui-arrow{width:38px;height:38px;font-size:23px}.ecui-calendar-toolbar strong{font-size:15px}.ecui-calendar-toolbar small{font-size:11px}.ecui-weekdays,.ecui-days{gap:2px}.ecui-weekdays span{font-size:10px}.ecui-day{min-height:36px;font-size:12px}.ecui-summary-line,.ecui-summary-item{font-size:14px}.ecui-summary-total{font-size:17px;padding-top:14px;padding-bottom:14px}}


/* Immediate Elementor option-tile feedback. The base bridge may report the
 * Pinpoint selected class one render later; these classes prevent a one-click
 * visual lag without changing the actual Pinpoint selection. */
.easecamp-option-tile.ecui-authoritative-selected,
.easecamp-option-tile.ecui-pending-selection{outline:2px solid #1d6b42!important;outline-offset:2px!important}
.easecamp-option-tile.ecui-pending-deselection{outline:none!important}
.easecamp-option-tile.is-easecamp-selected:not(.ecui-authoritative-selected):not(.ecui-pending-selection){outline:none!important}

/* Vrijgegeven deelperiodes in een door beheer opgebroken week. */
.ecui-day.is-partial-bookable{box-shadow:inset 0 -3px 0 #2f7fc1}
.ecui-day.is-partial-start{border-left:2px solid #2f7fc1}
.ecui-day.is-partial-end{border-right:2px solid #2f7fc1}
.ecui-calendar-legend i.partial{background:#e9f5ec;border-color:#2f7fc1;box-shadow:inset 0 -3px 0 #2f7fc1}
.ecui-day.is-selected-range.is-partial-bookable{box-shadow:inset 0 -3px 0 #2f7fc1}
.ecui-day.is-selected-start.is-partial-bookable,.ecui-day.is-selected-end.is-partial-bookable{box-shadow:inset 0 -3px 0 rgba(255,255,255,.7)}
.ecui-day.is-extension-only{box-shadow:inset 0 -3px 0 #8a6d1d;background-image:linear-gradient(135deg,rgba(138,109,29,.07) 25%,transparent 25%,transparent 50%,rgba(138,109,29,.07) 50%,rgba(138,109,29,.07) 75%,transparent 75%,transparent);background-size:8px 8px}
.ecui-day.is-split-unassigned{background:#f2f2f2!important;border-color:#d6d6d6!important;color:#929292!important;box-shadow:none!important;cursor:default!important}
.ecui-calendar-legend i.split-unassigned{background:#f2f2f2;border-color:#d6d6d6}

/* v0.18.10: native Pinpoint checkout inline. No fullscreen overlay, no
 * body/html scroll lock. The live Pinpoint DOM remains in the same host and is
 * simply brought back from its off-screen resting position. */
.ecui-engine-host.is-checkout-inline{
  position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
  width:100%!important;max-width:100%!important;height:auto!important;margin:20px 0 0!important;padding:0!important;
  overflow:visible!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;z-index:auto!important;
  background:#fff!important;border:1px solid #dce4df!important;border-radius:16px!important;box-sizing:border-box!important;
  box-shadow:0 14px 38px rgba(22,45,33,.08)!important
}
.ecui-engine-host.is-checkout-inline>.eccf-elementor-bridge,
.ecui-engine-host.is-checkout-inline .eccf-bridge-engine{
  width:100%!important;max-width:100%!important;min-width:0!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;
  box-sizing:border-box!important
}
.ecui-native-checkout-header{display:none}
.ecui-engine-host.is-checkout-inline>.ecui-native-checkout-header{
  display:flex!important;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px!important;
  background:linear-gradient(180deg,#f8fbf9 0%,#f2f7f4 100%)!important;border-bottom:1px solid #dce4df!important;border-radius:16px 16px 0 0!important;color:#1f2923!important;
  box-sizing:border-box!important
}
.ecui-native-checkout-header strong{display:block;font-size:20px;line-height:1.2}
.ecui-native-checkout-header span{display:block;margin-top:3px;color:#68726c;font-size:13px;line-height:1.35}
.ecui-native-checkout-close{flex:0 0 44px;width:44px;height:44px;border:1px solid #cbd4ce;border-radius:10px;background:#fff;color:#26352d;font-size:30px;line-height:1;cursor:pointer}
.ecui-engine-host.is-checkout-inline>.eccf-elementor-bridge{padding:16px!important}
.ecui-engine-host.is-checkout-inline input:not([type=checkbox]):not([type=radio]),
.ecui-engine-host.is-checkout-inline select,
.ecui-engine-host.is-checkout-inline textarea{max-width:100%!important;box-sizing:border-box!important}
@media(max-width:600px){
  .ecui-engine-host.is-checkout-inline{margin-top:14px!important;border-radius:10px!important}
  .ecui-engine-host.is-checkout-inline>.ecui-native-checkout-header{padding:12px!important;border-radius:10px 10px 0 0!important}
  .ecui-native-checkout-header strong{font-size:18px}
  .ecui-engine-host.is-checkout-inline>.eccf-elementor-bridge{padding:10px!important}
}


/* v0.18.14 - quieter checkout shell. */
.ecui-engine-host.is-checkout-inline{border-radius:14px!important;box-shadow:0 10px 28px rgba(22,45,33,.07)!important}
.ecui-engine-host.is-checkout-inline>.ecui-native-checkout-header{
  padding:14px 16px!important;background:#f7f9f8!important;border-radius:14px 14px 0 0!important
}
.ecui-native-checkout-header strong{font-size:18px!important;font-weight:760!important;letter-spacing:-.01em}
.ecui-native-checkout-header span{margin-top:2px!important;font-size:13px!important}
.ecui-native-checkout-close{flex-basis:40px!important;width:40px!important;height:40px!important;border-radius:10px!important;font-size:25px!important}
.ecui-engine-host.is-checkout-inline>.eccf-elementor-bridge{padding:16px!important}
@media(max-width:600px){
  .ecui-engine-host.is-checkout-inline>.ecui-native-checkout-header{padding:12px 13px!important}
  .ecui-native-checkout-header strong{font-size:17px!important}
  .ecui-native-checkout-header span{font-size:12px!important}
  .ecui-native-checkout-close{flex-basis:38px!important;width:38px!important;height:38px!important}
  .ecui-engine-host.is-checkout-inline>.eccf-elementor-bridge{padding:12px!important}
}

/* v0.18.15 - Ease Camp owns the checkout navigation. */
.ecui-engine-host.is-checkout-inline>.ecui-native-checkout-header{
  align-items:center!important;
  padding:15px 17px!important;
}
.ecui-native-checkout-title{min-width:0}
.ecui-native-checkout-back{
  flex:0 0 auto!important;
  min-height:40px!important;
  padding:9px 12px!important;
  border:1px solid #c7d2cb!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#26352d!important;
  font:inherit!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  cursor:pointer!important;
}
.ecui-native-checkout-back:hover{border-color:#1d5f3b!important;background:#edf6f0!important;color:#15472d!important}
.ecui-native-checkout-progress{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:7px!important;
  margin:0!important;
  padding:14px 16px 4px!important;
  background:#fff!important;
  box-sizing:border-box!important;
}
.ecui-native-checkout-progress span{
  display:flex!important;
  min-width:0!important;
  min-height:48px!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  padding:7px 8px!important;
  border:1px solid #dce4df!important;
  border-radius:11px!important;
  background:#f7f9f8!important;
  color:#66716a!important;
  box-sizing:border-box!important;
}
.ecui-native-checkout-progress b{
  display:flex!important;
  flex:0 0 26px!important;
  width:26px!important;
  height:26px!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid #c7d2cb!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#405047!important;
  font-size:13px!important;
  line-height:1!important;
}
.ecui-native-checkout-progress small{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  color:inherit!important;
  font-size:11px!important;
  font-weight:700!important;
  line-height:1.15!important;
  white-space:nowrap!important;
}
.ecui-native-checkout-progress span.is-done{border-color:#c9dfcf!important;background:#edf6f0!important;color:#14532d!important}
.ecui-native-checkout-progress span.is-done b{border-color:#1d5f3b!important;background:#1d5f3b!important;color:#fff!important}
.ecui-native-checkout-progress span.is-current{border-color:#1d5f3b!important;background:#fff!important;color:#15472d!important;box-shadow:inset 0 0 0 1px rgba(29,95,59,.08)!important}
.ecui-native-checkout-progress span.is-current b{border-color:#1d5f3b!important;color:#15472d!important}

@media(max-width:600px){
  .ecui-engine-host.is-checkout-inline>.ecui-native-checkout-header{align-items:flex-start!important;gap:10px!important;padding:12px 13px!important}
  .ecui-native-checkout-back{padding:8px 9px!important;font-size:12px!important}
  .ecui-native-checkout-progress{gap:4px!important;padding:10px 10px 2px!important}
  .ecui-native-checkout-progress span{min-height:52px!important;flex-direction:column!important;gap:4px!important;padding:6px 3px!important;border-radius:9px!important}
  .ecui-native-checkout-progress b{flex-basis:24px!important;width:24px!important;height:24px!important;font-size:12px!important}
  .ecui-native-checkout-progress small{width:100%!important;text-align:center!important;font-size:9px!important;white-space:normal!important}
}

/* v0.18.17 - compact back action; native Pinpoint Reservation navigation is
 * no longer shown in the checkout presentation. */
.ecui-engine-host.is-checkout-inline .ecui-native-checkout-back{
  min-height:44px!important;
  height:44px!important;
  padding:0 13px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
}


/* v0.18.22 - checkout as its own page-like screen. The live Pinpoint runtime is
 * moved as one intact host, so selected period/options and native event handlers
 * remain unchanged while the Elementor booking page is temporarily hidden. */
.ecui-checkout-origin-hidden{display:none!important}
.ecui-checkout-page-screen{
  display:block;
  width:100%;
  max-width:980px;
  min-width:0;
  margin:0 auto 48px;
  padding:28px 22px;
  box-sizing:border-box;
}
.ecui-checkout-page-screen>.ecui-engine-host.is-checkout-inline{
  margin:0!important;
  width:100%!important;
  max-width:100%!important;
}
@media(max-width:600px){
  .ecui-checkout-page-screen{padding:14px 10px 28px;margin-bottom:24px}
  .ecui-checkout-page-screen>.ecui-engine-host.is-checkout-inline{border-radius:12px!important}
}

/* v0.18.24 - camper context + one navigable five-step reservation bar.
 * The source page bar stays visible while the visitor moves through period,
 * regulations and options; the checkout uses the same controls for details
 * and payment. Future steps remain locked until they have actually been
 * reached, so contact validation cannot be bypassed. */
.ecui-camper-context{
  display:flex;
  align-items:baseline;
  gap:8px;
  flex-wrap:wrap;
  margin:0 0 13px;
  padding:10px 12px;
  border:1px solid #cfe0d5;
  border-radius:10px;
  background:#f2f8f4;
  color:#26352d;
  box-sizing:border-box;
}
.ecui-camper-context span{font-size:12px;color:#68726c;font-weight:650}
.ecui-camper-context strong{font-size:15px;line-height:1.3;color:#15472d}

/* v0.18.26 - camperkeuze rechtstreeks op Reserveren. */
.ecui-camper-selector{
  margin:0 0 16px;
  padding:14px;
  border:1px solid #dce4df;
  border-radius:14px;
  background:#fff;
  box-sizing:border-box;
}
.ecui-camper-selector-heading{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:10px;
}
.ecui-camper-selector-heading strong{font-size:16px;color:#202723}
.ecui-camper-selector-heading span{font-size:12px;color:#68726c}
.ecui-camper-selector-options{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
}
.ecui-camper-choice{
  display:flex!important;
  min-width:0;
  min-height:58px;
  flex-direction:column;
  justify-content:center;
  gap:4px;
  padding:10px 12px!important;
  border:1px solid #cfd9d3!important;
  border-radius:11px!important;
  background:#f8faf9!important;
  color:#26352d!important;
  box-shadow:none!important;
  text-decoration:none!important;
  box-sizing:border-box;
  transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;
}
.ecui-camper-choice:hover{
  border-color:#8cab98!important;
  background:#f3f8f5!important;
}
.ecui-camper-choice.is-selected{
  border-color:#1d5f3b!important;
  background:#edf6f0!important;
  box-shadow:inset 0 0 0 1px #1d5f3b!important;
}
.ecui-camper-choice-name{
  overflow:hidden;
  color:#202723;
  font-size:14px;
  font-weight:750;
  line-height:1.25;
  text-overflow:ellipsis;
}
.ecui-camper-choice-status{
  color:#66716a;
  font-size:11px;
  font-weight:650;
  line-height:1.2;
}
.ecui-camper-choice.is-selected .ecui-camper-choice-status{color:#1d5f3b}

.ecui-booking-progress{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:7px!important;
  width:100%!important;
  box-sizing:border-box!important;
}
.ecui-booking-progress .ecui-booking-step{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:flex!important;
  min-width:0!important;
  min-height:48px!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  margin:0!important;
  padding:7px 8px!important;
  border:1px solid #dce4df!important;
  border-radius:11px!important;
  background:#f7f9f8!important;
  color:#66716a!important;
  box-sizing:border-box!important;
  box-shadow:none!important;
  font:inherit!important;
  text-transform:none!important;
  cursor:pointer!important;
}
.ecui-booking-progress .ecui-booking-step b{
  display:flex!important;
  flex:0 0 26px!important;
  width:26px!important;
  height:26px!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid #c7d2cb!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#405047!important;
  font-size:13px!important;
  line-height:1!important;
}
.ecui-booking-progress .ecui-booking-step small{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  color:inherit!important;
  font-size:11px!important;
  font-weight:700!important;
  line-height:1.15!important;
  white-space:nowrap!important;
}
.ecui-booking-progress .ecui-booking-step.is-done{
  border-color:#c9dfcf!important;
  background:#edf6f0!important;
  color:#14532d!important;
}
.ecui-booking-progress .ecui-booking-step.is-done b{
  border-color:#1d5f3b!important;
  background:#1d5f3b!important;
  color:#fff!important;
}
.ecui-booking-progress .ecui-booking-step.is-current{
  border-color:#1d5f3b!important;
  background:#fff!important;
  color:#15472d!important;
  box-shadow:inset 0 0 0 1px rgba(29,95,59,.08)!important;
}
.ecui-booking-progress .ecui-booking-step.is-current b{
  border-color:#1d5f3b!important;
  color:#15472d!important;
}
.ecui-booking-progress .ecui-booking-step.is-locked,
.ecui-booking-progress .ecui-booking-step:disabled{
  opacity:.48!important;
  cursor:not-allowed!important;
}
.ecui-booking-progress .ecui-booking-step:not(:disabled):hover{
  border-color:#8fb39d!important;
  background:#f4faf6!important;
}
.ecui-booking-progress .ecui-booking-step:focus-visible{
  outline:3px solid rgba(29,95,59,.22)!important;
  outline-offset:2px!important;
}

.ecui-booking-progress-source{
  position:sticky!important;
  top:10px!important;
  z-index:90!important;
  max-width:980px!important;
  margin:0 auto 18px!important;
  padding:8px!important;
  border:1px solid #dce4df!important;
  border-radius:13px!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 8px 22px rgba(22,45,33,.08)!important;
  backdrop-filter:blur(8px);
}
body.admin-bar .ecui-booking-progress-source{top:42px!important}
.ecui-native-checkout-progress.ecui-booking-progress{
  padding:14px 16px 4px!important;
  margin:0!important;
  background:#fff!important;
}
.ecui-booking-step-scroll-target{scroll-margin-top:105px}

@media(max-width:600px){
  .ecui-camper-context{padding:9px 10px;margin-bottom:10px;gap:5px}
  .ecui-camper-context span{width:100%;font-size:11px}
  .ecui-camper-context strong{font-size:14px}
  .ecui-camper-selector{padding:10px;margin-bottom:12px;border-radius:11px}
  .ecui-camper-selector-heading{display:block;margin-bottom:8px}
  .ecui-camper-selector-heading strong{display:block;font-size:15px}
  .ecui-camper-selector-heading span{display:block;margin-top:2px;font-size:11px}
  .ecui-camper-selector-options{grid-template-columns:1fr;gap:7px}
  .ecui-camper-choice{min-height:52px;padding:9px 10px!important}
  .ecui-camper-choice-name{font-size:13px}
  .ecui-booking-progress{gap:4px!important}
  .ecui-booking-progress .ecui-booking-step{
    min-height:52px!important;
    flex-direction:column!important;
    gap:4px!important;
    padding:6px 3px!important;
    border-radius:9px!important;
  }
  .ecui-booking-progress .ecui-booking-step b{
    flex-basis:24px!important;
    width:24px!important;
    height:24px!important;
    font-size:12px!important;
  }
  .ecui-booking-progress .ecui-booking-step small{
    width:100%!important;
    text-align:center!important;
    font-size:9px!important;
    white-space:normal!important;
  }
  .ecui-booking-progress-source{
    top:6px!important;
    margin:0 8px 12px!important;
    width:calc(100% - 16px)!important;
    padding:5px!important;
    border-radius:10px!important;
  }
  body.admin-bar .ecui-booking-progress-source{top:50px!important}
  .ecui-native-checkout-progress.ecui-booking-progress{padding:10px 10px 2px!important}
}
