  /* ---- additions specific to the event-inquiry wizard only (not in shared.css) ----
     Built from the same tokens: --gold, --gold-deep, --burgundy, --charcoal, --line, --off-white */

  .ei-rail{ display:flex; align-items:center; justify-content:space-between; margin:0 0 26px; position:relative; }
  .ei-rail::before{ content:""; position:absolute; top:14px; left:14px; right:14px; height:1px; background:var(--line); z-index:0; }
  .ei-stamp{
    position:relative; z-index:1; width:28px; height:28px; border-radius:50%;
    background:var(--white); border:1.5px solid var(--line);
    display:flex; align-items:center; justify-content:center;
    font-family:var(--display); font-weight:700; font-size:.85rem; color:var(--ink-soft);
  }
  .ei-stamp.active{ border-color:var(--gold-deep); color:var(--gold-deep); background:var(--gold-soft); }
  .ei-stamp.done{ border-color:var(--gold-deep); color:#fff; background:var(--gold-deep); }

  .ei-label{ display:block; font-family:var(--display); font-weight:600; font-size:1.125rem; text-transform:uppercase; letter-spacing:.06em; color:var(--charcoal); margin:18px 0 8px; }

  .ei-step{ display:none; }
  .ei-step.active{ display:block; animation:fade .3s ease; }

  .ei-choice-grid{ display:grid; gap:10px; margin:4px 0 0; }
  .ei-choice{
    border:1px solid var(--line); border-radius:3px; padding:14px 16px; cursor:pointer;
    display:flex; align-items:flex-start; gap:10px; background:var(--white);
  }
  .ei-choice:hover{ border-color:var(--gold); }
  .ei-choice.selected{ border-color:var(--gold-deep); background:var(--gold-soft); }
  .ei-choice input{ margin-top:4px; }
  .ei-choice .ei-name{ font-family:var(--display); font-weight:700; font-size:1.05rem; }
  .ei-choice .ei-meta{ font-size:.92rem; color:var(--ink-soft); margin-top:3px; font-style:italic; }

  .ei-toggle-row{ display:flex; gap:10px; margin-top:4px; }
  .ei-toggle{
    flex:1; text-align:center; padding:12px 10px; border:1px solid var(--line); border-radius:3px;
    font-family:var(--display); font-weight:600; text-transform:uppercase; letter-spacing:.04em;
    font-size:.95rem; color:var(--ink-soft); background:var(--white); cursor:pointer;
  }
  .ei-toggle.active{ background:var(--gold); color:#fff; border-color:var(--gold); }

  .ei-menu-item{ display:flex; align-items:center; justify-content:space-between; gap:10px; padding:11px 0; border-bottom:1px dotted var(--line); }
  .ei-menu-item:last-child{ border-bottom:0; }
  .ei-menu-item .ei-mi-name{ font-weight:600; font-size:1rem; }
  .ei-menu-item .ei-mi-price{ font-size:.9rem; color:var(--ink-soft); font-style:italic; }
  .ei-qty{ display:flex; align-items:center; gap:8px; }
  .ei-qty button{
    width:28px; height:28px; border-radius:3px; border:1px solid var(--line); background:#fff; cursor:pointer; font-size:15px; line-height:1;
  }
  .ei-qty span{ min-width:18px; text-align:center; font-weight:700; }

  .ei-notice{ border-radius:3px; padding:12px 14px; font-size:.92rem; margin-top:14px; font-style:italic; }
  .ei-notice.warn{ background:#FBF0E3; color:#8a5a22; border:1px solid #EAD2AC; }
  .ei-notice.info{ background:var(--gold-soft); color:var(--ink-soft); border:1px solid var(--line); }

  .ei-line{ display:flex; justify-content:space-between; padding:8px 0; font-size:1rem; border-bottom:1px dashed var(--line); }
  .ei-line .ei-amt{ font-weight:700; font-family:var(--display); }
  .ei-line.ei-sub{ color:var(--ink-soft); font-size:.88rem; padding-left:14px; font-style:italic; border-bottom:none; }
  .ei-line.ei-total{ border-bottom:none; border-top:2px solid var(--charcoal); margin-top:8px; padding-top:14px; font-size:1.25rem; }
  .ei-section-label{ font-family:var(--display); font-size:.85rem; letter-spacing:.1em; text-transform:uppercase; color:var(--gold-deep); font-weight:700; margin:20px 0 6px; }
  .ei-section-label:first-child{ margin-top:0; }

  .ei-nav-row{ display:flex; justify-content:space-between; gap:12px; margin-top:26px; }
  .ei-nav-row .btn{ width:auto; flex:1; }
  .ei-back{ background:transparent !important; color:var(--ink-soft) !important; border:1.5px solid var(--line) !important; }
  .ei-back:hover{ border-color:var(--ink-soft) !important; }

  /* ---- validation toast (replaces native alert()) ---- */
  .ei-toast{
    position:fixed; left:50%; bottom:24px; z-index:300; max-width:90vw;
    transform:translateX(-50%) translateY(12px); opacity:0; pointer-events:none;
    transition:opacity .22s ease, transform .22s ease;
    background:#FBF0E3; color:#8a5a22; border:1px solid #EAD2AC; border-radius:4px;
    padding:13px 20px; font-size:.92rem; font-style:italic; text-align:center;
    box-shadow:0 10px 28px rgba(33,30,27,.22);
  }
  .ei-toast.show{ opacity:1; transform:translateX(-50%) translateY(0); }

  .ei-disclaimer{ font-size:.88rem; color:var(--ink-soft); background:var(--gold-soft); border:1px solid var(--line); border-radius:3px; padding:14px 16px; margin-top:18px; font-style:italic; }
  .ei-req{ color:var(--burgundy); }

  /* ---- photo gallery link + modal ---- */
  .ei-photos-link{
    display:inline-block; margin-top:8px; background:none; border:none; padding:0; cursor:pointer;
    font-family:var(--display); font-weight:600; font-size:.92rem; letter-spacing:.02em;
    color:var(--gold-deep); text-decoration:underline; text-underline-offset:3px;
  }
  .ei-photos-link:hover{ color:var(--burgundy); }

  .ei-modal-backdrop{
    display:none; position:fixed; inset:0; z-index:200; background:rgba(33,30,27,.82);
    align-items:center; justify-content:center; padding:20px;
  }
  .ei-modal-backdrop.open{ display:flex; }
  .ei-modal{
    background:var(--white); border-radius:6px; max-width:640px; width:100%;
    max-height:90vh; overflow-y:auto; position:relative; padding:28px 24px 24px;
    box-shadow:0 20px 60px rgba(0,0,0,.4);
  }
  .ei-modal-close{
    position:absolute; top:14px; right:16px; background:none; border:none; cursor:pointer;
    font-size:1.8rem; line-height:1; color:var(--ink-soft); padding:4px 8px;
  }
  .ei-modal-close:hover{ color:var(--burgundy); }
  .ei-modal-eyebrow{
    font-family:var(--display); font-weight:700; text-transform:uppercase; letter-spacing:.14em;
    font-size:.85rem; color:var(--gold-deep); margin:0 0 4px;
  }
  .ei-modal-title{ font-family:var(--head); font-weight:700; text-transform:uppercase; letter-spacing:.02em; font-size:1.5rem; margin:0 0 16px; }
  .ei-photo-viewer{ position:relative; border-radius:4px; overflow:hidden; background:#111; aspect-ratio:4/3; }
  .ei-photo-viewer img{ width:100%; height:100%; object-fit:cover; display:block; }
  .ei-photo-nav{
    position:absolute; top:50%; transform:translateY(-50%); background:rgba(0,0,0,.45); color:#fff;
    border:none; width:38px; height:38px; border-radius:50%; font-size:1.1rem; cursor:pointer;
  }
  .ei-photo-nav:hover{ background:rgba(0,0,0,.7); }
  .ei-photo-prev{ left:10px; } .ei-photo-next{ right:10px; }
  .ei-photo-caption{ font-style:italic; color:var(--ink-soft); font-size:.92rem; margin:12px 0 14px; }
  .ei-photo-thumbs{ display:grid; grid-template-columns:repeat(5,1fr); gap:6px; }
  .ei-photo-thumbs img{
    width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:3px; cursor:pointer;
    border:2px solid transparent; opacity:.7;
  }
  .ei-photo-thumbs img.active{ border-color:var(--gold-deep); opacity:1; }
  .ei-photo-thumbs img:hover{ opacity:1; }
  @media (max-width:480px){ .ei-photo-thumbs{ grid-template-columns:repeat(3,1fr); } }
