/* Portrait Wallah booking, scoped to the shortcode. */
.pwbs{--pwbs-gold:#edb649;--pwbs-dark:#070a08;--pwbs-card:#111913;--pwbs-soft:#bdc0b5;position:relative;isolation:isolate;box-sizing:border-box;width:100%;max-width:700px;margin:26px auto 40px;padding:26px clamp(16px,4vw,32px) 28px;background:radial-gradient(ellipse at 50% -8%,rgba(229,151,41,.18),transparent 50%),linear-gradient(160deg,#111912,#080d0a);border:1px solid rgba(224,166,64,.52);border-radius:20px;color:#f9f6ec;font:400 14px/1.5 Inter,Arial,sans-serif;box-shadow:0 16px 55px rgba(0,0,0,.25)}
.pwbs *{box-sizing:border-box}
.pwbs [hidden]{display:none!important}
.pwbs button,.pwbs input,.pwbs textarea,.pwbs select{font-family:inherit}
.pwbs-header{text-align:center;margin:0 auto 21px}
.pwbs-eyebrow{display:block;color:var(--pwbs-gold);font:800 10px/1.4 Montserrat,Arial,sans-serif;letter-spacing:.15em;margin-bottom:9px}
.pwbs h2{font:900 clamp(23px,5.8vw,34px)/1.14 Montserrat,Arial,sans-serif!important;letter-spacing:-.035em;color:#fff5df!important;margin:0 0 9px!important;text-align:center}
.pwbs-header>p{margin:0 auto 13px;max-width:520px;color:#d8d0bd;font-size:13px;line-height:1.6}
.pwbs-disclosure{background:rgba(237,182,73,.075);border:1px solid rgba(237,182,73,.18);border-radius:10px;padding:10px 12px;color:#c7bfab;font-size:11px;line-height:1.55;margin:6px auto 0;max-width:540px}
.pwbs-disclosure strong{color:#ffe0a0}
.pwbs-progress{margin:20px 0 23px}
.pwbs-progress-line{height:5px;width:100%;overflow:hidden;border-radius:50px;background:#313022}
.pwbs-progress-line span{display:block;width:11.111%;height:100%;border-radius:50px;background:linear-gradient(90deg,#d18d2e,var(--pwbs-gold),#ffe29c);transition:width .3s ease}
.pwbs-progress-caption{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-top:9px;font:700 11px/1.5 Inter,Arial,sans-serif;color:#f4cc74}
.pwbs-progress-caption [data-pwbs-status]{font-weight:500;text-align:right;color:#aebdad}
.pwbs-progress-caption [data-state=error]{color:#ffc1b9}
.pwbs-progress-caption [data-state=warning]{color:#f3c472}
.pwbs-progress-caption [data-state=saved]{color:#9be0a3}
.pwbs-step-heading{display:flex;align-items:center;gap:13px;margin:3px 0 22px;text-align:left}
.pwbs-symbol{flex:0 0 47px;width:47px;height:47px;display:grid;place-items:center;background:#272617;color:#f5ca74;border:1px solid #9c722e;border-radius:50%;font:900 14px/1 Montserrat,Arial,sans-serif}
.pwbs-step-heading>div{min-width:0}
.pwbs-step-heading h3{color:#ffe4a0!important;font:900 clamp(17px,4.3vw,21px)/1.2 Montserrat,Arial,sans-serif!important;letter-spacing:-.017em;margin:0 0 5px!important}
.pwbs-step-heading p{color:#b8bdad;font-size:12px;line-height:1.5;margin:0}
.pwbs-step>label:not(.pwbs-consent){display:block;font-size:12px;font-weight:700;color:#e8e3d6;margin:0 0 17px}
.pwbs-step label>span:first-child:not(.pwbs-optional){color:#f5c26a}
.pwbs-step input:not([type=radio]):not([type=checkbox]),.pwbs-step textarea,.pwbs-step select{display:block;width:100%;margin:7px 0 0;border:1px solid #534a33!important;border-radius:10px!important;background:#172019!important;color:#f9f6ec!important;min-height:49px;padding:12px 14px;font:500 15px/1.4 Inter,Arial,sans-serif!important;outline:0!important;box-shadow:none!important;color-scheme:dark;transition:border-color .16s ease,box-shadow .16s ease}
.pwbs-step select{cursor:pointer;appearance:auto}
.pwbs-step textarea{resize:vertical;min-height:132px}
.pwbs-step input:focus,.pwbs-step textarea:focus,.pwbs-step select:focus{border-color:var(--pwbs-gold)!important;box-shadow:0 0 0 3px rgba(236,173,62,.13)!important}
.pwbs-step input::placeholder,.pwbs-step textarea::placeholder{color:#939b91!important}
.pwbs-optional{color:#9fac9e;font-weight:400}
.pwbs-consent{display:flex;align-items:flex-start;gap:10px;color:#cccabd;font-size:11.5px;font-weight:400;line-height:1.55;margin:9px 0 7px;cursor:pointer}
.pwbs-consent input{flex:0 0 auto;margin:4px 0 0!important;width:16px!important;height:16px!important;accent-color:var(--pwbs-gold)}
.pwbs-small{font-size:11px!important;color:#9fa69b!important;margin:7px 0!important}
.pwbs-small a{color:#ffcf7b!important;text-decoration:underline}
.pwbs-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:15px 0 23px}
.pwbs-choice{display:block;min-width:0;cursor:pointer}
.pwbs-choice input{opacity:0;position:absolute;width:1px;height:1px;clip-path:inset(50%)}
.pwbs-choice span{min-height:58px;display:flex;align-items:center;justify-content:center;padding:12px 10px;border:1px solid rgba(232,169,71,.32);border-radius:11px;background:#172018;color:#f0e8d5;text-align:center;font:750 12px/1.4 Montserrat,Arial,sans-serif;transition:background .18s,border-color .18s,transform .18s}
.pwbs-choice:hover span{border-color:#e0ad59;background:#252616}
.pwbs-choice input:checked + span{border-color:#f2b948;background:linear-gradient(130deg,#4a3516,#252112);color:#ffe6a4;box-shadow:inset 0 0 0 1px rgba(237,182,73,.12)}
.pwbs-choice input:focus-visible + span{outline:2px solid #ffecb9;outline-offset:3px}
.pwbs-controls{display:flex;gap:10px;margin-top:19px}
.pwbs-controls button,.pwbs-next,.pwbs-new{cursor:pointer;border-radius:11px;transition:filter .15s ease,opacity .15s ease;text-decoration:none!important;text-align:center}
.pwbs-back{padding:14px 19px;color:#f3d590!important;background:#161b15!important;border:1px solid #98702c!important;font:800 12px/1.2 Montserrat,Arial,sans-serif!important;flex:0 0 auto}
.pwbs-next{display:flex;align-items:center;justify-content:center;flex:1 1 auto;width:auto;min-height:51px;margin:0;padding:14px 17px!important;border:1px solid #e9af55!important;border-radius:11px!important;background:linear-gradient(120deg,#ffe59e 0%,#f1bd5c 42%,#d09530 100%)!important;color:#191308!important;font:900 12px/1.4 Montserrat,Arial,sans-serif!important;letter-spacing:.04em;text-decoration:none!important;box-shadow:0 5px 26px rgba(225,156,51,.18)}
.pwbs-next:hover{filter:brightness(1.07);color:#191308!important}
.pwbs-back:hover{filter:brightness(1.2)}
.pwbs button:disabled{opacity:.55;cursor:wait}
.pwbs-error{padding:12px 15px;margin:0 0 16px;color:#ffd6cd;background:#481a17;border:1px solid #94443b;border-radius:10px;font-size:12px;line-height:1.55}
.pwbs-review{border:1px solid rgba(237,182,73,.28);background:#111b14;border-radius:11px;overflow:hidden}
.pwbs-review-row{display:grid;grid-template-columns:140px 1fr;gap:10px;padding:11px 13px;border-bottom:1px solid rgba(237,182,73,.13);font-size:12px;line-height:1.5}
.pwbs-review-row:last-child{border-bottom:0}
.pwbs-review-row strong{color:#f8d484;overflow-wrap:anywhere}
.pwbs-review-row span{color:#e0dccf;overflow-wrap:anywhere;white-space:pre-wrap}
.pwbs-completed{text-align:center;padding:15px 6px}
.pwbs-check{display:inline-grid;place-items:center;width:62px;height:62px;border:1px solid #a7c888;border-radius:50%;color:#b9ec9b;background:#1b3120;font-size:31px;margin:0 auto 13px}
.pwbs-completed h3{color:#fbe5aa!important;font:900 23px/1.2 Montserrat,Arial,sans-serif!important;margin:0 0 10px!important}
.pwbs-completed p{color:#cdc9b9;font-size:13px;line-height:1.6;max-width:420px;margin:0 auto 15px}
.pwbs-completed .pwbs-next{width:100%;max-width:410px;margin:14px auto}
.pwbs-new{display:inline-flex;background:transparent;border:0;color:#ffdb8f;text-decoration:underline!important;margin:12px auto;padding:8px 12px;font-size:12px}
@media(max-width:600px){.pwbs{border-radius:15px;padding:22px 15px 24px;margin:17px 0 28px;max-width:100%}.pwbs h2{font-size:clamp(23px,6.7vw,30px)!important}.pwbs-header>p{font-size:12px}.pwbs-progress{margin:19px 0 24px}.pwbs-options{gap:8px}.pwbs-choice span{font-size:11px;min-height:54px}.pwbs-step input:not([type=radio]):not([type=checkbox]),.pwbs-step textarea,.pwbs-step select{font-size:16px!important}.pwbs-review-row{grid-template-columns:94px 1fr;gap:8px;padding:9px 10px;font-size:11px}.pwbs-step-heading{gap:11px}.pwbs-symbol{flex-basis:43px;width:43px;height:43px}.pwbs-back{padding:12px 13px;font-size:11px!important}.pwbs-next{padding:13px 11px!important;font-size:11px!important}}
@media(prefers-reduced-motion:reduce){.pwbs *, .pwbs *:before, .pwbs *:after{transition:none!important;animation:none!important}}

/* v1.1: remove progress bar and numbered-step UI; keep save feedback unobtrusive. */
.pwbs .pwbs-no-guarantee{margin:6px auto 0;color:#c5bda9;font-size:11px;line-height:1.45;text-align:center;max-width:520px}
.pwbs .pwbs-save-status{display:block;width:100%;margin:14px 0 18px;text-align:right;color:#b7b5a4;font:500 11px/1.4 Inter,Arial,sans-serif}
.pwbs .pwbs-save-status[data-state=saved]{color:#9be0a3}
.pwbs .pwbs-save-status[data-state=error]{color:#ffc1b9}
.pwbs .pwbs-step-heading{display:block;margin:0 0 20px;text-align:left}
.pwbs .pwbs-step-heading h3{margin:0 0 5px!important}
.pwbs .pwbs-privacy{color:#b7b9ae;font:400 11px/1.58 Inter,Arial,sans-serif;margin:12px 0 4px!important}
.pwbs .pwbs-privacy strong{color:#f4d18b;font-weight:750}
.pwbs .pwbs-privacy a{color:#f4d18b;text-decoration:underline}
@media(max-width:600px){.pwbs .pwbs-save-status{margin:12px 0 17px}}

/* v1.2.0 — matches the user's supplied Portrait Wallah premium HTML form.
   The reference uses Inter/Arial for text, labels, fields and buttons,
   a dark green-black form panel, subtle gold border and warm gold gradient. */
.pwbs{
  --pwbs-gold:#edb649;
  --pwbs-dark:#070908;
  --pwbs-card:#0d120f;
  --pwbs-soft:#b9b9b2;
  font-family:Inter,Arial,Helvetica,sans-serif!important;
  font-size:14px;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  background:radial-gradient(ellipse at 50% 0%,rgba(197,129,41,.12),transparent 55%),#0d120f!important;
  border:1px solid rgba(237,180,65,.54)!important;
  border-radius:17px!important;
  padding:21px!important;
  box-shadow:none!important;
  color:#f9f6ec!important;
}
.pwbs .pwbs-header{margin:0 auto 18px}
.pwbs .pwbs-eyebrow{
  color:#edb649;
  font:800 11px/1.5 Inter,Arial,Helvetica,sans-serif!important;
  letter-spacing:.21em;
  text-transform:uppercase;
}
.pwbs .pwbs-header h2{
  font-family:Inter,Arial,Helvetica,sans-serif!important;
  font-weight:900!important;
  font-size:clamp(26px,4.5vw,39px)!important;
  line-height:1.15!important;
  letter-spacing:-.035em!important;
  margin:8px auto 12px!important;
  color:#f9f6ec!important;
}
.pwbs .pwbs-header>p{
  color:#b9b9b2!important;
  font:400 14px/1.6 Inter,Arial,Helvetica,sans-serif!important;
  max-width:570px;
  margin:0 auto 12px!important;
}
.pwbs .pwbs-header .pwbs-no-guarantee{
  color:#cab993!important;
  font:600 11px/1.5 Inter,Arial,Helvetica,sans-serif!important;
  margin:9px auto 0!important;
}
.pwbs .pwbs-save-status{
  color:#aaa99e;
  font:500 11px/1.4 Inter,Arial,Helvetica,sans-serif!important;
  margin:8px 0 15px!important;
}
.pwbs .pwbs-step-heading{
  display:block;
  margin:2px 0 20px!important;
  text-align:left;
}
.pwbs .pwbs-step-heading h3{
  color:#edb649!important;
  font:900 clamp(19px,4vw,24px)/1.25 Inter,Arial,Helvetica,sans-serif!important;
  letter-spacing:-.025em!important;
  margin:0 0 7px!important;
}
.pwbs .pwbs-step-heading p{
  color:#b9b9b2!important;
  font:400 13px/1.55 Inter,Arial,Helvetica,sans-serif!important;
  margin:0!important;
}
.pwbs .pwbs-step>label:not(.pwbs-consent){
  display:block;
  color:#d9d4c9!important;
  font:700 12px/1.5 Inter,Arial,Helvetica,sans-serif!important;
  margin:0 0 14px!important;
}
.pwbs .pwbs-step input:not([type=radio]):not([type=checkbox]),
.pwbs .pwbs-step textarea,
.pwbs .pwbs-step select{
  width:100%;
  min-height:48px!important;
  margin:6px 0 0!important;
  padding:10px 12px!important;
  border:1px solid #474333!important;
  border-radius:9px!important;
  background:#171d18!important;
  color:#f6f2e8!important;
  font-family:Inter,Arial,Helvetica,sans-serif!important;
  font-size:14px!important;
  font-weight:400!important;
  line-height:1.45!important;
  outline:0!important;
  box-shadow:none!important;
  color-scheme:dark;
}
.pwbs .pwbs-step textarea{min-height:118px!important;resize:vertical}
.pwbs .pwbs-step input:focus,
.pwbs .pwbs-step textarea:focus,
.pwbs .pwbs-step select:focus{
  border-color:#edb649!important;
  box-shadow:0 0 0 3px rgba(224,164,65,.1)!important;
}
.pwbs .pwbs-step input::placeholder,
.pwbs .pwbs-step textarea::placeholder{color:#8c928b!important;opacity:1}
.pwbs .pwbs-choice span{
  color:#f6f2e8!important;
  background:#171d18!important;
  border:1px solid #474333!important;
  border-radius:9px!important;
  font:750 13px/1.35 Inter,Arial,Helvetica,sans-serif!important;
  min-height:54px;
}
.pwbs .pwbs-choice:hover span{border-color:#edb649!important;background:#232318!important}
.pwbs .pwbs-choice input:checked+span{
  border:1px solid #edb649!important;
  background:linear-gradient(130deg,#3f301a,#1b1b14)!important;
  color:#ffe9b0!important;
  box-shadow:inset 0 0 0 1px rgba(237,182,73,.13)!important;
}
.pwbs .pwbs-controls{margin-top:17px}
.pwbs .pwbs-next,
.pwbs .pwbs-completed .pwbs-next{
  font:900 13px/1.3 Inter,Arial,Helvetica,sans-serif!important;
  letter-spacing:.02em!important;
  min-height:51px!important;
  padding:15px 20px!important;
  border:1px solid transparent!important;
  border-radius:11px!important;
  background:linear-gradient(135deg,#ffdc79 0%,#e7a631 50%,#c88722 100%)!important;
  box-shadow:0 5px 25px rgba(214,147,35,.19)!important;
  color:#191407!important;
  transition:filter .2s ease,transform .15s ease;
}
.pwbs .pwbs-next:hover{filter:brightness(1.09)}
.pwbs .pwbs-next:active{transform:scale(.985)}
.pwbs .pwbs-back{
  padding:14px 18px!important;
  color:#ffde83!important;
  background:rgba(20,25,23,.72)!important;
  border:1px solid rgba(224,167,64,.38)!important;
  border-radius:11px!important;
  font:800 13px/1.2 Inter,Arial,Helvetica,sans-serif!important;
}
.pwbs .pwbs-review{
  border:1px solid rgba(224,167,64,.38)!important;
  border-radius:11px!important;
  background:#101514!important;
}
.pwbs .pwbs-review-row{font-family:Inter,Arial,Helvetica,sans-serif!important}
.pwbs .pwbs-review-row strong{color:#edb649!important}
.pwbs .pwbs-completed h3{font:900 23px/1.2 Inter,Arial,Helvetica,sans-serif!important;color:#ffde83!important}
.pwbs .pwbs-new{font-family:Inter,Arial,Helvetica,sans-serif!important}
@media(max-width:600px){
  .pwbs{margin:14px 0 22px!important;border-radius:15px!important;padding:19px 15px 22px!important;max-width:100%}
  .pwbs .pwbs-header h2{font-size:clamp(23px,6.6vw,30px)!important}
  .pwbs .pwbs-header>p{font-size:12px!important}
  .pwbs .pwbs-step-heading h3{font-size:20px!important}
  .pwbs .pwbs-step input:not([type=radio]):not([type=checkbox]),
  .pwbs .pwbs-step textarea,.pwbs .pwbs-step select{font-size:16px!important}
  .pwbs .pwbs-back{padding:12px 13px!important;font-size:12px!important}
  .pwbs .pwbs-next{padding:14px 11px!important;font-size:12px!important}
  .pwbs .pwbs-options{gap:9px}
}

/* v1.3.0 — rolling 30-day date dropdown */
.pwbs .pwbs-date-hint{margin:8px 0 14px!important;color:#b9b9b2!important;font:400 11px/1.5 Inter,Arial,Helvetica,sans-serif!important}
.pwbs select[name="shoot_date"]{min-height:48px!important;appearance:auto!important;cursor:pointer!important;background-color:#171d18!important;color:#f6f2e8!important;font:500 14px/1.5 Inter,Arial,Helvetica,sans-serif!important}
.pwbs select[name="shoot_date"]:focus{border-color:#edb649!important;box-shadow:0 0 0 3px rgba(224,164,65,.1)!important}
.pwbs select[name="shoot_date"]:disabled{opacity:.7!important;cursor:not-allowed!important}
@media(max-width:600px){.pwbs select[name="shoot_date"]{font-size:16px!important}}

/* v1.4.0 — independently configurable Durga Puja WhatsApp community invitation.
   Placed below the existing booking form; no booking controls are changed. */
.pwbs-community{
  box-sizing:border-box;
  position:relative;
  isolation:isolate;
  width:100%;
  max-width:700px;
  margin:28px auto 34px;
  padding:25px 22px 24px;
  color:#f9f6ec;
  text-align:center;
  background:radial-gradient(ellipse at 50% -15%,rgba(237,182,73,.19),transparent 66%),linear-gradient(155deg,#121913,#090e0a);
  border:1px solid rgba(237,182,73,.39);
  border-radius:18px;
  box-shadow:0 9px 35px rgba(0,0,0,.13);
  font:400 13px/1.6 Inter,Arial,Helvetica,sans-serif;
}
.pwbs-community *{box-sizing:border-box}
.pwbs-community-eyebrow{display:block;margin:0 0 9px;color:#eebd62;font:800 10px/1.5 Montserrat,Inter,Arial,sans-serif;letter-spacing:.13em}
.pwbs-community h3{max-width:520px;margin:0 auto 9px!important;color:#ffe1a3!important;font:900 clamp(19px,3.5vw,25px)/1.22 Montserrat,Inter,Arial,sans-serif!important;letter-spacing:-.025em!important;text-align:center!important}
.pwbs-community p{max-width:475px;margin:0 auto 17px!important;color:#cfd0c3!important;font:400 13px/1.65 Inter,Arial,Helvetica,sans-serif!important;text-align:center!important}
.pwbs-community-link{display:inline-flex;align-items:center;justify-content:center;min-height:49px;max-width:100%;padding:13px 21px;background:linear-gradient(125deg,#ffe6a0,#efbe61 45%,#cb9134);border:1px solid #e8b966;border-radius:11px;color:#17140d!important;text-decoration:none!important;font:900 12px/1.35 Montserrat,Inter,Arial,sans-serif!important;letter-spacing:.025em;box-shadow:0 7px 20px rgba(219,155,59,.13);transition:filter .18s ease,transform .18s ease}
.pwbs-community-link:hover{color:#17140d!important;filter:brightness(1.09);transform:translateY(-1px)}
.pwbs-community-link:focus-visible{outline:2px solid white;outline-offset:3px}
.pwbs-community small{display:block;margin:12px auto 0;color:#aeb9aa;font:400 11px/1.5 Inter,Arial,Helvetica,sans-serif}
@media(max-width:767px){
  .pwbs-community{margin:0 auto 22px!important;padding:22px 15px 23px!important;border-radius:15px!important}
  .pwbs-community h3{font-size:clamp(18px,5vw,22px)!important;line-height:1.24!important}
  .pwbs-community p{font-size:12px!important;margin-bottom:16px!important}
  .pwbs-community-link{display:flex;width:100%;min-height:49px;padding:13px 9px!important;font-size:11.5px!important}
}

/* v1.4.1 — Fix desktop/tablet collision between the booking form and
   WhatsApp-updates panel. Mobile styling is intentionally unchanged. */
@media (min-width:768px) {
  .pwbs-community {
    box-sizing:border-box!important;
    display:block!important;
    position:relative!important;
    width:100%!important;
    max-width:700px!important;
    clear:both!important;
    margin:28px auto 34px!important;
    transform:none!important;
  }
}

/* Respect prior copy edits on every page, including while the form is in the popup. */
.pwbs .pwbs-step[data-step="4"] .pwbs-step-heading p,
.pwbs .pwbs-step[data-step="7"] .pwbs-step-heading p{display:none!important}
