/* HH Premium Services — customer booking experience */
.hhps-bce{
  --hhps-green:#264027;--hhps-green-deep:#17291b;--hhps-yellow:#FFDE59;
  --hhps-ink:#202820;--hhps-muted:#687568;--hhps-line:#e3e9e1;
  --hhps-soft:#f5f8f3;--hhps-white:#fff;
  box-sizing:border-box;width:min(100%,960px);margin:clamp(18px,4vw,48px) auto;
  padding:clamp(20px,4.2vw,48px);overflow:hidden;position:relative;
  color:var(--hhps-ink);background:var(--hhps-white);border:1px solid #e8ede6;
  border-radius:22px;box-shadow:0 24px 70px rgba(16,35,18,.14);
  font-family:Montserrat,Arial,sans-serif;font-size:15px;line-height:1.55;
}
.hhps-bce,.hhps-bce *{box-sizing:border-box}
.hhps-bce:before{content:"";position:absolute;inset:0 0 auto;height:7px;background:linear-gradient(90deg,var(--hhps-green),var(--hhps-yellow));}
.hhps-bce header{position:relative;text-align:center;margin:0 0 30px;padding:10px 8px 24px;border-bottom:1px solid var(--hhps-line)}
.hhps-bce header small{display:inline-block;color:var(--hhps-green);font-size:10px;font-weight:900;letter-spacing:.2em;text-transform:uppercase}
.hhps-bce h2{margin:9px 0 8px!important;color:var(--hhps-green)!important;font-size:clamp(29px,4.4vw,43px)!important;line-height:1.12!important;font-weight:900!important;letter-spacing:-.045em}
.hhps-bce header p{max-width:570px;margin:0 auto;color:#657264;font-size:14px;line-height:1.7}
.hhps-progress{display:flex;justify-content:center;align-items:center;gap:9px 22px;flex-wrap:wrap;margin:22px auto 0;color:#536452;font-size:11px;font-weight:800;letter-spacing:.045em;text-transform:uppercase}
.hhps-progress span{display:inline-flex;align-items:center;gap:7px}
.hhps-progress span:before{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#edf3eb;color:var(--hhps-green);font-size:10px;font-weight:900}
.hhps-progress span:nth-child(1):before{content:"1"}.hhps-progress span:nth-child(2):before{content:"2"}.hhps-progress span:nth-child(3):before{content:"3"}.hhps-progress span:nth-child(4):before{content:"4"}.hhps-progress span:nth-child(5):before{content:"5"}
.hhps-bce form{margin:0}
.hhps-bce fieldset{min-width:0;margin:0;padding:24px 0;border:0;border-bottom:1px solid var(--hhps-line)}
.hhps-bce legend{display:block;width:100%;float:none;margin:0 0 16px;padding:0;color:var(--hhps-green);font-size:17px;font-weight:900;letter-spacing:-.02em}
.hhps-bce legend::first-letter{color:var(--hhps-green)}
.hhps-package-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.hhps-package{display:block;position:relative;min-width:0;margin:0;cursor:pointer;color:var(--hhps-ink)!important}
.hhps-package input{position:absolute!important;width:1px!important;height:1px!important;margin:0!important;opacity:0!important;pointer-events:none}
.hhps-package span{position:relative;display:flex;min-height:112px;flex-direction:column;justify-content:center;gap:6px;padding:18px 20px;border:1.5px solid #dce5d9;border-radius:14px;background:#fff;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}
.hhps-package span:after{content:"";position:absolute;top:16px;right:16px;width:18px;height:18px;border:1.5px solid #c5d0c2;border-radius:50%;background:#fff}
.hhps-package b{padding-right:26px;color:var(--hhps-green);font-size:15px;font-weight:850;line-height:1.35}
.hhps-package strong{color:#202820;font-size:19px;font-weight:900;letter-spacing:-.03em}
.hhps-package small{color:#718071;font-size:11px;font-weight:600}
.hhps-package:hover span{border-color:#8ca18a;background:#fbfdf9;transform:translateY(-1px)}
.hhps-package input:checked+span{border:2px solid var(--hhps-green);background:#f2f7ef;box-shadow:0 0 0 3px rgba(38,64,39,.08)}
.hhps-package input:checked+span:after{border:5px solid var(--hhps-green)}
.hhps-package input:focus-visible+span{outline:3px solid var(--hhps-yellow);outline-offset:3px}
.hhps-bce label{display:block;margin:0;color:#354235;font-size:12px;font-weight:800;line-height:1.45}
.hhps-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 18px}
.hhps-fields .wide{grid-column:1/-1}
.hhps-bce select,.hhps-bce input:not([type=radio]):not([type=checkbox]):not([type=hidden]),.hhps-bce textarea{
 display:block;width:100%;min-width:0;min-height:49px;margin:8px 0 0;padding:12px 14px;
 border:1.5px solid #d8e1d5;border-radius:10px;background:#fff;color:#202820;
 font:500 14px/1.45 Montserrat,Arial,sans-serif;box-shadow:0 1px 2px rgba(20,40,20,.025);
 transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.hhps-bce textarea{min-height:104px;resize:vertical}
.hhps-bce select:focus,.hhps-bce input:focus,.hhps-bce textarea:focus{outline:0;border-color:var(--hhps-green);box-shadow:0 0 0 4px rgba(38,64,39,.11);background:#fff}
.hhps-bce input::placeholder,.hhps-bce textarea::placeholder{color:#98a397;opacity:1}
.hhps-bce input[type=date]{min-height:49px;cursor:pointer}
.hhps-slot-note{margin:12px 0 0;padding:11px 13px;border-radius:9px;background:#f4f7f2;color:#627161;font-size:12px;line-height:1.55}
.hhps-payment{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.hhps-payment label{display:flex;align-items:flex-start;gap:10px;min-width:0;min-height:112px;padding:16px 13px;border:1.5px solid #dce5d9;border-radius:13px;background:#fff;cursor:pointer;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}
.hhps-payment label:has(input:checked){border:2px solid var(--hhps-green);background:#f2f7ef;box-shadow:0 0 0 3px rgba(38,64,39,.07)}
.hhps-payment input[type=radio]{flex:0 0 auto;width:17px;height:17px;margin:2px 0 0;accent-color:var(--hhps-green)}
.hhps-payment b,.hhps-payment small{display:block}
.hhps-payment b{color:var(--hhps-green);font-size:12px;font-weight:900;line-height:1.4}
.hhps-payment small{margin-top:6px;color:#6c796a;font-size:10px;font-weight:500;line-height:1.5}
.hhps-payment-pending{opacity:.62;cursor:not-allowed!important;background:#f8f9f7!important}
.hhps-payment-pending b:after{content:"Coming soon";display:block;width:max-content;margin-top:6px;padding:3px 7px;border-radius:20px;background:#edf0eb;color:#687568;font-size:9px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}
.hhps-consent{display:flex!important;align-items:flex-start;gap:10px;margin:22px 0 16px!important;color:#526052!important;font-size:11px!important;font-weight:600!important;line-height:1.5!important}
.hhps-consent input{flex:0 0 auto;width:16px;height:16px;margin:1px 0 0;accent-color:var(--hhps-green)}
.hhps-submit{display:flex;align-items:center;justify-content:center;width:100%;min-height:58px;margin:0;padding:16px 24px;border:0!important;border-radius:11px!important;background:var(--hhps-yellow)!important;color:var(--hhps-green-deep)!important;font:900 14px/1.2 Montserrat,Arial,sans-serif!important;letter-spacing:.055em;text-align:center;text-transform:uppercase;cursor:pointer;box-shadow:0 7px 0 #e7c63f,0 12px 22px rgba(30,50,25,.12);transition:transform .16s ease,box-shadow .16s ease,filter .16s ease}
.hhps-submit:hover{filter:brightness(1.025);transform:translateY(-2px);box-shadow:0 9px 0 #e7c63f,0 15px 25px rgba(30,50,25,.16)}
.hhps-submit:active{transform:translateY(3px);box-shadow:0 3px 0 #e7c63f}
.hhps-submit:focus-visible{outline:3px solid var(--hhps-green);outline-offset:4px}
.hhps-submit:disabled{opacity:.65;cursor:wait;transform:none;box-shadow:none}
.hhps-status{min-height:1.5em;margin:17px 0 8px;color:var(--hhps-green);font-size:13px;font-weight:800;text-align:center;overflow-wrap:anywhere}
.hhps-privacy{margin:12px 0 0;color:#778276;font-size:10px;line-height:1.6;text-align:center}
.hhps-bce button,.hhps-bce select{cursor:pointer}
@media(max-width:700px){.hhps-bce{margin:14px auto;padding:23px 18px;border-radius:17px}.hhps-bce fieldset{padding:21px 0}.hhps-payment{grid-template-columns:1fr}.hhps-payment label{min-height:0;padding:13px 14px}.hhps-payment small{font-size:11px}}
@media(max-width:520px){.hhps-package-grid,.hhps-fields{grid-template-columns:1fr}.hhps-fields .wide{grid-column:auto}.hhps-package span{min-height:98px;padding:16px}.hhps-progress{gap:8px 12px;font-size:9px}.hhps-progress span{gap:5px}.hhps-progress span:before{width:20px;height:20px}.hhps-bce h2{font-size:31px!important}.hhps-bce header p{font-size:13px}}
@media(prefers-reduced-motion:reduce){.hhps-bce *{scroll-behavior:auto!important;transition:none!important}}


/* Brand details adapted from the legacy HHPS Square embed treatment. */
.hhps-bce{isolation:isolate}
.hhps-bce>.hhps-shimmer{position:absolute;z-index:-1;top:0;left:-35%;width:45%;height:7px;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(255,255,255,.85),transparent);filter:blur(1px);animation:hhps-shimmer 6.5s ease-in-out infinite}
.hhps-corner{position:absolute;z-index:0;width:23px;height:23px;pointer-events:none;opacity:.78}
.hhps-corner:before,.hhps-corner:after{content:"";position:absolute;background:var(--hhps-yellow);border-radius:2px}
.hhps-corner:before{width:23px;height:2px}.hhps-corner:after{width:2px;height:23px}
.hhps-corner-tl{top:15px;left:15px}.hhps-corner-tr{top:15px;right:15px;transform:rotate(90deg)}
.hhps-corner-br{right:15px;bottom:15px;transform:rotate(180deg)}.hhps-corner-bl{left:15px;bottom:15px;transform:rotate(270deg)}
.hhps-embed-header{padding-left:22px!important;padding-right:22px!important}
.hhps-embed-title{letter-spacing:-.05em!important}
.hhps-embed-sub{font-size:14px!important}
.hhps-payment-footer{position:relative;margin:28px -8px -8px;padding:23px 12px 8px;border-top:1px solid var(--hhps-line);text-align:center}
.hhps-payment-label{margin:0 0 13px;color:var(--hhps-green);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.hhps-payment-badges{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap}
.hhps-payment-badges>span{display:inline-flex;min-height:32px;align-items:center;justify-content:center;padding:6px 10px;border:1px solid #e1e7df;border-radius:6px;background:#fff;color:#253329;font-family:Arial,sans-serif;font-size:10px;font-weight:900;letter-spacing:.025em;box-shadow:0 2px 5px rgba(22,42,24,.04)}
.hhps-payment-badges>span:first-child{color:#1a3f9b;font-style:italic;font-size:12px}
.hhps-payment-badges>span:nth-child(2){color:#202020;font-size:9px}
.hhps-payment-badges>span:nth-child(3){color:#24518c;font-size:8px;letter-spacing:0}
.hhps-payment-badges>span:nth-child(4){color:#1d4b82;font-size:10px}
.hhps-payment-badges>.hhps-apple-pay{gap:3px;color:#111;font-size:12px}
.hhps-apple-mark{font-size:11px;line-height:1}
.hhps-payment-disclaimer{max-width:620px;margin:12px auto 0;color:#7a8578;font-size:10px;line-height:1.55}
@keyframes hhps-shimmer{0%,65%{transform:translateX(0);opacity:0}75%{opacity:.9}100%{transform:translateX(310%);opacity:0}}
@media(max-width:600px){.hhps-corner{width:17px;height:17px}.hhps-corner:before{width:17px}.hhps-corner:after{height:17px}.hhps-payment-footer{margin-top:22px;padding-top:19px}.hhps-payment-badges{gap:6px}.hhps-payment-badges>span{min-height:30px;padding:5px 8px;font-size:9px}}
@media(prefers-reduced-motion:reduce){.hhps-bce>.hhps-shimmer{animation:none;display:none}}

/* v0.4.3: force the payment strip to render independently of theme footer rules. */
section.hhps-bce > div.hhps-payment-footer{
 display:block!important; visibility:visible!important; opacity:1!important;
 position:relative!important; clear:both!important; width:auto!important;
 height:auto!important; max-height:none!important; overflow:visible!important;
 margin:28px 0 0!important; padding:23px 12px 8px!important;
 border-top:1px solid var(--hhps-line)!important; text-align:center!important;
 background:transparent!important; color:var(--hhps-ink)!important;
}
section.hhps-bce > div.hhps-payment-footer .hhps-payment-label,
section.hhps-bce > div.hhps-payment-footer .hhps-payment-badges,
section.hhps-bce > div.hhps-payment-footer .hhps-payment-disclaimer{
 display:block!important; visibility:visible!important; opacity:1!important;
}
section.hhps-bce > div.hhps-payment-footer .hhps-payment-badges{display:flex!important}
@media(max-width:600px){section.hhps-bce > div.hhps-payment-footer{margin-top:22px!important;padding-top:19px!important}}


/* v0.5.2: let the booking card grow to fit every fieldset; do not clip step 4/5. */
section.hhps-bce[data-hhps-booking]{
  display:block!important; height:auto!important; min-height:0!important;
  max-height:none!important; overflow:visible!important; contain:none!important;
}
section.hhps-bce[data-hhps-booking] form,
section.hhps-bce[data-hhps-booking] fieldset{
  height:auto!important; max-height:none!important; overflow:visible!important;
}
.hhps-bce .hhps-progress{max-width:100%;gap:10px 18px;flex-wrap:wrap;}
.hhps-bce .hhps-progress span{white-space:nowrap;}
@media(max-width:700px){
  .hhps-bce .hhps-progress{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-items:start;max-width:360px;gap:10px 12px;}
  .hhps-bce .hhps-progress span{font-size:10px;}
}
@media(max-width:420px){
  .hhps-bce .hhps-progress{grid-template-columns:1fr 1fr;gap:9px 8px;}
  .hhps-bce .hhps-progress span:before{flex:0 0 20px;}
}


/* v0.5.5 — natural-height card and guided five-step flow. */
section.hhps-bce[data-hhps-booking]{display:block!important;position:relative!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;contain:initial!important;isolation:isolate;}
section.hhps-bce[data-hhps-booking] form{display:block!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;}
section.hhps-bce[data-hhps-booking] fieldset[hidden],section.hhps-bce[data-hhps-booking] [hidden]{display:none!important;}
.hhps-bce .hhps-progress span{cursor:pointer;transition:color .18s ease,opacity .18s ease;}
.hhps-bce .hhps-progress span.is-active{color:var(--hhps-green);font-weight:950;}
.hhps-bce .hhps-progress span.is-active:before{background:var(--hhps-yellow);box-shadow:0 0 0 3px rgba(255,222,89,.22);}
.hhps-bce .hhps-progress span.is-complete:before{content:"✓";background:var(--hhps-green);color:#fff;}
.hhps-step-navigation{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:22px 0 8px;padding-top:18px;border-top:1px solid var(--hhps-line);}
.hhps-step-navigation button{min-height:46px;padding:11px 20px;border:1px solid var(--hhps-green);border-radius:9px;background:#fff;color:var(--hhps-green);font:800 12px Montserrat,Arial,sans-serif;cursor:pointer;}
.hhps-step-navigation .hhps-step-next{border-color:var(--hhps-yellow);background:var(--hhps-yellow);color:var(--hhps-green-deep);}
.hhps-step-navigation button:focus-visible{outline:3px solid var(--hhps-yellow);outline-offset:3px;}
.hhps-step-count{color:var(--hhps-muted);font-size:11px;font-weight:800;}
.hhps-bce .hhps-payment-footer[hidden]{display:none!important;}
.hhps-bce .hhps-payment-footer{width:100%;height:auto;max-height:none;overflow:visible;}
@media(max-width:520px){.hhps-step-navigation button{min-height:44px;padding:10px 15px}.hhps-step-count{font-size:10px}}


/* v0.5.6 layout hardening: keep the shortcode and its WordPress/theme wrappers
   in normal document flow so the following page section cannot overlap it. */
html body .hhps-bce[data-hhps-booking],
html body section.hhps-bce[data-hhps-booking]{
  position:relative!important; display:flow-root!important;
  float:none!important; clear:both!important;
  width:min(100%,1200px)!important; max-width:1200px!important;
  height:auto!important; min-height:0!important; max-height:none!important;
  overflow:visible!important; contain:none!important;
  box-sizing:border-box!important; margin-block:clamp(18px,4vw,48px)!important;
  isolation:isolate!important;
}
html body .hhps-bce[data-hhps-booking] form,
html body .hhps-bce[data-hhps-booking] fieldset,
html body .hhps-bce[data-hhps-booking] .hhps-package-grid,
html body .hhps-bce[data-hhps-booking] .hhps-fields{
  position:relative!important; float:none!important;
  height:auto!important; min-height:0!important; max-height:none!important;
  overflow:visible!important; contain:none!important;
}
/* Common WordPress, Spectra, Elementor and shortcode wrappers. */
html body .wp-block-shortcode:has(> .hhps-bce),
html body .wp-block-shortcode:has(.hhps-bce[data-hhps-booking]),
html body .wp-block-html:has(.hhps-bce[data-hhps-booking]),
html body .wp-block-group:has(> .wp-block-shortcode .hhps-bce),
html body .wp-block-group:has(.hhps-bce[data-hhps-booking]),
html body .elementor-widget-shortcode:has(.hhps-bce[data-hhps-booking]),
html body .elementor-widget-container:has(> .hhps-bce[data-hhps-booking]),
html body .wp-block-uagb-shortcode:has(.hhps-bce[data-hhps-booking]){
  display:flow-root!important; position:relative!important;
  float:none!important; clear:both!important;
  height:auto!important; min-height:0!important; max-height:none!important;
  overflow:visible!important; contain:none!important;
}
/* Compact package cards while retaining the premium card treatment. */
.hhps-bce .hhps-package span{min-height:88px;padding:15px 18px;}
.hhps-bce .hhps-package b{font-size:14px;}
@media(max-width:520px){.hhps-bce .hhps-package span{min-height:78px;padding:14px 15px;}}


/* v0.5.7 — deliberately deeper customer booking panel.
   The wizard shows one step at a time; the generous minimum height gives the
   booking experience a spacious, premium canvas while still growing naturally. */
html body section.hhps-bce[data-hhps-booking]{
  min-height:1000px!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  padding-bottom:clamp(56px,7vw,96px)!important;
  margin-bottom:clamp(48px,7vw,88px)!important;
}
html body section.hhps-bce[data-hhps-booking] form{
  min-height:780px!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}
@media(max-width:700px){
  html body section.hhps-bce[data-hhps-booking]{min-height:900px!important;padding-bottom:48px!important;margin-bottom:54px!important;}
  html body section.hhps-bce[data-hhps-booking] form{min-height:760px!important;}
}

/* v0.5.13 — premium neutral payment panel, green primary actions, and softer card corners. */
html body section.hhps-bce[data-hhps-booking]{
  border-radius:28px!important;
}
html body section.hhps-bce[data-hhps-booking]::before{
  height:7px!important;
  border-radius:28px 28px 0 0!important;
}
/* Keep the top brand stripe clean and straight while the card corners stay softly rounded. */
html body section.hhps-bce[data-hhps-booking] > .hhps-shimmer{
  border-radius:28px 28px 0 0!important;
}
/* Neutral, high-contrast payment information panel. */
html body section.hhps-bce[data-hhps-booking] > div.hhps-payment-footer{
  margin:24px 0 0!important;
  padding:22px 20px 18px!important;
  border:1px solid #e1e7df!important;
  border-radius:16px!important;
  background:#f3f5f1!important;
  color:#27352a!important;
  box-shadow:0 5px 16px rgba(25,43,27,.045)!important;
}
html body section.hhps-bce[data-hhps-booking] .hhps-payment-label{
  color:#264027!important;
}
html body section.hhps-bce[data-hhps-booking] .hhps-payment-disclaimer{
  color:#465448!important;
}
html body section.hhps-bce[data-hhps-booking] .hhps-payment-badges>span{
  background:#fff!important;
  border-color:#d9e1d7!important;
  color:#27352a!important;
}
html body section.hhps-bce[data-hhps-booking] .hhps-payment-badges>span:first-child{color:#1a3f9b!important}
html body section.hhps-bce[data-hhps-booking] .hhps-payment-badges>span:nth-child(3){color:#24518c!important}
html body section.hhps-bce[data-hhps-booking] .hhps-payment-badges>span:nth-child(4){color:#1d4b82!important}
html body section.hhps-bce[data-hhps-booking] .hhps-payment-badges>.hhps-apple-pay{color:#111!important}
/* Primary actions are HHPS green at rest and shift to a yellow gradient while pressed. */
html body section.hhps-bce[data-hhps-booking] .hhps-step-navigation .hhps-step-next,
html body section.hhps-bce[data-hhps-booking] .hhps-submit{
  border:1px solid #264027!important;
  background:#264027!important;
  color:#fff!important;
  box-shadow:0 5px 0 #17291b,0 10px 20px rgba(23,41,27,.13)!important;
  transition:background .18s ease,color .18s ease,transform .16s ease,box-shadow .16s ease!important;
}
html body section.hhps-bce[data-hhps-booking] .hhps-step-navigation .hhps-step-next:hover,
html body section.hhps-bce[data-hhps-booking] .hhps-submit:hover{
  background:#315335!important;
  border-color:#315335!important;
  color:#fff!important;
  transform:translateY(-1px);
}
html body section.hhps-bce[data-hhps-booking] .hhps-step-navigation .hhps-step-next:active,
html body section.hhps-bce[data-hhps-booking] .hhps-submit:active{
  background:linear-gradient(135deg,#fff0a6 0%,#ffde59 52%,#edc63b 100%)!important;
  border-color:#e7c63f!important;
  color:#17291b!important;
  transform:translateY(2px);
  box-shadow:0 2px 0 #d9b632,0 5px 12px rgba(23,41,27,.12)!important;
}
html body section.hhps-bce[data-hhps-booking] .hhps-step-navigation .hhps-step-next:focus-visible,
html body section.hhps-bce[data-hhps-booking] .hhps-submit:focus-visible{
  outline:3px solid #ffde59!important;
  outline-offset:4px!important;
}
@media(max-width:600px){
  html body section.hhps-bce[data-hhps-booking] > div.hhps-payment-footer{padding:18px 13px 15px!important;border-radius:13px!important}
}


/* v0.5.14 — HHPS green payment panel and clean Apple Pay wordmark. */
html body section.hhps-bce[data-hhps-booking] > div.hhps-payment-footer{
  background:#264027!important;
  border:1px solid #35583a!important;
  color:#fff!important;
  box-shadow:0 8px 22px rgba(18,39,21,.16)!important;
}
html body section.hhps-bce[data-hhps-booking] .hhps-payment-label,
html body section.hhps-bce[data-hhps-booking] .hhps-payment-disclaimer{
  color:#fff!important;
}
html body section.hhps-bce[data-hhps-booking] .hhps-payment-badges>span{
  background:#fff!important;
  border:1px solid rgba(255,255,255,.8)!important;
  color:#263329!important;
  box-shadow:0 2px 6px rgba(0,0,0,.12)!important;
}
html body section.hhps-bce[data-hhps-booking] .hhps-payment-badges>span:first-child{color:#1a3f9b!important}
html body section.hhps-bce[data-hhps-booking] .hhps-payment-badges>span:nth-child(3){color:#24518c!important}
html body section.hhps-bce[data-hhps-booking] .hhps-payment-badges>span:nth-child(4){color:#1d4b82!important}
html body section.hhps-bce[data-hhps-booking] .hhps-payment-badges>.hhps-apple-pay{
  min-width:84px;
  gap:0!important;
  color:#111!important;
  font-family:Arial,sans-serif!important;
  font-size:11px!important;
  font-weight:700!important;
  font-style:normal!important;
  letter-spacing:-.035em!important;
  white-space:nowrap;
}


/* v0.5.15 — green-to-yellow payment panel, square corners, unified payment labels. */
html body section.hhps-bce[data-hhps-booking] > div.hhps-payment-footer{
  background:linear-gradient(112deg,#264027 0%,#37613a 58%,#FFDE59 100%)!important;
  border:1px solid rgba(38,64,39,.35)!important;
  border-radius:0!important;
  color:#fff!important;
  box-shadow:0 8px 22px rgba(18,39,21,.16)!important;
}
html body section.hhps-bce[data-hhps-booking] .hhps-payment-label,
html body section.hhps-bce[data-hhps-booking] .hhps-payment-disclaimer{
  color:#fff!important;
}
html body section.hhps-bce[data-hhps-booking] .hhps-payment-badges>span{
  background:#fff!important;
  border:1px solid rgba(255,255,255,.9)!important;
  color:#263329!important;
  font-family:Arial,sans-serif!important;
  font-size:10px!important;
  font-weight:800!important;
  font-style:normal!important;
  letter-spacing:0!important;
  text-transform:none!important;
  white-space:nowrap!important;
  box-shadow:0 2px 6px rgba(0,0,0,.12)!important;
}
html body section.hhps-bce[data-hhps-booking] .hhps-payment-badges>.hhps-apple-pay{
  min-width:0!important;
  gap:0!important;
  color:#263329!important;
  font-family:Arial,sans-serif!important;
  font-size:10px!important;
  font-weight:800!important;
  font-style:normal!important;
  letter-spacing:0!important;
}


/* v0.5.16 — hard override for the payment acceptance panel.
   Scoped to the actual footer element so theme/plugin background rules cannot leave it gray. */
html body .hhps-bce[data-hhps-booking] .hhps-payment-footer,
html body section.hhps-bce[data-hhps-booking] > .hhps-payment-footer,
html body section.hhps-bce[data-hhps-booking] form > .hhps-payment-footer{
  display:block!important;
  background-color:#264027!important;
  background-image:linear-gradient(112deg,#264027 0%,#315b35 48%,#52733b 72%,#FFDE59 100%)!important;
  color:#fff!important;
  border:1px solid rgba(255,222,89,.65)!important;
  border-radius:0!important;
  opacity:1!important;
  box-shadow:0 8px 22px rgba(18,39,21,.16)!important;
}
html body .hhps-bce[data-hhps-booking] .hhps-payment-footer .hhps-payment-label,
html body .hhps-bce[data-hhps-booking] .hhps-payment-footer .hhps-payment-disclaimer{
  color:#fff!important;
}
html body .hhps-bce[data-hhps-booking] .hhps-payment-footer .hhps-payment-badges{
  display:flex!important;justify-content:center!important;align-items:center!important;
}
html body .hhps-bce[data-hhps-booking] .hhps-payment-footer .hhps-payment-badges>span{
  background:#fff!important;color:#263329!important;border-color:#fff!important;
}


/* v0.5.17 — use the Visa blue consistently across every payment method label. */
html body .hhps-bce[data-hhps-booking] .hhps-payment-footer .hhps-payment-badges > span,
html body .hhps-bce[data-hhps-booking] .hhps-payment-footer .hhps-payment-badges > span:first-child,
html body .hhps-bce[data-hhps-booking] .hhps-payment-footer .hhps-payment-badges > span:nth-child(2),
html body .hhps-bce[data-hhps-booking] .hhps-payment-footer .hhps-payment-badges > span:nth-child(3),
html body .hhps-bce[data-hhps-booking] .hhps-payment-footer .hhps-payment-badges > span:nth-child(4),
html body .hhps-bce[data-hhps-booking] .hhps-payment-footer .hhps-payment-badges > span.hhps-apple-pay {
  color:#1a3f9b!important;
}


/* v0.5.18 — square the entire booking container so the top green/yellow accent
   runs flush with the straight outer edges instead of following rounded corners. */
html body section.hhps-bce[data-hhps-booking]{
  border-radius:0!important;
  overflow:hidden!important;
}
html body section.hhps-bce[data-hhps-booking]::before,
html body section.hhps-bce[data-hhps-booking] > .hhps-shimmer{
  border-radius:0!important;
}

.hhps-quote-notice{margin:0 0 20px;padding:16px 18px;border:1px solid rgba(255,222,89,.7);border-left:4px solid #ffde59;border-radius:10px;background:rgba(255,222,89,.10);color:inherit}.hhps-quote-notice p{margin:7px 0}.hhps-quote-notice small{display:block;line-height:1.5}
