*{box-sizing:border-box}
html{background:#140A08}
body{margin:0;background:#140A08;color:#F3ECDD;font-family:'Archivo',Arial,sans-serif;overflow-x:hidden}
a{color:#F3ECDD}a:hover{color:#E3141E}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #E3141E;outline-offset:2px}
.scena{position:relative;min-height:100vh;display:flex;flex-direction:column}
.scena::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 70% 55% at 85% 12%,rgba(227,20,30,.38),transparent 65%),radial-gradient(ellipse 60% 50% at 8% 95%,rgba(120,30,160,.30),transparent 65%),repeating-linear-gradient(115deg,rgba(255,255,255,.025) 0 2px,transparent 2px 22px)}
.scena>*{position:relative}
.horni{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;align-items:center;padding:20px 56px;font-family:'Special Elite',monospace;font-size:15px}
.horni a{text-decoration:none}
.noc{color:#E3141E}
.obsah{display:flex;flex-wrap:wrap;gap:48px;padding:8px 56px 64px;align-items:flex-start;max-width:1280px;margin:0 auto;width:100%;flex:1}
.plakat{flex:1 1 520px;min-width:0}
.titul{margin:0;font-weight:900;font-stretch:125%;font-size:clamp(64px,12vw,150px);line-height:.82;letter-spacing:-.04em;text-transform:uppercase;color:#E3141E;transform:rotate(-3deg);transform-origin:left bottom}
.kdy{margin-top:28px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.datum{background:#F3ECDD;color:#140A08;font-weight:900;font-stretch:125%;font-size:clamp(26px,4vw,44px);letter-spacing:-.02em;padding:6px 18px;transform:rotate(2deg)}
.kde{font-family:'Special Elite',monospace;font-size:18px;line-height:1.4}
.lineup{list-style:none;margin:36px 0 0;padding:0;display:flex;flex-direction:column;gap:6px;font-weight:800;font-stretch:110%;font-size:clamp(22px,3vw,34px);letter-spacing:-.01em;line-height:1.05}
.lineup .cervena{color:#E3141E}
.listek{flex:1 1 380px;max-width:460px;min-width:0;color:#140A08;filter:drop-shadow(9px 11px 0 #E3141E)}
.listek-hlava,.listek form{background:#F3ECDD}
.listek-hlava{position:relative;padding:28px 32px 26px;display:flex;justify-content:space-between;align-items:flex-end;gap:16px;
  -webkit-mask:radial-gradient(circle 15px at 0 100%,#0000 97%,#000) left/51% 100% no-repeat,radial-gradient(circle 15px at 100% 100%,#0000 97%,#000) right/51% 100% no-repeat;
  mask:radial-gradient(circle 15px at 0 100%,#0000 97%,#000) left/51% 100% no-repeat,radial-gradient(circle 15px at 100% 100%,#0000 97%,#000) right/51% 100% no-repeat}
.listek-hlava::after{content:"";position:absolute;left:22px;right:22px;bottom:0;border-top:3px dashed #140A08}
.listek h2{margin:0;font-weight:900;font-stretch:125%;font-size:26px;letter-spacing:-.02em;line-height:1.05}
.listek-hlava p{margin:8px 0 0;font-size:14px;line-height:1.35;color:#4a3d38}
.cena{text-align:right;flex:none}
.cena strong{display:block;font-weight:900;font-stretch:125%;font-size:50px;line-height:.9;color:#C40F18;white-space:nowrap}
.cena span{display:block;font-size:13px;margin-top:6px;color:#4a3d38}
form{padding:28px 32px 26px;display:flex;flex-direction:column;gap:16px;margin-top:-1px;
  -webkit-mask:radial-gradient(circle 15px at 0 0,#0000 97%,#000) left/51% 100% no-repeat,radial-gradient(circle 15px at 100% 0,#0000 97%,#000) right/51% 100% no-repeat;
  mask:radial-gradient(circle 15px at 0 0,#0000 97%,#000) left/51% 100% no-repeat,radial-gradient(circle 15px at 100% 0,#0000 97%,#000) right/51% 100% no-repeat}
label{display:flex;flex-direction:column;gap:6px;font-weight:800;font-size:14px}
input[type=text],input[type=email]{font:inherit;font-size:18px;font-weight:500;padding:12px 14px;border:2px solid #140A08;background:#fffdf8;color:#140A08;border-radius:0;width:100%}
input::placeholder{color:#8a7d75}
input[type=text]:focus,input[type=email]:focus{outline:3px solid #E3141E;outline-offset:1px}
.pocet-radek{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:16px;border-top:2px solid #140A08}
.pocet{display:flex;align-items:center;border:2px solid #140A08;background:#fffdf8}
.pocet button{width:50px;height:50px;border:0;background:#140A08;color:#F3ECDD;font-size:26px;font-weight:900;cursor:pointer;border-radius:0}
.pocet button:hover:not(:disabled){background:#E3141E}
.pocet button:disabled{opacity:.3;cursor:default}
.pocet input{width:64px;height:50px;border:0;text-align:center;font:900 24px 'Archivo',Arial,sans-serif;background:transparent;color:#140A08;border-radius:0;-moz-appearance:textfield}
.pocet input::-webkit-outer-spin-button,.pocet input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.celkem{text-align:right}
.celkem small{display:block;font-size:13px;font-weight:700;color:#4a3d38}
.celkem strong{font-weight:900;font-stretch:125%;font-size:32px;line-height:1.05;white-space:nowrap}
.koupit{border:0;background:#C40F18;color:#fff;font:900 20px 'Archivo',Arial,sans-serif;font-stretch:125%;padding:18px;cursor:pointer;border-radius:0;box-shadow:5px 5px 0 #140A08;transition:transform .12s,box-shadow .12s}
.koupit:hover:not(:disabled){background:#E3141E}
.koupit:active:not(:disabled){transform:translate(4px,4px);box-shadow:1px 1px 0 #140A08}
.koupit:disabled{opacity:.5;cursor:default}
.kod{height:34px;margin-top:2px;background:repeating-linear-gradient(90deg,#140A08 0 2px,transparent 2px 5px,#140A08 5px 6px,transparent 6px 9px,#140A08 9px 12px,transparent 12px 14px,#140A08 14px 15px,transparent 15px 19px);opacity:.85}
.chyba{margin:0;color:#B00D15;font-weight:700;font-size:15px;min-height:0}
.drobne{margin:0;font-size:14px;line-height:1.5;color:#3b2f2b}
.drobne a{color:#140A08}
.pas{background:#E3141E;color:#140A08;font-weight:900;font-stretch:125%;font-size:22px;padding:12px 0;white-space:nowrap;overflow:hidden;text-transform:uppercase}
.dole{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:18px 56px 24px;font-family:'Special Elite',monospace;font-size:13px;color:#b9ad9a}
@media (max-width:640px){
  .horni,.dole{padding-left:20px;padding-right:20px}
  .obsah{padding:8px 20px 48px;gap:36px}
  .listek{filter:drop-shadow(6px 8px 0 #E3141E)}
  .listek-hlava,form{padding-left:20px;padding-right:20px}
  .pas{font-size:16px}
}
@media (prefers-reduced-motion:no-preference){
  .titul{animation:vstup .6s ease-out both}
  @keyframes vstup{from{opacity:0;transform:rotate(-3deg) translateY(24px)}to{opacity:1;transform:rotate(-3deg)}}
}
