/* OptionRock Live — dedicated bilingual concerts & local-scene hub */
.or-live-hub { color:#f1f1f4; background:#09090b; }
.or-live-hero { padding:clamp(3.5rem,7vw,6.2rem) 0; background:radial-gradient(ellipse at 75% 40%,rgba(197,17,35,.18),transparent 54%),linear-gradient(150deg,#160c12,#070708 75%); border-bottom:1px solid rgba(255,255,255,.10); }
.or-live-hero h1 { max-width:900px; margin:.85rem 0 1.2rem; font-family:var(--font-display),Impact,sans-serif; font-size:clamp(2.65rem,6.7vw,5.8rem); line-height:.99; letter-spacing:-.018em; text-transform:uppercase; }
.or-live-lead { max-width:740px; color:#bfbec5; font-size:clamp(1rem,1.5vw,1.18rem); line-height:1.75; }
.or-live-hero__actions { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:2rem; }
.or-live-section { padding:clamp(3rem,5.5vw,5rem) 0; border-bottom:1px solid rgba(255,255,255,.08); }
.or-live-section__head { display:flex; align-items:end; justify-content:space-between; gap:2rem; margin-bottom:1.8rem; }
.or-live-section__head h2, .or-live-submit h2 { font-family:var(--font-display),Impact,sans-serif; font-size:clamp(2rem,4.5vw,3.7rem); line-height:1.04; margin:.55rem 0; text-transform:uppercase; }
.or-live-section__head > p { margin:0; max-width:26rem; color:#aeb0b9; font-size:.9rem; line-height:1.65; }
.or-live-empty { display:flex; align-items:start; gap:1.6rem; padding:clamp(1.25rem,3vw,2.2rem); border:1px solid rgba(255,255,255,.13); background:linear-gradient(125deg,rgba(211,25,39,.08),rgba(255,255,255,.02)); }
.or-live-empty > span { flex:0 0 auto; color:#e3313e; font-size:2.75rem; line-height:1; }
.or-live-empty h3 { margin:0 0 .45rem; font-size:1.2rem; color:#fff; font-weight:800; }
.or-live-empty p { color:#b7b8be; line-height:1.6; margin:0 0 .8rem; }
.or-live-empty a { color:#f77480; font-weight:800; text-underline-offset:4px; }
.or-live-concert-grid { display:grid; gap:1rem; }
.or-live-event { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:1.2rem; padding:1.3rem; background:#131316; border:1px solid rgba(255,255,255,.12); }
.or-live-event__date { min-width:4.65rem; padding:.6rem; display:grid; justify-items:center; border:1px solid rgba(232,49,63,.55); background:rgba(227,38,46,.08); text-transform:uppercase; }
.or-live-event__date span { font-size:.7rem; font-weight:800; color:#f3747c; letter-spacing:.1em; }
.or-live-event__date strong { font-family:var(--font-display),Impact,sans-serif; font-size:2.5rem; line-height:1.1; }
.or-live-event__info h3 { font-family:var(--font-display),Impact,sans-serif; font-size:1.8rem; text-transform:uppercase; line-height:1.1; margin:.25rem 0; }
.or-live-event__info p { margin:.2rem 0; color:#dedce0; }
.or-live-event__info small { color:#a7a7ae; }
.or-live-event__flag { color:#eeb6bc; text-transform:uppercase; letter-spacing:.08em; font-size:.67rem; font-weight:800; }
.or-live-event__actions { display:flex; flex-direction:column; gap:.6rem; align-items:start; }
.or-live-event__actions a { color:#fff; padding:.55rem .75rem; font-size:.75rem; font-weight:800; text-decoration:none; border:1px solid rgba(255,255,255,.2); }
.or-live-event__actions a:hover, .or-live-event__actions a:focus-visible { background:rgba(227,38,46,.13); border-color:#e63242; }
.or-live-bands { background:linear-gradient(180deg,#0d0d10,#101014); }
.or-live-search { max-width:38rem; margin:0 0 1.5rem; }
.or-live-search label { display:block; margin-bottom:.5rem; font-size:.85rem; font-weight:800; }
.or-live-search input { box-sizing:border-box; display:block; width:100%; padding:.8rem .9rem; color:#fff; background:#09090c; border:1px solid rgba(255,255,255,.25); border-radius:0; font:inherit; }
.or-live-search input:focus-visible { border-color:#f04252; outline:2px solid rgba(227,38,46,.5); outline-offset:1px; }
#or-live-band-count { min-height:1.3rem; color:#aeb0b9; font-size:.78rem; margin:.5rem 0 0; }
.or-live-band-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.or-live-band-card { display:flex; flex-direction:column; min-width:0; border:1px solid rgba(255,255,255,.10); background:linear-gradient(145deg,#1a171c,#101014); transition:border-color .15s ease; overflow:hidden; }
.or-live-band-card:hover { border-color:rgba(227,38,46,.54); }
.or-live-band-card[hidden], .or-live-no-results[hidden] { display:none!important; }
.or-live-band-card__photo { display:block; aspect-ratio:16/9; background:#060608; border-bottom:1px solid rgba(255,255,255,.1); overflow:hidden; }
.or-live-band-card__photo img { display:block; width:100%; height:100%; object-fit:cover; }
.or-live-band-card__body { flex:1; padding:1.15rem; display:flex; flex-direction:column; }
.or-live-band-card h3 { margin:0 0 .35rem; font-family:var(--font-display),Impact,sans-serif; font-size:clamp(1.4rem,2vw,1.85rem); text-transform:uppercase; line-height:1.12; }
.or-live-band-card h3 a { color:#fff; text-decoration:none; }
.or-live-band-card h3 a:hover { color:#f46675; }
.or-live-band-card__region { margin:.2rem 0 .7rem; color:#ef8993; font-size:.76rem; font-weight:800; line-height:1.5; }
.or-live-band-card__excerpt { font-size:.86rem; color:#b5b3bc; line-height:1.65; margin:0 0 1.2rem; }
.or-live-band-card__link { margin-top:auto; color:#fff; font-size:.75rem; font-weight:900; text-transform:uppercase; letter-spacing:.045em; text-underline-offset:4px; }
.or-live-no-results { border:1px dashed rgba(255,255,255,.2); color:#bebdc2; margin-top:1rem; padding:1rem; }
.or-live-submit { background:radial-gradient(ellipse at 0% 15%,rgba(227,38,46,.11),transparent 55%),#0a0a0d; }
.or-live-submit__inner { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:clamp(2rem,6vw,5rem); align-items:start; }
.or-live-submit__copy p:not(.or-kicker) { max-width:31rem; color:#bcbac1; line-height:1.75; }
.or-live-submit__copy .or-live-submit__note { font-size:.84rem; color:#94949f; }
.or-live-submit__formbox { border:1px solid rgba(255,255,255,.14); background:#17161a; padding:clamp(1rem,3vw,2rem); }
.or-live-event-form { display:grid; gap:1.05rem; }
.or-live-event-form label { display:grid; gap:.4rem; font-size:.8rem; font-weight:800; color:#f3f0f2; }
.or-live-event-form input, .or-live-event-form textarea { box-sizing:border-box; width:100%; min-width:0; border:1px solid rgba(255,255,255,.22); background:#0a0a0d; color:#f5f4f6; padding:.78rem; font:inherit; font-size:.9rem; font-weight:400; border-radius:0; }
.or-live-event-form input:focus-visible, .or-live-event-form textarea:focus-visible { border-color:#e3313e; outline:2px solid rgba(227,38,46,.44); outline-offset:1px; }
.or-live-event-form textarea { resize:vertical; }
.or-live-fieldrow { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.or-live-form-privacy { margin:0; line-height:1.6; font-size:.73rem; color:#a1a1ab; }
.or-live-event-form .or-button { justify-self:start; cursor:pointer; }
.or-live-honeypot { position:absolute; left:-9999px; }
.or-live-message { margin:0 0 1.1rem; border:1px solid rgba(227,38,46,.6); background:rgba(227,38,46,.08); padding:.8rem; font-size:.85rem; }
.or-live-message--ok { border-color:rgba(150,200,150,.5); background:rgba(100,150,100,.09); }
@media (max-width:980px) {
  .or-live-band-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .or-live-submit__inner { grid-template-columns:1fr; }
}
@media (max-width:720px) {
  .or-live-section__head { align-items:start; flex-direction:column; gap:.35rem; }
  .or-live-band-grid { grid-template-columns:1fr; }
  .or-live-hero__actions { flex-direction:column; }
  .or-live-hero__actions .or-button { width:100%; text-align:center; }
  .or-live-event { grid-template-columns:auto 1fr; gap:.9rem; align-items:start; }
  .or-live-event__actions { grid-column:1 / -1; flex-direction:row; flex-wrap:wrap; }
  .or-live-fieldrow { grid-template-columns:1fr; }
  .or-live-empty { gap:.9rem; }
  .or-live-empty > span { font-size:1.6rem; }
  .or-live-event-form .or-button { width:100%; justify-self:stretch; text-align:center; }
}
