
html,body{scroll-behavior:smooth}[hidden]{display:none!important}
#abie-booking-app .amb-exact-products{display:grid;gap:12px}
#abie-booking-app .service-card.svc{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:13px;padding:17px;border:1px solid #d7b77f;border-radius:13px;background:linear-gradient(135deg,#fff,#fbf6ed);color:#181511}
#abie-booking-app .service-card.svc[data-tier=diamond]{border:2px solid #bd965a;background:linear-gradient(135deg,#fff,#f7ebd7)}
#abie-booking-app .service-copy{flex:1 1 180px}
#abie-booking-app .service-name{font:normal 25px Georgia,serif}
#abie-booking-app .service-recommended-badge{font:700 10px Arial;letter-spacing:.06em;color:#9a7038;margin-bottom:7px}
#abie-booking-app .amb-exact-description{color:#635647;font:13px/1.55 Arial;margin:5px 0 0}
#abie-booking-app .service-price{display:inline;margin-left:8px;font-weight:bold;color:#282018}
#abie-booking-app .group-note{display:none;font-size:11px;color:#896b42}
#abie-booking-app .group-note.is-visible{display:block}
#abie-booking-app .service-card .controls{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
#abie-booking-app .qty-control{display:flex;align-items:center;gap:8px}
#abie-booking-app .qty-btn,#addon-products .qty-btn{border-radius:50%;width:34px;height:34px;border:1px solid #cba568;background:#fff;color:#1b1510;font:20px Arial}
#abie-booking-app .qty-btn:disabled{opacity:.4}
#abie-booking-app .qty-value{min-width:15px;text-align:center;color:#141311}
#abie-booking-app .included{color:#9f7540;background:transparent;border:0;text-decoration:underline;font-size:11px}
#recommended-addons{margin:28px 0}
#recommended-addons h2{font:normal 27px Georgia,serif}
#addon-products{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:13px}
#addon-products .addon-card{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #d4ac6d;border-radius:15px;background:#fffaf3;color:#141414;padding:16px}
#addon-products .addon-name{font-weight:bold}
#addon-products .addon-helper{color:#7a6a59;font-size:11px}
#addon-products .qty-control{display:flex;align-items:center;gap:6px}
.amb-exact-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;text-align:center;padding:16px 0;margin:16px 0;border-top:1px solid #b99253;color:#f6ead8}
.amb-exact-totals small{display:block;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#d3b98b}
.amb-exact-totals strong{font-size:18px}
#abie-booking-app #continueBtn{width:100%;max-width:600px;display:block;margin:14px auto 24px}
#abie-booking-app .service-card.is-selected{box-shadow:0 0 0 2px rgba(183,134,65,.2)}
.abie-warning-modal{position:fixed;inset:0;z-index:1050;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.74);padding:18px}
.abie-warning-modal.is-open,.abie-warning-modal[aria-hidden=false]{display:flex}
.abie-warning-box{position:relative;padding:25px;max-width:580px;width:100%;border:1px solid #d0a568;border-radius:16px;background:#fffbf4;color:#18120c}
.abie-warning-box h3{font:normal 29px Georgia}
.abie-warning-box button{padding:12px 16px;margin:5px;border:1px solid #ae8750;border-radius:7px;background:#111;color:#fff}
.modal-actions{display:flex;flex-wrap:wrap;gap:6px}
#abie-event-app .amb-exact-totals{width:min(1120px,100% - 36px);margin:auto}
#amb-review-root{width:min(1180px,100% - 32px);margin:auto}
#amb-review-root .abie-card{width:100%;max-width:none;margin:0;background:transparent!important;border:0}
#amb-review-root .abie-hero-frame,#amb-review-root .abie-header{display:none!important}
#amb-review-root .abie-body{padding:0;background:transparent!important}
#amb-review-root .amb-review-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr);gap:22px}
#amb-review-root .amb-review-main .amb-section,#amb-review-root .amb-review-checkout .amb-section,#amb-review-root .amb-terms-block{background:linear-gradient(120deg,#fff,#f7f1e9)!important;color:#181511;border:1px solid #d4ac6d;border-radius:18px;padding:20px;margin:0 0 20px}
#amb-review-root .amb-card{background:transparent!important;border:0!important;box-shadow:none!important}
#amb-review-root .amb-section-title{font:normal 29px Georgia,serif;color:#17130f}
#amb-review-root .amb-qty-btn{border-radius:50%;border:1px solid #c19b5d;background:#fff;width:31px;height:31px;color:#151311}
#amb-review-root .amb-btn-primary{background:linear-gradient(110deg,#efcf90,#cfa05e);border:0;border-radius:30px;color:#151311}
#amb-review-root .amb-btn-secondary{border:1px solid #bd955d;border-radius:30px;background:#fffaf2;color:#181511}
#amb-review-root .amb-fee-disclosure{color:#64513e}
@media(max-width:760px){#amb-review-root .amb-review-layout{grid-template-columns:1fr}#abie-booking-app .service-card.svc{padding:13px}#abie-booking-app .service-card .controls{margin-left:auto}}
@media(max-width:370px){.amb-exact-totals strong{font-size:13px}.amb-exact-totals{gap:4px}}


/* ABIE exact parallel preview: original V4 service-information guides.
   Kept isolated to preview; no legacy whole-page stylesheet overrides. */
.abie-level-modal,.abie-lash-modal,.abie-warning-modal {
  position:fixed;inset:0;z-index:11000;display:none;align-items:center;justify-content:center;
  box-sizing:border-box;padding:calc(14px + env(safe-area-inset-top,0px)) 12px calc(14px + env(safe-area-inset-bottom,0px));
  pointer-events:none;
}
.abie-level-modal.is-open,.abie-lash-modal.is-open,.abie-warning-modal.is-open {
  display:flex;pointer-events:auto;
}
.abie-level-backdrop,.abie-lash-backdrop,.abie-warning-backdrop {
  position:absolute;inset:0;background:rgba(5,5,5,.82);backdrop-filter:blur(4px);
}
.abie-level-box,.abie-lash-box,.abie-warning-box {
  position:relative;z-index:1;width:100%;max-width:680px;max-height:100%;margin:auto;
  overflow:auto;overscroll-behavior:contain;border:1px solid rgba(198,164,93,.6);
  box-shadow:0 28px 70px rgba(0,0,0,.75);background:linear-gradient(160deg,#171514,#080808);
  color:#f7f1e9;border-radius:18px;
}
.abie-level-box {display:flex;flex-direction:column;overflow:hidden;min-height:0;}
.abie-level-scroll {min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:22px 22px 30px;}
.abie-level-eyebrow {font:700 10px Arial,sans-serif;letter-spacing:.25em;color:#d2ab72;text-transform:uppercase;margin-bottom:8px;}
.abie-level-box h3 {font:normal 32px/1.2 Georgia,serif;color:#fffaf1;margin:2px 35px 10px 0;}
.abie-level-box h4 {font:normal 23px/1.2 Georgia,serif;color:#f9ead1;margin:0 0 10px;}
.abie-level-intro,.abie-level-body p,.abie-level-body li {
  color:#eee3d1;line-height:1.55;font-size:14px;
}
.abie-level-image-wrap img,.abie-lash-image-wrap img {
  display:block;max-width:100%;height:auto;max-height:48dvh;object-fit:contain;margin:10px auto;border-radius:9px;
}
.abie-level-close,.abie-lash-close {
  position:absolute;right:10px;top:10px;z-index:2;display:grid;place-items:center;
  min-height:42px;min-width:42px;font-size:24px;border:1px solid #d5b070;border-radius:50%;
  background:#13100e;color:#fff;cursor:pointer;
}
.abie-level-body {display:grid;gap:12px;margin-top:14px;}
.abie-level-body .level-tier {
  border:1px solid rgba(202,164,100,.4);background:rgba(255,255,255,.05);border-radius:12px;padding:16px;
}
.abie-level-body .level-tier.is-target {border:2px solid #e2bd78;background:rgba(198,164,93,.13);}
.abie-level-body ul {padding-left:22px;}
.abie-lash-box {background:#fffcf5;color:#1d1915;padding:24px;max-width:760px;}
.abie-lash-box h3 {font:normal 30px Georgia,serif;color:#1b1714;margin:0 48px 15px 0;}
.abie-warning-box {padding:24px;max-width:460px;}
.abie-warning-box h3 {font:normal 28px Georgia,serif;color:#f9e7c7;}
.abie-warning-box button {background:#e0be82;border:0;border-radius:10px;padding:12px 24px;color:#18130d;cursor:pointer;font-weight:700;}
.abie-level-modal button:focus-visible,.abie-lash-modal button:focus-visible,.abie-warning-modal button:focus-visible {
 outline:3px solid #e4c482;outline-offset:2px;
}

/* Approved Design Lab behavior: no legacy permanent add-on rows.
   Keep underlying V4 controls in the DOM for canonical cart mutation only. */
#abie-booking-app #recommended-addons {display:none!important;}

/* Design Lab "Finish Your Glam" optional add-on popup. */
.amb-exact-upgrade-overlay {
  position:fixed;inset:0;z-index:12000;display:none;align-items:center;justify-content:center;
  padding:calc(14px + env(safe-area-inset-top,0px)) 13px calc(14px + env(safe-area-inset-bottom,0px));
  background:rgba(0,0,0,.8);backdrop-filter:blur(4px);
}
.amb-exact-upgrade-overlay.is-open {display:flex;}
.amb-exact-upgrade-dialog {
  box-sizing:border-box;background:linear-gradient(145deg,#fff,#fbf6ed);border:2px solid #d1a459;
  box-shadow:0 28px 66px rgba(0,0,0,.7);color:#181713;border-radius:20px;
  width:min(600px,100%);max-height:90dvh;overflow:auto;overscroll-behavior:contain;padding:23px;
}
.amb-exact-upgrade-heading {display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px;}
.amb-exact-upgrade-heading h2 {font:normal 30px Georgia,serif;margin:0;color:#161411;}
.amb-exact-upgrade-heading button {background:#12100e;color:white;border:0;border-radius:50%;font-size:24px;min-width:40px;height:40px;cursor:pointer;}
.amb-exact-upgrade-intro {font-size:13px;line-height:1.55;color:#4e4538;margin:0 0 15px;}
.amb-exact-upgrade-card {border:1px solid #d4ad6f;border-radius:12px;background:#fff9ee;padding:14px;margin:10px 0;}
.amb-exact-upgrade-card .amb-exact-upgrade-row {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;}
.amb-exact-upgrade-card strong {font-weight:750;font-size:15px;}
.amb-exact-upgrade-card small {display:block;color:#64523b;line-height:1.45;font-size:12px;}
.amb-exact-upgrade-card .amb-exact-upgrade-availability {margin-top:8px;font-weight:650;color:#85602f;}
.amb-exact-upgrade-qty {display:flex;align-items:center;gap:10px;flex:none;}
.amb-exact-upgrade-qty button {width:36px;height:36px;border-radius:50%;border:1px solid #cba568;background:#fff;font-size:21px;color:#19140e;cursor:pointer;}
.amb-exact-upgrade-qty button:disabled {opacity:.35;cursor:not-allowed;}
.amb-exact-upgrade-qty b {min-width:17px;text-align:center;color:#18140e;}
.amb-exact-upgrade-total {font-weight:700;color:#392a18;font-size:15px;text-align:right;margin:12px 2px;}
.amb-exact-upgrade-error {color:#9f2222;font-weight:650;font-size:12px;}
.amb-exact-upgrade-actions {display:flex;gap:10px;margin-top:17px;}
.amb-exact-upgrade-actions button {flex:1;min-height:46px;padding:11px 16px;border-radius:28px;font-weight:750;cursor:pointer;}
.amb-exact-upgrade-skip {background:#080808;color:#fff;border:1px solid #b99253;}
.amb-exact-upgrade-apply {background:linear-gradient(115deg,#fff0c9,#e1bd7d,#f6dfaa);color:#23180b;border:1px solid #d2aa69;}
.amb-exact-upgrade-overlay button:focus-visible {outline:3px solid #bb8747;outline-offset:2px;}
@media(max-width:600px){
  .abie-level-modal,.abie-lash-modal,.abie-warning-modal {padding:8px;}
  .abie-level-scroll,.abie-lash-box {padding:18px 13px 24px;}
  .abie-level-box h3,.abie-lash-box h3 {font-size:24px;}
  .amb-exact-upgrade-overlay {padding:9px;}
  .amb-exact-upgrade-dialog {padding:17px;max-height:93dvh;}
  .amb-exact-upgrade-heading h2 {font-size:27px;}
  .amb-exact-upgrade-card {padding:12px;}
  .amb-exact-upgrade-actions {flex-direction:column;}
}

/* Readable fallback if legacy comparison artwork is no longer hosted. */
.amb-exact-comparison-fallback {margin:12px auto;padding:14px 16px;border:1px solid rgba(206,165,99,.6);border-radius:12px;color:#f8e7c7;background:rgba(201,160,93,.1);font-size:14px;line-height:1.55;}
.abie-lash-image-wrap .amb-exact-comparison-fallback {color:#362b1e;background:#fff8e9;}

/* Avoid upscaling locally optimized original comparison artwork in guides. */
.abie-level-image-wrap img,.abie-lash-image-wrap img{width:auto;max-width:min(100%,520px);height:auto;display:block;margin:10px auto;}


/* Optional supplemental services: two low-friction checkboxes, no inline cart. */
#abie-booking-app .amb-exact-needs {
  margin:22px auto 14px;max-width:100%;padding:0 1px;color:#fffdf7;
}
#abie-booking-app .amb-exact-needs-title {
  margin:0 0 12px;font:normal 24px/1.2 Georgia,serif;color:#fff7ec;
}
#abie-booking-app .amb-exact-needs-options {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;
}
#abie-booking-app .amb-exact-needs-option {
  display:flex;align-items:center;gap:12px;background:#fcf7ed;color:#17130d;
  border:1px solid #d3ad76;border-radius:14px;padding:14px 17px;
  cursor:pointer;min-height:68px;
}
#abie-booking-app .amb-exact-needs-option:has(input:checked) {
  border:2px solid #bf8f4b;background:#fff0d5;box-shadow:0 0 0 1px rgba(190,143,75,.18);
}
#abie-booking-app .amb-exact-needs-option input {
  appearance:auto;accent-color:#b0833e;width:22px;height:22px;flex:none;margin:0;
}
#abie-booking-app .amb-exact-needs-option strong {
  font:700 16px/1.3 Arial,sans-serif;display:block;letter-spacing:0;
}
#abie-booking-app .amb-exact-needs-option small {
  display:block;color:#685339;font:normal 12px/1.4 Arial,sans-serif;margin-top:3px;
}
#abie-booking-app .amb-exact-needs-help {
  color:#d8cdbb;font:normal 12px/1.4 Arial,sans-serif;margin:10px 0 0;
}
#abie-booking-app .amb-exact-edit-extras {
  display:inline-block;margin:10px 0;padding:6px 0;background:transparent;border:0;
  text-decoration:underline;color:#f1c981;cursor:pointer;font-weight:700;
}
.amb-exact-upgrade-group {
  margin:18px 0 0;padding-top:12px;border-top:1px solid rgba(196,148,86,.3);
}
.amb-exact-upgrade-group:first-child {border:0;margin-top:0;padding-top:0;}
.amb-exact-upgrade-group h3 {font:normal 22px/1.2 Georgia,serif;margin:0 0 6px;color:#201810;}
.amb-exact-upgrade-group > p {
  font-size:12px;line-height:1.55;color:#62513a;margin:0 0 11px;
}
.amb-exact-upgrade-group[data-amb-group="kids"] > p {
  border-left:3px solid #c89856;background:#fff3dd;
  padding:9px 11px;border-radius:2px 8px 8px 2px;color:#453622;
}
@media(max-width:650px) {
  #abie-booking-app .amb-exact-needs {margin:17px auto 9px;}
  #abie-booking-app .amb-exact-needs-title {font-size:21px;}
  #abie-booking-app .amb-exact-needs-options {grid-template-columns:1fr;gap:9px;}
  #abie-booking-app .amb-exact-needs-option {min-height:62px;padding:11px 13px;}
  .amb-exact-upgrade-group h3 {font-size:21px;}
}


/* V4 Exact preview: defer all visible pricing until Review & Pay.
   Keep counter IDs mounted for the unchanged V4 calculation/save controller. */
#abie-booking-app .amb-exact-totals,
#abie-event-app .amb-exact-totals {
  display:none!important;
}

/* Extend the SAME approved Vegas hero artwork behind the event form, fading
   naturally to black instead of stopping at the top edge of the card. */
#abie-event-app .hero {
  overflow:visible;
}
#abie-event-app .hero::before {
  inset:0 0 -310px;
  background-image:
    linear-gradient(90deg,rgba(5,5,5,.85) 0%,rgba(5,5,5,.70) 24%,rgba(5,5,5,.17) 65%,transparent 100%),
    linear-gradient(180deg,transparent 0%,rgba(5,5,5,.03) 48%,rgba(5,5,5,.66) 79%,#070707 100%),
    url("https://cdn.shopify.com/s/files/1/0606/9747/7339/files/abie-v4-event-details-las-vegas-drone-hero.png?v=1791495427");
  background-size:cover;
  background-position:center 73%;
  background-repeat:no-repeat;
  pointer-events:none;
}

/* Gold travel disclosure lives on the Your Schedule line, not over the hero. */
#abie-event-app .amb-exact-schedule-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
}
#abie-event-app .amb-exact-schedule-heading h2 {
  flex:0 0 auto;
}
#abie-event-app .amb-exact-schedule-heading .travel {
  margin:0 0 0 auto;
  max-width:min(100%,360px);
  flex:0 1 auto;
  white-space:normal;
  font:normal 11px/1.35 Arial,sans-serif;
  padding:8px 12px;
  border-color:#c9a368;
  background:linear-gradient(105deg,#211b14,#110f0c);
  color:#f9e9c9;
  box-shadow:0 2px 8px rgba(0,0,0,.12);
}
#abie-event-app .amb-exact-schedule-heading .travel strong {
  color:#f8d38b;
}
@media (max-width:760px) {
  #abie-event-app .hero::before {
    inset:0 0 -235px;
    background-image:
      linear-gradient(90deg,rgba(5,5,5,.84) 0%,rgba(5,5,5,.46) 55%,rgba(5,5,5,.13) 100%),
      linear-gradient(180deg,transparent 0%,rgba(5,5,5,.10) 42%,rgba(5,5,5,.76) 82%,#070707 100%),
      url("https://cdn.shopify.com/s/files/1/0606/9747/7339/files/abie-v4-event-details-las-vegas-drone-hero.png?v=1791495427");
    background-size:cover;
    background-position:50% 55%;
  }
  #abie-event-app .amb-exact-schedule-heading {
    align-items:flex-start;
    column-gap:10px;
    row-gap:9px;
  }
  #abie-event-app .amb-exact-schedule-heading .travel {
    padding:7px 9px;
    font-size:10px;
    max-width:100%;
  }
}


/* QA Event Details: keep the travel disclosure readable at any ambient light. */
#abie-event-app .amb-exact-schedule-heading .travel,
#abie-event-app .amb-exact-schedule-heading .travel span,
#abie-event-app .amb-exact-schedule-heading .travel strong {
  color:#fff!important;
  letter-spacing:normal!important;
  opacity:1!important;
}
#abie-event-app .amb-exact-schedule-heading .travel {
  font-size:12px;
  line-height:1.4;
  max-width:min(100%,385px);
  background:#120f0c;
  border:1px solid #b99057;
}
#abie-event-app .amb-exact-schedule-heading .travel strong {font-weight:800;}
#abie-event-app .amb-exact-schedule-heading .travel span[aria-hidden="true"] {
  color:#e3ba78!important;
  flex:0 0 auto;
}

/* V4 Exact Review & Pay: restore black canvas and logo immediately at the top.
   The shared native V4 review stylesheet must not paint this outer shell white. */
html:has(body#amb-v4-exact-review-page),
body#amb-v4-exact-review-page {
  background:#080707!important;
  color:#fff!important;
  min-height:100%;
}
body#amb-v4-exact-review-page > .wrap {
  background:#080707!important;
  padding-top:5px;
}
body#amb-v4-exact-review-page .top {
  height:72px;
  min-height:72px;
  background:#080707!important;
  padding:4px 0 8px;
  margin:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid rgba(218,181,120,.34);
}
body#amb-v4-exact-review-page .top img {
  display:block;
  width:166px;
  height:auto;
  max-height:61px;
  object-fit:contain;
  object-position:left center;
}
body#amb-v4-exact-review-page .top .visit {
  background:#080707;
  border:1px solid #eee;
  color:#fff;
}
body#amb-v4-exact-review-page .hero5 {
  margin-top:0;
}
body#amb-v4-exact-review-page .back,
body#amb-v4-exact-review-page .foot,
body#amb-v4-exact-review-page .preview {
  background:transparent;
}

/* One modal for adult tiers, specialty services and add-ons.
   Quantity changes are draft-only until the single V4 save completes. */
.amb-exact-editor-overlay {
  position:fixed;inset:0;z-index:14000;padding:18px;
  display:flex;align-items:center;justify-content:center;
  background:rgba(0,0,0,.8);backdrop-filter:blur(5px);
}
.amb-exact-editor-panel {
  display:flex;flex-direction:column;width:min(735px,100%);
  max-height:min(92dvh,900px);overflow:hidden;
  color:#1a1510;background:#fffaf4;border:1px solid #cba366;
  border-radius:19px;box-shadow:0 24px 85px rgba(0,0,0,.65);
}
.amb-exact-editor-head {
  display:flex;align-items:center;justify-content:space-between;
  gap:15px;padding:18px 22px 14px;border-bottom:1px solid #e9d7ba;
}
.amb-exact-editor-head h2 {
  font:normal clamp(25px,3vw,32px)/1.15 Georgia,serif;margin:0;color:#16100b;
}
.amb-exact-editor-x {
  flex:0 0 36px;height:36px;border-radius:50%;border:0;
  color:#fff;background:#12100d;font-size:24px;line-height:1;
}
.amb-exact-editor-content {
  overflow-y:auto;overscroll-behavior:contain;min-height:0;
  padding:18px 22px 24px;
}
.amb-exact-editor-hint {
  font:13px/1.5 Arial,sans-serif;color:#645441;margin:0 0 17px;
}
.amb-exact-editor-group {
  margin:0 0 12px;border:1px solid #d7b987;border-radius:12px;
  background:#fff;overflow:hidden;
}
.amb-exact-editor-group summary {
  cursor:pointer;list-style-position:inside;
  padding:13px 15px;background:#f8f0e4;
  color:#21180e;font:normal 21px Georgia,serif;
}
.amb-exact-editor-policy {
  font-size:12px;line-height:1.45;color:#554025;
  padding:11px 14px;background:#fff2d9;margin:0;
}
.amb-exact-editor-row {
  display:flex;justify-content:space-between;align-items:center;
  gap:13px;padding:12px 14px;border-top:1px solid #efe4d4;
}
.amb-exact-editor-copy {min-width:0;}
.amb-exact-editor-copy strong {
  display:block;color:#1a1510;font:700 14px/1.35 Arial,sans-serif;
}
.amb-exact-editor-copy small {
  display:block;color:#91672f;font-size:12px;margin-top:3px;
}
.amb-exact-editor-copy p {
  font-size:11px;line-height:1.4;color:#675845;
  margin:5px 0 0;
}
.amb-exact-editor-counter {
  display:flex;align-items:center;justify-content:flex-end;
  gap:10px;flex:0 0 auto;
}
.amb-exact-editor-counter button {
  border:1px solid #caa365;border-radius:50%;background:#fff;
  color:#18120c;width:35px;height:35px;font-size:20px;
}
.amb-exact-editor-counter button:disabled {opacity:.32;cursor:not-allowed;}
.amb-exact-editor-counter span {
  min-width:15px;text-align:center;font-weight:700;
}
.amb-exact-editor-focused {background:#fff4dc;}
.amb-exact-editor-error {
  margin:0 22px;padding:12px 14px;
  color:#8a2421;background:#fff0ec;border-radius:8px;
  font-size:13px;line-height:1.4;
}
.amb-exact-editor-footer {
  flex:0 0 auto;display:flex;flex-wrap:wrap;align-items:center;
  gap:10px;padding:14px 22px 17px;border-top:1px solid #e9d7ba;
  background:#fffbf4;
}
.amb-exact-editor-total {
  flex:1 1 100%;display:flex;justify-content:space-between;
  align-items:center;gap:10px;color:#5e4830;font-size:12px;
}
.amb-exact-editor-total strong {font-size:19px;color:#17100a;}
.amb-exact-editor-footer button {
  flex:1 1 180px;border-radius:24px;padding:12px 17px;
  font-weight:700;border:1px solid #c79d5f;
}
.amb-exact-editor-cancel {background:#111;color:#fff;}
.amb-exact-editor-save {background:linear-gradient(110deg,#f8e4b7,#e1b66e);color:#18130b;}
.amb-exact-editor-footer button:disabled {opacity:.5;}
.amb-exact-editor-contact {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;
}
.amb-exact-editor-field {display:flex;flex-direction:column;gap:7px;}
.amb-exact-editor-field span {font-weight:700;font-size:12px;}
.amb-exact-editor-field input {
  width:100%;min-width:0;padding:12px;border:1px solid #ccb58c;
  border-radius:9px;background:#fff;color:#17100c;
}
.amb-exact-editor-field:last-child {grid-column:1/-1;}
@media(max-width:760px) {
  body#amb-v4-exact-review-page > .wrap {padding-top:3px;}
  body#amb-v4-exact-review-page .top {height:63px;min-height:63px;padding:4px 0;}
  body#amb-v4-exact-review-page .top img {width:144px;max-height:53px;}
  #abie-event-app .amb-exact-schedule-heading .travel {font-size:11px;line-height:1.4;}
  .amb-exact-editor-overlay {padding:9px;}
  .amb-exact-editor-panel {max-height:calc(100dvh - 18px);border-radius:14px;}
  .amb-exact-editor-head {padding:15px 13px 12px;}
  .amb-exact-editor-content {padding:13px 12px 18px;}
  .amb-exact-editor-row {gap:9px;padding:11px;}
  .amb-exact-editor-counter {gap:6px;}
  .amb-exact-editor-counter button {width:32px;height:32px;}
  .amb-exact-editor-footer {padding:12px;gap:8px;}
  .amb-exact-editor-footer button {flex-basis:calc(50% - 6px);padding:12px 9px;font-size:12px;}
  .amb-exact-editor-contact {grid-template-columns:1fr;}
  .amb-exact-editor-field:last-child {grid-column:auto;}
}


/* QA-only Review & Pay final approved hero (artwork already contains the logo).
   Remove duplicated page-logo and Visit Site header without touching the hero. */
body#amb-v4-exact-review-page > .wrap {
  padding-top: 12px !important;
}
body#amb-v4-exact-review-page .top {
  display: none !important;
}
body#amb-v4-exact-review-page .hero5 {
  margin-top: 0 !important;
}

/* Accessible collapsible booking terms. */
body#amb-v4-exact-review-page .amb-terms > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 9px;
  list-style: none;
  cursor: pointer;
}
body#amb-v4-exact-review-page .amb-terms > summary::-webkit-details-marker {
  display: none;
}
body#amb-v4-exact-review-page .amb-terms > summary::after {
  content: "";
  flex: 0 0 9px;
  width: 9px;
  height: 9px;
  margin-right: 4px;
  border-right: 2px solid #9b7134;
  border-bottom: 2px solid #9b7134;
  transform: rotate(45deg);
  transition: transform 180ms ease;
}
body#amb-v4-exact-review-page .amb-terms[open] > summary::after {
  transform: rotate(225deg);
}
body#amb-v4-exact-review-page .amb-terms > summary:focus-visible {
  outline: 2px solid #ac803e;
  outline-offset: 2px;
}
body#amb-v4-exact-review-page .amb-exact-a2p-disclosure {
  margin: -4px 0 13px 29px;
  color: #695a48;
  font: normal 10.5px/1.55 Arial, sans-serif;
  letter-spacing: 0;
}
body#amb-v4-exact-review-page .amb-exact-a2p-disclosure strong {
  color: #473825;
}
@media (max-width: 760px) {
  body#amb-v4-exact-review-page > .wrap {
    padding-top: 9px !important;
  }
  body#amb-v4-exact-review-page .amb-exact-a2p-disclosure {
    margin-left: 0;
    font-size: 10px;
  }
}

/* Explicit expand/collapse affordance for V4 exact Review terms. */
body#amb-v4-exact-review-page #amb-review-root details.amb-terms > summary {
  display:flex!important;align-items:center;justify-content:space-between;
  gap:12px;list-style:none;cursor:pointer;
}
body#amb-v4-exact-review-page #amb-review-root details.amb-terms > summary::-webkit-details-marker {display:none;}
body#amb-v4-exact-review-page #amb-review-root details.amb-terms > summary::after {
  content:"";display:block;flex:0 0 10px;width:10px;height:10px;
  border-right:2px solid #a47a39;border-bottom:2px solid #a47a39;
  transform:rotate(45deg);transition:transform .15s ease;
}
body#amb-v4-exact-review-page #amb-review-root details.amb-terms[open] > summary::after {
  transform:rotate(225deg);
}
body#amb-v4-exact-review-page #amb-review-root .amb-exact-a2p-disclosure {
  font-size:11px;line-height:1.45;color:#5e5344;margin:10px 0 15px;
}
@media(max-width:760px) {
 body#amb-v4-exact-review-page #amb-review-root details.amb-terms > summary::after {width:9px;height:9px;flex-basis:9px;}
}

/* Keep payment choices equal in size. Preserve each button's original colors and typography. */
body#amb-v4-exact-review-page #amb_pay_deposit_btn,
body#amb-v4-exact-review-page #amb_pay_full_btn {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 52px;
}

/* Full-payment action is a nested flex/grid item. Without an explicit full-width
   parent, its button is 100% of a shrink-wrapped wrapper, not the deposit width. */
body#amb-v4-exact-review-page #amb-review-root .amb-checkout-action-box .amb-actions-secondary {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  align-self: stretch;
}
