/* Hospitality in the language of the black VIP ticket (2026-10-20, Nik). Hospitality is a side service, so its cards step out of the
   glass of the main pages and become flat near-black tickets with one fine platinum hairline, a tear line and a barcode.
   The brand colours stay: red accents, red buttons, burgundy emblems, the red rail and background lines. (body.hs-black) */
body.hs-black{
  --hair:rgba(220,224,232,.16);
  --tk:linear-gradient(165deg,#17171c 0%,#0b0b0e 55%,#08080a 100%)}

/* every card becomes a flat black ticket: hairline, no glass, no grain, no sheen */
body.hs-black section .gx{background:var(--tk)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border-radius:18px;
  box-shadow:inset 0 0 0 1px var(--hair),inset 0 1px 0 rgba(255,255,255,.10),0 34px 60px -40px rgba(0,0,0,1)!important}
body.hs-black section .gx::before,body.hs-black section .gx::after,body.hs-black section .gx .grain,body.hs-black section .gx .rim2,body.hs-black section .gx .sheen{display:none!important}
body.hs-black section .gx:hover{box-shadow:inset 0 0 0 1px rgba(220,224,232,.32),inset 0 1px 0 rgba(255,255,255,.14),0 34px 60px -40px rgba(0,0,0,1)!important}

/* what we arrange: each card gets the ticket's tear line between the emblem and the name, with a punched notch at each edge */
body.hs-black .inc5 .gx{overflow:hidden}
body.hs-black .inc5 .gx h3{position:relative;width:100%;padding-top:clamp(14px,2vh,18px)}
body.hs-black .inc5 .gx h3::before{content:"";position:absolute;top:-7px;height:14px;left:calc(-1 * clamp(14px,1.4vw,20px));right:calc(-1 * clamp(14px,1.4vw,20px));
  background:radial-gradient(circle at 0 50%,#050505 6.5px,rgba(220,224,232,.22) 7px,transparent 7.5px),radial-gradient(circle at 100% 50%,#050505 6.5px,rgba(220,224,232,.22) 7px,transparent 7.5px),
    linear-gradient(90deg,rgba(214,218,226,.34) 50%,transparent 0) center/7px 1px repeat-x}

/* sports: small black tickets, the name in small caps under the emblem */
body.hs-black .ev4 h3{font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#E6E8EC}

/* request form: one big black ticket with a barcode stub */
body.hs-black #req .in{position:relative;padding-bottom:clamp(64px,8vh,80px)}
body.hs-black #req .in::after{content:"";position:absolute;left:clamp(22px,2.2vw,30px);right:clamp(22px,2.2vw,30px);bottom:20px;height:24px;opacity:.4;
  background:repeating-linear-gradient(90deg,#d5d8de 0 2px,transparent 2px 5px,#d5d8de 5px 6px,transparent 6px 10px,#d5d8de 10px 13px,transparent 13px 15px)}
body.hs-black #req .in::before{content:"";position:absolute;left:0;right:0;bottom:58px;border-top:1px dashed rgba(214,218,226,.26)}
body.hs-black #req input,body.hs-black #req select,body.hs-black #req textarea{background:#0f0f12;box-shadow:inset 0 0 0 1px rgba(220,224,232,.14)}

/* sports, bigger (2026-10-20, Nik): four tickets in the first row, three centred under them; larger emblem and name.
   Phones: two per row, the last one centred. */
body.hs-black .ev4{display:flex!important;flex-wrap:wrap;justify-content:center;gap:clamp(12px,1.4vw,18px)}
body.hs-black .ev4>.gx{flex:0 0 calc((100% - 3 * clamp(12px,1.4vw,18px)) / 4)}
body.hs-black .ev4 .gx .in{min-height:clamp(170px,24vh,230px)!important;gap:clamp(14px,2vh,20px)!important}
body.hs-black .ev4 .gx .em{width:clamp(56px,4.6vw,68px)!important;height:clamp(56px,4.6vw,68px)!important}
body.hs-black .ev4 .gx .em .ico{width:clamp(24px,2vw,30px);height:clamp(24px,2vw,30px)}
body.hs-black .ev4 h3{font-size:clamp(12px,1vw,14px)!important;letter-spacing:.22em}
@media (max-width:767px){
  body.hs-black .ev4{gap:10px!important}
  body.hs-black .ev4>.gx{flex-basis:calc((100% - 10px) / 2)}
  body.hs-black .ev4 .gx .in{min-height:118px!important;padding:16px 8px!important;gap:12px!important}
  body.hs-black .ev4 .gx .em{width:48px!important;height:48px!important}
  body.hs-black .ev4 h3{font-size:12px!important;letter-spacing:.16em}
}
