:root { --ink:#061d43; --sand:#f5f0e6; --paper:#fffdf8; --gold:#f5be05; --red:#b84529; --muted:#667083; --line:#dcd6c9; --green:#34785c; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; background:var(--sand); color:var(--ink); font-family:Outfit,Arial,sans-serif; } button,a { font:inherit; } button { cursor:pointer; } a { color:inherit; text-decoration:none; }
.site-header { height:84px; padding:0 clamp(24px,5vw,78px); display:flex; align-items:center; justify-content:space-between; background:var(--paper); border-bottom:1px solid var(--line); position:sticky; top:0; z-index:10; }
.brand { display:flex; align-items:center; gap:10px; font-weight:800; letter-spacing:1.2px; line-height:.85; font-size:16px; }.brand img { width:51px; height:51px; object-fit:cover; object-position:center 55%; border-radius:50%; border:1px solid #edf0f6; }.brand small { display:block; font:500 8px 'DM Mono',monospace; letter-spacing:1.15px; margin-top:6px; }
nav { display:flex; gap:30px; font-size:14px; font-weight:600; } nav a:hover { color:var(--red); }.cart-button { border:1px solid var(--ink); background:transparent; padding:10px 13px; display:flex; align-items:center; gap:10px; font-size:13px; font-weight:700; }.cart-button b { display:grid; place-items:center; width:21px; height:21px; background:var(--gold); border-radius:50%; font:500 11px 'DM Mono',monospace; }
.hero { min-height:540px; display:grid; grid-template-columns:1.1fr .9fr; overflow:hidden; background:var(--ink); color:var(--paper); }.hero-copy { padding:clamp(70px,11vw,140px) clamp(24px,8vw,130px); z-index:1; }.eyebrow { font:500 11px 'DM Mono',monospace; letter-spacing:1.8px; margin:0 0 17px; color:var(--red); }.hero .eyebrow { color:var(--gold); }.hero h1 { font-size:clamp(48px,6vw,82px); line-height:.96; letter-spacing:-3px; max-width:670px; margin:0; }.hero h1 em { color:var(--gold); font-family:Georgia,serif; font-weight:400; }.hero-text { font-size:18px; line-height:1.5; color:#d4d8cb; max-width:500px; margin:29px 0; }.primary-button { display:inline-flex; gap:25px; align-items:center; justify-content:space-between; padding:15px 20px; border:0; background:var(--gold); color:var(--ink); font-size:14px; font-weight:800; transition:transform .2s,background .2s; }.primary-button:hover { transform:translateY(-2px); background:#f2b634; }.primary-button:disabled { cursor:not-allowed; opacity:.45; transform:none; }
.hero-art { position:relative; min-height:480px; background:var(--gold); overflow:hidden; display:grid; place-items:center; }.hero-art:before { content:""; position:absolute; inset:0; opacity:.1; background-image:radial-gradient(var(--ink) 1px,transparent 1px); background-size:16px 16px; }.brand-logo-stage { z-index:1; width:min(76%,420px); aspect-ratio:1; background:var(--paper); display:grid; place-items:center; border-radius:50%; box-shadow:0 0 0 12px var(--ink), 0 0 0 22px rgba(255,253,248,.65); overflow:hidden; }.brand-logo-stage img { width:100%; height:100%; object-fit:contain; }.hero-art p { z-index:1; position:absolute; bottom:20px; font:500 10px 'DM Mono',monospace; letter-spacing:2px; color:var(--ink); font-weight:700; }
.events-section,.booking-section,.steps-section { max-width:1260px; margin:auto; padding:110px 30px; }.section-heading { display:flex; justify-content:space-between; align-items:end; margin-bottom:35px; }.section-heading h2,.booking-heading h2,.steps-section h2 { margin:0; font-size:clamp(34px,4vw,50px); letter-spacing:-1.8px; line-height:1; }.section-heading>p { max-width:260px; margin:0; color:var(--muted); font-size:15px; }.event-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }.event-card { background:var(--paper); border:1px solid var(--line); min-height:360px; display:flex; flex-direction:column; }.event-visual { height:135px; padding:18px; display:flex; align-items:flex-end; color:var(--paper); position:relative; overflow:hidden; }.event-visual:before { content:""; position:absolute; width:210px; height:210px; border:30px solid rgba(255,255,255,.25); border-radius:50%; right:-50px; top:-100px; }.event-visual span { font:500 10px 'DM Mono',monospace; letter-spacing:1.3px; z-index:1; }.event-card:nth-child(1) .event-visual { background:#ad4129; }.event-card:nth-child(2) .event-visual { background:#39745e; }.event-card:nth-child(3) .event-visual { background:#325d77; }.event-info { padding:22px; display:flex; flex-direction:column; flex:1; }.event-date { font:500 11px 'DM Mono',monospace; color:var(--red); letter-spacing:.5px; }.event-info h3 { margin:9px 0 8px; font-size:24px; letter-spacing:-.8px; }.event-place { color:var(--muted); margin:0; font-size:14px; }.event-bottom { margin-top:auto; padding-top:24px; display:flex; justify-content:space-between; align-items:center; }.event-bottom strong { font-size:13px; }.event-button { border:0; background:var(--ink); color:white; padding:10px 13px; font-size:12px; font-weight:700; }.event-button:hover { background:var(--red); }
.booking-section { padding-top:45px; }.back-button { padding:0; border:0; background:none; margin-bottom:34px; font-size:13px; font-weight:700; }.booking-heading { margin-bottom:35px; }.booking-heading>p:last-child { color:var(--muted); margin:12px 0 0; }.booking-layout { display:grid; grid-template-columns:1fr 330px; gap:22px; align-items:start; }.map-card,.ticket-card { background:var(--paper); border:1px solid var(--line); }.map-card { padding:24px; }.map-topline { display:flex; justify-content:space-between; font:500 11px 'DM Mono',monospace; letter-spacing:1px; }.availability { color:var(--green); letter-spacing:0; }.availability i { width:7px; height:7px; display:inline-block; background:var(--green); border-radius:50%; margin-right:4px; }.arena-map { height:470px; margin-top:10px; position:relative; overflow:hidden; border-bottom:1px dashed var(--line); background:linear-gradient(180deg,#fbf7ee 55%,#f1e8d9); }.arena { position:absolute; width:245px; height:245px; background:#d88f32; border:18px solid #4d3929; box-shadow:0 0 0 7px #cab79c; left:50%; bottom:-50px; transform:translateX(-50%); border-radius:50%; display:grid; place-items:center; z-index:2; }.arena span { color:#fff8e9; font:700 21px 'DM Mono',monospace; letter-spacing:2px; }.arena small { position:absolute; bottom:15px; color:#4d3929; font:500 8px 'DM Mono',monospace; letter-spacing:.5px; }.table-ring { position:absolute; inset:0; }.table { position:absolute; width:42px; height:42px; border:3px solid #e6d8c4; border-radius:50%; background:var(--paper); color:var(--ink); display:grid; place-items:center; padding:0; font:500 10px 'DM Mono',monospace; transition:transform .15s, background .15s,border .15s; }.table.available:hover { transform:scale(1.12); border-color:var(--gold); }.table.selected { background:var(--gold); border-color:var(--ink); transform:scale(1.1); }.table.sold { background:#dfdbd1; color:#969389; border-color:#dfdbd1; cursor:not-allowed; text-decoration:line-through; }.map-legend { position:absolute; top:18px; left:18px; display:flex; gap:13px; z-index:3; font-size:11px; color:var(--muted); }.table-dot { width:8px; height:8px; border-radius:50%; display:inline-block; margin-right:3px; }.table-dot.available{background:var(--paper);border:1px solid #bda98e}.table-dot.selected{background:var(--gold)}.table-dot.sold{background:#dfdbd1}.map-tip { color:var(--muted); font-size:12px; margin:17px 0 0; }.ticket-card { padding:22px; }.ticket-card-top { padding-bottom:17px; border-bottom:1px solid var(--line); }.ticket-card-top span { display:block; font:500 10px 'DM Mono',monospace; letter-spacing:.8px; color:var(--red); margin-bottom:7px; }.ticket-card-top b { font-size:18px; }.ticket-options { padding:18px 0; border-bottom:1px solid var(--line); }.ticket-option { display:grid; grid-template-columns:18px 1fr auto; gap:10px; align-items:center; padding:10px 0; font-size:13px; }.ticket-option input { accent-color:var(--red); }.ticket-option small { display:block; color:var(--muted); font-size:11px; margin-top:3px; }.ticket-option strong { font-size:12px; }.reservation-summary { min-height:78px; padding:16px 0; color:var(--muted); font-size:13px; }.reservation-summary p { margin:0; }.reservation-summary strong { color:var(--ink); }.purchase-button { width:100%; }.steps-section { padding-top:35px; }.steps { display:grid; grid-template-columns:repeat(3,1fr); gap:42px; margin-top:35px; }.steps article { border-top:2px solid var(--ink); padding-top:15px; }.steps b { font:500 11px 'DM Mono',monospace; color:var(--red); }.steps h3 { margin:19px 0 8px; font-size:22px; }.steps p { margin:0; color:var(--muted); line-height:1.5; font-size:14px; }
.cart-panel { position:fixed; top:0; right:0; width:min(420px,100%); height:100vh; background:var(--paper); z-index:30; transform:translateX(100%); transition:transform .25s ease; display:flex; flex-direction:column; box-shadow:-15px 0 40px rgba(0,0,0,.15); }.cart-panel.open { transform:translateX(0); }.cart-header { display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); padding:24px; }.cart-header h2 { margin:0; font-size:28px; }.cart-header button,.dialog-close { border:0; background:none; font-size:28px; line-height:1; }.cart-items { padding:24px; flex:1; overflow:auto; }.empty-cart { text-align:center; color:var(--muted); margin-top:80px; line-height:1.6; }.cart-item { padding:15px 0; border-bottom:1px solid var(--line); position:relative; }.cart-item small { display:block; color:var(--red); font:500 10px 'DM Mono',monospace; letter-spacing:.5px; margin-bottom:5px; }.cart-item h3 { margin:0 40px 4px 0; font-size:16px; }.cart-item p { color:var(--muted); margin:0; font-size:13px; }.cart-item strong { position:absolute; right:0; top:20px; font-size:13px; }.remove-item { border:0; background:none; color:var(--red); padding:0; margin-top:9px; font-size:11px; font-weight:700; }.cart-footer { padding:22px 24px; border-top:1px solid var(--line); }.cart-footer>div { display:flex; justify-content:space-between; margin-bottom:15px; }.cart-footer span { color:var(--muted); }.cart-footer strong { font-size:20px; }.cart-footer small { display:block; color:var(--muted); font-size:10px; text-align:center; margin-top:11px; }.overlay { position:fixed; inset:0; background:rgba(15,23,22,.4); z-index:20; opacity:0; pointer-events:none; transition:opacity .25s; }.overlay.show { opacity:1; pointer-events:auto; } dialog { border:0; max-width:440px; padding:42px; background:var(--paper); color:var(--ink); box-shadow:0 24px 60px rgba(0,0,0,.25); }.dialog-close { position:absolute; right:17px; top:14px; } dialog h2 { font-size:38px; margin:0 0 14px; letter-spacing:-1px; } dialog p:not(.eyebrow) { line-height:1.5; color:var(--muted); margin-bottom:26px; } dialog::backdrop { background:rgba(15,23,22,.5); }
@media(max-width:760px){ .site-header { height:70px; padding:0 18px; }.brand { font-size:0; }.brand img { width:48px;height:48px; }.brand small { display:none; } nav { display:none; }.cart-button span { display:none; }.hero { grid-template-columns:1fr; }.hero-art { min-height:310px; order:-1; }.brand-logo-stage { width:245px; box-shadow:0 0 0 8px var(--ink), 0 0 0 15px rgba(255,253,248,.65); }.hero-copy { padding:55px 25px 70px; }.hero h1 { font-size:50px; }.events-section,.booking-section,.steps-section { padding:70px 18px; }.section-heading { display:block; }.section-heading>p { margin-top:14px; }.event-grid,.steps { grid-template-columns:1fr; }.event-card { min-height:290px; }.booking-layout { grid-template-columns:1fr; }.arena-map { height:395px; }.arena { width:210px;height:210px;bottom:-55px; }.table { width:35px;height:35px;font-size:8px; }.map-legend { gap:6px; font-size:9px; }.steps { gap:24px; }.steps-section { padding-top:0; } }

/* Customer experience enhancements */
.header-actions { display:flex; align-items:center; gap:10px; }.admin-link { border:0; background:none; color:var(--ink); font-size:12px; font-weight:800; padding:9px 5px; }.admin-link:hover { color:var(--red); }.trust-row { display:flex; flex-wrap:wrap; gap:12px 20px; margin-top:29px; color:#d6ddeb; font:500 10px 'DM Mono',monospace; letter-spacing:.5px; }.event-card { transition:transform .2s,box-shadow .2s; }.event-card:hover { transform:translateY(-5px); box-shadow:0 14px 30px rgba(6,29,67,.12); }.event-card:nth-child(4n) .event-visual { background:#9b7520; }.event-card:nth-child(5n) .event-visual { background:#6c3b72; }.ticket-card { box-shadow:0 10px 25px rgba(6,29,67,.06); }.table { box-shadow:0 3px 0 rgba(6,29,67,.16); }.table.available { border-color:#d6bf8d; }.table.selected { color:var(--ink); }.table-row-label { position:absolute; color:var(--muted); font:500 9px 'DM Mono',monospace; letter-spacing:.5px; transform:translate(-50%,-50%); pointer-events:none; }.ticket-option { cursor:pointer; border-radius:4px; }.ticket-option:hover { background:#fbf7ee; }.ticket-option:has(input:checked) { background:#fff4cf; }

/* Admin */
.admin-shell { min-height:100vh; background:#f4f6fa; color:#14233d; display:grid; grid-template-columns:245px 1fr; }.admin-sidebar { background:#061d43; color:#dfe8fa; padding:28px 16px; display:flex; flex-direction:column; min-height:100vh; position:sticky; top:0; height:100vh; }.admin-brand { display:flex; align-items:center; gap:10px; padding:0 10px 34px; font-size:15px; font-weight:800; letter-spacing:1px; line-height:.9; }.admin-brand img { width:47px; height:47px; object-fit:cover; border-radius:50%; }.admin-brand small { display:block; color:#8da4ca; font:500 8px 'DM Mono',monospace; letter-spacing:1.1px; margin-top:7px; }.admin-nav { display:grid; gap:6px; }.admin-nav button { color:#c6d1e5; text-align:left; display:flex; align-items:center; gap:13px; padding:13px 12px; background:transparent; border:0; border-radius:6px; font-size:13px; font-weight:600; }.admin-nav button:hover,.admin-nav button.active { background:#153662; color:#fff; }.admin-nav button.active { box-shadow:inset 3px 0 var(--gold); }.admin-sidebar-bottom { margin-top:auto; padding:20px 10px 4px; border-top:1px solid #23446f; display:grid; gap:10px; color:#8da4ca; font-size:10px; }.admin-sidebar-bottom button { padding:0; background:none; border:0; color:#fff; font-size:11px; text-align:left; font-weight:700; }.admin-main { padding:clamp(25px,4vw,60px); min-width:0; }.admin-topbar { display:flex; justify-content:space-between; align-items:start; gap:20px; margin-bottom:38px; }.admin-topbar .eyebrow,.admin-page-intro .eyebrow { margin-bottom:10px; }.admin-topbar h1 { margin:0; font-size:clamp(27px,3vw,38px); letter-spacing:-1.5px; }.new-event-button { color:#061d43; background:var(--gold); border:0; padding:13px 17px; font-size:13px; font-weight:800; box-shadow:0 4px 0 #c99600; }.new-event-button:hover { transform:translateY(-1px); box-shadow:0 5px 0 #c99600; }.stat-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-bottom:18px; }.stat-card { background:#fff; border:1px solid #e3e8f0; border-radius:9px; padding:19px; position:relative; overflow:hidden; }.stat-card:after { content:""; position:absolute; right:-16px; bottom:-24px; height:65px; width:65px; border:13px solid #edf1f7; border-radius:50%; }.stat-card .stat-label { color:#72809a; font:500 10px 'DM Mono',monospace; letter-spacing:1px; }.stat-card b { display:block; font-size:29px; letter-spacing:-1px; margin-top:10px; }.stat-card small { display:block; color:#60826c; font-size:11px; margin-top:6px; }.admin-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:18px; }.admin-card { background:#fff; border:1px solid #e3e8f0; border-radius:9px; padding:23px; }.card-heading { display:flex; justify-content:space-between; align-items:start; gap:12px; margin-bottom:18px; }.card-heading .eyebrow { margin-bottom:8px; }.card-heading h2 { margin:0; font-size:20px; letter-spacing:-.6px; }.card-heading select,.layout-controls select { border:1px solid #dce3ef; background:#f8fafc; border-radius:5px; padding:9px 28px 9px 10px; color:#243855; font-size:11px; }.occupancy-content { display:grid; gap:16px; }.occupancy-number { display:flex; justify-content:space-between; align-items:baseline; }.occupancy-number strong { font-size:36px; letter-spacing:-2px; }.occupancy-number span { color:#72809a; font-size:12px; }.meter { height:10px; background:#ebf0f6; overflow:hidden; border-radius:999px; }.meter span { display:block; height:100%; background:linear-gradient(90deg,var(--gold),#f7cf49); border-radius:inherit; }.occupancy-meta { display:flex; gap:18px; color:#72809a; font-size:11px; }.occupancy-meta b { color:#243855; }.recent-sale { display:grid; grid-template-columns:38px 1fr auto; gap:11px; padding:13px 0; border-bottom:1px solid #edf0f5; align-items:center; }.recent-sale:last-child { border:0; }.sale-mark { width:36px; height:36px; background:#fff4cf; color:#9a6e00; display:grid; place-items:center; border-radius:50%; font:700 11px 'DM Mono',monospace; }.recent-sale h3 { margin:0; font-size:12px; }.recent-sale p { margin:4px 0 0; color:#72809a; font-size:10px; }.recent-sale strong { font-size:12px; }.text-button { border:0; padding:0; background:none; color:#285d9d; font-size:11px; font-weight:800; }.admin-page-intro { display:flex; justify-content:space-between; align-items:start; margin-bottom:24px; }.admin-page-intro h2 { font-size:31px; letter-spacing:-1.3px; margin:0; }.admin-page-intro p:last-child { color:#72809a; font-size:13px; margin:8px 0 0; }.event-admin-layout { display:grid; grid-template-columns:410px 1fr; gap:18px; }.event-form { display:grid; gap:14px; }.form-title { border-bottom:1px solid #e9edf3; padding-bottom:15px; margin-bottom:3px; }.form-title h3 { margin:0 0 4px; }.form-title span { font-size:11px; color:#72809a; }.event-form label,.layout-controls>label { color:#344763; display:grid; gap:7px; font-size:11px; font-weight:700; }.event-form input { border:1px solid #dce3ef; border-radius:5px; padding:11px; color:#14233d; font:400 13px Outfit,sans-serif; width:100%; }.event-form input:focus { outline:2px solid #f7d45b; border-color:var(--gold); }.two-fields { display:grid; grid-template-columns:1fr 1fr; gap:12px; }.form-submit { margin-top:5px; }.event-list-card { min-height:440px; }.event-admin-item { padding:17px 0; border-bottom:1px solid #edf0f5; display:grid; grid-template-columns:50px 1fr auto; gap:12px; align-items:center; }.event-date-mark { text-align:center; background:#eef3f9; color:#173b6c; padding:7px 3px; border-radius:5px; font:700 10px 'DM Mono',monospace; line-height:1.3; }.event-admin-item h3 { font-size:15px; margin:0 0 4px; }.event-admin-item p { color:#72809a; margin:0; font-size:11px; }.event-item-actions { display:flex; gap:8px; }.small-button { border:1px solid #dce3ef; background:#fff; padding:7px 9px; border-radius:4px; font-size:10px; color:#285d9d; font-weight:700; }.small-button.danger { color:#b84529; }.event-total-label { color:#72809a; font:500 10px 'DM Mono',monospace; }.layout-admin-grid { display:grid; grid-template-columns:440px 1fr; gap:18px; }.layout-controls { display:grid; gap:18px; }.layout-summary { padding:13px; border-radius:6px; background:#f6f8fb; color:#53647f; font-size:12px; line-height:1.6; }.layout-summary b { color:#14233d; }.row-builder-heading { display:flex; justify-content:space-between; align-items:center; gap:12px; }.row-builder-heading b { display:block; font-size:14px; }.row-builder-heading small { display:block; color:#72809a; font-size:10px; margin-top:4px; }.outline-button { border:1px solid #aebbd0; background:#fff; color:#264a7c; border-radius:5px; padding:9px 12px; font-size:11px; font-weight:800; }.row-config { display:grid; grid-template-columns:1fr 92px 32px; gap:9px; align-items:end; }.row-config label { display:grid; gap:5px; color:#72809a; font-size:10px; }.row-config input { width:100%; border:1px solid #dce3ef; border-radius:5px; padding:9px; font:500 12px Outfit,sans-serif; }.remove-row { height:35px; background:#fff4f2; border:0; color:#b84529; border-radius:4px; font-size:16px; }.layout-action-row { display:flex; gap:15px; align-items:center; margin-top:5px; }.text-danger { border:0; background:none; color:#b84529; font-size:11px; font-weight:800; }.layout-preview-card { min-height:520px; }.live-pill { border-radius:99px; background:#e9f6ed; color:#36804f; padding:6px 8px; font:500 9px 'DM Mono',monospace; }.admin-arena-preview { min-height:380px; position:relative; background:linear-gradient(180deg,#fbfcfe,#f1f4f8); border-radius:7px; overflow:hidden; }.preview-arena { position:absolute; width:190px; height:190px; border-radius:50%; background:#c9832f; border:13px solid #5d4230; box-shadow:0 0 0 6px #d9c3a1; color:#fff; display:grid; place-items:center; font:700 17px 'DM Mono',monospace; letter-spacing:1px; left:50%; bottom:-38px; transform:translateX(-50%); }.admin-preview-table { position:absolute; width:25px; height:25px; border-radius:50%; background:#fff; border:2px solid #c9ad7c; color:#233a5e; display:grid; place-items:center; font:500 7px 'DM Mono',monospace; transform:translate(-50%,-50%); }.preview-caption { margin:16px 0 0; color:#72809a; font-size:11px; }.sales-table { overflow:auto; }.sales-head,.sales-row { min-width:600px; display:grid; grid-template-columns:100px 1.3fr 1fr .8fr .8fr; align-items:center; gap:15px; }.sales-head { color:#7a89a2; padding:0 0 12px; font:500 10px 'DM Mono',monospace; letter-spacing:.5px; }.sales-row { padding:15px 0; border-top:1px solid #edf0f5; font-size:12px; }.sales-row strong { font-size:12px; }.sales-row small { color:#72809a; }.status { color:#2d7a50; background:#e8f5ed; border-radius:99px; width:max-content; padding:5px 8px; font:500 9px 'DM Mono',monospace; }.status.pending { color:#9a6e00; background:#fff4cf; }

@media(max-width:980px){ .stat-grid { grid-template-columns:repeat(2,1fr); }.admin-grid,.event-admin-layout,.layout-admin-grid { grid-template-columns:1fr; }.admin-sidebar { width:205px; }.admin-shell { grid-template-columns:205px 1fr; } }
@media(max-width:700px){ .header-actions { gap:5px; }.admin-link { font-size:0; }.admin-link:after { content:'⚙'; font-size:16px; }.trust-row { gap:8px; }.admin-shell { display:block; }.admin-sidebar { width:100%; height:auto; min-height:0; position:static; padding:15px; }.admin-brand { padding:0 5px 13px; }.admin-nav { grid-template-columns:repeat(4,1fr); }.admin-nav button { justify-content:center; padding:10px 5px; font-size:17px; }.admin-nav button span { display:none; }.admin-sidebar-bottom { display:none; }.admin-main { padding:24px 16px; }.admin-topbar { margin-bottom:25px; }.admin-topbar h1 { font-size:28px; }.new-event-button { padding:11px; white-space:nowrap; font-size:11px; }.stat-grid { grid-template-columns:1fr 1fr; gap:9px; }.stat-card { padding:14px; }.stat-card b { font-size:23px; }.admin-card { padding:17px; }.admin-page-intro h2 { font-size:27px; }.two-fields { grid-template-columns:1fr; }.row-builder-heading { align-items:start; }.layout-preview-card { min-height:420px; }.admin-arena-preview { min-height:300px; }.preview-arena { width:160px;height:160px; }.event-admin-item { grid-template-columns:42px 1fr; }.event-item-actions { grid-column:2; }.event-admin-item p { line-height:1.35; }.sales-table-card { padding:16px 0 16px 16px; }.map-topline { font-size:9px; }.availability { font-size:9px; } }

.row-name { align-self:center; }.row-name b { display:block; font-size:12px; }.row-name small { color:#72809a; font-size:10px; }
.admin-brand-mark { width:39px; height:39px; display:grid; place-items:center; background:var(--gold); color:var(--ink); clip-path:polygon(50% 0,61% 33%,100% 50%,61% 67%,50% 100%,39% 67%,0 50%,39% 33%); font-style:normal; }

/* La Favorita: cinematic, premium front page */
.brand-wordmark { font-family:Georgia,serif; font-size:19px; letter-spacing:.6px; }.brand-wordmark .brand-crown { width:31px; height:38px; display:grid; place-items:center; background:var(--gold); color:var(--ink); clip-path:polygon(50% 0,61% 33%,100% 50%,61% 67%,50% 100%,39% 67%,0 50%,39% 33%); font-family:Outfit,sans-serif; font-size:14px; }.brand-wordmark small { font-family:'DM Mono',monospace; color:#667083; font-size:7px; letter-spacing:.8px; }.hero.hero-cinematic { position:relative; display:block; min-height:650px; background:#07111d; isolation:isolate; overflow:hidden; }.hero-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; z-index:-3; }.hero-shade { position:absolute; inset:0; z-index:-2; background:linear-gradient(90deg,rgba(2,11,25,.93) 0%,rgba(2,11,25,.66) 34%,rgba(2,11,25,.13) 68%,rgba(2,11,25,.35) 100%),linear-gradient(0deg,rgba(2,11,25,.72),transparent 42%); }.hero-copy.hero-copy-cinematic { padding:clamp(90px,10vw,145px) clamp(28px,8vw,125px) 72px; max-width:740px; min-height:650px; display:flex; flex-direction:column; justify-content:center; }.hero-copy-cinematic .eyebrow { color:#fbd65a; text-shadow:0 1px 12px rgba(0,0,0,.8); }.hero-copy-cinematic h1 { font-size:clamp(52px,6.3vw,87px); max-width:650px; text-shadow:0 6px 32px rgba(0,0,0,.5); }.hero-copy-cinematic h1 em { color:#fff7dc; }.hero-copy-cinematic .hero-text { color:#edf1f4; max-width:505px; text-shadow:0 3px 14px rgba(0,0,0,.7); }.hero-cta-row { display:flex; align-items:center; gap:21px; }.hero-cta-row .primary-button { min-width:210px; box-shadow:0 7px 0 #af7d00; }.hero-note { color:#dce4ec; font:500 10px 'DM Mono',monospace; line-height:1.45; letter-spacing:.5px; }.hero-copy-cinematic .trust-row { color:#eef1f4; border-top:1px solid rgba(255,255,255,.25); padding-top:19px; max-width:510px; }.hero-stamp { position:absolute; right:clamp(24px,5vw,78px); bottom:31px; color:#fff; display:grid; text-align:right; text-shadow:0 3px 13px rgba(0,0,0,.7); }.hero-stamp span { font:500 9px 'DM Mono',monospace; letter-spacing:2px; }.hero-stamp b { font:700 clamp(24px,3vw,39px) Georgia,serif; letter-spacing:1px; }.hero-stamp small { margin-top:5px; font:500 8px 'DM Mono',monospace; letter-spacing:1px; }.experience-strip { max-width:1170px; margin:-37px auto 0; z-index:2; position:relative; display:grid; grid-template-columns:repeat(3,1fr); background:#fffdf8; box-shadow:0 16px 34px rgba(6,29,67,.18); border-radius:4px; overflow:hidden; }.experience-strip>div { padding:25px 28px; border-right:1px solid #e7e4dc; display:grid; grid-template-columns:33px 1fr; gap:12px; align-items:start; }.experience-strip>div:last-child { border:0; }.experience-strip span { color:#bd8710; font:500 10px 'DM Mono',monospace; border:1px solid #e5c76e; width:28px; height:28px; display:grid; place-items:center; border-radius:50%; }.experience-strip p { margin:0; color:#6d7480; font-size:12px; line-height:1.4; }.experience-strip b { display:block; color:#11254a; font-size:14px; margin-bottom:3px; }.events-section { padding-top:96px; }.event-visual { height:158px; background:linear-gradient(115deg,#061d43 0%,#183f70 48%,#ba8a22 100%) !important; }.event-visual:after { content:'LA FAVORITA'; position:absolute; right:13px; bottom:15px; font:700 24px Georgia,serif; opacity:.22; letter-spacing:1px; }.event-card:nth-child(2n) .event-visual { background:linear-gradient(115deg,#214462 0%,#3f7187 43%,#e1ae37 100%) !important; }.event-availability { display:block; margin-top:13px; color:#47765e; font:500 10px 'DM Mono',monospace; letter-spacing:.2px; }
.hero-brand-card { position:absolute; right:clamp(26px,6vw,96px); top:30px; width:165px; height:128px; padding:5px; background:rgba(255,255,255,.95); box-shadow:0 12px 28px rgba(0,0,0,.3); transform:rotate(1.5deg); }.hero-brand-card img { width:100%; height:100%; object-fit:contain; }.event-visual:after { content:'EVENTOS FAVORITOS'; }
@media(max-width:760px){ .brand-wordmark { font-size:0; }.brand-wordmark .brand-crown { width:35px;height:39px; }.hero.hero-cinematic,.hero-copy.hero-copy-cinematic { min-height:610px; }.hero-image { object-position:57% center; }.hero-shade { background:linear-gradient(90deg,rgba(2,11,25,.88),rgba(2,11,25,.31)),linear-gradient(0deg,rgba(2,11,25,.8),transparent 55%); }.hero-copy.hero-copy-cinematic { padding:75px 25px 78px; justify-content:flex-end; }.hero-copy-cinematic h1 { font-size:52px; }.hero-cta-row { align-items:flex-start; flex-direction:column; gap:16px; }.hero-note { display:none; }.hero-stamp { right:20px; bottom:21px; }.hero-stamp b { font-size:25px; }.experience-strip { margin:-20px 16px 0; grid-template-columns:1fr; }.experience-strip>div { padding:17px 18px; border-right:0; border-bottom:1px solid #e7e4dc; }.experience-strip>div:last-child { border-bottom:0; }.events-section { padding-top:65px; } }
@media(max-width:760px){ .hero-brand-card { width:112px; height:87px; right:17px; top:16px; }.hero-stamp { bottom:18px; } }

/* Extended public website */
.purchase-assurance { display:block; text-align:center; margin-top:12px; color:#71809a; font-size:10px; }.story-section { max-width:1260px; margin:0 auto; padding:100px 30px; display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(40px,7vw,100px); align-items:center; }.story-image { min-height:490px; position:relative; overflow:hidden; background:#0a203f; }.story-image img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; object-position:54% center; filter:saturate(.9) contrast(1.05); }.story-image:after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(6,29,67,.7),transparent 53%); }.image-label { position:absolute; z-index:1; bottom:27px; left:26px; color:#fff; display:grid; }.image-label span { font:500 10px 'DM Mono',monospace; letter-spacing:1.7px; }.image-label b { font:700 32px Georgia,serif; letter-spacing:.6px; margin-top:6px; }.story-copy h2,.venue-heading h2 { font-size:clamp(36px,4vw,56px); line-height:1.02; letter-spacing:-2px; margin:0; }.story-copy>p:not(.eyebrow) { color:#657087; font-size:17px; line-height:1.6; margin:24px 0 31px; }.story-numbers { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #d8d8d1; padding-top:23px; gap:15px; }.story-numbers b { display:block; color:#09214a; font-size:32px; letter-spacing:-1.5px; }.story-numbers b span { color:#c69116; }.story-numbers small { display:block; margin-top:5px; color:#747d8e; font-size:10px; line-height:1.35; }.venue-section { background:#09214a; color:#fff; padding:104px max(30px,calc((100% - 1200px)/2)); }.venue-heading { max-width:580px; }.venue-heading .eyebrow { color:#fbd65a; }.venue-heading h2 { color:#fff; }.venue-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:42px; }.venue-grid article { border:1px solid rgba(255,255,255,.2); padding:29px; min-height:205px; background:rgba(255,255,255,.04); transition:transform .2s,background .2s; }.venue-grid article:hover { transform:translateY(-5px); background:rgba(255,255,255,.09); }.venue-icon { height:37px; width:37px; display:grid; place-items:center; border:1px solid #e8bd42; color:#f6ce55; border-radius:50%; font-size:18px; }.venue-grid h3 { font-size:20px; margin:21px 0 9px; }.venue-grid p { margin:0; color:#c8d3e3; font-size:13px; line-height:1.5; }.closing-cta { max-width:1260px; margin:0 auto; padding:96px 30px; display:flex; justify-content:space-between; align-items:center; gap:35px; }.closing-cta h2 { margin:0; font-size:clamp(37px,4vw,60px); line-height:1; letter-spacing:-2px; }.closing-cta h2 em { color:#ba8816; font-family:Georgia,serif; font-weight:400; }.closing-cta .primary-button { min-width:205px; }.site-footer { background:#061832; color:#d5dfec; display:grid; grid-template-columns:1fr 1fr 1fr; align-items:center; gap:20px; padding:31px max(30px,calc((100% - 1200px)/2)); }.footer-brand span { display:block; color:#fff; font:700 21px Georgia,serif; letter-spacing:.5px; }.footer-brand small { color:#8fa3bf; font:500 8px 'DM Mono',monospace; letter-spacing:1px; }.site-footer p { font-size:12px; margin:0; }.site-footer>div:last-child { justify-self:end; display:flex; gap:18px; }.site-footer a { color:#fff; font-size:11px; font-weight:700; }.admin-brand { color:inherit; }.admin-insight { margin-top:18px; display:flex; align-items:center; gap:15px; padding:18px 21px; background:#edf4fd; border:1px solid #d5e1f3; border-radius:8px; color:#28405f; }.admin-insight>span { width:32px; height:32px; display:grid; place-items:center; color:#a77805; background:#fff3cd; border-radius:50%; }.admin-insight p { margin:0; font-size:12px; flex:1; }.admin-insight a { color:#174b89; font-size:11px; font-weight:800; white-space:nowrap; }
@media(max-width:760px){ .story-section { grid-template-columns:1fr; padding:70px 18px; gap:36px; }.story-image { min-height:340px; }.story-copy h2,.venue-heading h2 { font-size:39px; }.venue-section { padding:72px 18px; }.venue-grid { grid-template-columns:1fr; margin-top:30px; }.venue-grid article { min-height:0; }.closing-cta { padding:70px 18px; display:grid; }.site-footer { padding:30px 18px; grid-template-columns:1fr; }.site-footer>div:last-child { justify-self:start; }.admin-insight { align-items:flex-start; display:grid; grid-template-columns:32px 1fr; }.admin-insight a { grid-column:2; } }

/* Bespoke La Favorita texture and signature close */
.venue-section { background-color:#09214a; background-image:linear-gradient(90deg,rgba(5,21,50,.97),rgba(5,21,50,.89)),url('assets/charro-premium-texture.png'); background-size:cover; background-position:center; }.signature-band { background-color:#061426; background-image:linear-gradient(90deg,rgba(3,13,28,.95),rgba(3,13,28,.83)),url('assets/charro-premium-texture.png'); background-size:cover; background-position:center; color:#fff; padding:74px max(30px,calc((100% - 1200px)/2)); display:grid; grid-template-columns:150px 1fr .65fr; gap:44px; align-items:center; }.signature-seal { width:122px; aspect-ratio:1; border:1px solid rgba(239,190,55,.7); border-radius:50%; display:grid; place-items:center; align-content:center; color:#f6d066; text-align:center; box-shadow:0 0 0 7px rgba(238,185,36,.1); }.signature-seal span,.signature-seal small { font:500 8px 'DM Mono',monospace; letter-spacing:1.3px; }.signature-seal b { font-size:28px; line-height:1.1; }.signature-band .eyebrow { color:#f6ce55; }.signature-band h2 { margin:0; font-size:clamp(31px,3.6vw,49px); line-height:1.04; letter-spacing:-1.5px; }.signature-band h2 em { color:#f6d066; font:400 1em Georgia,serif; }.signature-copy { color:#c8d4e5; font-size:14px; line-height:1.6; margin:0; }
@media(max-width:760px){ .signature-band { grid-template-columns:1fr; padding:60px 24px; gap:25px; }.signature-seal { width:98px; }.signature-copy { font-size:13px; } }

/* Digital ticket preview */
#confirmation-dialog { max-width:500px; padding:34px; }.ticket-dialog-copy { margin:0 0 18px !important; font-size:13px; }.digital-ticket { background:#fbf8ef; color:#0a2148; box-shadow:0 16px 34px rgba(6,19,43,.24); text-align:left; overflow:hidden; border-radius:3px; position:relative; margin:0 0 16px; }.ticket-top { padding:17px 20px 16px; color:#f8d265; background-color:#071a38; background-image:linear-gradient(90deg,rgba(4,17,37,.93),rgba(4,17,37,.79)),url('assets/charro-premium-texture.png'); background-size:cover; display:grid; }.ticket-top span,.ticket-top small,.ticket-type,.ticket-info small,.ticket-code small { font:500 8px 'DM Mono',monospace; letter-spacing:1.3px; }.ticket-top b { color:#fff; font:700 25px Georgia,serif; letter-spacing:.5px; margin:4px 0; }.ticket-main { padding:19px 20px 15px; }.ticket-type { color:#b47d09; margin:0 0 9px; }.ticket-main h3 { margin:0; font-size:27px; letter-spacing:-.8px; }.ticket-meta { color:#667086; font-size:11px; line-height:1.55; margin:9px 0 16px !important; }.ticket-info { display:grid; grid-template-columns:1fr 1fr; gap:10px; border-top:1px solid #ddd8ca; padding-top:13px; }.ticket-info small { display:block; color:#89909b; margin-bottom:4px; }.ticket-info b { font-size:11px; line-height:1.25; display:block; }.ticket-cut { height:13px; position:relative; background:radial-gradient(circle at 7px -1px,transparent 8px,#fbf8ef 9px) 0 0/14px 14px repeat-x; z-index:1; }.ticket-access { margin-top:-8px; background:#f0e5cf; display:flex; align-items:center; justify-content:space-between; gap:18px; padding:19px 20px 16px; }.ticket-code small { display:block; color:#7c6e53; margin-bottom:5px; }.ticket-code b { font:500 13px 'DM Mono',monospace; color:#10284f; }.ticket-barcode { width:102px; height:35px; background:repeating-linear-gradient(90deg,#10284f 0 2px,transparent 2px 4px,#10284f 4px 5px,transparent 5px 8px,#10284f 8px 11px,transparent 11px 13px); opacity:.86; }.ticket-footnote { color:#778094 !important; text-align:center; font-size:10px !important; line-height:1.45 !important; margin:0 0 18px !important; }
@media(max-width:500px){ #confirmation-dialog { padding:28px 19px; }.ticket-main h3 { font-size:23px; }.ticket-access { gap:9px; padding-left:15px; padding-right:15px; }.ticket-barcode { width:82px; } }

/* Official Events Favoritos lockup and event-ticket art */
.brand-official { gap:9px; }.official-logo-frame { width:62px; height:62px; display:grid; place-items:center; background:#fff; border:1px solid #e3e6eb; overflow:hidden; }.official-logo-frame img { width:60px !important; height:60px !important; max-width:none; object-fit:contain !important; border:0 !important; border-radius:0 !important; }.official-brand-copy { font:700 17px Georgia,serif; letter-spacing:.4px; line-height:.9; color:#08204a; }.official-brand-copy small { display:block; color:#7a7d84; font:500 7px 'DM Mono',monospace; letter-spacing:.7px; margin-top:6px; }.admin-brand-official img { width:62px !important; height:62px !important; object-fit:contain !important; border-radius:4px !important; background:#fff; }.ticket-visual { height:128px; position:relative; overflow:hidden; color:#fff; }.ticket-visual img { width:100%; height:100%; object-fit:cover; object-position:center; display:block; }.ticket-visual:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(2,14,34,.9),rgba(2,14,34,.2)),linear-gradient(0deg,rgba(2,14,34,.45),transparent); }.ticket-visual>div { position:absolute; left:19px; bottom:16px; z-index:1; display:grid; max-width:260px; text-shadow:0 2px 10px rgba(0,0,0,.8); }.ticket-visual span { font:500 8px 'DM Mono',monospace; letter-spacing:1.1px; }.ticket-visual b { margin-top:5px; font:700 15px Outfit,sans-serif; letter-spacing:.2px; }.digital-ticket .ticket-top { padding-top:12px; padding-bottom:12px; }.digital-ticket .ticket-top b { font-size:20px; }.ticket-dialog-copy { max-width:370px; }.ticket-type { font-weight:700; }
@media(max-width:760px){ .official-logo-frame { width:50px; height:50px; }.official-logo-frame img { width:50px !important; height:50px !important; }.official-brand-copy { font-size:0; }.official-brand-copy small { display:none; }.admin-brand-official img { width:48px !important; height:48px !important; } }

/* Event headliners, hospitality and courtesy operations */
.event-visual { isolation:isolate; }.event-card-photo { position:absolute; inset:0; z-index:0; width:100%; height:100%; object-fit:cover; filter:brightness(.68) saturate(.88); }.event-visual:before { z-index:1; }.event-visual:after { z-index:2; }.event-visual span { position:relative; z-index:3; text-shadow:0 2px 8px rgba(0,0,0,.72); }.event-headliner { position:absolute; z-index:3; left:18px; right:18px; bottom:17px; color:#fff; font:700 11px Outfit,sans-serif; letter-spacing:.1px; text-shadow:0 2px 9px rgba(0,0,0,.8); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.event-extra-fields { display:grid; gap:14px; }.file-upload input[type="file"] { padding:8px !important; background:#f8fafc; font-size:11px !important; }.file-upload small { color:#72809a; font-size:10px; line-height:1.4; font-weight:400; }.courtesy-layout { display:grid; grid-template-columns:410px 1fr; gap:18px; }.courtesy-form { display:grid; gap:14px; }.courtesy-form label { color:#344763; display:grid; gap:7px; font-size:11px; font-weight:700; }.courtesy-form input,.courtesy-form select { width:100%; border:1px solid #dce3ef; border-radius:5px; padding:11px; color:#14233d; background:#fff; font:400 13px Outfit,sans-serif; }.courtesy-form input:focus,.courtesy-form select:focus { outline:2px solid #f7d45b; border-color:var(--gold); }.courtesy-list-card { min-height:440px; }.courtesy-item { display:grid; grid-template-columns:36px 1fr auto; gap:12px; align-items:center; padding:15px 0; border-bottom:1px solid #edf0f5; }.courtesy-item:last-child { border-bottom:0; }.courtesy-mark { width:32px; height:32px; display:grid; place-items:center; border-radius:50%; background:#fff3cf; color:#9a6e00; font-size:13px; }.courtesy-item h3 { margin:0; font-size:13px; }.courtesy-item p { margin:4px 0 0; color:#72809a; font-size:10px; line-height:1.35; }.courtesy-item>div:last-child { text-align:right; display:grid; gap:4px; }.courtesy-item strong { color:#173b6c; font:700 10px 'DM Mono',monospace; letter-spacing:.35px; }.courtesy-item small { color:#8a97aa; font-size:9px; }
@media(max-width:980px){ .courtesy-layout { grid-template-columns:1fr; } }
@media(max-width:700px){ .courtesy-item { grid-template-columns:32px 1fr; }.courtesy-item>div:last-child { grid-column:2; text-align:left; grid-auto-flow:column; justify-content:start; gap:10px; }.event-headliner { bottom:15px; } }

/* Table package: four individual general-access credentials */
#confirmation-dialog { max-height:calc(100vh - 28px); overflow:auto; }.included-accesses { margin:0 0 18px; padding:18px; border:1px solid #ddd8ca; border-top:3px solid #bd8a1a; background:#fffdf7; }.included-accesses .eyebrow { margin-bottom:6px; color:#9a6e00; }.included-accesses h3 { margin:0; color:#122d58; font-size:17px; letter-spacing:-.4px; }.included-accesses>div>p:last-child { margin:7px 0 0; color:#6c7481; font-size:11px; line-height:1.4; }.included-access-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:14px; }.included-access-card { min-height:92px; padding:10px; border:1px dashed #c9b992; background:#fff; display:grid; gap:5px; }.included-access-card span { color:#9a6e00; font:500 7px 'DM Mono',monospace; letter-spacing:.7px; }.included-access-card b { color:#112a50; font-size:11px; line-height:1.2; }.included-access-card small { color:#59677c; font:500 8px 'DM Mono',monospace; line-height:1.4; }.mini-barcode { width:74px; height:15px; margin-top:auto; background:repeating-linear-gradient(90deg,#10284f 0 1px,transparent 1px 3px,#10284f 3px 5px,transparent 5px 7px); opacity:.75; }@media(max-width:500px){ .included-access-grid { grid-template-columns:1fr; }.included-accesses { padding:15px; } }

/* Revenue reporting by event */
.event-revenue-report { margin-bottom:26px; padding:20px; border:1px solid #e0e7f1; border-radius:7px; background:linear-gradient(115deg,#f7fafc,#fffaf0); }.event-revenue-heading { display:flex; align-items:end; justify-content:space-between; gap:18px; margin-bottom:16px; }.event-revenue-heading .eyebrow { margin-bottom:6px; }.event-revenue-heading h3 { margin:0; color:#14233d; font-size:18px; letter-spacing:-.5px; }.event-revenue-heading>strong { color:#102d5a; font-size:21px; text-align:right; }.event-revenue-heading>strong small { display:block; color:#72809a; font:500 9px 'DM Mono',monospace; letter-spacing:.4px; margin-top:4px; }.event-revenue-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:10px; }.event-revenue-card { min-height:92px; padding:13px; border:1px solid #e1e7ef; border-radius:5px; background:#fff; display:grid; align-content:space-between; gap:8px; }.event-revenue-card span { color:#435571; font-size:11px; font-weight:700; line-height:1.25; }.event-revenue-card b { color:#183b6b; font-size:19px; letter-spacing:-.8px; }.event-revenue-card small { color:#718098; font-size:9px; }@media(max-width:550px){ .event-revenue-heading { align-items:start; flex-direction:column; }.event-revenue-heading>strong { text-align:left; } }

