.pmp-re-wrap{max-width:900px;margin:0 auto;padding:24px 16px}.pmp-re-hero,.pmp-re-panel,.pmp-re-success,.pmp-re-form{background:#fff;border-radius:14px;padding:26px;box-shadow:0 8px 30px rgba(0,0,0,.06);margin:18px 0}.pmp-re-kicker{letter-spacing:.12em;font-size:.78rem;font-weight:700;color:#1B6236}.pmp-re-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.pmp-re-grid label{display:flex;flex-direction:column;gap:7px;font-weight:600}.pmp-re-grid label span{color:#1B6236}.pmp-re-grid .pmp-re-full{grid-column:1/-1}.pmp-re-grid input,.pmp-re-grid select,.pmp-re-grid textarea{width:100%;box-sizing:border-box;padding:12px;border:1px solid #c9c9c9;border-radius:8px;font:inherit}.pmp-re-consent{display:flex;gap:10px;align-items:flex-start;margin:16px 0;font-weight:400}.pmp-re-consent input{margin-top:4px}.pmp-re-button{display:inline-block;background:#1B6236;color:#fff!important;border:0;border-radius:8px;padding:13px 20px;font-weight:700;cursor:pointer;text-decoration:none}.pmp-re-inline-button{margin-top:8px}.pmp-re-small{font-size:.88rem;color:#666}.pmp-re-hp{display:none!important;position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}@media(max-width:680px){.pmp-re-grid{grid-template-columns:1fr}.pmp-re-grid .pmp-re-full{grid-column:auto}.pmp-re-hero,.pmp-re-panel,.pmp-re-success,.pmp-re-form{padding:20px}}
.pmp-re-wpforms-optin{margin:14px 0 10px;padding:14px 16px;border:1px solid #d7ddd4;border-radius:8px;background:#f7f9f6;box-sizing:border-box}.pmp-re-wpforms-optin label{display:flex;gap:10px;align-items:flex-start;margin:0;font-weight:400;line-height:1.45}.pmp-re-wpforms-optin input[type=checkbox]{width:auto!important;min-width:18px;height:18px;margin:2px 0 0;accent-color:#1B6236}.pmp-re-wpforms-optin small{display:block;margin:7px 0 0 28px;color:#666;line-height:1.4}.pmp-re-wpforms-optin a{color:#1B6236;text-decoration:underline}@media(max-width:680px){.pmp-re-wpforms-optin{padding:12px}.pmp-re-wpforms-optin small{margin-left:28px}}
/* v2.1.7: theme-safe foreground colours. Public PMP cards must remain readable even when a dark theme sets light global text. */
.pmp-re-wrap{color:#222}
.pmp-re-wrap .pmp-re-hero,.pmp-re-wrap .pmp-re-panel,.pmp-re-wrap .pmp-re-success,.pmp-re-wrap .pmp-re-form{color:#222}
.pmp-re-wrap .pmp-re-hero h1,.pmp-re-wrap .pmp-re-hero h2,.pmp-re-wrap .pmp-re-hero h3,.pmp-re-wrap .pmp-re-panel h1,.pmp-re-wrap .pmp-re-panel h2,.pmp-re-wrap .pmp-re-panel h3,.pmp-re-wrap .pmp-re-success h1,.pmp-re-wrap .pmp-re-success h2,.pmp-re-wrap .pmp-re-success h3,.pmp-re-wrap .pmp-re-form h1,.pmp-re-wrap .pmp-re-form h2,.pmp-re-wrap .pmp-re-form h3{color:#1B6236}
.pmp-re-wrap .pmp-re-hero p,.pmp-re-wrap .pmp-re-panel p,.pmp-re-wrap .pmp-re-success p,.pmp-re-wrap .pmp-re-form p,.pmp-re-wrap .pmp-re-form label{color:#222}

/* v2.3.5: dedicated black/gold client journey. Kept scoped so the rest of the site/theme is untouched. */
.pmp-re-sales-journey{
  --pmp-sales-gold:#c9a66b;
  --pmp-sales-gold-soft:#e0c695;
  --pmp-sales-bg:#0b0b0b;
  --pmp-sales-panel:#121212;
  --pmp-sales-panel-2:#171717;
  --pmp-sales-text:#f5f0e7;
  --pmp-sales-muted:#c7c0b5;
  --pmp-sales-border:rgba(201,166,107,.35);
  max-width:900px!important;
  margin:38px auto 56px!important;
  padding:0 18px!important;
  color:var(--pmp-sales-text)!important;
  box-sizing:border-box!important;
  font-family:inherit!important;
}
.pmp-re-sales-journey *{box-sizing:border-box}
.pmp-re-sales-shell{
  overflow:hidden;
  background:linear-gradient(180deg,#101010 0%,#0b0b0b 100%);
  border:1px solid var(--pmp-sales-border);
  border-radius:20px;
  box-shadow:0 22px 70px rgba(0,0,0,.38);
}
.pmp-re-sales-intro{padding:42px 46px 34px;border-bottom:1px solid rgba(201,166,107,.18)}
.pmp-re-sales-kicker{
  margin:0 0 11px!important;
  color:var(--pmp-sales-gold)!important;
  font-size:12px!important;
  line-height:1.4!important;
  font-weight:700!important;
  letter-spacing:.2em!important;
}
.pmp-re-sales-intro h2,.pmp-re-sales-section h3,.pmp-re-sales-booking-cta h3{
  font-family:"Cormorant Garamond",Cormorant,Georgia,"Times New Roman",serif!important;
  font-weight:500!important;
  color:var(--pmp-sales-text)!important;
  letter-spacing:.01em!important;
}
.pmp-re-sales-intro h2{font-size:clamp(32px,4.5vw,52px)!important;line-height:1.04!important;margin:0 0 16px!important;max-width:760px}
.pmp-re-sales-lead{max-width:720px;margin:0!important;color:var(--pmp-sales-muted)!important;font-size:16px!important;line-height:1.7!important}
.pmp-re-sales-notice{margin:28px 46px 0;padding:15px 18px;border:1px solid var(--pmp-sales-border);border-radius:12px;background:rgba(201,166,107,.08);color:var(--pmp-sales-text)!important}
.pmp-re-sales-recommendation{margin:28px 46px 0;padding:24px 26px;border:1px solid var(--pmp-sales-gold);border-radius:16px;background:linear-gradient(135deg,rgba(201,166,107,.13),rgba(201,166,107,.035));color:var(--pmp-sales-text)!important}
.pmp-re-sales-recommendation-pending{border-color:var(--pmp-sales-border)}
.pmp-re-sales-eyebrow{display:block;margin-bottom:8px;color:var(--pmp-sales-gold)!important;font-size:11px!important;font-weight:800!important;letter-spacing:.16em!important}
.pmp-re-sales-package{display:block;color:var(--pmp-sales-text)!important;font-family:"Cormorant Garamond",Cormorant,Georgia,"Times New Roman",serif!important;font-size:clamp(25px,3.2vw,34px)!important;line-height:1.15!important;font-weight:600!important}
.pmp-re-sales-recommendation p{margin:10px 0 0!important;color:var(--pmp-sales-muted)!important;line-height:1.6!important}
.pmp-re-sales-form{display:block!important;margin:0!important;padding:8px 46px 42px!important;background:transparent!important;color:var(--pmp-sales-text)!important;box-shadow:none!important;border-radius:0!important}
.pmp-re-sales-section{padding:30px 0;border-bottom:1px solid rgba(201,166,107,.17)}
.pmp-re-sales-section-heading{display:flex;gap:15px;align-items:flex-start;margin:0 0 20px}
.pmp-re-sales-step{display:inline-flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;border:1px solid var(--pmp-sales-gold);border-radius:50%;color:var(--pmp-sales-gold)!important;font-size:11px!important;font-weight:800!important;letter-spacing:.08em!important}
.pmp-re-sales-section-heading h3{font-size:27px!important;line-height:1.1!important;margin:1px 0 5px!important}
.pmp-re-sales-section-heading p{margin:0!important;color:var(--pmp-sales-muted)!important;font-size:14px!important;line-height:1.5!important}
.pmp-re-sales-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.pmp-re-sales-field{display:flex!important;flex-direction:column!important;gap:8px!important;margin:0!important;color:var(--pmp-sales-text)!important;font-weight:600!important;font-size:14px!important}
.pmp-re-sales-field>span{color:var(--pmp-sales-text)!important}
.pmp-re-sales-wide{width:100%}
.pmp-re-sales-field input,.pmp-re-sales-field select,.pmp-re-sales-field textarea{
  display:block!important;
  width:100%!important;
  min-height:48px!important;
  margin:0!important;
  padding:12px 14px!important;
  border:1px solid rgba(201,166,107,.44)!important;
  border-radius:10px!important;
  outline:none!important;
  background:#181818!important;
  color:#f8f4ed!important;
  -webkit-text-fill-color:#f8f4ed!important;
  font:inherit!important;
  line-height:1.45!important;
  box-shadow:none!important;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease!important;
}
.pmp-re-sales-field select{appearance:auto!important;color-scheme:dark}
.pmp-re-sales-field textarea{min-height:130px!important;resize:vertical!important}
.pmp-re-sales-field input::placeholder,.pmp-re-sales-field textarea::placeholder{color:#8f887e!important;opacity:1!important}
.pmp-re-sales-field input:focus,.pmp-re-sales-field select:focus,.pmp-re-sales-field textarea:focus{border-color:var(--pmp-sales-gold)!important;box-shadow:0 0 0 3px rgba(201,166,107,.14)!important;background:#1c1c1c!important}
.pmp-re-sales-field.is-missing input,.pmp-re-sales-field.is-missing select{border-color:var(--pmp-sales-gold)!important}
.pmp-re-sales-actions{display:flex;align-items:center;gap:18px;justify-content:space-between;padding-top:28px}
.pmp-re-sales-actions p{margin:0!important;color:#8f887e!important;font-size:12px!important;line-height:1.5!important;text-align:right}
.pmp-re-sales-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:48px!important;
  padding:13px 22px!important;
  border:1px solid var(--pmp-sales-gold)!important;
  border-radius:10px!important;
  background:var(--pmp-sales-gold)!important;
  color:#090909!important;
  -webkit-text-fill-color:#090909!important;
  font:inherit!important;
  font-weight:800!important;
  text-decoration:none!important;
  cursor:pointer!important;
  box-shadow:none!important;
}
.pmp-re-sales-button:hover,.pmp-re-sales-button:focus{background:var(--pmp-sales-gold-soft)!important;border-color:var(--pmp-sales-gold-soft)!important;color:#090909!important;text-decoration:none!important}
.pmp-re-sales-booking-cta{margin:0 46px 42px;padding:24px 26px;border:1px solid var(--pmp-sales-border);border-radius:16px;background:var(--pmp-sales-panel-2);color:var(--pmp-sales-text)!important}
.pmp-re-sales-booking-cta h3{font-size:28px!important;margin:0 0 14px!important}
.pmp-re-sales-booking-cta p{margin:0!important}
@media(max-width:720px){
  .pmp-re-sales-journey{margin:22px auto 38px!important;padding:0 12px!important}
  .pmp-re-sales-shell{border-radius:14px}
  .pmp-re-sales-intro{padding:30px 22px 26px}
  .pmp-re-sales-notice,.pmp-re-sales-recommendation{margin:20px 22px 0}
  .pmp-re-sales-form{padding:4px 22px 28px!important}
  .pmp-re-sales-grid{grid-template-columns:1fr;gap:15px}
  .pmp-re-sales-section{padding:25px 0}
  .pmp-re-sales-actions{align-items:stretch;flex-direction:column}
  .pmp-re-sales-actions p{text-align:left}
  .pmp-re-sales-button{width:100%!important}
  .pmp-re-sales-booking-cta{margin:0 22px 28px}
}
@media(max-width:420px){
  .pmp-re-sales-intro{padding:26px 18px 22px}
  .pmp-re-sales-notice,.pmp-re-sales-recommendation{margin-left:18px;margin-right:18px;padding:20px}
  .pmp-re-sales-form{padding-left:18px!important;padding-right:18px!important}
  .pmp-re-sales-section-heading{gap:11px}
  .pmp-re-sales-section-heading h3{font-size:24px!important}
  .pmp-re-sales-booking-cta{margin-left:18px;margin-right:18px;padding:20px}
}


/* v2.4.0: premium PMP Wedding Chat. Scoped to the booking shortcode only. */
.pmp-re-booking{
  --pmp-chat-gold:#c9a66b;
  --pmp-chat-gold-soft:#e0c695;
  --pmp-chat-bg:#0b0b0b;
  --pmp-chat-panel:#111111;
  --pmp-chat-panel-2:#171717;
  --pmp-chat-text:#f5f0e7;
  --pmp-chat-muted:#c7c0b5;
  --pmp-chat-border:rgba(201,166,107,.34);
  max-width:940px!important;
  margin:34px auto 58px!important;
  padding:0 18px!important;
  color:var(--pmp-chat-text)!important;
  box-sizing:border-box!important;
}
.pmp-re-booking *{box-sizing:border-box}
.pmp-re-booking-shell{
  overflow:hidden;
  border:1px solid var(--pmp-chat-border);
  border-radius:20px;
  background:linear-gradient(180deg,#111 0%,#0b0b0b 100%);
  box-shadow:0 24px 70px rgba(0,0,0,.36);
}
.pmp-re-booking .pmp-re-hero,
.pmp-re-booking .pmp-re-panel,
.pmp-re-booking .pmp-re-success,
.pmp-re-booking .pmp-re-form{
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--pmp-chat-text)!important;
}
.pmp-re-booking .pmp-re-booking-hero{
  padding:42px 46px 32px!important;
  border-bottom:1px solid rgba(201,166,107,.17)!important;
}
.pmp-re-booking .pmp-re-booking-kicker{
  margin:0 0 10px!important;
  color:var(--pmp-chat-gold)!important;
  font-size:11px!important;
  line-height:1.4!important;
  font-weight:800!important;
  letter-spacing:.2em!important;
}
.pmp-re-booking .pmp-re-booking-hero h2,
.pmp-re-booking .pmp-re-booking-state h2{
  margin:0 0 16px!important;
  color:var(--pmp-chat-text)!important;
  font-family:"Cormorant Garamond",Cormorant,Georgia,"Times New Roman",serif!important;
  font-size:clamp(32px,4.4vw,50px)!important;
  line-height:1.05!important;
  font-weight:500!important;
  letter-spacing:.01em!important;
}
.pmp-re-booking .pmp-re-booking-hero p,
.pmp-re-booking .pmp-re-booking-state p,
.pmp-re-booking .pmp-re-form p,
.pmp-re-booking .pmp-re-form label{
  color:var(--pmp-chat-muted)!important;
}
.pmp-re-booking .pmp-re-booking-lead{
  max-width:720px;
  margin:0 0 14px!important;
  font-size:16px!important;
  line-height:1.7!important;
}
.pmp-re-booking .pmp-re-booking-method{
  display:inline-block;
  margin:4px 0 0!important;
  padding:12px 15px;
  border:1px solid var(--pmp-chat-border);
  border-radius:10px;
  background:rgba(201,166,107,.07);
  font-size:14px!important;
  line-height:1.55!important;
}
.pmp-re-booking .pmp-re-booking-method strong{color:var(--pmp-chat-text)!important}
.pmp-re-booking .pmp-re-booking-form{
  padding:30px 46px 42px!important;
}
.pmp-re-booking .pmp-re-booking-security{
  margin:0 0 24px!important;
  padding:13px 15px;
  border-left:2px solid var(--pmp-chat-gold);
  background:rgba(201,166,107,.055);
  color:var(--pmp-chat-muted)!important;
  font-size:13px!important;
  line-height:1.55!important;
}
.pmp-re-booking .pmp-re-booking-security strong{color:var(--pmp-chat-text)!important}
.pmp-re-booking .pmp-re-booking-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:20px!important;
}
.pmp-re-booking .pmp-re-booking-grid label{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  margin:0!important;
  color:var(--pmp-chat-text)!important;
  font-size:14px!important;
  font-weight:600!important;
}
.pmp-re-booking .pmp-re-booking-grid label span{color:var(--pmp-chat-gold)!important}
.pmp-re-booking .pmp-re-booking-grid .pmp-re-full{grid-column:1/-1!important}
.pmp-re-booking .pmp-re-booking-grid input,
.pmp-re-booking .pmp-re-booking-grid select,
.pmp-re-booking .pmp-re-booking-grid textarea{
  display:block!important;
  width:100%!important;
  min-height:50px!important;
  margin:0!important;
  padding:13px 14px!important;
  border:1px solid rgba(201,166,107,.42)!important;
  border-radius:10px!important;
  outline:none!important;
  background:#181818!important;
  color:#f8f4ed!important;
  -webkit-text-fill-color:#f8f4ed!important;
  font:inherit!important;
  line-height:1.45!important;
  box-shadow:none!important;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease!important;
}
.pmp-re-booking .pmp-re-booking-grid select{appearance:auto!important;color-scheme:dark}
.pmp-re-booking .pmp-re-booking-grid textarea{min-height:128px!important;resize:vertical!important}
.pmp-re-booking .pmp-re-booking-grid input:focus,
.pmp-re-booking .pmp-re-booking-grid select:focus,
.pmp-re-booking .pmp-re-booking-grid textarea:focus{
  border-color:var(--pmp-chat-gold)!important;
  box-shadow:0 0 0 3px rgba(201,166,107,.14)!important;
  background:#1c1c1c!important;
}
.pmp-re-booking .pmp-re-booking-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:50px!important;
  margin-top:26px!important;
  padding:13px 24px!important;
  border:1px solid var(--pmp-chat-gold)!important;
  border-radius:10px!important;
  background:var(--pmp-chat-gold)!important;
  color:#090909!important;
  -webkit-text-fill-color:#090909!important;
  font:inherit!important;
  font-weight:800!important;
  text-decoration:none!important;
  cursor:pointer!important;
  box-shadow:none!important;
}
.pmp-re-booking .pmp-re-booking-button:hover,
.pmp-re-booking .pmp-re-booking-button:focus{
  border-color:var(--pmp-chat-gold-soft)!important;
  background:var(--pmp-chat-gold-soft)!important;
  color:#090909!important;
  text-decoration:none!important;
}
.pmp-re-booking .pmp-re-booking-state{
  padding:42px 46px!important;
}
.pmp-re-booking .pmp-re-booking-state p{max-width:720px;margin:10px 0 0!important;line-height:1.65!important}
.pmp-re-booking .pmp-re-booking-state strong{color:var(--pmp-chat-text)!important}
@media(max-width:720px){
  .pmp-re-booking{margin:22px auto 40px!important;padding:0 12px!important}
  .pmp-re-booking-shell{border-radius:14px}
  .pmp-re-booking .pmp-re-booking-hero{padding:30px 22px 26px!important}
  .pmp-re-booking .pmp-re-booking-form{padding:24px 22px 30px!important}
  .pmp-re-booking .pmp-re-booking-grid{grid-template-columns:1fr!important;gap:16px!important}
  .pmp-re-booking .pmp-re-booking-grid .pmp-re-full{grid-column:auto!important}
  .pmp-re-booking .pmp-re-booking-button{width:100%!important}
  .pmp-re-booking .pmp-re-booking-state{padding:30px 22px!important}
}
@media(max-width:420px){
  .pmp-re-booking .pmp-re-booking-hero{padding:26px 18px 22px!important}
  .pmp-re-booking .pmp-re-booking-form{padding:22px 18px 26px!important}
  .pmp-re-booking .pmp-re-booking-state{padding:26px 18px!important}
}

/* v2.6.0 client booking progress */
.pmp-re-booking-public{margin:28px 46px 0;padding:24px 26px;border:1px solid var(--pmp-sales-gold);border-radius:16px;background:linear-gradient(135deg,rgba(201,166,107,.12),rgba(201,166,107,.035));color:var(--pmp-sales-text)!important}
.pmp-re-booking-public h3{margin:0 0 18px!important;color:var(--pmp-sales-text)!important;font-family:"Cormorant Garamond",Cormorant,Georgia,"Times New Roman",serif!important;font-size:clamp(27px,3.4vw,36px)!important;line-height:1.15!important;font-weight:600!important}
.pmp-re-booking-public>p{margin:18px 0 0!important;color:var(--pmp-sales-muted)!important;line-height:1.65!important}
.pmp-re-booking-public-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.pmp-re-booking-public-grid>div{display:grid;gap:5px;padding:14px;border:1px solid var(--pmp-sales-border);border-radius:11px;background:rgba(0,0,0,.18);min-width:0}
.pmp-re-booking-public-grid strong{color:var(--pmp-sales-text)!important;font-size:17px!important;overflow-wrap:anywhere}.pmp-re-booking-public-grid span{color:var(--pmp-sales-muted)!important;font-size:11px!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.pmp-re-booking-public .pmp-re-sales-actions{justify-content:flex-start;padding-top:20px;flex-wrap:wrap}.pmp-re-booking-public .pmp-re-sales-button{width:auto!important}
.pmp-re-booking-confirmed{padding:13px 15px;border:1px solid #4e7254;border-radius:10px;background:rgba(94,145,101,.12);color:#dceede!important}
@media(max-width:760px){.pmp-re-booking-public{margin:20px 22px 0;padding:20px}.pmp-re-booking-public-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.pmp-re-booking-public{margin-left:18px;margin-right:18px}.pmp-re-booking-public-grid{grid-template-columns:1fr}.pmp-re-booking-public .pmp-re-sales-actions{display:grid}.pmp-re-booking-public .pmp-re-sales-button{width:100%!important}}

/* v2.6.7: WPForms #76 branch visibility safety controller. */
.wpforms-form .pmp-re-wpf-branch-visible{display:block!important;}
.wpforms-form .pmp-re-wpf-branch-hidden{display:none!important;}
