#mtc-vendors .motowncon-toolbar { position: sticky; top: 72px; z-index: 20; margin: 10px 0 28px; padding: 14px; border:1px solid var(--line); border-radius:18px; background: rgba(16,9,22,.92); backdrop-filter: blur(14px); box-shadow: var(--shadow); }
#mtc-vendors .motowncon-search-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap: 10px; align-items:center; }
#mtc-vendors .motowncon-search-wrap { position:relative; }
#mtc-vendors .motowncon-search-icon { position:absolute; left:14px; top:50%; transform: translateY(-50%); color: var(--muted); width:20px; height:20px; pointer-events:none; }
#mtc-vendors #vendorSearch { width:100%; min-height:52px; border-radius:14px; border:1px solid #5f3a7d; background:#0f0714; color: var(--text); padding: 12px 44px 12px 46px; outline:none; }
#mtc-vendors #vendorSearch::placeholder { color:#9b86aa; }
#mtc-vendors #vendorSearch:focus { border-color: var(--purple2); box-shadow: 0 0 0 3px rgba(178,108,255,.15); }
#mtc-vendors #clearSearch { position:absolute; right:7px; top:7px; width:36px; height:36px; border:0; border-radius:10px; background:transparent; color:var(--muted); cursor:pointer; }
#mtc-vendors #clearSearch:hover { background:#23112f; color:var(--text); }
#mtc-vendors .motowncon-jump-btn { min-height:52px; display:inline-flex; align-items:center; justify-content:center; padding:0 16px; border-radius:14px; background: rgba(255,106,43,.11); border:1px solid rgba(255,106,43,.45); color:#ffd5bc; text-decoration:none; font-weight:900; white-space:nowrap; }
#mtc-vendors .motowncon-jump-btn:hover { background: rgba(255,106,43,.18); }
#mtc-vendors .filters { margin-top: 10px; display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
#mtc-vendors .filter-btn { border:1px solid var(--line); background:#110817; color:var(--muted); border-radius:999px; min-height:38px; padding: 7px 12px; font-weight:800; cursor:pointer; }
#mtc-vendors .filter-btn[aria-pressed="true"] { background: rgba(178,108,255,.16); color: var(--text); border-color: rgba(178,108,255,.7); }
#mtc-vendors .result-count { margin-left:auto; color:var(--muted); font-size:.92rem; font-weight:800; }
#mtc-vendors .motowncon-section-head { display:flex; justify-content:space-between; gap:16px; align-items:end; margin: 34px 0 14px; }
#mtc-vendors .motowncon-section-head h2 { margin:0; font-size: clamp(1.35rem, 3vw, 2rem); letter-spacing:-.02em; }
#mtc-vendors .motowncon-section-head p { margin:.35rem 0 0; color:var(--muted); }
#mtc-vendors .panel { border:1px solid var(--line); border-radius: var(--radius); background: linear-gradient(180deg, rgba(178,108,255,.05), rgba(255,106,43,.02)), var(--panel); box-shadow: var(--shadow); overflow:hidden; }
#mtc-vendors .motowncon-panel-top { padding: 14px 16px; border-bottom:1px solid var(--line); display:flex; flex-wrap:wrap; gap:10px 18px; align-items:center; color: var(--muted); font-size:.9rem; }
#mtc-vendors .legend { display:flex; gap:12px; flex-wrap:wrap; }
#mtc-vendors .legend-item { display:inline-flex; align-items:center; gap:8px; }
#mtc-vendors .legend-swatch { width:13px; height:13px; border-radius:4px; border:2px solid #fff3; background: rgba(255,106,43,.14); }
#mtc-vendors .legend-swatch.pending { background: rgba(137,122,148,.18); border-color: rgba(137,122,148,.7); }
#mtc-vendors .motowncon-map-scroll { overflow:auto; padding: 16px; background: radial-gradient(circle at center, rgba(255,255,255,.015), transparent 70%); }
#mtc-vendors .motowncon-map-stage { width: 100%; min-width: 880px; max-width: 1200px; margin: 0 auto; }
#mtc-vendors .motowncon-map-artboard { position:relative; width:100%; aspect-ratio: 1999 / 1545; border-radius: 18px; overflow: hidden; }
#mtc-vendors .motowncon-map-artboard img { width:100%; height:100%; display:block; user-select:none; -webkit-user-drag:none; }
#mtc-vendors .motowncon-hotspot { position:absolute; border:2px solid transparent; background: transparent; border-radius: 4px; cursor:pointer; transition: transform .12s ease, box-shadow .12s ease, background .12s ease, opacity .12s ease, border-color .12s ease; }
#mtc-vendors .motowncon-hotspot.assigned:hover, #mtc-vendors .motowncon-hotspot.assigned:focus-visible { border-color: #ffe8c7; background: rgba(255,255,255,.12); box-shadow: 0 0 0 3px rgba(255,106,43,.25); transform: translateY(-1px); }
#mtc-vendors .motowncon-hotspot.pending:hover, #mtc-vendors .motowncon-hotspot.pending:focus-visible { border-color: #d8cce0; background: rgba(255,255,255,.08); box-shadow: 0 0 0 3px rgba(137,122,148,.25); }
#mtc-vendors .motowncon-hotspot.is-dimmed { opacity: .18; }
#mtc-vendors .motowncon-hotspot.is-match { border-color: #ffd9ba; background: rgba(255,106,43,.14); box-shadow: 0 0 0 3px rgba(255,106,43,.22); }
#mtc-vendors .motowncon-hotspot.is-active { border-color: #fff; background: rgba(73,209,115,.22); box-shadow: 0 0 0 4px rgba(73,209,115,.25); }
#mtc-vendors .motowncon-selection-bar { display:none; margin-top:14px; padding: 14px 16px; border:1px solid var(--line); border-radius:16px; background: rgba(255,255,255,.025); }
#mtc-vendors .motowncon-selection-bar.show { display:block; }
#mtc-vendors .motowncon-selection-eyebrow { color:#ffb380; text-transform:uppercase; letter-spacing:.14em; font-size:.75rem; font-weight:900; }
#mtc-vendors .motowncon-selection-title { margin:.25rem 0 .35rem; font-size:1.15rem; font-weight:900; }
#mtc-vendors .motowncon-selection-meta { color:var(--muted); font-size:.92rem; }
#mtc-vendors .motowncon-selection-actions { margin-top:10px; display:flex; gap:8px; flex-wrap:wrap; }
#mtc-vendors .motowncon-directory { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:14px; }
#mtc-vendors .motowncon-vendor-card { border:1px solid #342042; background: radial-gradient(circle at 100% 0%, rgba(178,108,255,.08), transparent 9rem), var(--card); border-radius:18px; padding:16px; transition: transform .12s ease, border-color .12s ease; min-width:0; }
#mtc-vendors .motowncon-vendor-card:hover { transform: translateY(-1px); border-color:#5a3772; }
#mtc-vendors .motowncon-vendor-card.is-hidden { display:none; }
#mtc-vendors .motowncon-vendor-card.flash { border-color: var(--orange2); box-shadow: 0 0 0 3px rgba(255,106,43,.12); }
#mtc-vendors .motowncon-vendor-card-top { display:flex; justify-content:space-between; gap:10px; align-items:flex-start; }
#mtc-vendors .motowncon-booth-pill { display:inline-flex; align-items:center; min-height:30px; padding:4px 10px; border-radius:999px; font-size:.82rem; font-weight:900; color:#ffd7b5; border:1px solid rgba(255,106,43,.35); background: rgba(255,106,43,.1); }
#mtc-vendors .motowncon-status-dot { color:var(--muted); font-size:.77rem; font-weight:900; white-space:nowrap; }
#mtc-vendors .motowncon-status-dot::before { content:""; width:7px; height:7px; border-radius:50%; display:inline-block; margin-right:6px; background: var(--green2); vertical-align:1px; }
#mtc-vendors .motowncon-status-pending::before { background: var(--pending); }
#mtc-vendors .motowncon-vendor-name { margin:14px 0 16px; font-size:1.05rem; line-height:1.28; min-height:2.6em; overflow-wrap:anywhere; }
#mtc-vendors .motowncon-vendor-actions { display:flex; flex-wrap:wrap; gap:8px; }
#mtc-vendors .motowncon-social-link, #mtc-vendors .motowncon-pending-link { min-height:38px; display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:7px 11px; border-radius:11px; font-size:.85rem; font-weight:850; }
#mtc-vendors .motowncon-social-link { text-decoration:none; border:1px solid #4c305f; background:#100714; color:#eadcf7; }
#mtc-vendors .motowncon-social-link:hover { border-color: var(--purple2); background: rgba(178,108,255,.12); }
#mtc-vendors .motowncon-pending-link { color:#9989a3; border:1px dashed #473652; background:#100914; }
#mtc-vendors .motowncon-empty-state { display:none; margin-top:14px; border:1px dashed #5e476d; border-radius:16px; padding:22px; text-align:center; color:var(--muted); background: rgba(255,255,255,.02); }
#mtc-vendors .motowncon-empty-state.show { display:block; }
#mtc-vendors footer { border-top:1px solid rgba(255,255,255,.08); margin-top: 44px; padding: 28px 20px 38px; text-align:center; color: var(--muted); font-size:.9rem; }
@media (max-width: 960px) {#mtc-vendors .motowncon-directory { grid-template-columns: repeat(2, minmax(0,1fr)); }}
@media (max-width: 720px) {#mtc-vendors .hero { padding-top: 34px; }
#mtc-vendors .motowncon-search-row { grid-template-columns:1fr; }
#mtc-vendors .motowncon-jump-btn { width:100%; }
#mtc-vendors .motowncon-directory { grid-template-columns:1fr; }
#mtc-vendors .result-count { width:100%; margin-left:0; }
#mtc-vendors .motowncon-toolbar { top: 66px; }}
@media (prefers-reduced-motion: reduce) {}

#mtc-vendors {
  --bg:#0b080d; --panel:#171015; --panel2:#211219; --card:#211219;
  --text:#fff4e6; --muted:rgba(255,244,230,.75); --line:rgba(255,106,0,.36);
  --orange:#ff6a00; --orange2:#ff8a1f; --purple:#9e1b32; --purple2:#ff8a1f;
  --green:#3f6b32; --green2:#55bb77; --pending:#9c8899;
  color:var(--text); background: #0b080d;
  padding:68px 0 105px; line-height:1.5;
}
#mtc-vendors, #mtc-vendors * {box-sizing:border-box}
#mtc-vendors .motowncon-vendor-layout-wrap {max-width:1240px;margin:0 auto;padding:0 20px}
#mtc-vendors button, #mtc-vendors input {font:inherit}
#mtc-vendors .motowncon-section-head h2,#mtc-vendors .motowncon-selection-title {color:var(--text)}
#mtc-vendors .motowncon-section-head p {color:var(--muted)}
#mtc-vendors .motowncon-toolbar {top:95px;}
#mtc-vendors .panel {background:linear-gradient(135deg,rgba(158,27,50,.08),rgba(255,106,0,.06)),#171015}
#mtc-vendors .motowncon-vendor-card {background:linear-gradient(140deg,#211219,#100b0f);border-color:rgba(255,106,0,.28)}
#mtc-vendors .motowncon-vendor-card h3 {color:#fff4e6}
#mtc-vendors .motowncon-booth-pill {background:rgba(255,106,0,.13);color:#ffcb9f;border-color:rgba(255,106,0,.48)}
#mtc-vendors .filter-btn[aria-pressed="true"] {background:rgba(255,106,0,.18);border-color:#ff8a1f}
#mtc-vendors .motowncon-social-link:hover,#mtc-vendors .motowncon-social-link:focus-visible {border-color:#ff8a1f;background:rgba(255,106,0,.13)}
#mtc-vendors .motowncon-selection-bar {border-color:rgba(255,106,0,.34);background:#211219}
#mtc-vendors .motowncon-map-scroll {background:#0b080d}
#mtc-vendors #vendorSearch {font-size:16px;background:#0f0a0e;color:#fff4e6;border-color:rgba(255,106,0,.4)}
#mtc-vendors #vendorSearch:focus {border-color:#ff8a1f;box-shadow:0 0 0 3px rgba(255,106,0,.18)}
#mtc-vendors .motowncon-toolbar {background:rgba(23,16,21,.96)}
#mtc-vendors .result-count {color:#ffccb1}
#mtc-vendors .motowncon-vendor-card.flash {border-color:#ff8a1f}
#mtc-vendors .motowncon-vendor-name {color:#fff4e6}
#mtc-vendors .vh {position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
#mtc-vendors :focus-visible {outline:3px solid #ffd93d;outline-offset:3px}
#mtc-vendors .motowncon-section-head {scroll-margin-top:130px}
#interactive-map,#motowncon-directory {scroll-margin-top:130px}
.vendorHallHero {isolation:isolate;min-height:440px;display:flex;align-items:center;position:relative;
background-color:#0b080d; background-image:url('../../images/motowncon/bannermtccon.jpg') !important; background-position:center center !important; background-size:cover !important; background-repeat:no-repeat !important;}
.vendorHallHeroShade {position:absolute;inset:0;background:radial-gradient(circle at 18% 22%,rgba(255,106,0,.23),transparent 37%),linear-gradient(180deg,rgba(11,8,13,.46),rgba(11,8,13,.72));pointer-events:none}
.vendorHallHero .container {position:relative;z-index:1}
.vendorHallHero .breadcrumb-title {color:#fff4e6;font-size:clamp(2.7rem,7vw,5.6rem);text-shadow:0 7px 28px rgba(0,0,0,.7)}
.vendorHallHero p {max-width:740px;margin:22px auto 0;color:rgba(255,244,230,.88);text-align:center;font-size:1.08rem;line-height:1.65}
.vendorHallHero .vendorHeroCounts {display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:23px}
.vendorHallHero .vendorHeroCounts span {padding:8px 14px;color:#fff4e6;border:1px solid rgba(255,106,0,.35);background:rgba(11,8,13,.66);border-radius:999px;font-weight:700}
#mtc-vendors .motowncon-toolbar .motowncon-jump-btn {color:#fff4e6;border-color:rgba(255,106,0,.55);background:linear-gradient(135deg,rgba(255,106,0,.18),rgba(158,27,50,.14))}
@media(max-width:767.98px){.vendorHallHero{min-height:375px}.vendorHallHero p{font-size:.98rem}#mtc-vendors{padding-top:38px}#mtc-vendors .motowncon-toolbar{position:relative;top:auto}#mtc-vendors .motowncon-section-head{display:block;text-align:center}#mtc-vendors .motowncon-map-scroll{padding:10px}#mtc-vendors .motowncon-vendor-layout-wrap{padding:0 16px}}


/* Mobile map: full-layout overview by default, optional enlarged view for tapping booths. */
#mtc-vendors .motowncon-mobile-map-help { display: none; }
@media (max-width: 767.98px) {
  #mtc-vendors .motowncon-mobile-map-help {
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    text-align: center;
    line-height: 1.5;
    color: #fff4e6;
  }
  #mtc-vendors .motowncon-mobile-map-toggle {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-height: 44px;
    padding: 10px 20px;
    color: #fff4e6;
    background: #9e1b32;
    border: 1px solid #ff8a1f;
    border-radius: 12px;
    font-weight: 800;
    cursor: pointer;
  }
  #mtc-vendors .motowncon-map-scroll {
    overflow-x: auto;
    overflow-y: hidden;
    padding: 6px;
    -webkit-overflow-scrolling: touch;
  }
  #mtc-vendors .motowncon-map-stage {
    width: 100%;
    min-width: 0;
    max-width: none;
  }
  #mtc-vendors .motowncon-map-scroll.is-enlarged .motowncon-map-stage {
    width: 940px;
    min-width: 940px;
  }
  #mtc-vendors .motowncon-map-artboard { border-radius: 8px; }
  #mtc-vendors .motowncon-hotspot:focus-visible {
    outline: 3px solid #fff4e6;
    outline-offset: 2px;
  }
}
