/*
 * GABE Design System 1.0 — v0.72.0
 * --------------------------------------------------------------------------
 * Authoritative shared visual tokens and component normalization for GABE
 * Promotions Ticketing. Legacy module CSS remains for feature-specific layout;
 * shared presentation resolves here so customer, staff and admin surfaces feel
 * like one product.
 */

:root{
  /* Brand */
  --gv-brand:#c9a63b;
  --gv-brand-hover:#b8932d;
  --gv-brand-ink:#765a10;
  --gv-brand-focus:#8d6c12;
  --gv-brand-soft:#f8f3e3;
  --gv-brand-contrast:#17191f;

  /* Neutrals */
  --gv-ink:#17191f;
  --gv-text:#344054;
  --gv-text-muted:#667085;
  --gv-text-subtle:#98a2b3;
  --gv-canvas:#f6f7f9;
  --gv-surface:#fff;
  --gv-surface-soft:#f9fafb;
  --gv-border:#e4e7ec;
  --gv-border-strong:#d0d5dd;
  --gv-dark:#17191f;
  --gv-dark-hover:#0d0f12;

  /* Semantic status */
  --gv-success:#067647;
  --gv-success-bg:#ecfdf3;
  --gv-success-border:#abefc6;
  --gv-warning:#b54708;
  --gv-warning-bg:#fffaeb;
  --gv-warning-border:#fedf89;
  --gv-danger:#b42318;
  --gv-danger-bg:#fef3f2;
  --gv-danger-border:#fecdca;
  --gv-info:#175cd3;
  --gv-info-bg:#eef4ff;
  --gv-info-border:#b2ccff;

  /* Typography */
  --gv-font-sans:Inter,"Segoe UI Variable",Aptos,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --gv-text-xs:12px;
  --gv-text-sm:14px;
  --gv-text-base:16px;
  --gv-text-lg:18px;
  --gv-text-xl:20px;
  --gv-heading-sm:24px;
  --gv-heading-md:30px;
  --gv-heading-lg:38px;
  --gv-heading-xl:clamp(42px,5vw,60px);
  --gv-line-tight:1.15;
  --gv-line-body:1.55;
  --gv-line-copy:1.65;

  /* Space — 4/8 based */
  --gv-space-1:4px;
  --gv-space-2:8px;
  --gv-space-3:12px;
  --gv-space-4:16px;
  --gv-space-5:24px;
  --gv-space-6:32px;
  --gv-space-7:48px;
  --gv-space-8:64px;
  --gv-space-9:80px;

  /* Radius */
  --gv-radius-sm:8px;
  --gv-radius-md:12px;
  --gv-radius-lg:16px;
  --gv-radius-xl:24px;
  --gv-radius-full:999px;

  /* Elevation */
  --gv-shadow-xs:0 1px 2px rgba(16,24,40,.05);
  --gv-shadow-sm:0 4px 12px rgba(16,24,40,.06);
  --gv-shadow-md:0 12px 30px rgba(16,24,40,.10);
  --gv-shadow-lg:0 24px 64px rgba(16,24,40,.16);

  /* Controls */
  --gv-control-sm:36px;
  --gv-control:44px;
  --gv-control-lg:48px;
  --gv-focus-ring:0 0 0 3px rgba(141,108,18,.24);
  --gv-backdrop:rgba(16,24,40,.64);
  --gv-motion-fast:140ms;
  --gv-motion:180ms;

  /* Compatibility aliases — one source of truth */
  --gp-brand:var(--gv-brand);
  --gp-brand-ink:var(--gv-brand-ink);
  --gp-brand-soft:var(--gv-brand-soft);
  --gp-ink:var(--gv-ink);
  --gp-body:var(--gv-text);
  --gp-muted:var(--gv-text-muted);
  --gp-subtle:var(--gv-text-subtle);
  --gp-bg:var(--gv-canvas);
  --gp-surface:var(--gv-surface);
  --gp-border:var(--gv-border);
  --gp-dark:var(--gv-dark);
}

/* --------------------------------------------------------------------------
   Native GABE primitives — use these for new UI instead of module-specific CSS
   -------------------------------------------------------------------------- */
.gv-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--gv-control);padding:0 16px;border:1px solid transparent;border-radius:var(--gv-radius-md);font:700 var(--gv-text-sm)/1 var(--gv-font-sans);text-decoration:none;cursor:pointer;box-shadow:none;transition:background-color var(--gv-motion-fast) ease,border-color var(--gv-motion-fast) ease,color var(--gv-motion-fast) ease,transform var(--gv-motion-fast) ease}
.gv-button:hover:not(:disabled){transform:translateY(-1px)}.gv-button:disabled{opacity:.52;cursor:not-allowed}
.gv-button--brand{background:var(--gv-brand);border-color:var(--gv-brand);color:var(--gv-brand-contrast)}.gv-button--brand:hover:not(:disabled){background:var(--gv-brand-hover);border-color:var(--gv-brand-hover)}
.gv-button--primary{background:var(--gv-dark);border-color:var(--gv-dark);color:#fff}.gv-button--primary:hover:not(:disabled){background:var(--gv-dark-hover);border-color:var(--gv-dark-hover)}
.gv-button--secondary{background:#fff;border-color:var(--gv-border-strong);color:var(--gv-text)}.gv-button--secondary:hover:not(:disabled){background:var(--gv-brand-soft);border-color:var(--gv-brand);color:var(--gv-brand-ink)}
.gv-button--danger{background:var(--gv-danger);border-color:var(--gv-danger);color:#fff}.gv-button--ghost{background:transparent;color:var(--gv-text);border-color:transparent}
.gv-button--sm{min-height:var(--gv-control-sm);padding-inline:12px;font-size:var(--gv-text-xs)}.gv-button--lg{min-height:var(--gv-control-lg);padding-inline:20px;font-size:var(--gv-text-base)}
.gv-icon-button{display:inline-grid;place-items:center;width:var(--gv-control);height:var(--gv-control);border:1px solid var(--gv-border-strong);border-radius:var(--gv-radius-full);background:#fff;color:var(--gv-text);cursor:pointer}
.gv-card{background:var(--gv-surface);border:1px solid var(--gv-border);border-radius:var(--gv-radius-lg);padding:var(--gv-space-5);box-shadow:none}.gv-card--interactive{transition:transform var(--gv-motion) ease,border-color var(--gv-motion) ease,box-shadow var(--gv-motion) ease}.gv-card--interactive:hover{transform:translateY(-1px);border-color:var(--gv-border-strong);box-shadow:var(--gv-shadow-sm)}.gv-card--elevated{border-radius:var(--gv-radius-xl);box-shadow:var(--gv-shadow-md)}
.gv-field{display:grid;gap:6px}.gv-field>label,.gv-field>span:first-child{font:650 var(--gv-text-sm)/1.35 var(--gv-font-sans);color:#475467}.gv-field :where(input,select,textarea){width:100%;min-height:var(--gv-control);padding:10px 12px;border:1px solid var(--gv-border-strong);border-radius:var(--gv-radius-md);background:#fff;color:var(--gv-ink);font:var(--gv-text-sm)/1.45 var(--gv-font-sans);box-shadow:none}.gv-field small{font-size:var(--gv-text-xs);line-height:1.45;color:var(--gv-text-muted)}.gv-field.is-error :where(input,select,textarea){border-color:var(--gv-danger)}.gv-field.is-error small{color:var(--gv-danger)}
.gv-alert{display:grid;gap:4px;padding:12px 16px;border:1px solid var(--gv-info-border);border-radius:var(--gv-radius-md);background:var(--gv-info-bg);color:var(--gv-info);font:var(--gv-text-sm)/1.5 var(--gv-font-sans)}.gv-alert--success{background:var(--gv-success-bg);border-color:var(--gv-success-border);color:var(--gv-success)}.gv-alert--warning{background:var(--gv-warning-bg);border-color:var(--gv-warning-border);color:var(--gv-warning)}.gv-alert--danger{background:var(--gv-danger-bg);border-color:var(--gv-danger-border);color:var(--gv-danger)}
.gv-empty{display:grid;justify-items:center;gap:8px;padding:32px;border:1px dashed var(--gv-border-strong);border-radius:var(--gv-radius-lg);background:var(--gv-surface-soft);color:var(--gv-text-muted);text-align:center}.gv-empty>svg{width:32px;height:32px;color:var(--gv-text-subtle)}.gv-empty strong{color:var(--gv-ink);font-size:var(--gv-text-lg)}
.gv-badge{display:inline-flex;align-items:center;min-height:24px;padding:4px 8px;border-radius:var(--gv-radius-full);background:#f2f4f7;color:#475467;font:750 var(--gv-text-xs)/1 var(--gv-font-sans)}.gv-badge--success{background:var(--gv-success-bg);color:var(--gv-success)}.gv-badge--warning{background:var(--gv-warning-bg);color:var(--gv-warning)}.gv-badge--danger{background:var(--gv-danger-bg);color:var(--gv-danger)}
.gv-modal-backdrop{position:fixed;inset:0;display:grid;place-items:center;padding:18px;background:var(--gv-backdrop);backdrop-filter:blur(6px);z-index:999999}.gv-modal{width:min(560px,100%);max-height:90dvh;overflow:auto;padding:32px;border-radius:var(--gv-radius-xl);background:#fff;box-shadow:var(--gv-shadow-lg)}
.gv-skeleton{display:block;min-height:14px;border-radius:var(--gv-radius-sm);background:linear-gradient(90deg,#eef0f3 25%,#f8f9fb 37%,#eef0f3 63%);background-size:400% 100%;animation:gv-skeleton 1.35s ease infinite}.gv-skeleton--title{width:55%;min-height:24px}.gv-skeleton--line{width:100%}.gv-skeleton--line-short{width:68%}@keyframes gv-skeleton{0%{background-position:100% 50%}100%{background-position:0 50%}}
.gv-stack{display:grid;gap:var(--gv-space-4)}.gv-cluster{display:flex;align-items:center;gap:var(--gv-space-3);flex-wrap:wrap}

/* --------------------------------------------------------------------------
   Legacy token bridges
   -------------------------------------------------------------------------- */
.evto-app{
  --evto-accent:var(--gv-brand);
  --evto-black:var(--gv-dark);
  --evto-ink:var(--gv-ink);
  --evto-muted:var(--gv-text-muted);
  --evto-bg:var(--gv-canvas);
  --evto-card:var(--gv-surface);
  --gv-type-xs:var(--gv-text-xs);
  --gv-type-sm:var(--gv-text-sm);
  --gv-type-base:var(--gv-text-base);
  --gv-type-lg:var(--gv-text-lg);
  --gv-type-h3:var(--gv-text-xl);
  --gv-type-h2:var(--gv-heading-lg);
  --gv-type-h1:var(--gv-heading-xl);
}
.portal-app{
  --gp-brand:var(--gv-brand);
  --gp-brand-ink:var(--gv-brand-ink);
  --gp-brand-soft:var(--gv-brand-soft);
  --gp-ink:var(--gv-ink);
  --gp-body:var(--gv-text);
  --gp-muted:var(--gv-text-muted);
  --gp-bg:var(--gv-canvas);
  --gp-surface:var(--gv-surface);
  --gp-border:var(--gv-border);
  --p-accent:var(--gv-brand)!important;
  --portal-accent:var(--gv-brand);
  --portal-border:var(--gv-border);
  --portal-radius:var(--gv-radius-lg);
  --portal-control:var(--gv-control);
  --portal-control-h:var(--gv-control);
}
.eventos-admin{
  --evtos-accent:var(--gv-brand);
  --evtos-ink:var(--gv-ink);
  --evtos-muted:var(--gv-text-muted);
  --evtos-line:var(--gv-border);
  --evtos-bg:var(--gv-canvas);
  --evtos-card:var(--gv-surface);
  --gp-radius:var(--gv-radius-lg);
  --evtos-control-h:var(--gv-control);
}
.evtos-studio{
  --studio-ink:var(--gv-ink);
  --studio-muted:var(--gv-text-muted);
  --studio-border:var(--gv-border);
  --studio-soft:var(--gv-surface-soft);
  --studio-brand:var(--gv-brand);
  --studio-brand-ink:var(--gv-brand-ink);
  --studio-brand-soft:var(--gv-brand-soft);
}
.spm-app{
  --spm-gold:var(--gv-brand);
  --spm-ink:var(--gv-ink);
  --spm-muted:var(--gv-text-muted);
  --spm-line:var(--gv-border);
  --spm-soft:var(--gv-surface-soft);
}
.evtos-legal-footer,.evtos-cookie-banner,.evtos-cookie-modal,.evtos-privacy-controls{
  --gp-brand:var(--gv-brand);
  --gp-brand-ink:var(--gv-brand-ink);
  --gp-brand-soft:var(--gv-brand-soft);
  --gp-ink:var(--gv-ink);
  --gp-body:var(--gv-text);
  --gp-muted:var(--gv-text-muted);
  --gp-border:var(--gv-border);
}

/* --------------------------------------------------------------------------
   Shared typography
   -------------------------------------------------------------------------- */
:where(.evto-app,.portal-app,.eventos-admin,.evtos-studio,.spm-app,.evtos-cookie-banner,.evtos-cookie-modal,.evtos-legal-footer,.evtos-policy-document){
  font-family:var(--gv-font-sans)!important;
  color:var(--gv-text);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}
.evto-app{font-size:var(--gv-text-base);line-height:var(--gv-line-body)}
:where(.portal-app,.eventos-admin,.evtos-studio,.spm-app){font-size:var(--gv-text-sm);line-height:var(--gv-line-body)}
:where(.evto-app,.portal-app,.eventos-admin,.evtos-studio,.spm-app) :where(button,input,select,textarea){font-family:inherit}
:where(.evto-app,.portal-app,.eventos-admin,.evtos-studio,.spm-app) :where(h1,h2,h3,h4,h5,h6){font-family:inherit;color:var(--gv-ink);text-wrap:balance}
:where(.portal-app,.eventos-admin,.evtos-studio,.spm-app) h1{font-size:var(--gv-heading-md);line-height:1.08;letter-spacing:-.035em;font-weight:780}
:where(.portal-app,.eventos-admin,.evtos-studio,.spm-app) h2{font-size:var(--gv-text-xl);line-height:1.2;letter-spacing:-.022em;font-weight:760}
:where(.portal-app,.eventos-admin,.evtos-studio,.spm-app) h3{font-size:var(--gv-text-lg);line-height:1.25;letter-spacing:-.016em;font-weight:740}
:where(.portal-app,.eventos-admin,.evtos-studio,.spm-app) p{line-height:var(--gv-line-body)}
:where(.portal-app,.eventos-admin,.evtos-studio,.spm-app) small{font-size:var(--gv-text-xs);line-height:1.45;color:var(--gv-text-muted)}
:where(.portal-card-head>div>span,.portal-eyebrow,.evtos-eyebrow,.evtos-section-label,.spm-panel-head span,.evx-companion-section header>span){
  font-size:var(--gv-text-xs)!important;
  line-height:1.2!important;
  letter-spacing:.10em!important;
  font-weight:800!important;
  color:var(--gv-brand-ink)!important;
}

/* Customer copy must remain comfortably readable. */
.evto-app p{font-size:var(--gv-text-base);line-height:var(--gv-line-copy)}
.evto-app small{font-size:var(--gv-text-sm);line-height:1.45}
.evto-app :where(.secure-note,.event-card-availability,.event-card-cta){font-size:var(--gv-text-xs)!important}
.evto-app :where(.ticket-option span small,.selection-summary,.evx-guide-grid p,.evx-companion-faq p,.evx-companion-timeline small,.evx-artist-list small){font-size:var(--gv-text-xs)!important}

/* --------------------------------------------------------------------------
   Focus + interaction
   -------------------------------------------------------------------------- */
:where(.evto-app,.portal-app,.eventos-admin,.evtos-studio,.spm-app,.evtos-cookie-banner,.evtos-cookie-modal)
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:3px solid var(--gv-brand-focus)!important;
  outline-offset:2px!important;
  box-shadow:var(--gv-focus-ring)!important;
}
:where(.evto-app,.portal-app,.eventos-admin,.evtos-studio,.spm-app) :where(button,a,input,select,textarea,summary){transition:border-color var(--gv-motion-fast) ease,background-color var(--gv-motion-fast) ease,color var(--gv-motion-fast) ease,box-shadow var(--gv-motion-fast) ease,transform var(--gv-motion-fast) ease}

/* --------------------------------------------------------------------------
   Icons
   -------------------------------------------------------------------------- */
:where(.evto-app,.portal-app,.eventos-admin,.evtos-studio,.spm-app) button>svg,
:where(.portal-sidebar nav a,.evto-nav nav a,.evto-global-nav nav a) > svg{width:20px;height:20px;flex:0 0 20px;stroke-width:2}
:where(.portal-sidebar nav a,.eventos-admin .button) .dashicons{width:20px;height:20px;font-size:20px;line-height:20px}

/* --------------------------------------------------------------------------
   Buttons
   -------------------------------------------------------------------------- */
:where(.primary-buy,.evto-search button,.event-card-cta){
  min-height:var(--gv-control-lg)!important;
  border:1px solid var(--gv-brand)!important;
  border-radius:var(--gv-radius-md)!important;
  background:var(--gv-brand)!important;
  color:var(--gv-brand-contrast)!important;
  font-size:var(--gv-text-sm)!important;
  font-weight:800!important;
  box-shadow:none!important;
}
:where(.primary-buy,.evto-search button,.event-card-cta):hover:not(:disabled){background:var(--gv-brand-hover)!important;border-color:var(--gv-brand-hover)!important;transform:translateY(-1px)}

:where(.portal-primary,.eventos-admin .button-primary){
  min-height:var(--gv-control)!important;
  border:1px solid var(--gv-dark)!important;
  border-radius:var(--gv-radius-md)!important;
  background:var(--gv-dark)!important;
  color:#fff!important;
  font-weight:750!important;
  box-shadow:none!important;
}
:where(.portal-primary,.eventos-admin .button-primary):hover:not(:disabled){background:var(--gv-dark-hover)!important;border-color:var(--gv-dark-hover)!important;color:#fff!important;transform:translateY(-1px)}

:where(.portal-secondary,.evto-outline-btn,.evto-secondary-action,.eventos-admin .button:not(.button-primary),.spm-btn-secondary){
  min-height:var(--gv-control)!important;
  border:1px solid var(--gv-border-strong)!important;
  border-radius:var(--gv-radius-md)!important;
  background:var(--gv-surface)!important;
  color:var(--gv-text)!important;
  box-shadow:none!important;
}
:where(.portal-secondary,.evto-outline-btn,.evto-secondary-action,.eventos-admin .button:not(.button-primary),.spm-btn-secondary):hover:not(:disabled){background:var(--gv-brand-soft)!important;border-color:var(--gv-brand)!important;color:var(--gv-brand-ink)!important}

.spm-btn-primary{min-height:var(--gv-control)!important;border-radius:var(--gv-radius-md)!important;background:var(--gv-brand)!important;color:var(--gv-brand-contrast)!important;box-shadow:none!important}
.spm-btn-danger,:where(.portal-danger,.portal-link-danger){color:var(--gv-danger)!important}
.portal-danger{background:var(--gv-danger)!important;color:#fff!important;border-color:var(--gv-danger)!important}

:where(.modal-close,.evto-drawer-close,.evtos-cookie-modal header>button){min-width:var(--gv-control)!important;width:var(--gv-control)!important;min-height:var(--gv-control)!important;height:var(--gv-control)!important;border-radius:var(--gv-radius-full)!important}

/* --------------------------------------------------------------------------
   Forms
   -------------------------------------------------------------------------- */
:where(.evto-app input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),.evto-app select,.evto-app textarea){
  min-height:var(--gv-control-lg)!important;
  border:1px solid var(--gv-border-strong)!important;
  border-radius:var(--gv-radius-md)!important;
  background:#fff!important;
  color:var(--gv-ink)!important;
  font-size:var(--gv-text-base)!important;
  box-shadow:none!important;
}
:where(.portal-form input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),.portal-form select,.portal-form textarea,.portal-scan-input input,.portal-inline-action select,.portal-drawer-scroll input,.portal-drawer-scroll select,.portal-drawer-scroll textarea,.eventos-admin .evtos-form input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),.eventos-admin .evtos-form select,.eventos-admin .evtos-form textarea,.scanner-input input,.studio-sidebar input,.studio-sidebar select,.studio-sidebar textarea,.map-library input,.map-library select,.map-properties input,.map-properties select,.map-properties textarea,.spm-app input,.spm-app select,.spm-app textarea){
  min-height:var(--gv-control)!important;
  border:1px solid var(--gv-border-strong)!important;
  border-radius:var(--gv-radius-md)!important;
  background:#fff!important;
  color:var(--gv-ink)!important;
  font-size:var(--gv-text-sm)!important;
  box-shadow:none!important;
}
:where(.evto-app input,.evto-app select,.evto-app textarea,.portal-app input,.portal-app select,.portal-app textarea,.eventos-admin input,.eventos-admin select,.eventos-admin textarea,.evtos-studio input,.evtos-studio select,.evtos-studio textarea,.spm-app input,.spm-app select,.spm-app textarea):focus{
  border-color:var(--gv-brand-focus)!important;
  box-shadow:var(--gv-focus-ring)!important;
  outline:none!important;
}
:where(.checkout-dialog label,.portal-form label,.evtos-form label,.studio-sidebar label,.map-library label,.map-properties label,.spm-app label){font-size:var(--gv-text-sm)!important;font-weight:650!important;color:#475467!important;line-height:1.35!important}

/* --------------------------------------------------------------------------
   Cards / surfaces / elevation
   -------------------------------------------------------------------------- */
:where(.evto-card,.evto-card-v2,.content-card,.checkout-card,.evto-auth-page-card,.portal-card,.evtos-panel,.evtos-metric,.health-card,.support-case-card,.portal-order-row,.refund-request-grid>article,.shortcode-manager-card,.map-library,.map-properties,.map-editor,.spm-panel,.spm-browser,.spm-logo-editor){
  border:1px solid var(--gv-border)!important;
  border-radius:var(--gv-radius-lg)!important;
  background:var(--gv-surface)!important;
  box-shadow:none!important;
}
:where(.evto-card,.evto-card-v2,.portal-action-grid a,.portal-order-row,.support-case-card>a){transition:transform var(--gv-motion) ease,border-color var(--gv-motion) ease,box-shadow var(--gv-motion) ease,background-color var(--gv-motion) ease}
:where(.evto-card,.evto-card-v2,.portal-action-grid a,.portal-order-row,.support-case-card>a):hover{transform:translateY(-1px);box-shadow:var(--gv-shadow-sm)!important;border-color:var(--gv-border-strong)!important}
:where(.portal-card,.evtos-panel,.content-card,.checkout-card){padding:var(--gv-space-5)}
:where(.portal-mini-kpis div,.evtos-summary>div,.order-money-list,.order-ticket-stack article,.shortcode-metrics span){border-radius:var(--gv-radius-md)!important;background:var(--gv-surface-soft)!important}

/* --------------------------------------------------------------------------
   Navigation
   -------------------------------------------------------------------------- */
.evto-nav,.evto-global-nav{min-height:72px;height:auto;border-color:var(--gv-border)!important;background:rgba(255,255,255,.96)!important}
.evto-nav nav a,.evto-global-nav nav a{min-height:var(--gv-control);display:inline-flex;align-items:center;border-radius:var(--gv-radius-md);padding-inline:var(--gv-space-3)}
.portal-app{background:var(--gv-canvas)!important}
.portal-sidebar{width:auto;background:var(--gv-dark)!important}
.portal-sidebar nav a{min-height:var(--gv-control);display:flex;align-items:center;border-radius:var(--gv-radius-md)!important;font-size:var(--gv-text-sm)!important;color:#d0d5dd!important}
.portal-sidebar nav a.active,.portal-sidebar nav a:hover{background:color-mix(in srgb,var(--gv-brand) 12%,var(--gv-dark))!important;color:#fff!important;box-shadow:inset 3px 0 0 var(--gv-brand)}
.portal-header{border-color:var(--gv-border)!important;box-shadow:none!important}

/* --------------------------------------------------------------------------
   Modals / drawers
   -------------------------------------------------------------------------- */
:where(.checkout-modal,.portal-drawer-backdrop,.portal-section-modal,.evtos-cookie-modal){background:var(--gv-backdrop)!important;backdrop-filter:blur(6px)}
:where(.checkout-dialog,.portal-section-dialog,.evtos-cookie-modal>section,.evto-ticket-viewer-dialog,.evto-order-confirmation-dialog,.success-dialog){
  border-radius:var(--gv-radius-xl)!important;
  background:var(--gv-surface)!important;
  box-shadow:var(--gv-shadow-lg)!important;
}
.checkout-dialog{padding:var(--gv-space-6)!important}
.portal-ticket-drawer,.evto-account-drawer,.map-tool-drawer,.studio-assistant-drawer{background:var(--gv-surface)!important;box-shadow:var(--gv-shadow-lg)!important}

/* --------------------------------------------------------------------------
   Semantic state components
   -------------------------------------------------------------------------- */
:where(.portal-notice,.evtos-notice,.evx-booking-message,.readiness-error,.readiness-warning,.evtos-payment-error,.portal-table-error,.portal-success-box,.evto-map-config-error,.map-flow-error,.floorplan-error){
  border-radius:var(--gv-radius-md)!important;
  padding:var(--gv-space-3) var(--gv-space-4)!important;
  font-size:var(--gv-text-sm)!important;
  line-height:1.5!important;
  box-shadow:none!important;
}
:where(.portal-success-box,.evx-booking-message.is-success,.scan-result.valid,.status-on_sale,.status-valid,.status-sandbox_paid){background:var(--gv-success-bg)!important;color:var(--gv-success)!important;border-color:var(--gv-success-border)!important}
:where(.readiness-warning,.scan-result.duplicate,.status-paused,.status-duplicate,.is-warning){background:var(--gv-warning-bg)!important;color:var(--gv-warning)!important;border-color:var(--gv-warning-border)!important}
:where(.readiness-error,.evtos-payment-error,.portal-table-error,.evx-booking-message.is-error,.scan-result.invalid,.status-cancelled,.status-invalid,.is-error){background:var(--gv-danger-bg)!important;color:var(--gv-danger)!important;border-color:var(--gv-danger-border)!important}

/* Empty states — same language, feature-specific content remains intact. */
:where(.evto-empty,.portal-empty,.portal-attention-empty,.portal-event-empty,.portal-ticket-empty,.wallet-empty-state,.organizer-empty,.builder-empty,.pbo-cart-empty,.spm-list-empty,.spm-preview-empty,.evtos-admin-map-empty,.map-object-list-empty,.properties-empty){
  border:1px dashed var(--gv-border-strong)!important;
  border-radius:var(--gv-radius-lg)!important;
  background:var(--gv-surface-soft)!important;
  color:var(--gv-text-muted)!important;
  padding:var(--gv-space-6)!important;
  text-align:center;
}

/* Loading states — one restrained visual grammar. */
:where(.seat-loading,.pbo-map-loading,.evto-square-loading,.evto-stripe-loading,.loading){color:var(--gv-text-muted)!important;font-size:var(--gv-text-sm)!important}
:where(.seat-loading,.pbo-map-loading,.evto-square-loading,.evto-stripe-loading)::before{
  content:"";
  display:inline-block;
  width:16px;
  height:16px;
  margin-right:8px;
  vertical-align:-3px;
  border:2px solid var(--gv-border-strong);
  border-top-color:var(--gv-brand-focus);
  border-radius:50%;
  animation:gv-spin .75s linear infinite;
}
@keyframes gv-spin{to{transform:rotate(360deg)}}

/* Success/receipt surfaces */
:where(.evto-success-receipt,.evto-success-selection){border:1px solid var(--gv-success-border)!important;border-radius:var(--gv-radius-lg)!important;background:var(--gv-success-bg)!important;box-shadow:none!important}

/* --------------------------------------------------------------------------
   Tables, badges and pills
   -------------------------------------------------------------------------- */
:where(.portal-table,.eventos-table){font-size:var(--gv-text-sm)}
:where(.portal-table th,.eventos-table th){font-size:var(--gv-text-xs)!important;letter-spacing:.06em!important;color:var(--gv-text-muted)!important}
:where(.portal-table td,.portal-table th,.eventos-table td,.eventos-table th){border-bottom-color:var(--gv-border)!important}
:where(.portal-badge,.evtos-status,.shortcode-health,.builder-status-line b,.event-pill){border-radius:var(--gv-radius-full)!important;font-size:var(--gv-text-xs)!important;line-height:1.1!important}

/* --------------------------------------------------------------------------
   Sponsor Manager and compliance alignment
   -------------------------------------------------------------------------- */
.spm-hero{border-radius:var(--gv-radius-xl)!important;box-shadow:var(--gv-shadow-md)!important}
.spm-btn{min-height:var(--gv-control)!important;border-radius:var(--gv-radius-md)!important;font-size:var(--gv-text-sm)!important}
.evtos-cookie-banner{border-radius:var(--gv-radius-lg)!important;box-shadow:var(--gv-shadow-lg)!important;font-size:var(--gv-text-sm)!important}
.evtos-cookie-actions button,.evtos-cookie-modal footer button{min-height:var(--gv-control)!important;border-radius:var(--gv-radius-md)!important;font-size:var(--gv-text-sm)!important}
.evtos-cookie-actions button.primary,.evtos-cookie-modal footer button.primary{background:var(--gv-dark)!important;border-color:var(--gv-dark)!important;color:#fff!important}
.evtos-cookie-modal label input,.evto-legal-check input{accent-color:var(--gv-brand)!important}

/* --------------------------------------------------------------------------
   Studio normalization. Preserve visual map-object styling; normalize editor UI.
   -------------------------------------------------------------------------- */
:where(.studio-sidebar,.studio-main,.map-library,.map-properties,.map-editor,.shortcode-manager-card){border-radius:var(--gv-radius-lg)!important}
:where(.map-object-buttons button,.map-canvas-toolbar button,.properties-group .button){border-radius:var(--gv-radius-sm)!important}
.map-canvas{border-radius:var(--gv-radius-lg)!important}
/* Map objects intentionally keep user/editor-specific radii, colors and depth. */

/* --------------------------------------------------------------------------
   Canonical responsive system
   Product breakpoints: 480 / 768 / 1024 / 1280.
   WordPress admin may additionally use its platform-native 782px breakpoint.
   -------------------------------------------------------------------------- */
@media (max-width:1279px){
  .portal-main{padding-inline:var(--gv-space-5)!important}
}
@media (max-width:1023px){
  :where(.portal-split,.portal-boxoffice,.portal-branding-layout,.customer-service-grid,.order-console-grid){grid-template-columns:1fr!important}
  .portal-sidebar nav a{font-size:13px!important}
}
@media (max-width:767px){
  .evto-app{--gv-type-base:16px}
  .portal-main{padding:var(--gv-space-4)!important}
  :where(.portal-card,.evtos-panel,.content-card,.checkout-card){padding:var(--gv-space-4)!important}
  .checkout-dialog{width:100%!important;max-width:none!important;max-height:min(92dvh,920px)!important;border-radius:var(--gv-radius-lg)!important;padding:var(--gv-space-5)!important}
  :where(.portal-header,.evtos-topbar){gap:var(--gv-space-3)!important}
  :where(.evto-app input,.evto-app select,.evto-app textarea){font-size:16px!important}
  .evtos-cookie-banner{left:10px!important;right:10px!important;bottom:10px!important}
}
@media (max-width:479px){
  :where(.portal-card,.evtos-panel,.content-card,.checkout-card){padding:var(--gv-space-3)!important;border-radius:var(--gv-radius-md)!important}
  .checkout-dialog{padding:var(--gv-space-4)!important}
  :where(.portal-primary,.portal-secondary,.primary-buy,.evto-outline-btn,.evto-secondary-action){width:100%}
}
@media (max-width:782px){
  /* WordPress admin compatibility only — not a product breakpoint. */
  .eventos-admin{margin-inline:8px!important}
}

/* --------------------------------------------------------------------------
   Motion accessibility
   -------------------------------------------------------------------------- */
@media (prefers-reduced-motion:reduce){
  :where(.evto-app,.portal-app,.eventos-admin,.evtos-studio,.spm-app) *,
  :where(.evto-app,.portal-app,.eventos-admin,.evtos-studio,.spm-app) *::before,
  :where(.evto-app,.portal-app,.eventos-admin,.evtos-studio,.spm-app) *::after{
    scroll-behavior:auto!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
}

/* --------------------------------------------------------------------------
   Legacy cascade enforcement
   --------------------------------------------------------------------------
   Older releases contain high-specificity / !important component patches.
   Keep this section explicit and root-scoped so Design System 1.0 is the final
   shared visual authority without affecting unrelated WordPress/theme UI.
 */
.evto-app .primary-buy,.evto-app .evto-search button,.evto-app .event-card-cta{
  min-height:var(--gv-control-lg)!important;border:1px solid var(--gv-brand)!important;border-radius:var(--gv-radius-md)!important;background:var(--gv-brand)!important;color:var(--gv-brand-contrast)!important;font-size:var(--gv-text-sm)!important;font-weight:800!important;box-shadow:none!important
}
.evto-app .primary-buy:hover:not(:disabled),.evto-app .evto-search button:hover:not(:disabled),.evto-app .event-card-cta:hover{background:var(--gv-brand-hover)!important;border-color:var(--gv-brand-hover)!important;color:var(--gv-brand-contrast)!important}
.portal-app .portal-primary,.eventos-admin .button.button-primary{min-height:var(--gv-control)!important;border:1px solid var(--gv-dark)!important;border-radius:var(--gv-radius-md)!important;background:var(--gv-dark)!important;color:#fff!important;box-shadow:none!important}
.portal-app .portal-secondary,.evto-app .evto-outline-btn,.evto-app .evto-secondary-action,.eventos-admin .button:not(.button-primary),.spm-app .spm-btn-secondary{min-height:var(--gv-control)!important;border:1px solid var(--gv-border-strong)!important;border-radius:var(--gv-radius-md)!important;background:#fff!important;color:var(--gv-text)!important;box-shadow:none!important}
.spm-app .spm-btn-primary{background:var(--gv-brand)!important;color:var(--gv-brand-contrast)!important;border-radius:var(--gv-radius-md)!important;box-shadow:none!important}

.evto-app input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),.evto-app select,.evto-app textarea{min-height:var(--gv-control-lg)!important;border-color:var(--gv-border-strong)!important;border-radius:var(--gv-radius-md)!important;background:#fff!important;color:var(--gv-ink)!important;font-size:var(--gv-text-base)!important;box-shadow:none!important}
.portal-app .portal-form input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),.portal-app .portal-form select,.portal-app .portal-form textarea,.portal-app .portal-scan-input input,.portal-app .portal-inline-action select,.portal-app .portal-drawer-scroll input,.portal-app .portal-drawer-scroll select,.portal-app .portal-drawer-scroll textarea{min-height:var(--gv-control)!important;border-color:var(--gv-border-strong)!important;border-radius:var(--gv-radius-md)!important;background:#fff!important;color:var(--gv-ink)!important;font-size:var(--gv-text-sm)!important;box-shadow:none!important}
.eventos-admin .evtos-form input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),.eventos-admin .evtos-form select,.eventos-admin .evtos-form textarea,.eventos-admin .scanner-input input,.evtos-studio .studio-sidebar input,.evtos-studio .studio-sidebar select,.evtos-studio .studio-sidebar textarea,.evtos-studio .map-library input,.evtos-studio .map-library select,.evtos-studio .map-properties input,.evtos-studio .map-properties select,.evtos-studio .map-properties textarea,.spm-app input,.spm-app select,.spm-app textarea{min-height:var(--gv-control)!important;border-color:var(--gv-border-strong)!important;border-radius:var(--gv-radius-md)!important;background:#fff!important;color:var(--gv-ink)!important;font-size:var(--gv-text-sm)!important;box-shadow:none!important}
.evto-app input:focus,.evto-app select:focus,.evto-app textarea:focus,.portal-app input:focus,.portal-app select:focus,.portal-app textarea:focus,.eventos-admin input:focus,.eventos-admin select:focus,.eventos-admin textarea:focus,.evtos-studio input:focus,.evtos-studio select:focus,.evtos-studio textarea:focus,.spm-app input:focus,.spm-app select:focus,.spm-app textarea:focus{outline:none!important;border-color:var(--gv-brand-focus)!important;box-shadow:var(--gv-focus-ring)!important}

.evto-app .evto-card,.evto-app .evto-card-v2,.evto-app .content-card,.evto-app .checkout-card,.evto-app .evto-auth-page-card,.portal-app .portal-card,.eventos-admin .evtos-panel,.eventos-admin .evtos-metric,.eventos-admin .health-card,.portal-app .support-case-card,.portal-app .portal-order-row,.portal-app .refund-request-grid>article,.evtos-studio .shortcode-manager-card,.evtos-studio .map-library,.evtos-studio .map-properties,.evtos-studio .map-editor,.spm-app .spm-panel,.spm-app .spm-browser,.spm-app .spm-logo-editor{border-color:var(--gv-border)!important;border-radius:var(--gv-radius-lg)!important;background:var(--gv-surface)!important;box-shadow:none!important}
.evto-app .evto-card:hover,.evto-app .evto-card-v2:hover,.portal-app .portal-order-row:hover,.portal-app .portal-action-grid a:hover{transform:translateY(-1px)!important;box-shadow:var(--gv-shadow-sm)!important;border-color:var(--gv-border-strong)!important}

.evto-app .checkout-dialog,.portal-app .portal-section-dialog,.evtos-cookie-modal>section,.evto-app .evto-ticket-viewer-dialog,.evto-app .evto-order-confirmation-dialog,.evto-app .success-dialog{border-radius:var(--gv-radius-xl)!important;background:#fff!important;box-shadow:var(--gv-shadow-lg)!important}
.evto-app .checkout-modal,.portal-app .portal-drawer-backdrop,.portal-app .portal-section-modal,.evtos-cookie-modal{background:var(--gv-backdrop)!important}

.portal-app .portal-empty,.portal-app .portal-attention-empty,.portal-app .portal-event-empty,.portal-app .portal-ticket-empty,.evto-app .evto-empty,.evto-app .wallet-empty-state,.evto-app .organizer-empty,.eventos-admin .evtos-admin-map-empty,.evtos-studio .builder-empty,.evtos-studio .map-object-list-empty,.evtos-studio .properties-empty,.spm-app .spm-list-empty,.spm-app .spm-preview-empty{border:1px dashed var(--gv-border-strong)!important;border-radius:var(--gv-radius-lg)!important;background:var(--gv-surface-soft)!important;color:var(--gv-text-muted)!important}

.portal-app .portal-sidebar nav a{min-height:var(--gv-control)!important;border-radius:var(--gv-radius-md)!important;font-size:var(--gv-text-sm)!important}
.portal-app .portal-sidebar nav a.active,.portal-app .portal-sidebar nav a:hover{background:color-mix(in srgb,var(--gv-brand) 12%,var(--gv-dark))!important;color:#fff!important;box-shadow:inset 3px 0 0 var(--gv-brand)!important}

.evtos-cookie-banner .evtos-cookie-actions button,.evtos-cookie-modal footer button{min-height:var(--gv-control)!important;border-radius:var(--gv-radius-md)!important;font-size:var(--gv-text-sm)!important}
.evtos-cookie-banner .evtos-cookie-actions button.primary,.evtos-cookie-modal footer button.primary{background:var(--gv-dark)!important;border-color:var(--gv-dark)!important;color:#fff!important}


/* --------------------------------------------------------------------------
   0.76.0 — GABE V Event Commerce Brand Authority
   Ticket selection and checkout are platform commerce surfaces. They use the
   configured GABE V brand tokens consistently even when an event's artwork is
   highly colorful. Semantic success/warning/error colors remain semantic.
   -------------------------------------------------------------------------- */
.evto-app .checkout-card,.evx-experience.event-detail .evx-ticket-summary{
  --evto-commerce-brand:var(--gv-brand);--evto-commerce-brand-hover:var(--gv-brand-hover);--evto-commerce-brand-soft:var(--gv-brand-soft);--evto-commerce-ink:var(--gv-ink);--evto-commerce-contrast:var(--gv-brand-contrast)
}
.evto-app .checkout-card>.eyebrow,.evx-experience.event-detail .evx-ticket-section .eyebrow,.evto-app .evto-secure-checkout .evto-checkout-heading>.eyebrow,.evto-app .evto-secure-checkout .evto-promo-box>div:first-child>span{color:var(--gv-brand-ink)!important}
.evto-app .ticket-option:has(input:checked),.evx-experience.event-detail .ticket-option:has(input:checked){border-color:var(--gv-brand)!important;background:var(--gv-brand-soft)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--gv-brand) 14%,transparent)!important}
.evto-app .ticket-option input{accent-color:var(--gv-brand)!important}
.evto-app .qty-control button:hover:not(:disabled){border-color:var(--gv-brand)!important;background:var(--gv-brand-soft)!important;color:var(--gv-brand-ink)!important}
.evto-app #evto-checkout-open.primary-buy,.evx-experience.event-detail .evx-sticky-buy .evx-primary{background:var(--gv-brand)!important;border-color:var(--gv-brand)!important;color:var(--gv-brand-contrast)!important;-webkit-text-fill-color:var(--gv-brand-contrast)!important;box-shadow:none!important}
.evto-app #evto-checkout-open.primary-buy:hover:not(:disabled),.evx-experience.event-detail .evx-sticky-buy .evx-primary:hover:not(:disabled){background:var(--gv-brand-hover)!important;border-color:var(--gv-brand-hover)!important;color:var(--gv-brand-contrast)!important}
.evto-app .evto-flow-steps span.active b,.evto-app .evto-flow-steps span.is-active b{background:var(--gv-brand)!important;color:var(--gv-brand-contrast)!important}

.evto-app .evto-secure-checkout{--evto-checkout-brand:var(--gv-brand);--evto-checkout-brand-soft:var(--gv-brand-soft);--evto-checkout-ink:var(--gv-ink);--evto-checkout-muted:var(--gv-text-muted)}
.evto-app .evto-secure-checkout .evto-checkout-stage-head>span{background:var(--gv-brand)!important;color:var(--gv-brand-contrast)!important}
.evto-app .evto-secure-checkout .primary-buy,.evto-app .evto-secure-checkout .evto-place-order,.evto-app .evto-secure-checkout #evto-review-continue,.evto-app .evto-secure-checkout #evto-promo-apply,.evto-app .evto-secure-checkout .evto-inline-auth button[type="submit"]{background:var(--gv-brand)!important;border-color:var(--gv-brand)!important;color:var(--gv-brand-contrast)!important;-webkit-text-fill-color:var(--gv-brand-contrast)!important;box-shadow:none!important}
.evto-app .evto-secure-checkout .primary-buy:hover:not(:disabled),.evto-app .evto-secure-checkout .evto-place-order:hover:not(:disabled),.evto-app .evto-secure-checkout #evto-review-continue:hover:not(:disabled),.evto-app .evto-secure-checkout #evto-promo-apply:hover:not(:disabled),.evto-app .evto-secure-checkout .evto-inline-auth button[type="submit"]:hover:not(:disabled){background:var(--gv-brand-hover)!important;border-color:var(--gv-brand-hover)!important;color:var(--gv-brand-contrast)!important}
.evto-app .evto-secure-checkout .evto-review-total-box{background:var(--gv-dark)!important;border:1px solid color-mix(in srgb,var(--gv-brand) 45%,var(--gv-dark))!important;box-shadow:none!important;position:relative;overflow:hidden}
.evto-app .evto-secure-checkout .evto-review-total-box:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--gv-brand)}
.evto-app .evto-secure-checkout .evto-review-total b{color:#fff!important}.evto-app .evto-secure-checkout .evto-review-total span,.evto-app .evto-secure-checkout .evto-review-total-box>small{color:#d0d5dd!important}
.evto-app .evto-secure-checkout input:focus,.evto-app .evto-secure-checkout select:focus,.evto-app .evto-secure-checkout textarea:focus{border-color:var(--gv-brand-focus)!important;box-shadow:var(--gv-focus-ring)!important}
.evto-app .evto-secure-checkout input[type="checkbox"],.evto-app .evto-secure-checkout input[type="radio"]{accent-color:var(--gv-brand)!important}
.evto-app .evto-secure-checkout .evto-identity-options button[aria-checked="true"],.evto-app .evto-secure-checkout .evto-identity-options button.is-selected{border-color:var(--gv-brand)!important;background:var(--gv-brand-soft)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--gv-brand) 12%,transparent)!important}
.evto-app .evto-secure-checkout .evto-checkout-brand-mini{color:var(--gv-text)!important}.evto-app .evto-secure-checkout .evto-checkout-brand-mini img{border-radius:var(--gv-radius-sm)}
.evto-app .evto-themed-confirmation .success-icon{background:var(--gv-brand)!important;color:var(--gv-brand-contrast)!important}.evto-app .evto-themed-confirmation .eyebrow{color:var(--gv-brand-ink)!important}


/* --------------------------------------------------------------------------
   0.76.1 — Simple GABE V Branded Ticket Bar
   Keep the persistent purchase surface clean and unmistakably GABE V without
   adding decorative gradients or event-by-event styling requirements.
   -------------------------------------------------------------------------- */
.evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded{
  --sticky-accent:var(--gv-brand,#c9a63b)!important;
  --sticky-ink:var(--gv-ink,#17191f)!important;
  width:min(1180px,calc(100% - 32px))!important;
  min-height:82px!important;
  gap:20px!important;
  padding:12px 14px!important;
  background:#fffdf8!important;
  border:1px solid color-mix(in srgb,var(--gv-brand,#c9a63b) 58%,#e4e7ec)!important;
  border-radius:24px!important;
  color:var(--gv-ink,#17191f)!important;
  box-shadow:0 10px 30px rgba(16,24,40,.10)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded:before{
  width:4px!important;
  background:var(--gv-brand,#c9a63b)!important;
}
.evx-experience.event-detail .evx-sticky-logo{
  flex-basis:50px!important;
  width:50px!important;
  height:50px!important;
  border:1px solid color-mix(in srgb,var(--gv-brand,#c9a63b) 55%,#e4e7ec)!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.evx-experience.event-detail .evx-sticky-logo img{
  width:40px!important;
  height:40px!important;
}
.evx-experience.event-detail .evx-sticky-event-copy{gap:5px!important}
.evx-experience.event-detail .evx-sticky-event-copy>small{
  gap:10px!important;
  color:var(--gv-text-muted,#667085)!important;
  -webkit-text-fill-color:var(--gv-text-muted,#667085)!important;
  font-size:11px!important;
}
.evx-experience.event-detail .evx-sticky-kicker{
  position:relative;
  gap:5px;
  padding:5px 10px!important;
  border:1px solid var(--gv-brand,#c9a63b)!important;
  border-radius:999px!important;
  background:var(--gv-dark,#17191f)!important;
  color:#e6c45d!important;
  -webkit-text-fill-color:#e6c45d!important;
  font-size:8px!important;
  letter-spacing:.10em!important;
}
.evx-experience.event-detail .evx-sticky-kicker:before{
  content:"✓";
  display:inline-grid;
  place-items:center;
  width:14px;
  height:14px;
  border-radius:999px;
  background:var(--gv-brand,#c9a63b);
  color:var(--gv-dark,#17191f);
  -webkit-text-fill-color:var(--gv-dark,#17191f);
  font-size:9px;
  line-height:1;
  font-weight:950;
}
.evx-experience.event-detail .evx-sticky-time{
  color:var(--gv-text-muted,#667085)!important;
  -webkit-text-fill-color:var(--gv-text-muted,#667085)!important;
  font-weight:750!important;
}
.evx-experience.event-detail .evx-sticky-event-copy>b{
  color:var(--gv-ink,#17191f)!important;
  -webkit-text-fill-color:var(--gv-ink,#17191f)!important;
  font-size:16px!important;
  font-weight:900!important;
}
.evx-experience.event-detail .evx-sticky-price{
  min-width:190px!important;
  padding-left:20px!important;
  border-left:1px solid color-mix(in srgb,var(--gv-brand,#c9a63b) 32%,#e4e7ec)!important;
}
.evx-experience.event-detail .evx-sticky-price>small{
  color:var(--gv-brand-ink,#8a6814)!important;
  -webkit-text-fill-color:var(--gv-brand-ink,#8a6814)!important;
  font-size:9px!important;
  letter-spacing:.12em!important;
}
.evx-experience.event-detail .evx-sticky-price>b{
  color:var(--gv-ink,#17191f)!important;
  -webkit-text-fill-color:var(--gv-ink,#17191f)!important;
  font-size:16px!important;
  font-weight:900!important;
}
.evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  min-width:174px!important;
  min-height:54px!important;
  padding:0 14px 0 7px!important;
  border:1px solid color-mix(in srgb,var(--gv-brand,#c9a63b) 76%,#17191f)!important;
  border-radius:14px!important;
  background:var(--gv-brand,#c9a63b)!important;
  color:var(--gv-brand-contrast,#17191f)!important;
  -webkit-text-fill-color:var(--gv-brand-contrast,#17191f)!important;
  box-shadow:0 8px 18px color-mix(in srgb,var(--gv-brand,#c9a63b) 18%,transparent)!important;
  font-size:14px!important;
  font-weight:850!important;
}
.evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary:before{
  content:"GV";
  display:grid;
  flex:0 0 38px;
  width:38px;
  height:38px;
  place-items:center;
  border-radius:9px;
  background:var(--gv-dark,#17191f);
  color:#efd46e;
  -webkit-text-fill-color:#efd46e;
  font-size:10px;
  font-weight:950;
  letter-spacing:.03em;
}
.evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary:after{
  content:"→";
  margin-left:auto;
  padding-left:9px;
  border-left:1px solid color-mix(in srgb,var(--gv-brand-contrast,#17191f) 22%,transparent);
  font-size:17px;
  line-height:1;
  font-weight:700;
}
.evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary:hover:not(:disabled){
  background:var(--gv-brand-hover,#b8942f)!important;
  border-color:var(--gv-brand-hover,#b8942f)!important;
  transform:translateY(-2px);
  box-shadow:0 11px 24px color-mix(in srgb,var(--gv-brand,#c9a63b) 24%,transparent)!important;
}
.evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary:focus-visible{outline:0;box-shadow:var(--gv-focus-ring)!important}
.evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary:disabled:before,.evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary:disabled:after{display:none}
@media(max-width:700px){
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded{
    width:calc(100% - 18px)!important;
    min-height:70px!important;
    gap:9px!important;
    padding:9px 9px 9px 11px!important;
    border-radius:18px!important;
  }
  .evx-experience.event-detail .evx-sticky-logo{flex-basis:40px!important;width:40px!important;height:40px!important;border-radius:11px!important}
  .evx-experience.event-detail .evx-sticky-logo img{width:32px!important;height:32px!important}
  .evx-experience.event-detail .evx-sticky-event-copy>b{font-size:13px!important}
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary{min-width:128px!important;min-height:48px!important;padding:0 10px 0 6px!important;border-radius:12px!important;font-size:11px!important}
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary:before{flex-basis:34px;width:34px;height:34px;border-radius:8px;font-size:9px}
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary:after{font-size:18px}
}

/* --------------------------------------------------------------------------
   GABE Promotions Ticketing 0.76.7 — Mobile UX normalization
   --------------------------------------------------------------------------
   One final mobile contract for the customer site, event pages, checkout,
   customer account, staff portal, WordPress admin and Studio. This deliberately
   overrides older module-specific mobile rules that used 8–11px text or
   desktop-sized spacing on narrow screens.
*/
@media(max-width:782px){
  :root{
    --gv-mobile-page-edge:16px;
    --gv-mobile-copy:15px;
    --gv-mobile-meta:12.5px;
    --gv-mobile-staff-copy:13.5px;
    --gv-mobile-staff-meta:12px;
  }

  html{-webkit-text-size-adjust:100%!important;text-size-adjust:100%!important}
  :where(.evto-app,.evx-experience,.portal-app,.eventos-admin,.evtos-studio,.spm-app){max-width:100%!important;min-width:0!important;overflow-wrap:anywhere}
  :where(.evto-app,.evx-experience,.portal-app,.eventos-admin,.evtos-studio,.spm-app) *{min-width:0}

  /* Customer-facing type must remain comfortably readable on a phone. */
  .evto-app,.evx-experience{font-size:16px!important;line-height:1.58!important}
  .evto-app :where(p,li,.portal-muted),.evx-experience :where(p,li){font-size:var(--gv-mobile-copy)!important;line-height:1.58!important}
  .evto-app :where(small,.event-card-availability,.event-count,.secure-note),
  .evx-experience :where(small,.evx-section-head>span,.evx-sticky-time){font-size:var(--gv-mobile-meta)!important;line-height:1.45!important}
  .evto-app .eyebrow,.evto-app [class*="kicker"],.evx-experience :where(.eyebrow,[class*="kicker"]){font-size:11.5px!important;line-height:1.25!important;letter-spacing:.11em!important}

  /* Staff/admin stays compact, but no longer microscopic. */
  :where(.portal-app,.eventos-admin,.evtos-studio,.spm-app){font-size:14px!important;line-height:1.5!important}
  :where(.portal-app,.eventos-admin,.evtos-studio,.spm-app) :where(p,li){font-size:var(--gv-mobile-staff-copy)!important;line-height:1.52!important}
  :where(.portal-app,.eventos-admin,.evtos-studio,.spm-app) small{font-size:var(--gv-mobile-staff-meta)!important;line-height:1.45!important}
  :where(.portal-app,.eventos-admin,.evtos-studio,.spm-app) :where(.portal-eyebrow,.evtos-eyebrow,.evtos-section-label,[class*="kicker"]){font-size:11px!important;line-height:1.25!important;letter-spacing:.08em!important}

  /* Inputs: 16px prevents Safari/iOS zoom. */
  .evto-app :where(input:not([type=checkbox]):not([type=radio]),select,textarea),
  .evx-experience :where(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px!important;min-height:48px!important;line-height:1.35!important}
  :where(.portal-app,.eventos-admin,.evtos-studio,.spm-app) :where(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px!important;min-height:44px!important;line-height:1.35!important}

  /* Tap targets and labels. */
  .evto-app :where(.primary-buy,.evto-outline-btn,.evto-location-button,.evto-auth-primary,.evto-auth-text,.evto-wallet-pass,.evto-drawer-links a,.evto-drawer-logout),
  .evx-experience :where(.evx-primary,.evx-secondary,.evx-share,.ticket-option button,.qty-control button),
  .evto-secure-checkout :where(button,.evto-place-order,#evto-review-continue,#evto-review-edit,#evto-promo-apply){min-height:48px!important;font-size:14px!important;line-height:1.2!important}
  :where(.portal-app,.eventos-admin,.evtos-studio,.spm-app) :where(.portal-primary,.portal-secondary,.button,.button-primary,.button-secondary,button:not(.portal-mobile-menu-btn):not(.portal-mobile-nav-close)){min-height:44px!important;font-size:13px!important;line-height:1.2!important}

  /* Public glass header: tighter footprint, larger actual controls. */
  .evto-global-nav,.evx-experience .evx-glass-nav{min-height:62px!important;padding:7px 8px 7px 10px!important;gap:8px!important}
  .evto-brand-mark-only .evto-brand-logo,.evx-platform-brand .evx-platform-logo{width:58px!important;height:44px!important;min-width:58px!important;max-width:58px!important}
  .evto-global-nav .evto-account-trigger,.evx-glass-nav .evto-account-trigger,.evx-glass-nav .evx-share{min-width:44px!important;min-height:44px!important}
  .evto-global-nav .evto-account-trigger-icon,.evx-glass-nav .evto-account-trigger-icon{width:34px!important;height:34px!important}
  .evx-glass-nav .evx-share{padding:0 12px!important;font-size:13px!important}

  /* Marketplace hero: remove the desktop-height feeling visible in narrow screenshots. */
  .evto-marketplace-home .evto-hero{display:grid!important;grid-template-columns:1fr!important;min-height:0!important;gap:18px!important;padding:34px var(--gv-mobile-page-edge) 26px!important;align-items:start!important}
  .evto-marketplace-home .evto-hero h1{margin:10px 0 14px!important;font-size:clamp(38px,11vw,48px)!important;line-height:1.01!important;letter-spacing:-.045em!important}
  .evto-marketplace-home .evto-hero p{font-size:16px!important;line-height:1.58!important}
  .evto-marketplace-home .evto-search{width:100%!important;margin-top:20px!important;min-height:54px!important;padding:5px!important;border-radius:15px!important}
  .evto-marketplace-home .evto-search input{font-size:16px!important}
  .evto-marketplace-home .evto-search button{min-height:44px!important;padding-inline:16px!important;font-size:14px!important}
  .evto-marketplace-home .evto-chips{display:flex!important;flex-wrap:nowrap!important;gap:8px!important;width:calc(100% + 16px)!important;margin-right:-16px!important;padding-right:16px!important;overflow-x:auto!important;scroll-snap-type:x proximity!important}
  .evto-marketplace-home .evto-chips button{flex:0 0 auto!important;min-height:42px!important;padding:0 14px!important;font-size:13px!important;scroll-snap-align:start}
  .evto-marketplace-home .evto-hero-points{display:flex!important;grid-template-columns:none!important;gap:10px!important;width:calc(100% + 16px)!important;margin:18px -16px 0 0!important;padding-right:16px!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important}
  .evto-marketplace-home .evto-hero-points article{flex:0 0 min(82vw,310px)!important;padding:15px!important;scroll-snap-align:start}
  .evto-marketplace-home .evto-hero-points b{font-size:14px!important}.evto-marketplace-home .evto-hero-points span{font-size:13px!important;line-height:1.48!important}
  .evto-marketplace-home .evto-hero-art{width:min(100%,360px)!important;height:250px!important;margin:2px auto 0!important;transform:scale(.82)!important;transform-origin:center top!important}

  /* Section headings/actions stack naturally instead of squeezing into one row. */
  .evto-app .section-head,.evto-app .evto-location-head{align-items:flex-start!important;flex-direction:column!important;gap:14px!important;margin-bottom:18px!important}
  .evto-app .section-head h2{font-size:clamp(27px,8vw,34px)!important;line-height:1.08!important}
  .evto-app .section-head p,.evto-app .evto-location-head p{font-size:14.5px!important;line-height:1.55!important}
  .evto-location-actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important;gap:8px!important}
  .evto-location-actions .evto-location-button{width:100%!important;justify-content:center!important;text-align:center!important}
  .evto-section{padding-top:24px!important;padding-bottom:44px!important}

  /* Marketplace cards: readable metadata and one obvious CTA. */
  .evto-events{grid-template-columns:1fr!important;gap:16px!important}
  .evto-card-v2{border-radius:18px!important}
  .evto-card-v2 .event-art{max-height:none!important;aspect-ratio:16/9!important}
  .evto-card-v2 .event-card-topline>*{font-size:11px!important;padding:7px 9px!important}
  .evto-card-v2 .event-card-body{padding:0 16px 16px!important}
  .evto-card-v2 .event-meta{grid-template-columns:52px minmax(0,1fr)!important;gap:12px!important;padding:16px 0 14px!important}
  .evto-card-v2 .date-block b{font-size:11.5px!important}.evto-card-v2 .date-block span{font-size:24px!important}
  .evto-card-v2 .event-card-copy h3{font-size:20px!important;line-height:1.15!important}
  .evto-card-v2 .event-card-copy p{font-size:14px!important;line-height:1.42!important}
  .evto-card-v2 .event-card-copy small{font-size:13px!important;line-height:1.4!important;white-space:normal!important}
  .evto-card-v2 .event-card-bottom{grid-template-columns:1fr auto!important;gap:9px 12px!important;align-items:center!important}
  .evto-card-v2 .event-card-bottom>span:first-child small{font-size:11px!important}.evto-card-v2 .event-card-bottom>span:first-child b{font-size:19px!important}
  .evto-card-v2 .event-card-availability{display:block!important;font-size:12px!important}
  .evto-card-v2 .event-card-bottom>strong{grid-column:1/-1!important;justify-self:stretch!important;justify-content:center!important;min-height:46px!important;font-size:13px!important}

  /* Event detail: trim oversized whitespace and keep content in one phone-width column. */
  .evx-experience.event-detail .evx-hero-shell{width:100%!important;max-width:100%!important;padding:28px 16px 24px!important;gap:20px!important}
  .evx-experience.event-detail .evx-hero-copy{max-width:100%!important}
  .evx-experience.event-detail .evx-hero-copy h1{font-size:clamp(34px,10.5vw,44px)!important;line-height:1.02!important;letter-spacing:-.04em!important}
  .evx-experience.event-detail .evx-hero-copy :where(p,li){font-size:15px!important;line-height:1.5!important}
  .evx-experience.event-detail .evx-hero-flyer,.evx-experience.event-detail .evx-hero.is-placeholder-artwork .evx-hero-flyer{width:min(100%,340px)!important;max-width:340px!important;margin-inline:auto!important}
  .evx-experience.event-detail .evx-frame>.evx-section{padding:22px 16px!important;border-radius:18px!important}
  .evx-experience.event-detail .evx-section-head{margin-bottom:18px!important}
  .evx-experience.event-detail .evx-section-head h2{font-size:26px!important;line-height:1.12!important}
  .evx-experience.event-detail .evx-section-head p{font-size:15px!important;line-height:1.56!important}
  .evx-experience.event-detail .evx-fact-cards,.evx-experience.event-detail .evx-policy-grid,.evx-experience.event-detail .evx-location-grid,.evx-experience.event-detail .evx-guide-grid{grid-template-columns:1fr!important;gap:10px!important}
  .evx-experience.event-detail .evx-fact-cards article,.evx-experience.event-detail .evx-policy-grid article,.evx-experience.event-detail .evx-location-grid>div{padding:16px!important}
  .evx-experience.event-detail .ticket-option{padding:15px!important;border-radius:14px!important}
  .evx-experience.event-detail .ticket-option span b{font-size:15px!important}.evx-experience.event-detail .ticket-option span small{font-size:13px!important}
  .evx-experience.event-detail .qty-control button{width:44px!important;height:44px!important;min-height:44px!important;font-size:20px!important}

  /* Sticky buy bar: show the two decisions that matter on a phone — price + action. */
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(138px,auto)!important;align-items:center!important;width:calc(100% - 16px)!important;min-height:0!important;gap:8px!important;padding:8px!important;border-radius:16px!important;bottom:max(8px,env(safe-area-inset-bottom))!important}
  .evx-experience.event-detail .evx-sticky-event{display:none!important}
  .evx-experience.event-detail .evx-sticky-price{display:grid!important;gap:1px!important;min-width:0!important;padding:0 4px!important;border-left:0!important}
  .evx-experience.event-detail .evx-sticky-price>small{font-size:11px!important;letter-spacing:.08em!important}.evx-experience.event-detail .evx-sticky-price>b{font-size:18px!important}
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary{width:100%!important;min-width:0!important;min-height:50px!important;padding:0 12px!important;border-radius:12px!important;font-size:14px!important}
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary:before{display:none!important}
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary:after{margin-left:8px!important;padding-left:8px!important}

  /* Checkout sheet: replace older 9–11px phone rules with readable commerce type. */
  .evto-secure-checkout .evto-checkout-heading{padding:18px 54px 10px 16px!important}
  .evto-secure-checkout .evto-checkout-heading .eyebrow{font-size:11px!important}.evto-secure-checkout .evto-checkout-heading h2{font-size:27px!important;line-height:1.08!important}.evto-secure-checkout .evto-checkout-heading p{font-size:14px!important;line-height:1.5!important}
  .evto-secure-checkout .evto-order-review-stage,.evto-secure-checkout .evto-identity-stage,.evto-secure-checkout #evto-checkout-auth,.evto-secure-checkout #evto-checkout-form{margin:0 8px 10px!important;padding:15px!important}
  .evto-secure-checkout .evto-checkout-stage-head b{font-size:18px!important}.evto-secure-checkout .evto-checkout-stage-head small{font-size:13px!important;line-height:1.45!important}
  .evto-secure-checkout .evto-ticket-itemization-head>div b{font-size:15px!important}.evto-secure-checkout .evto-ticket-itemization-head>small{font-size:12px!important}
  .evto-secure-checkout .evto-ticket-line{grid-template-columns:30px minmax(0,1fr) auto!important;gap:9px!important;padding:12px!important}
  .evto-secure-checkout .evto-ticket-line-index{width:28px!important;height:28px!important;font-size:11px!important}.evto-secure-checkout .evto-ticket-line-copy b{font-size:14px!important}.evto-secure-checkout .evto-ticket-line-copy small,.evto-secure-checkout .evto-ticket-line-math{font-size:12px!important;line-height:1.4!important}.evto-secure-checkout .evto-ticket-line>strong{font-size:13px!important}
  .evto-secure-checkout .evto-review-line span,.evto-secure-checkout .evto-review-line b{font-size:13px!important}.evto-secure-checkout .evto-review-line span small{font-size:12px!important}.evto-secure-checkout .evto-pricing-integrity{font-size:12px!important}
  .evto-secure-checkout .evto-review-total span{font-size:12px!important}.evto-secure-checkout .evto-review-total b{font-size:31px!important}.evto-secure-checkout .evto-review-total-box>small{font-size:11px!important}
  .evto-secure-checkout .evto-checkout-contact-summary span{font-size:11px!important}.evto-secure-checkout .evto-checkout-contact-summary b{font-size:14px!important}.evto-secure-checkout .evto-checkout-contact-summary small{font-size:12px!important}.evto-secure-checkout .evto-checkout-contact-summary i{font-size:11px!important}
  .evto-secure-checkout .evto-flow-steps span{font-size:12px!important}.evto-secure-checkout .evto-flow-steps b{width:28px!important;height:28px!important;font-size:11px!important}

  /* Account drawer + wallet: no tiny ticket metadata. */
  .evto-account-drawer{width:min(94vw,430px)!important;max-width:94vw!important}
  .evto-drawer-scroll{padding:18px!important}.evto-drawer-links a{padding:12px 4px!important;font-size:14px!important}.evto-auth-tabs button{min-height:46px!important;font-size:14px!important}.evto-auth-form label{font-size:13px!important}.evto-auth-legal{font-size:12px!important}
  .wallet-command-bar h2{font-size:26px!important}.wallet-command-bar p{font-size:14px!important}.wallet-command-actions a,.wallet-event-actions a,.wallet-ticket-action-row a{min-height:44px!important;font-size:13px!important}.wallet-event-section-head h3{font-size:18px!important}.wallet-event-group-copy h4{font-size:16px!important}.wallet-event-group-copy p,.wallet-event-group-copy>small,.wallet-ticket-summary-copy>small{font-size:12px!important;line-height:1.4!important}

  /* Portal/mobile app chrome. */
  .portal-mobile-bar{min-height:62px!important;padding:9px 12px!important}.portal-mobile-bar strong{font-size:15px!important}.portal-mobile-bar small{font-size:12px!important}.portal-mobile-menu-btn{width:44px!important;height:44px!important;min-height:44px!important}
  .portal-main{padding:16px 12px 34px!important}.portal-main-inner{width:100%!important;max-width:100%!important}
  .portal-header{padding:16px!important;border-radius:16px!important;margin-bottom:14px!important}.portal-header h1{font-size:28px!important;line-height:1.08!important}.portal-header p{font-size:14px!important}
  .portal-card{padding:16px!important;border-radius:16px!important}.portal-card-head{align-items:flex-start!important;flex-wrap:wrap!important;gap:10px!important}.portal-card-head h2,.portal-card-head h3{font-size:18px!important;line-height:1.22!important}
  .portal-kpis,.customer-kpi-grid,.smartops-kpis,.biz-kpis{grid-template-columns:1fr 1fr!important;gap:9px!important}.portal-kpis article,.customer-kpi-grid article{padding:14px!important}
  .portal-kpis article span,.customer-kpi-grid article span,.smartops-forecast span,.smartops-impact span,.smartops-segments span,.biz-mini-kpis span{font-size:11px!important}.portal-kpis article b,.customer-kpi-grid article b{font-size:23px!important}
  .customer-tab-menu-toggle{min-height:46px!important;font-size:14px!important}.customer-account-tabs a{min-height:44px!important;padding:9px!important;font-size:13px!important}
  .portal-action-grid,.customer-quick-access .portal-action-grid{grid-template-columns:1fr!important}.portal-action-grid a,.customer-quick-access .portal-action-grid a{min-height:48px!important;padding:13px!important;font-size:13px!important}
  .smartops-checks b,.smartops-alerts b,.smartops-gates b,.smartops-top-customers b,.smartops-integrations b,.smartops-template-list b,.biz-task-list b,.biz-venue-list b{font-size:13px!important}
  .smartops-checks small,.smartops-alerts span,.smartops-gates small,.smartops-top-customers small,.smartops-integrations small,.smartops-template-list small,.biz-task-list span,.biz-venue-list span{font-size:12px!important;line-height:1.42!important}
  .biz-inline-form input,.biz-inline-form select{height:44px!important;font-size:16px!important;padding:0 10px!important}.biz-inline-form .portal-secondary{height:44px!important;min-height:44px!important;font-size:13px!important}

  /* Deep-tool More menu and long navigation stay inside the viewport. */
  .promoter-more-groups{width:100%!important;max-width:100%!important;max-height:none!important;overflow:visible!important;padding:8px 0!important}.promoter-more-groups section>span,.customer-more-label{font-size:11px!important}.promoter-more-groups .promoter-more-grid a{min-height:44px!important;padding:10px 12px!important;font-size:13px!important;line-height:1.35!important}

  /* Admin + Studio: card layout instead of squeezed desktop controls. */
  .eventos-admin{margin:0 10px!important}.eventos-admin .evtos-topbar{padding:22px 0 16px!important}.eventos-admin .evtos-topbar h1{font-size:28px!important}.eventos-admin .evtos-topbar p{font-size:14px!important}.eventos-admin .evtos-panel{padding:16px!important;border-radius:16px!important}
  .eventos-admin :where(.evtos-metrics,.evtos-grid-2,.health-grid,.analytics-row,.evtos-payment-kpis,.evtos-payment-readiness-grid){grid-template-columns:1fr!important}
  .eventos-admin .evtos-metric{padding:16px!important}.eventos-admin .evtos-metric span{font-size:12px!important}.eventos-admin .evtos-metric b{font-size:25px!important}
  .evtos-studio .studio-process,.evtos-studio .shortcode-manager-grid{grid-template-columns:1fr!important}.evtos-studio .studio-link-card{align-items:stretch!important;flex-direction:column!important}.evtos-studio .studio-toolbar-actions,.evtos-studio .shortcode-manager-actions,.evtos-studio .shortcode-actions{display:grid!important;grid-template-columns:1fr!important}.evtos-studio .studio-toolbar-actions>* ,.evtos-studio .shortcode-manager-actions>* ,.evtos-studio .shortcode-actions>*{width:100%!important}

  /* Tables never crush columns into unreadable text. */
  :where(.portal-app,.eventos-admin,.evtos-studio,.spm-app) :where(.portal-table-wrap,.evtos-table-wrap,.spm-table-wrap){max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
  :where(.portal-app,.eventos-admin,.evtos-studio,.spm-app) table{font-size:12.5px!important}

  /* Dialogs become bottom sheets / safe full-width panels, not off-screen desktop cards. */
  :where(.gv-modal,.checkout-dialog,.checkout-dialog-wide,.evto-ticket-viewer-dialog,.evto-order-confirmation-dialog,.evtos-cookie-modal>section){width:calc(100vw - 16px)!important;max-width:calc(100vw - 16px)!important;max-height:calc(100dvh - 16px)!important;margin:8px!important;border-radius:18px!important}
}

@media(max-width:480px){
  .evto-marketplace-home .evto-hero{padding-top:28px!important}
  .evto-marketplace-home .evto-hero h1{font-size:40px!important}
  .evto-marketplace-home .evto-search{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;padding:6px!important;background:#fff!important}
  .evto-marketplace-home .evto-search>span{display:none!important}
  .evto-marketplace-home .evto-search input{min-height:46px!important;padding:0 10px!important}
  .evto-marketplace-home .evto-search button{width:100%!important;min-height:46px!important}
  .evto-marketplace-home .evto-hero-art{height:220px!important;transform:scale(.72)!important;margin-bottom:-34px!important}
  .evto-card-v2 .event-card-topline>*{max-width:50%!important;font-size:10px!important}
  .evto-card-v2 .event-card-availability{font-size:11.5px!important}
  .evx-experience.event-detail .evx-hero-copy h1{font-size:36px!important}
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded{grid-template-columns:minmax(82px,.75fr) minmax(130px,1.25fr)!important}
  .evto-secure-checkout .checkout-dialog.checkout-dialog-wide{border-radius:18px 18px 0 0!important}
  .portal-kpis,.customer-kpi-grid,.smartops-kpis,.biz-kpis{grid-template-columns:1fr!important}
  .customer-account-tabs{grid-template-columns:1fr!important}.customer-account-tabs a.customer-staff-tab{grid-column:auto!important}
  .wallet-event-actions,.wallet-customer-actions{grid-template-columns:1fr!important}
  .eventos-admin{margin:0 8px!important}.eventos-admin .evtos-topbar h1{font-size:26px!important}
}

/* --------------------------------------------------------------------------
   GABE Promotions Ticketing 0.76.8 — Event mobile + navigation finishing pass
   --------------------------------------------------------------------------
   Final corrections for: grouped More-menu dead space, event-detail mobile
   alignment, mobile GABE header branding, and the persistent ticket dock.
*/

/* The grouped More menu used a two-column CSS grid. Grid row tracks inherit the
   height of the taller group, which created large blank holes under shorter
   groups. Multi-column flow keeps each section in normal document flow and
   packs the groups without fake vertical space. */
@media(min-width:901px){
  .promoter-more-groups{
    display:block!important;
    column-count:2!important;
    column-gap:14px!important;
  }
  .promoter-more-groups>section{
    display:inline-block!important;
    width:100%!important;
    margin:0 0 14px!important;
    break-inside:avoid!important;
    -webkit-column-break-inside:avoid!important;
    page-break-inside:avoid!important;
    vertical-align:top!important;
  }
}
@media(max-width:900px){
  .promoter-more-groups{
    display:block!important;
    column-count:1!important;
    max-height:none!important;
    overflow:visible!important;
  }
  .promoter-more-groups>section{
    width:100%!important;
    margin:0 0 14px!important;
  }
  .promoter-more-groups>section:last-child{margin-bottom:0!important}
}

@media(max-width:782px){
  /* Mobile header: one GABE system. Remove the generic white/red combination
     and use charcoal + gold across marketplace, account and event pages. */
  .evto-global-nav,
  .evto-nav.evto-global-nav,
  .evx-experience .evx-glass-nav,
  .evx-experience.event-detail .evx-glass-nav,
  .evx-experience.event-detail.evx-header-floating .evx-glass-nav,
  .evx-experience.event-detail.evx-header-edge .evx-glass-nav,
  .evx-experience.event-detail.evx-header-minimal .evx-glass-nav{
    background:rgba(21,23,28,.97)!important;
    border:1px solid color-mix(in srgb,var(--gv-brand,#c9a63b) 55%,#30343b)!important;
    color:#fff!important;
    box-shadow:0 10px 28px rgba(8,10,14,.20)!important;
    backdrop-filter:blur(16px) saturate(120%)!important;
    -webkit-backdrop-filter:blur(16px) saturate(120%)!important;
  }
  .evto-global-nav:before,
  .evx-experience .evx-glass-nav:before,
  .evx-experience.event-detail .evx-glass-nav:before{
    background:linear-gradient(105deg,color-mix(in srgb,var(--gv-brand,#c9a63b) 12%,transparent),transparent 48%)!important;
  }
  .evto-brand-mark-only .evto-brand-logo img,
  .evx-platform-brand .evx-platform-logo{
    filter:drop-shadow(0 2px 7px rgba(0,0,0,.28))!important;
  }
  .evto-global-nav .evto-account-trigger,
  .evx-experience .evx-glass-nav .evto-account-trigger,
  .evx-experience.event-detail .evx-glass-nav .evto-account-trigger{
    background:#23262d!important;
    border-color:color-mix(in srgb,var(--gv-brand,#c9a63b) 52%,#3a3d45)!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    box-shadow:none!important;
  }
  .evto-global-nav .evto-account-trigger-icon,
  .evx-experience .evx-glass-nav .evto-account-trigger-icon,
  .evx-experience.event-detail .evx-glass-nav .evto-account-trigger-icon{
    background:var(--gv-brand,#c9a63b)!important;
    color:var(--gv-brand-contrast,#17130a)!important;
    -webkit-text-fill-color:var(--gv-brand-contrast,#17130a)!important;
  }
  .evx-experience .evx-glass-nav .evx-share,
  .evx-experience.event-detail .evx-glass-nav .evx-share{
    background:transparent!important;
    border-color:color-mix(in srgb,var(--gv-brand,#c9a63b) 62%,#3a3d45)!important;
    color:#f3d66f!important;
    -webkit-text-fill-color:#f3d66f!important;
  }

  /* Event detail hierarchy: make the actual rendered hero content—not only old
     alias selectors—use the phone-width layout. */
  .evx-experience.event-detail .evx-hero.evx-hero-with-flyer{min-height:0!important}
  .evx-experience.event-detail .evx-hero-shell{
    display:grid!important;
    grid-template-columns:1fr!important;
    align-items:start!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:28px 16px 24px!important;
    gap:20px!important;
  }
  .evx-experience.event-detail .evx-hero-with-flyer .evx-hero-content,
  .evx-experience.event-detail .evx-hero-content{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    text-align:left!important;
  }
  .evx-experience.event-detail .evx-hero-with-flyer h1,
  .evx-experience.event-detail .evx-hero-content h1{
    width:100%!important;
    max-width:100%!important;
    margin:12px 0 16px!important;
    font-size:clamp(34px,10.5vw,46px)!important;
    line-height:1.02!important;
    letter-spacing:-.04em!important;
    text-wrap:balance!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
  }
  .evx-experience.event-detail .evx-event-facts{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    gap:7px!important;
    margin:0 0 18px!important;
    font-size:13.5px!important;
    line-height:1.42!important;
  }
  .evx-experience.event-detail .evx-event-facts>span{display:block!important;width:100%!important}
  .evx-experience.event-detail .evx-hero-with-flyer .evx-primary,
  .evx-experience.event-detail .evx-hero-content>.evx-primary{
    width:100%!important;
    max-width:100%!important;
    min-height:50px!important;
    padding:0 16px!important;
    justify-content:center!important;
    text-align:center!important;
  }
  .evx-experience.event-detail .evx-hero-flyer,
  .evx-experience.event-detail .evx-hero.is-placeholder-artwork .evx-hero-flyer{
    width:min(100%,340px)!important;
    max-width:340px!important;
    margin:0 auto!important;
    justify-self:center!important;
  }

  /* Main event sections share one left edge and never preserve desktop sticky /
     two-column behavior. */
  .evx-experience.event-detail .evx-width-wide,
  .evx-experience.event-detail .evx-width-content{
    width:calc(100% - 24px)!important;
    max-width:calc(100% - 24px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .evx-experience.event-detail .evx-frame>.evx-section{
    width:100%!important;
    padding:20px 16px!important;
    border-radius:16px!important;
  }
  .evx-experience.event-detail .evx-section-head{
    width:100%!important;
    max-width:none!important;
    margin:0 0 16px!important;
    text-align:left!important;
  }
  .evx-experience.event-detail .evx-section-head h2{font-size:25px!important;line-height:1.12!important;margin:6px 0 8px!important}
  .evx-experience.event-detail .evx-section-head p{margin:0!important;font-size:15px!important;line-height:1.55!important}
  .evx-experience.event-detail .evx-ticket-workspace{grid-template-columns:1fr!important;gap:12px!important}
  .evx-experience.event-detail .evx-ticket-summary{position:static!important;top:auto!important;width:100%!important}
  .evx-experience.event-detail .evx-ticket-types{width:100%!important}
  .evx-experience.event-detail .evx-map-toolbar{align-items:stretch!important;flex-direction:column!important;gap:8px!important}
  .evx-experience.event-detail .evx-map-toolbar :where(button,a,.evx-map-control){width:100%!important;min-height:44px!important;justify-content:center!important}
  .evx-experience.event-detail .evx-announcement{align-items:flex-start!important;flex-direction:column!important;gap:4px!important;text-align:left!important;padding:14px 16px!important}
  .evx-experience.event-detail .evx-announcement span{margin-left:0!important}
  .evx-experience.event-detail .evx-cta{align-items:stretch!important;flex-direction:column!important;gap:14px!important}

  /* Persistent ticket dock: the CTA may never cover the price/status. Remove
     decorative pseudo-content on phones and allow long disabled labels to wrap. */
  .evx-experience.event-detail{padding-bottom:max(104px,calc(88px + env(safe-area-inset-bottom)))!important}
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded{
    display:grid!important;
    grid-template-columns:minmax(76px,1fr) minmax(124px,44%)!important;
    align-items:center!important;
    width:calc(100% - 12px)!important;
    max-width:520px!important;
    min-height:0!important;
    gap:8px!important;
    padding:7px!important;
    bottom:max(6px,env(safe-area-inset-bottom))!important;
    border-radius:14px!important;
    overflow:hidden!important;
  }
  .evx-experience.event-detail .evx-sticky-event{display:none!important}
  .evx-experience.event-detail .evx-sticky-price{
    display:grid!important;
    min-width:0!important;
    width:100%!important;
    gap:2px!important;
    padding:0 6px!important;
    border-left:0!important;
    overflow:hidden!important;
  }
  .evx-experience.event-detail .evx-sticky-price>small{
    font-size:10px!important;
    line-height:1.1!important;
    letter-spacing:.08em!important;
    white-space:nowrap!important;
  }
  .evx-experience.event-detail .evx-sticky-price>b{
    display:block!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:17px!important;
    line-height:1.15!important;
  }
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:50px!important;
    height:auto!important;
    padding:8px 10px!important;
    border-radius:11px!important;
    font-size:13.5px!important;
    line-height:1.15!important;
    text-align:center!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary:before,
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary:after{display:none!important;content:none!important}
}

@media(max-width:380px){
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded{grid-template-columns:minmax(70px,.8fr) minmax(118px,1.2fr)!important}
  .evx-experience.event-detail .evx-sticky-price>b{font-size:16px!important}
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary{font-size:13px!important;padding-inline:8px!important}
}


/* GABE Promotions Ticketing 0.76.9 — Live Device & Customer Experience Certification */
/* Final customer-facing viewport layer. This deliberately avoids commercial
   state, price, inventory, payment and credential rules. */
:where(.evto-app,.evx-experience){overflow-x:clip}
:where(.evto-app,.evx-experience) :where(img,video,svg,canvas,iframe){max-width:100%}
:where(.evto-app,.evx-experience) :where(h1,h2,h3,h4,p,small,strong,b,span,a,button,label){overflow-wrap:break-word}
#evx-tickets,#evto-ticket-types{scroll-margin-top:96px}

/* The persistent purchase dock is a shortcut, not permanent screen chrome.
   Hide it when the real ticket workspace is visible, checkout/confirmation is
   open, or the on-screen keyboard materially reduces the viewport. */
.evx-sticky-buy[data-evx-sticky-ticket-bar]{
  transition:transform .22s ease,opacity .18s ease,visibility .18s ease!important;
  will-change:transform,opacity;
}
.evx-sticky-buy[data-evx-sticky-ticket-bar].gv-context-hidden,
body.evto-modal-open .evx-sticky-buy[data-evx-sticky-ticket-bar],
body.gv-mobile-keyboard-open .evx-sticky-buy[data-evx-sticky-ticket-bar]{
  transform:translate3d(0,calc(100% + 28px),0)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* Public footer becomes touch-friendly and receives enough safe-area clearance
   so neither iOS home indicator nor the purchase dock obscures legal links. */
@media(max-width:782px){
  .evto-site-footer{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
    width:100%!important;
    padding:24px 16px max(28px,calc(18px + env(safe-area-inset-bottom)))!important;
  }
  .evto-site-footer-primary,
  .evto-site-footer .evtos-compliance-links,
  .evto-site-footer [class*="compliance"]{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px 12px!important;
    width:100%!important;
  }
  .evto-site-footer a{
    display:flex!important;
    align-items:center!important;
    min-height:44px!important;
    padding:7px 0!important;
    font-size:13px!important;
    line-height:1.3!important;
  }
}
@media(max-width:420px){
  .evto-site-footer-primary,
  .evto-site-footer .evtos-compliance-links,
  .evto-site-footer [class*="compliance"]{grid-template-columns:1fr!important}
}

/* Checkout should behave like a phone sheet, not a desktop dialog forced into a
   narrow browser. Dynamic viewport units keep controls reachable above the
   mobile browser chrome and keyboard. */
@media(max-width:782px){
  .checkout-modal.evto-secure-checkout{
    position:fixed!important;
    inset:0!important;
    display:flex!important;
    align-items:flex-end!important;
    justify-content:center!important;
    width:100vw!important;
    height:100dvh!important;
    min-height:100dvh!important;
    padding:0!important;
    overflow:hidden!important;
    overscroll-behavior:contain!important;
  }
  .checkout-modal.evto-secure-checkout[hidden]{display:none!important}
  .checkout-modal.evto-secure-checkout .checkout-dialog.checkout-dialog-wide{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    max-height:min(96dvh,var(--gv-visual-viewport-height,96dvh))!important;
    margin:0!important;
    padding-bottom:max(14px,env(safe-area-inset-bottom))!important;
    border-radius:20px 20px 0 0!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior-y:contain!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .checkout-modal.evto-secure-checkout .modal-close{
    position:sticky!important;
    float:right!important;
    top:max(8px,env(safe-area-inset-top))!important;
    right:10px!important;
    margin:8px 8px -50px auto!important;
    z-index:30!important;
  }
  .checkout-modal.evto-secure-checkout .evto-checkout-heading{clear:both!important;padding-top:20px!important}
  .checkout-modal.evto-secure-checkout .evto-flow-steps{
    overflow-x:auto!important;
    overscroll-behavior-x:contain!important;
    scrollbar-width:none!important;
    padding-bottom:4px!important;
  }
  .checkout-modal.evto-secure-checkout .evto-flow-steps::-webkit-scrollbar{display:none!important}
  .checkout-modal.evto-secure-checkout .evto-flow-steps>*{flex:0 0 auto!important}
  .checkout-modal.evto-secure-checkout :where(.evto-review-actions,.evto-checkout-actions,.evto-identity-options){max-width:100%!important}
  .checkout-modal.evto-secure-checkout :where(button,a,[role="button"]){touch-action:manipulation}
}

/* Confirmation/ticket dialogs use the same dynamic viewport contract. */
@media(max-width:782px){
  :where(.evto-ticket-viewer-dialog,.evto-order-confirmation-dialog,.success-dialog){
    width:100%!important;
    max-width:100%!important;
    max-height:min(96dvh,var(--gv-visual-viewport-height,96dvh))!important;
    margin:0!important;
    border-radius:20px 20px 0 0!important;
    padding-bottom:max(16px,env(safe-area-inset-bottom))!important;
    overflow-y:auto!important;
    overscroll-behavior-y:contain!important;
  }
}

/* Account drawer and customer utility panels must fit every common phone width. */
@media(max-width:782px){
  .evto-account-drawer,
  .evto-account-menu,
  [class*="account-drawer"]{
    width:min(92vw,380px)!important;
    max-width:calc(100vw - 16px)!important;
    max-height:calc(100dvh - 16px)!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
  }
  .evto-drawer-links a,.evto-drawer-logout{min-height:46px!important;font-size:14px!important}
}

/* Long real event content should not force horizontal drift. */
@media(max-width:782px){
  .evx-experience.event-detail :where(.evx-copy,.evx-policy-grid,.evx-guide-grid,.evx-location-grid,.evx-ticket-types,.evx-ticket-summary){max-width:100%!important}
  .evx-experience.event-detail :where(.evx-copy a,.evx-section p a){word-break:break-word!important}
  .evx-experience.event-detail .evx-section :where(table,.widefat){display:block!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
  .evx-experience.event-detail .evx-primary,.evx-experience.event-detail .evx-secondary{max-width:100%!important}
}

/* Visible keyboard: remove competing fixed UI and give forms a stable viewport. */
body.gv-mobile-keyboard-open .checkout-modal.evto-secure-checkout .checkout-dialog.checkout-dialog-wide{
  max-height:var(--gv-visual-viewport-height,72dvh)!important;
  border-radius:16px 16px 0 0!important;
}
body.gv-mobile-keyboard-open :where(.evto-global-nav,.evx-glass-nav){position:relative!important;top:auto!important}

/* Accessible focus and motion behavior on all newly normalized controls. */
:where(.evto-app,.evx-experience) :where(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:3px solid color-mix(in srgb,var(--gv-brand,#c9a63b) 78%,white)!important;
  outline-offset:2px!important;
}
@media(prefers-reduced-motion:reduce){
  .evx-sticky-buy[data-evx-sticky-ticket-bar]{transition:none!important}
  :where(.evto-app,.evx-experience){scroll-behavior:auto!important}
}

/* Ultra-narrow phones: prevent CTA/price competition and keep controls sane. */
@media(max-width:360px){
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded{
    grid-template-columns:minmax(64px,.72fr) minmax(116px,1.28fr)!important;
    gap:6px!important;
    width:calc(100% - 8px)!important;
    padding:6px!important;
  }
  .evx-experience.event-detail .evx-sticky-price{padding-inline:3px!important}
  .evx-experience.event-detail .evx-sticky-price>b{font-size:15px!important}
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary{min-height:48px!important;font-size:12.5px!important}
  .evto-global-nav,.evx-experience .evx-glass-nav{width:calc(100% - 8px)!important;padding-inline:6px!important}
}

/* GABE Promotions Ticketing 0.76.10 — Navigation & Sidebar Brand Polish */
/* Keep the mobile header branded, but remove the outlined-card appearance. */
@media(max-width:782px){
  .evto-global-nav,
  .evto-nav.evto-global-nav,
  .customer-site-header,
  .customer-tabs-portal>.customer-site-header,
  .promoter-tabs-portal>.customer-site-header,
  .evx-experience .evx-glass-nav,
  .evx-experience.event-detail .evx-glass-nav,
  .evx-experience.event-detail.evx-header-floating .evx-glass-nav,
  .evx-experience.event-detail.evx-header-edge .evx-glass-nav,
  .evx-experience.event-detail.evx-header-minimal .evx-glass-nav{
    border:0!important;
    outline:0!important;
    box-shadow:0 8px 24px rgba(8,10,14,.16)!important;
  }
}

/* Logo-only drawer identity: the artwork already carries the brand name. */
.evto-drawer-brand.evto-drawer-brand-logo-only{
  display:inline-flex!important;
  align-items:center!important;
  gap:0!important;
  width:auto!important;
  min-width:0!important;
  text-decoration:none!important;
}
.evto-drawer-brand-logo-only .evto-drawer-logo{
  width:68px!important;
  height:46px!important;
  min-width:68px!important;
  padding:0!important;
}
.evto-drawer-brand-logo-only .evto-drawer-logo img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}

/* The old active-state stripe could render as a blue/brand line depending on
   cascade/theme state. Keep selection obvious through surface + text only. */
.portal-sidebar nav a.active,
.portal-sidebar nav a:hover,
.portal-app .portal-sidebar nav a.active,
.portal-app .portal-sidebar nav a:hover,
.promoter-portal>.portal-sidebar nav a.active,
.customer-portal>.portal-sidebar nav a.active{
  box-shadow:none!important;
  border-left-color:transparent!important;
}

/* Replace browser-blue focus chrome with the GABE focus language while keeping
   keyboard navigation visible. */
:where(.portal-sidebar nav a,.evto-drawer-links a,.evto-drawer-social,.promoter-mobile-tabs a,.promoter-desktop-tabs a):focus-visible{
  outline:2px solid var(--gv-brand,#c9a63b)!important;
  outline-offset:2px!important;
  box-shadow:none!important;
}

/* Social links live at the bottom of the account/sidebar drawer and use the
   same organization branding URLs already editable in Brand Settings. */
.evto-drawer-scroll{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
}
.evto-drawer-socials{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  width:100%!important;
  margin-top:auto!important;
  padding:24px 0 2px!important;
}
.evto-drawer-social{
  display:grid!important;
  place-items:center!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  padding:0!important;
  border:1px solid #e4e7ec!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#30343b!important;
  text-decoration:none!important;
  box-shadow:none!important;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease!important;
}
.evto-drawer-social svg{
  width:20px!important;
  height:20px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.evto-drawer-social svg .fill-shape,
.evto-drawer-social svg .fill-dot{
  fill:currentColor!important;
  stroke:none!important;
}
.evto-drawer-social:hover{
  background:color-mix(in srgb,var(--evto-drawer-accent,var(--gv-brand,#c9a63b)) 11%,#fff)!important;
  border-color:color-mix(in srgb,var(--evto-drawer-accent,var(--gv-brand,#c9a63b)) 48%,#e4e7ec)!important;
  color:#6f5717!important;
  transform:translateY(-1px)!important;
}
@media(max-width:782px){
  .evto-drawer-head{padding-inline:16px!important}
  .evto-drawer-brand-logo-only .evto-drawer-logo{width:64px!important;height:44px!important;min-width:64px!important}
  .evto-drawer-socials{padding-top:20px!important;padding-bottom:max(4px,env(safe-area-inset-bottom))!important}
}


/* GABE Promotions Ticketing 0.76.11 — Unified Customer CTA + Simple Ticket Dock
   One visual CTA language across discovery/event cards and a stable, simpler
   fixed ticket shortcut. Presentation only; no commerce state is changed. */

/* One GABE CTA treatment: no filled-vs-outline mismatch. */
.evto-marketplace-home .evto-search button,
.evto-marketplace-home .event-card-cta,
.evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary{
  appearance:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:44px!important;
  padding:0 18px!important;
  border:0!important;
  border-radius:12px!important;
  background:var(--gv-brand,#c9a63b)!important;
  color:var(--gv-brand-contrast,#17191f)!important;
  -webkit-text-fill-color:var(--gv-brand-contrast,#17191f)!important;
  box-shadow:none!important;
  font-weight:850!important;
  letter-spacing:-.01em!important;
  text-decoration:none!important;
  transition:background-color .16s ease,color .16s ease!important;
  transform:none!important;
}
.evto-marketplace-home .evto-search button:hover,
.evto-marketplace-home .event-card-cta:hover,
.evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary:hover:not(:disabled){
  background:var(--gv-brand-hover,#b8942f)!important;
  border:0!important;
  color:var(--gv-brand-contrast,#17191f)!important;
  -webkit-text-fill-color:var(--gv-brand-contrast,#17191f)!important;
  box-shadow:none!important;
  transform:none!important;
}
.evto-marketplace-home .evto-search button:focus-visible,
.evto-marketplace-home .event-card-cta:focus-visible,
.evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary:focus-visible{
  outline:0!important;
  box-shadow:var(--gv-focus-ring)!important;
}
.evto-marketplace-home .event-card-cta{
  min-width:112px!important;
  font-size:12.5px!important;
  white-space:nowrap!important;
}

/* Simplified branded purchase dock: Event | Price | Get tickets. */
.evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded{
  left:50%!important;
  bottom:max(14px,env(safe-area-inset-bottom))!important;
  width:min(980px,calc(100% - 28px))!important;
  min-height:72px!important;
  grid-template-columns:minmax(0,1fr) minmax(150px,auto) minmax(132px,auto)!important;
  align-items:center!important;
  gap:18px!important;
  padding:10px 12px 10px 18px!important;
  background:#fffdf8!important;
  border:1px solid color-mix(in srgb,var(--gv-brand,#c9a63b) 32%,#e5e7eb)!important;
  border-radius:18px!important;
  box-shadow:0 12px 34px rgba(16,24,40,.12)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  overflow:hidden!important;
  transform:translate3d(-50%,0,0)!important;
}
.evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded:before{display:none!important;content:none!important}
.evx-experience.event-detail .evx-sticky-logo,
.evx-experience.event-detail .evx-sticky-kicker{display:none!important}
.evx-experience.event-detail .evx-sticky-event{min-width:0!important;display:block!important}
.evx-experience.event-detail .evx-sticky-event-copy{display:flex!important;flex-direction:column!important;gap:4px!important;min-width:0!important}
.evx-experience.event-detail .evx-sticky-event-copy>small{display:block!important;margin:0!important;font-size:11px!important;line-height:1.15!important;color:var(--gv-text-muted,#667085)!important;-webkit-text-fill-color:var(--gv-text-muted,#667085)!important}
.evx-experience.event-detail .evx-sticky-time{display:block!important;font-weight:750!important;white-space:nowrap!important}
.evx-experience.event-detail .evx-sticky-event-copy>b{display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:15px!important;line-height:1.2!important;font-weight:900!important;color:var(--gv-ink,#17191f)!important;-webkit-text-fill-color:var(--gv-ink,#17191f)!important}
.evx-experience.event-detail .evx-sticky-price{min-width:0!important;padding:0 0 0 18px!important;border-left:1px solid color-mix(in srgb,var(--gv-brand,#c9a63b) 22%,#e4e7ec)!important;display:grid!important;gap:3px!important;line-height:1.1!important}
.evx-experience.event-detail .evx-sticky-price>small{display:block!important;margin:0!important;font-size:9px!important;letter-spacing:.10em!important;font-weight:900!important;color:var(--gv-brand-ink,#765a10)!important;-webkit-text-fill-color:var(--gv-brand-ink,#765a10)!important}
.evx-experience.event-detail .evx-sticky-price>b{display:block!important;font-size:16px!important;font-weight:900!important;white-space:nowrap!important;color:var(--gv-ink,#17191f)!important;-webkit-text-fill-color:var(--gv-ink,#17191f)!important}
.evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary{min-width:132px!important;min-height:48px!important;padding-inline:18px!important;font-size:13.5px!important;white-space:nowrap!important}
.evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary:before,
.evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary:after{display:none!important;content:none!important}

/* Preserve horizontal centering through the scroll hide/show animation. The old
   hidden transform dropped translateX(-50%), which made the dock drift sideways. */
.evx-sticky-buy[data-evx-sticky-ticket-bar]{
  transform:translate3d(-50%,0,0)!important;
  transition:transform .20s cubic-bezier(.2,.8,.2,1),opacity .16s ease,visibility .16s ease!important;
  will-change:transform,opacity;
}
.evx-sticky-buy[data-evx-sticky-ticket-bar].gv-context-hidden,
body.evto-modal-open .evx-sticky-buy[data-evx-sticky-ticket-bar],
body.gv-mobile-keyboard-open .evx-sticky-buy[data-evx-sticky-ticket-bar]{
  transform:translate3d(-50%,calc(100% + 28px),0)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

@media(max-width:782px){
  .evto-marketplace-home .evto-search button,
  .evto-marketplace-home .event-card-cta{min-height:48px!important;border-radius:12px!important;font-size:14px!important}
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded{
    width:calc(100% - 16px)!important;
    min-height:70px!important;
    grid-template-columns:minmax(0,1fr) minmax(118px,auto)!important;
    grid-template-areas:"event cta" "price cta"!important;
    gap:2px 10px!important;
    padding:8px 8px 8px 14px!important;
    border-radius:16px!important;
    bottom:max(8px,env(safe-area-inset-bottom))!important;
  }
  .evx-experience.event-detail .evx-sticky-event{grid-area:event!important;min-width:0!important}
  .evx-experience.event-detail .evx-sticky-price{grid-area:price!important;border:0!important;padding:0!important;display:flex!important;align-items:baseline!important;gap:5px!important}
  .evx-experience.event-detail .evx-sticky-price>small{font-size:8px!important}
  .evx-experience.event-detail .evx-sticky-price>b{font-size:13.5px!important}
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary{grid-area:cta!important;width:100%!important;min-width:118px!important;min-height:50px!important;padding-inline:14px!important;font-size:13.5px!important}
  .evx-experience.event-detail .evx-sticky-event-copy>small{font-size:10px!important}
  .evx-experience.event-detail .evx-sticky-event-copy>b{font-size:13.5px!important;max-width:100%!important}
}
@media(max-width:360px){
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded{grid-template-columns:minmax(0,1fr) 112px!important;width:calc(100% - 10px)!important;padding-left:10px!important;gap:2px 7px!important}
  .evx-experience.event-detail .evx-sticky-buy.evx-sticky-buy-branded>.evx-primary{min-width:112px!important;font-size:13px!important;padding-inline:8px!important}
  .evx-experience.event-detail .evx-sticky-price>small{display:none!important}
}
@media(prefers-reduced-motion:reduce){
  .evx-sticky-buy[data-evx-sticky-ticket-bar]{transition:none!important}
}

/* GABE Promotions Ticketing 0.76.12 — Compact Event Details + Footer-Aware Dock
   Keep event information concise: Overview + Starts + Performers. The details
   frame uses natural content height, and the purchase dock yields to the footer. */
.evx-experience.event-detail .evx-frame-type-details{
  padding-top:18px!important;
  padding-bottom:18px!important;
}
.evx-experience.event-detail .evx-details.evx-details-simplified{
  padding:32px 34px!important;
  overflow:hidden!important;
}
.evx-experience.event-detail .evx-details.evx-details-simplified .evx-section-head{
  margin-bottom:18px!important;
  max-width:860px!important;
}
.evx-experience.event-detail .evx-details.evx-details-simplified .evx-section-head h2{
  margin-bottom:0!important;
}
.evx-experience.event-detail .evx-details-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr)!important;
  gap:clamp(24px,4vw,54px)!important;
  align-items:start!important;
}
.evx-experience.event-detail .evx-details-overview{
  min-width:0!important;
  padding:0!important;
}
.evx-experience.event-detail .evx-details-overview>span{
  display:block!important;
  margin:0 0 8px!important;
  color:var(--gv-brand-ink,#765a10)!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
}
.evx-experience.event-detail .evx-details-overview .evx-copy,
.evx-experience.event-detail .evx-details-overview .evx-copy p{
  margin-top:0!important;
  margin-bottom:0!important;
  max-width:760px!important;
  color:var(--gv-text,#475467)!important;
  font-size:15.5px!important;
  line-height:1.65!important;
}
.evx-experience.event-detail .evx-details-meta{
  margin:0!important;
  padding:0!important;
  border-top:1px solid var(--gv-border,#e4e7ec)!important;
}
.evx-experience.event-detail .evx-details-meta>div{
  display:grid!important;
  grid-template-columns:92px minmax(0,1fr)!important;
  gap:14px!important;
  align-items:start!important;
  margin:0!important;
  padding:15px 0!important;
  border-bottom:1px solid var(--gv-border,#e4e7ec)!important;
  background:transparent!important;
  box-shadow:none!important;
}
.evx-experience.event-detail .evx-details-meta dt,
.evx-experience.event-detail .evx-details-meta dd{margin:0!important;padding:0!important}
.evx-experience.event-detail .evx-details-meta dt{
  color:var(--gv-text-muted,#667085)!important;
  font-size:11px!important;
  font-weight:800!important;
}
.evx-experience.event-detail .evx-details-meta dd{
  color:var(--gv-ink,#101828)!important;
  font-size:14px!important;
  font-weight:850!important;
  line-height:1.4!important;
  overflow-wrap:anywhere!important;
}
/* The older three-card detail grid is intentionally retired for this section. */
.evx-experience.event-detail .evx-details.evx-details-simplified .evx-fact-cards{display:none!important}

@media(max-width:820px){
  .evx-experience.event-detail .evx-frame-type-details{padding-top:10px!important;padding-bottom:10px!important}
  .evx-experience.event-detail .evx-details.evx-details-simplified{padding:24px 20px!important}
  .evx-experience.event-detail .evx-details-layout{grid-template-columns:1fr!important;gap:20px!important}
  .evx-experience.event-detail .evx-details-overview .evx-copy,
  .evx-experience.event-detail .evx-details-overview .evx-copy p{font-size:15px!important}
}
@media(max-width:480px){
  .evx-experience.event-detail .evx-details.evx-details-simplified{padding:21px 16px!important}
  .evx-experience.event-detail .evx-details.evx-details-simplified .evx-section-head{margin-bottom:14px!important}
  .evx-experience.event-detail .evx-details-meta>div{grid-template-columns:1fr!important;gap:4px!important;padding:13px 0!important}
  .evx-experience.event-detail .evx-details-meta dt{font-size:10px!important;text-transform:uppercase!important;letter-spacing:.08em!important}
  .evx-experience.event-detail .evx-details-meta dd{font-size:14px!important}
}



/* GABE Promotions Ticketing 0.76.14 — Customer Brand Accent Cleanup
   Remove the last event-accent/red leaks from the customer account trigger and
   the Event Experience "Choose tickets" CTA. Presentation only. */

/* Account trigger initial: always use the shared GABE brand, never an event's accent. */
.evto-global-nav .evto-account-trigger-icon,
.evx-experience .evx-glass-nav .evto-account-trigger-icon,
.evx-experience.event-detail .evx-glass-nav .evto-account-trigger-icon{
  background:var(--gv-brand,#c9a63b)!important;
  color:var(--gv-brand-contrast,#17191f)!important;
  -webkit-text-fill-color:var(--gv-brand-contrast,#17191f)!important;
  border:0!important;
  box-shadow:none!important;
}

/* "Choose tickets" uses the same CTA component as Explore / View tickets / Get tickets. */
.evx-experience.event-detail .evx-cta>.evx-primary,
.evx-experience.event-detail .evx-cta .evx-primary{
  appearance:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:44px!important;
  padding:0 18px!important;
  border:0!important;
  border-radius:12px!important;
  background:var(--gv-brand,#c9a63b)!important;
  color:var(--gv-brand-contrast,#17191f)!important;
  -webkit-text-fill-color:var(--gv-brand-contrast,#17191f)!important;
  box-shadow:none!important;
  font-weight:850!important;
  letter-spacing:-.01em!important;
  text-decoration:none!important;
  transform:none!important;
  transition:background-color .16s ease,color .16s ease!important;
}
.evx-experience.event-detail .evx-cta>.evx-primary:hover,
.evx-experience.event-detail .evx-cta .evx-primary:hover{
  background:var(--gv-brand-hover,#b8942f)!important;
  color:var(--gv-brand-contrast,#17191f)!important;
  -webkit-text-fill-color:var(--gv-brand-contrast,#17191f)!important;
  transform:none!important;
}
.evx-experience.event-detail .evx-cta>.evx-primary:focus-visible,
.evx-experience.event-detail .evx-cta .evx-primary:focus-visible{
  outline:0!important;
  box-shadow:var(--gv-focus-ring)!important;
}
@media(max-width:782px){
  .evx-experience.event-detail .evx-cta>.evx-primary,
  .evx-experience.event-detail .evx-cta .evx-primary{
    min-height:48px!important;
    width:100%!important;
    max-width:100%!important;
    font-size:14px!important;
  }
}


/* --------------------------------------------------------------------------
   GABE Promotions Ticketing 0.76.16 — Responsive Event Hero Refinement
   --------------------------------------------------------------------------
   Preserve the clean two-column desktop composition chosen for GABE V while
   making the left hierarchy substantially stronger. Desktop, iPad landscape,
   iPad portrait and phone layouts each get intentional sizing rather than
   inheriting one breakpoint's proportions.
*/
@media(min-width:1101px){
  .evx-experience.event-detail .evx-hero.evx-hero-with-flyer{
    min-height:0!important;
  }
  .evx-experience.event-detail .evx-hero-shell{
    width:min(1340px,calc(100% - 72px))!important;
    max-width:1340px!important;
    margin:0 auto!important;
    padding:72px 0 54px!important;
    grid-template-columns:minmax(0,1fr) minmax(330px,370px)!important;
    gap:clamp(44px,4.2vw,70px)!important;
    align-items:center!important;
  }
  .evx-experience.event-detail .evx-hero-with-flyer .evx-hero-content,
  .evx-experience.event-detail .evx-hero-content{
    width:100%!important;
    max-width:860px!important;
    align-self:center!important;
  }
  .evx-experience.event-detail .evx-hero-with-flyer h1,
  .evx-experience.event-detail .evx-hero-content h1{
    max-width:860px!important;
    margin:17px 0 24px!important;
    font-size:clamp(72px,6.1vw,96px)!important;
    line-height:.92!important;
    letter-spacing:-.058em!important;
  }
  .evx-experience.event-detail .evx-event-facts{
    gap:8px!important;
    margin:0 0 28px!important;
    font-size:18px!important;
    line-height:1.42!important;
    color:#f0f2f5!important;
  }
  .evx-experience.event-detail .evx-event-facts .evx-hero-start{
    font-size:19px!important;
    font-weight:850!important;
    letter-spacing:.015em!important;
  }
  .evx-experience.event-detail .evx-hero-with-flyer .evx-primary,
  .evx-experience.event-detail .evx-hero-content>.evx-primary{
    width:auto!important;
    min-width:205px!important;
    min-height:58px!important;
    padding:0 28px!important;
    border-radius:13px!important;
    font-size:18px!important;
    font-weight:900!important;
  }
  .evx-experience.event-detail .evx-hero-flyer,
  .evx-experience.event-detail .evx-hero.is-placeholder-artwork .evx-hero-flyer{
    width:100%!important;
    max-width:360px!important;
    margin:0!important;
    justify-self:start!important;
  }
  .evx-experience.event-detail .evx-hero-flyer img{max-height:470px!important}
  .evx-experience.event-detail .evx-hero-flyer figcaption{
    margin-top:9px!important;
    font-size:8.5px!important;
    text-align:center!important;
  }
}

/* iPad landscape / smaller desktop: keep two columns, but avoid desktop-scale
   typography crowding the artwork. */
@media(min-width:783px) and (max-width:1100px){
  .evx-experience.event-detail .evx-hero-shell{
    width:calc(100% - 40px)!important;
    max-width:1000px!important;
    margin:0 auto!important;
    padding:58px 0 46px!important;
    grid-template-columns:minmax(0,1fr) minmax(250px,300px)!important;
    gap:clamp(26px,3.2vw,40px)!important;
    align-items:center!important;
  }
  .evx-experience.event-detail .evx-hero-with-flyer .evx-hero-content,
  .evx-experience.event-detail .evx-hero-content{max-width:610px!important}
  .evx-experience.event-detail .evx-hero-with-flyer h1,
  .evx-experience.event-detail .evx-hero-content h1{
    margin:14px 0 20px!important;
    font-size:clamp(54px,6.6vw,72px)!important;
    line-height:.95!important;
  }
  .evx-experience.event-detail .evx-event-facts{
    gap:7px!important;
    margin-bottom:23px!important;
    font-size:16px!important;
    line-height:1.44!important;
  }
  .evx-experience.event-detail .evx-event-facts .evx-hero-start{font-size:16.5px!important;font-weight:850!important}
  .evx-experience.event-detail .evx-hero-with-flyer .evx-primary,
  .evx-experience.event-detail .evx-hero-content>.evx-primary{
    width:auto!important;
    min-width:185px!important;
    min-height:54px!important;
    padding:0 24px!important;
    font-size:16px!important;
  }
  .evx-experience.event-detail .evx-hero-flyer,
  .evx-experience.event-detail .evx-hero.is-placeholder-artwork .evx-hero-flyer{
    width:100%!important;
    max-width:295px!important;
    margin:0!important;
    justify-self:start!important;
  }
  .evx-experience.event-detail .evx-hero-flyer img{max-height:405px!important}
  .evx-experience.event-detail .evx-hero-flyer figcaption{text-align:center!important}
}

/* iPad portrait: use a roomy one-column presentation, but don't make the CTA
   stretch like a phone control. */
@media(min-width:600px) and (max-width:782px){
  .evx-experience.event-detail .evx-hero-shell{
    padding:42px 34px 36px!important;
    gap:28px!important;
  }
  .evx-experience.event-detail .evx-hero-with-flyer h1,
  .evx-experience.event-detail .evx-hero-content h1{
    margin:14px 0 20px!important;
    font-size:clamp(50px,8.2vw,62px)!important;
    line-height:.97!important;
  }
  .evx-experience.event-detail .evx-event-facts{
    gap:8px!important;
    margin-bottom:22px!important;
    font-size:16px!important;
  }
  .evx-experience.event-detail .evx-event-facts .evx-hero-start{font-size:16.5px!important;font-weight:850!important}
  .evx-experience.event-detail .evx-hero-with-flyer .evx-primary,
  .evx-experience.event-detail .evx-hero-content>.evx-primary{
    width:auto!important;
    max-width:220px!important;
    min-width:190px!important;
    min-height:54px!important;
    padding:0 24px!important;
    font-size:16px!important;
  }
  .evx-experience.event-detail .evx-hero-flyer,
  .evx-experience.event-detail .evx-hero.is-placeholder-artwork .evx-hero-flyer{
    width:min(100%,360px)!important;
    max-width:360px!important;
  }
}

/* Phones: preserve the existing one-column flow, with larger readable metadata
   but bounded title/button sizes for 360–430px screens. */
@media(max-width:599px){
  .evx-experience.event-detail .evx-hero-shell{
    padding:30px 16px 26px!important;
    gap:22px!important;
  }
  .evx-experience.event-detail .evx-hero-with-flyer h1,
  .evx-experience.event-detail .evx-hero-content h1{
    margin:12px 0 17px!important;
    font-size:clamp(40px,11.5vw,52px)!important;
    line-height:1!important;
  }
  .evx-experience.event-detail .evx-event-facts{
    gap:7px!important;
    margin-bottom:19px!important;
    font-size:15px!important;
    line-height:1.45!important;
  }
  .evx-experience.event-detail .evx-event-facts .evx-hero-start{font-size:15.5px!important;font-weight:850!important}
  .evx-experience.event-detail .evx-hero-with-flyer .evx-primary,
  .evx-experience.event-detail .evx-hero-content>.evx-primary{
    width:100%!important;
    max-width:100%!important;
    min-height:50px!important;
    padding:0 18px!important;
    font-size:15px!important;
  }
  .evx-experience.event-detail .evx-hero-flyer,
  .evx-experience.event-detail .evx-hero.is-placeholder-artwork .evx-hero-flyer{
    width:min(100%,330px)!important;
    max-width:330px!important;
  }
}


/* --------------------------------------------------------------------------
   GABE Promotions Ticketing 0.76.18 — Compact More-menu column repair
   --------------------------------------------------------------------------
   Replaces CSS multi-column balancing with two real vertical columns. This
   prevents Chromium/WebKit from reserving phantom height beneath short groups
   when the longer group determines the menu height.
*/
@media(min-width:981px){
  .promoter-more-groups{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    column-count:auto!important;
    align-items:start!important;
    align-content:start!important;
    gap:14px!important;
    height:auto!important;
    min-height:0!important;
    max-height:min(72vh,640px)!important;
    overflow:auto!important;
  }
  .promoter-more-groups.is-single-group{
    width:min(370px,82vw)!important;
    grid-template-columns:1fr!important;
  }
  .promoter-more-column{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:14px!important;
    min-width:0!important;
    height:auto!important;
  }
  .promoter-more-column>section{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    break-inside:auto!important;
  }
}


/* GABE Promotions Ticketing 0.76.29 — Event Card Privacy + CTA Brand Unification */
.evto-marketplace-home .evto-search button,
.evto-marketplace-home .event-card-cta{
  min-height:46px!important;
  padding:0 18px!important;
  border:1px solid var(--gv-brand,#c9a63b)!important;
  border-radius:12px!important;
  background:var(--gv-brand,#c9a63b)!important;
  color:var(--gv-brand-contrast,#17191f)!important;
  -webkit-text-fill-color:var(--gv-brand-contrast,#17191f)!important;
  box-shadow:none!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:-.015em!important;
  white-space:nowrap!important;
}
.evto-marketplace-home .evto-search button:hover,
.evto-marketplace-home .event-card-cta:hover{
  background:var(--gv-brand-hover,#b8942f)!important;
  border-color:var(--gv-brand-hover,#b8942f)!important;
  color:var(--gv-brand-contrast,#17191f)!important;
  -webkit-text-fill-color:var(--gv-brand-contrast,#17191f)!important;
}
.evto-marketplace-home .evto-search button:focus-visible,
.evto-marketplace-home .event-card-cta:focus-visible{
  outline:0!important;
  box-shadow:var(--gv-focus-ring,0 0 0 3px rgba(201,166,59,.28))!important;
}
.evto-marketplace-home .event-card-bottom{
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:14px!important;
  padding-top:16px!important;
}
.evto-marketplace-home .event-card-price-wrap{
  gap:3px!important;
}
.evto-marketplace-home .event-card-price-wrap>small{
  color:#8a8170!important;
  font-size:9px!important;
  font-weight:800!important;
  letter-spacing:.13em!important;
}
.evto-marketplace-home .event-card-price{
  color:var(--gv-brand-ink,#765a10)!important;
  font-size:20px!important;
  line-height:1.12!important;
  font-weight:800!important;
  letter-spacing:-.025em!important;
}
.evto-marketplace-home .event-card-availability.is-staff-only{
  margin-top:4px!important;
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  min-height:22px!important;
  padding:3px 7px!important;
  border-radius:999px!important;
  background:#f3f4f6!important;
  color:#667085!important;
  font-size:10px!important;
  font-weight:700!important;
  line-height:1.2!important;
}
.evto-marketplace-home .event-card-availability.is-staff-only:before{
  content:'STAFF';
  margin-right:5px;
  color:#8a6a12;
  font-size:7px;
  font-weight:900;
  letter-spacing:.08em;
}
.evto-marketplace-home .event-card-cta{
  min-width:126px!important;
  justify-self:end!important;
}
@media(max-width:782px){
  .evto-marketplace-home .event-card-cta{min-width:118px!important;min-height:46px!important;font-size:13px!important}
}
@media(max-width:430px){
  .evto-marketplace-home .event-card-bottom{grid-template-columns:1fr!important;gap:10px!important}
  .evto-marketplace-home .event-card-cta{width:100%!important;justify-self:stretch!important}
}

/* GABE Promotions Ticketing 0.76.37 — final authority for the simplified card footer. */
.evto-marketplace-home .event-card-bottom{
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:14px!important;
  margin:4px 0 0!important;
  padding:15px 0 0!important;
  border-top:1px solid #e8eaee!important;
  border-radius:0!important;
  background:transparent!important;
}
.evto-marketplace-home .event-card-price-wrap{gap:3px!important}
.evto-marketplace-home .event-card-price-wrap>small{color:#8a8170!important;font-size:8px!important;letter-spacing:.14em!important}
.evto-marketplace-home .event-card-price{color:#17181b!important;font-size:clamp(17px,1.45vw,20px)!important;line-height:1.12!important;font-weight:760!important}
.evto-marketplace-home .event-card-availability.is-staff-only{
  display:inline!important;
  width:auto!important;
  min-height:0!important;
  margin-top:2px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#858995!important;
  font-size:9px!important;
  line-height:1.2!important;
  font-weight:650!important;
}
.evto-marketplace-home .event-card-availability.is-staff-only:before{content:'Staff · '!important;margin:0!important;color:#9a7a20!important;font-size:8px!important;font-weight:800!important;letter-spacing:.02em!important}
.evto-marketplace-home .event-card-cta{
  min-width:120px!important;
  min-height:42px!important;
  padding:0 15px!important;
  gap:8px!important;
  border:1px solid #c9a63b!important;
  border-radius:11px!important;
  background:#d4b33f!important;
  color:#17130a!important;
  -webkit-text-fill-color:#17130a!important;
  box-shadow:none!important;
  font-size:12px!important;
  font-weight:800!important;
}
.evto-marketplace-home .event-card-cta span,.evto-marketplace-home .event-card-cta i{color:#17130a!important;-webkit-text-fill-color:#17130a!important}
.evto-marketplace-home .event-card-cta i{width:auto!important;height:auto!important;background:transparent!important;border-radius:0!important;font-size:15px!important}
.evto-marketplace-home .event-card-cta:hover{background:#c39d2e!important;border-color:#b58e22!important;color:#17130a!important;-webkit-text-fill-color:#17130a!important;box-shadow:none!important}
@media(max-width:480px){
  .evto-marketplace-home .event-card-bottom{grid-template-columns:1fr!important;gap:11px!important;padding-top:14px!important}
  .evto-marketplace-home .event-card-cta{width:100%!important;min-height:42px!important;justify-self:stretch!important}
}


/* GABE Promotions Ticketing 0.76.51 — public navigation: GABE V Black + Gold. */
.evto-app .evto-global-nav,
.evto-nav.evto-global-nav{
  --gv-nav-gold:var(--gv-brand,#c9a63b);
  --gv-nav-gold-bright:#e3c45b;
  background:linear-gradient(180deg,rgba(18,19,23,.985) 0%,rgba(11,12,15,.985) 100%)!important;
  border:1px solid rgba(201,166,59,.30)!important;
  color:#fff!important;
  box-shadow:0 14px 34px rgba(4,5,8,.22),inset 0 1px 0 rgba(255,255,255,.04)!important;
  backdrop-filter:blur(18px) saturate(118%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(118%)!important;
}
.evto-app .evto-global-nav:before,
.evto-nav.evto-global-nav:before{
  background:linear-gradient(105deg,rgba(201,166,59,.08),transparent 38%,rgba(255,255,255,.025) 70%,rgba(201,166,59,.055))!important;
}
.evto-app .evto-global-nav nav a,
.evto-app .evto-global-nav .evto-help-link{
  color:#f5f5f6!important;
  -webkit-text-fill-color:#f5f5f6!important;
  background:transparent!important;
  border:1px solid transparent!important;
  font-weight:700!important;
}
.evto-app .evto-global-nav nav a:hover,
.evto-app .evto-global-nav .evto-help-link:hover{
  color:var(--gv-nav-gold-bright)!important;
  -webkit-text-fill-color:var(--gv-nav-gold-bright)!important;
  background:rgba(255,255,255,.045)!important;
  border-color:rgba(201,166,59,.18)!important;
}
.evto-app .evto-global-nav .evto-promoter-top{
  min-height:40px!important;
  padding:0 15px!important;
  border-radius:13px!important;
  border:1px solid color-mix(in srgb,var(--gv-nav-gold) 76%,#614b12)!important;
  background:linear-gradient(180deg,rgba(201,166,59,.18),rgba(201,166,59,.08))!important;
  color:var(--gv-nav-gold-bright)!important;
  -webkit-text-fill-color:var(--gv-nav-gold-bright)!important;
  font-size:12px!important;
  font-weight:850!important;
  letter-spacing:-.01em!important;
  box-shadow:inset 0 1px 0 rgba(255,231,139,.10),0 5px 16px rgba(0,0,0,.12)!important;
}
.evto-app .evto-global-nav .evto-promoter-top:hover{
  background:linear-gradient(180deg,rgba(201,166,59,.25),rgba(201,166,59,.12))!important;
  border-color:var(--gv-nav-gold-bright)!important;
  color:#f4d871!important;
  -webkit-text-fill-color:#f4d871!important;
  transform:translateY(-1px);
}
.evto-app .evto-global-nav .evto-account-trigger{
  min-height:44px!important;
  gap:9px!important;
  padding:6px 13px 6px 6px!important;
  border-radius:15px!important;
  border:1px solid rgba(255,255,255,.13)!important;
  background:linear-gradient(180deg,#202228 0%,#17191e 100%)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 6px 16px rgba(0,0,0,.16)!important;
}
.evto-app .evto-global-nav .evto-account-trigger:hover{
  background:linear-gradient(180deg,#272a31 0%,#1c1e24 100%)!important;
  border-color:rgba(201,166,59,.52)!important;
  transform:translateY(-1px);
}
.evto-app .evto-global-nav .evto-account-trigger-icon{
  width:31px!important;
  height:31px!important;
  background:linear-gradient(180deg,#dfbd4c 0%,var(--gv-nav-gold) 100%)!important;
  color:var(--gv-brand-contrast,#17130a)!important;
  -webkit-text-fill-color:var(--gv-brand-contrast,#17130a)!important;
  box-shadow:inset 0 1px 0 rgba(255,244,193,.35),0 3px 8px rgba(0,0,0,.20)!important;
  font-size:11px!important;
  font-weight:900!important;
}
.evto-app .evto-global-nav .evto-account-trigger-label{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:13px!important;
  font-weight:700!important;
}
.evto-app .evto-global-nav .evto-account-trigger:after{
  content:"";
  width:7px;
  height:7px;
  margin-left:2px;
  border-right:2px solid #f4f4f5;
  border-bottom:2px solid #f4f4f5;
  transform:translateY(-2px) rotate(45deg);
  transform-origin:center;
  flex:0 0 auto;
  opacity:.92;
  transition:transform .18s ease,border-color .18s ease;
}
body.evto-drawer-open .evto-app .evto-global-nav .evto-account-trigger:after{
  transform:translateY(2px) rotate(225deg);
  border-color:var(--gv-nav-gold-bright);
}
.evto-app .evto-global-nav .evto-nav-right{gap:9px!important}
.evto-app .evto-global-nav .evto-brand-logo img{filter:drop-shadow(0 3px 8px rgba(0,0,0,.30))!important}

@media(max-width:782px){
  .evto-app .evto-global-nav .evto-account-trigger:after{display:none!important}
  .evto-app .evto-global-nav .evto-account-trigger{padding:5px!important;border-radius:12px!important}
}
