.prm-unified-booking{
	--prm-u-ink:#131719;--prm-u-muted:#4b5256;--prm-u-orange:#ff6a22;--prm-u-line:#dedfd9;--prm-u-bg:#fafaf8;--prm-u-peach:#fff2e8;
	max-width:1360px;margin:0 auto;padding:24px 22px 70px;color:var(--prm-u-ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}
.prm-unified-entry{max-width:980px;margin:0 auto;background:#fff;border:1px solid var(--prm-u-line);border-radius:22px;padding:42px;box-shadow:0 10px 36px rgba(21,27,21,.04)}
.prm-unified-entry__brand{font-size:22px;font-weight:800;letter-spacing:.02em;margin-bottom:28px}.prm-unified-entry__brand b{color:#b83f0c}.prm-unified-entry__eyebrow{font-size:11px;font-weight:800;letter-spacing:.16em;color:#a63809;margin-bottom:10px}.prm-unified-entry h1{font-size:clamp(32px,4vw,48px);line-height:1.08;letter-spacing:-1.2px;margin:0 0 14px}.prm-unified-entry__lead{max-width:760px;color:var(--prm-u-muted);font-size:16px;line-height:1.65;margin:0 0 30px}.prm-unified-route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.prm-unified-route-card{appearance:none;text-align:left;display:flex;flex-direction:column;gap:10px;min-height:240px;border:1px solid #d1d7cf;border-radius:16px;background:#fff;padding:24px 22px;color:var(--prm-u-ink);cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s}.prm-unified-route-card:hover,.prm-unified-route-card:focus-visible{border-color:#c84d12;background:#fff7f0;box-shadow:0 0 0 2px rgba(200,77,18,.13);outline:none}.prm-unified-route-card--corporate{background:#fffaf6;border-color:#e7c4aa}.prm-unified-route-card__kicker{font-size:10px;font-weight:800;letter-spacing:.11em;color:#a63809}.prm-unified-route-card strong{font-size:22px;line-height:1.25}.prm-unified-route-card>span:not(.prm-unified-route-card__kicker){font-size:14px;line-height:1.6;color:var(--prm-u-muted)}.prm-unified-route-card em{font-style:normal;font-size:13px;font-weight:800;color:#973408;margin-top:auto;padding-top:18px}.prm-unified-entry__note{font-size:12px;color:var(--prm-u-muted);margin:22px 0 0}.prm-unified-route{max-width:1360px;margin:0 auto}.prm-unified-routebar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 auto 18px;max-width:1180px;border-bottom:1px solid var(--prm-u-line);padding:0 0 12px;font-size:12px}.prm-unified-routebar span{display:flex;align-items:center;gap:8px;font-weight:750}.prm-unified-routebar i{width:8px;height:8px;border-radius:50%;background:#bf4a12}.prm-unified-routebar button{border:0;background:none;text-decoration:underline;cursor:pointer;color:var(--prm-u-ink);font:inherit;font-weight:700}.prm-unified-corporate-intro{max-width:1100px;margin:0 auto 18px;padding:14px 16px;border:1px solid #e7c4aa;background:#fff8f2;border-radius:12px;font-size:13px;line-height:1.55}.prm-unified-route--corporate .prm-corporate-intake{max-width:none;width:100%;margin-left:auto;margin-right:auto}.prm-unified-notice{padding:18px;border:1px solid var(--prm-u-line);background:#fff;border-radius:12px}
@media(max-width:760px){.prm-unified-booking{padding:14px 12px 50px}.prm-unified-entry{padding:28px 18px;border-radius:16px}.prm-unified-route-grid{grid-template-columns:1fr}.prm-unified-route-card{min-height:0}.prm-unified-routebar{align-items:flex-start}.prm-unified-entry h1{font-size:32px}}

/* v5.44.1 live-shadow safety banner. */
.prm-unified-shadow-banner{display:flex;gap:10px;align-items:flex-start;margin:0 0 16px;padding:12px 14px;border:1px solid #d9b36a;border-radius:10px;background:#fff8e7;color:#3b2a08;font-size:13px;line-height:1.45}
.prm-unified-shadow-banner strong{white-space:nowrap;font-size:11px;letter-spacing:.06em}
.prm-unified-shadow-locked{max-width:760px;margin:32px auto;padding:18px;border:1px solid #ddd;border-radius:12px;background:#fff;font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
@media(max-width:620px){.prm-unified-shadow-banner{display:block}.prm-unified-shadow-banner strong{display:block;margin-bottom:5px}}


/* v5.44.2 Phase 2B live-shadow five-stage standard booking shell. */
.prm-unified-shadow-banner strong{margin-right:4px}
.prm-unified-stage-rail{
	list-style:none;margin:0 auto 20px;padding:0;max-width:1180px;
	display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;
}
.prm-unified-stage-rail li{
	display:flex;align-items:center;gap:9px;min-width:0;padding:9px 10px;
	border:1px solid var(--prm-u-line);border-radius:10px;background:#fff;
	color:#596066;font-size:11px;font-weight:700;line-height:1.25;
}
.prm-unified-stage-rail li b{
	flex:0 0 26px;width:26px;height:26px;border-radius:50%;display:flex;
	align-items:center;justify-content:center;border:1px solid #c6cbc4;background:#fff;
	color:#3b4144;font-size:11px;
}
.prm-unified-stage-rail li span{overflow:hidden;text-overflow:ellipsis}
.prm-unified-stage-rail li.is-current{border-color:#e3a178;background:#fff6ee;color:#8f3309}
.prm-unified-stage-rail li.is-current b{background:var(--prm-u-orange);border-color:var(--prm-u-orange);color:#151719}
.prm-unified-stage-rail li.is-done{background:#f3f7f1;color:#28553a}
.prm-unified-stage-rail li.is-done b{background:#e6f0e5;border-color:#b8cdb8;color:#28553a}
.prm-unified-booking [data-prm-route-panel="standard"] .prm-standard-sidebar__highlights{
	display:none;
}
.prm-unified-booking [data-prm-route-panel="standard"] .prm-wizard-progress{
	position:relative;
}
.prm-shadow-pickup-box{
	margin:20px 0 8px;padding:18px;border:1px solid #e5c3a7;border-radius:13px;background:#fff8f2;
}
.prm-shadow-pickup-box h4{margin:0 0 8px;font-size:17px}
.prm-shadow-review-supplement{
	margin-top:18px;padding:18px;border:1px solid #dfe2dc;border-radius:12px;background:#fafbf8;
}
.prm-shadow-review-supplement h4{margin:0 0 12px}
.prm-shadow-review-supplement dl{display:grid;grid-template-columns:145px 1fr;gap:8px 12px;margin:0 0 12px;font-size:13px}
.prm-shadow-review-supplement dt{color:#5b6266}
.prm-shadow-review-supplement dd{margin:0;font-weight:650}
@media(max-width:820px){
	.prm-unified-stage-rail{grid-template-columns:repeat(5,1fr);gap:4px}
	.prm-unified-stage-rail li{padding:7px 3px;display:block;text-align:center;font-size:9px}
	.prm-unified-stage-rail li b{margin:0 auto 4px}
}
@media(max-width:540px){
	.prm-unified-stage-rail li span{display:none}
	.prm-unified-stage-rail li{padding:7px 2px}
	.prm-shadow-review-supplement dl{grid-template-columns:1fr}
	.prm-shadow-review-supplement dd{margin:0 0 6px}
}

/* Phase 2C shadow polish: keep progress copy legible and totals readable on the live theme. */
.prm-unified-booking .prm-standard-booking .prm-standard-progress__copy{flex-direction:row;align-items:baseline;gap:10px;}
.prm-unified-booking .prm-standard-booking .prm-cart-total{background:#fff4ec!important;border-color:rgba(255,106,34,.3)!important;}
.prm-unified-booking .prm-standard-booking .prm-cart-total-label{color:#9b481f!important;-webkit-text-fill-color:#9b481f!important;}
.prm-unified-booking .prm-standard-booking .prm-cart-total-amount{color:#14181d!important;-webkit-text-fill-color:#14181d!important;}
@media(max-width:820px){.prm-unified-booking .prm-standard-booking .prm-standard-progress__copy{flex-direction:column;gap:3px;}}

/* v5.44.5 controlled live-test submission gate. */
.prm-shadow-test-submit{margin-top:18px;padding:16px;border:1px solid #e5aa7f;background:#fff3e7;border-radius:12px;color:#332218}
.prm-shadow-test-submit>strong{display:block;margin-bottom:6px;font-size:14px}
.prm-shadow-test-submit p{margin:0 0 12px;font-size:12px;line-height:1.55}
.prm-shadow-test-submit label{display:flex;gap:9px;align-items:flex-start;font-size:12px;font-weight:700;line-height:1.45;cursor:pointer}
.prm-shadow-test-submit input{margin-top:2px;flex:0 0 auto}


/* v5.45.5 — Corporate desktop full-width layout.
 * Uses the available customer-page viewport instead of constraining the status rail/form to 1100px.
 * Mobile/tablet behavior remains intentionally compact.
 */
@media(min-width:1101px){
  .prm-unified-booking{max-width:none;width:100%;padding-left:clamp(28px,3vw,56px);padding-right:clamp(28px,3vw,56px);}
  .prm-unified-route{max-width:none;width:100%;}
  .prm-unified-routebar{max-width:none;width:min(1600px,100%);margin-left:auto;margin-right:auto;}
  .prm-unified-route--corporate .prm-corporate-intake{width:min(1600px,100%);max-width:none;}
  .prm-unified-route--corporate .prm-corp-shell{grid-template-columns:minmax(280px,330px) minmax(0,1fr);gap:clamp(42px,4vw,72px);}
  .prm-unified-route--corporate .prm-corp-main{width:100%;}
}
@media(min-width:1600px){
  .prm-unified-routebar,
  .prm-unified-route--corporate .prm-corporate-intake{width:min(1680px,calc(100vw - 72px));}
}


/* v5.45.7 — Corporate viewport/page alignment.
 * The theme constrains shortcode content inside a narrower page column.
 * When Corporate is the active unified route, break that route out to the
 * customer-page viewport so its 1/3 status rail + 2/3 form align with the
 * site's actual left/right content edges instead of the inner page column.
 */
@media(min-width:1101px){
  .prm-unified-route--corporate:not([hidden]){
    width:min(1680px,calc(100vw - 56px));
    max-width:none;
    margin-left:50%;
    margin-right:0;
    transform:translateX(-50%);
  }
  .prm-unified-route--corporate:not([hidden]) .prm-unified-routebar,
  .prm-unified-route--corporate:not([hidden]) .prm-corporate-intake{
    width:100%;
    max-width:none;
    margin-left:0;
    margin-right:0;
  }
  .prm-unified-route--corporate:not([hidden]) .prm-corp-shell{
    grid-template-columns:minmax(0,1fr) minmax(0,2fr);
    gap:clamp(36px,3vw,60px);
    width:100%;
  }
}
@media(min-width:1800px){
  .prm-unified-route--corporate:not([hidden]){
    width:min(1680px,calc(100vw - 96px));
  }
}

/* v5.45.8 — Standard route page alignment + approved-preview status rail. */
@media(min-width:1101px){
  .prm-unified-route[data-prm-route-panel="standard"]:not([hidden]){
    width:min(1680px,calc(100vw - 56px));
    max-width:none;
    margin-left:50%;
    margin-right:0;
    transform:translateX(-50%);
  }
  .prm-unified-route[data-prm-route-panel="standard"]:not([hidden]) .prm-unified-routebar,
  .prm-unified-route[data-prm-route-panel="standard"]:not([hidden]) #prm-wizard{
    width:100%;
    max-width:none;
    margin-left:0;
    margin-right:0;
  }
  .prm-unified-route[data-prm-route-panel="standard"]:not([hidden]) > .prm-unified-stage-rail{display:none!important;}
}
@media(min-width:1800px){
  .prm-unified-route[data-prm-route-panel="standard"]:not([hidden]){
    width:min(1680px,calc(100vw - 96px));
  }
}


/* v5.45.9 — Standard approved-preview workspace width.
 * Standard intentionally uses the preview's centered ~1352px composition
 * instead of the Corporate route's viewport-wide 1/3 + 2/3 treatment.
 */
@media(min-width:1101px){
  .prm-unified-route[data-prm-route-panel="standard"]:not([hidden]){
    width:min(1352px,calc(100vw - 48px))!important;
    max-width:1352px!important;
    margin-left:50%!important;
    margin-right:0!important;
    transform:translateX(-50%)!important;
  }
  .prm-unified-route[data-prm-route-panel="standard"]:not([hidden]) .prm-unified-routebar,
  .prm-unified-route[data-prm-route-panel="standard"]:not([hidden]) #prm-wizard{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  .prm-unified-route[data-prm-route-panel="standard"]:not([hidden]) .prm-standard-shell{
    grid-template-columns:286px minmax(0,1fr)!important;
    gap:55px!important;
    width:100%!important;
    max-width:none!important;
  }
}
@media(min-width:1101px) and (max-width:1240px){
  .prm-unified-route[data-prm-route-panel="standard"]:not([hidden]) .prm-standard-shell{
    grid-template-columns:250px minmax(0,1fr)!important;
    gap:28px!important;
  }
}

/* v5.61.1 — phones/tablets showed two step indicators (number boxes + labeled
 * steps). Keep only the labeled steps, as on desktop. */
@media(max-width:1080px){
  .prm-unified-route[data-prm-route-panel="standard"]:not([hidden]) > .prm-unified-stage-rail{display:none!important;}
}
