/* dj-party.cz v2: hero s výřezem, novinky, DJ pult, mini-pult, klubový mód. Barva: --lime se mění crossfaderem. */
:root{--lime:#d2fc65;--pbg:#0d1117;--pcard:#141a22;--pline:#262e39;--violet:#b66bff}
body{overflow-x:hidden}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.header{background:#0a0e14f5}
.hero{background:radial-gradient(900px 520px at 78% 40%,color-mix(in srgb,var(--lime) 14%,transparent),transparent 70%),var(--dark);transition:background .3s}
.hero-visual{position:relative;height:640px;margin:0 0 0 10px;overflow:visible}
.hero-disc{position:absolute;right:-6%;top:6%;width:min(560px,92%);aspect-ratio:1;border-radius:50%;background:repeating-radial-gradient(circle,#0a0d11 0 2px,#1a2028 3px 4px);box-shadow:0 30px 80px #0008,0 0 0 1px #2a323c;animation:spin 40s linear infinite;display:grid;place-items:center}
.hero-disc:before{content:'';position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 20deg,transparent 0 18%,#ffffff1c 24%,transparent 30% 68%,#ffffff1c 74%,transparent 80%)}
.hero-disc i{width:34%;aspect-ratio:1;border-radius:50%;background:var(--lime);position:relative;box-shadow:inset 0 0 0 6px #0003}
.hero-disc i:after{content:'';position:absolute;inset:calc(50% - 7px);border-radius:50%;background:var(--dark)}
@keyframes spin{to{transform:rotate(360deg)}}
.hero-man{position:absolute;left:50%;bottom:0;transform:translateX(-50%);height:104%;width:auto;max-width:none;display:block;-webkit-mask-image:linear-gradient(#000 88%,transparent);mask-image:linear-gradient(#000 88%,transparent);filter:drop-shadow(0 20px 40px #0009)}
.chip{position:absolute;top:18px;left:6px;font-size:9px;letter-spacing:1.6px;background:#0a0e14aa;border:1px solid #ffffff26;padding:6px 11px;border-radius:20px;color:#eee}
.name-tag{position:absolute;right:0;bottom:30px;text-align:right;font-family:var(--display);line-height:1.15}
.name-tag b{display:block;font-size:26px;letter-spacing:1.5px;font-weight:700}
.name-tag small{font-family:var(--font);font-size:11px;color:#c9cec2;letter-spacing:.3px}
.round-stamp{left:-8px;bottom:70px;width:112px;height:112px;font-family:var(--display);font-size:11px;letter-spacing:.5px;font-weight:700;line-height:1.1;text-transform:none;transition:background .3s}
.round-stamp b{font-size:11px;margin:0;font-weight:700;line-height:1.1}
.hero-inner{min-height:700px;padding-bottom:0}
.hero-bottom{margin-top:0}
.lead{max-width:520px;font-size:17px;color:#c3c8bd}
h1{font-size:clamp(58px,6vw,96px)}
.hero-proof p{font-size:12px;line-height:1.7}
.hero-proof span:not(.proof-line){max-width:80px}
.ticker{transition:background .3s}
.party,.contact{transition:background .3s}

/* jemnější texty v kartách (čitelnost) */
.service p,.steps p,details>p{font-size:14px;line-height:1.75}
.service p{max-width:none;opacity:.82}
.about-copy>p:not(.eyebrow){font-size:15px;line-height:1.8}
.section-heading>p{font-size:15px;line-height:1.7}
.genre-list span{font-size:10px;padding:7px 11px}
.eyebrow{font-size:11px}
summary{font-size:16px}
.about-art{padding:0}
.about-art img{width:100%;height:100%;min-height:470px;object-fit:cover;object-position:50% 30%;display:block;filter:saturate(.8)}
.about-art:before{display:none}
.form-row label,form label{font-size:12px}
form input,form select,form textarea{font-size:14px}
.check{display:flex!important;gap:10px;align-items:flex-start;margin:19px 0 6px;font-size:12px!important;line-height:1.6;color:#d4d9cc!important}
.check input{width:20px!important;min-height:20px!important;height:20px;margin:2px 0 0!important;flex:0 0 20px;accent-color:var(--lime)}
.privacy-note,.form-note,.calendar-note{font-size:12px}
.playlist-note{font-size:12px;color:var(--lime);border:1px dashed #53603f;border-radius:3px;padding:9px 12px;margin:14px 0}
.calendar-days>button.free{background:#dcefba;border-color:#a9c76a}
.calendar-days>button.free:after{display:none}
.calendar-days>button.busy{background:#e7d3cc;color:#8c4a38}
.calendar-legend{flex-wrap:wrap;font-size:11px}.calendar-status{font-size:12px}
.calendar-legend .legend-free{background:#dcefba;border:1px solid #a9c76a;margin-left:10px}.calendar-legend .legend-busy{background:#e7d3cc;margin-left:10px}
.calendar-note{color:#4a5441;font-weight:600}
.credit{margin-left:auto;font-size:11px;color:#a7b099;text-decoration:underline;text-underline-offset:3px}
footer .wrap{flex-wrap:wrap}footer button{margin-left:0}

/* Kde hraju */
.news{background:#10151c}
.news .section-heading>p{color:#aab1a3}
.news-up{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px}
.ncard{display:flex;flex-direction:column;background:#161c24;border:1px solid #262e39;border-radius:6px;overflow:hidden}
.ncard img{width:100%;height:auto;aspect-ratio:640/905;object-fit:cover;display:block}
.nbody{padding:16px 18px 20px;display:flex;flex-direction:column;gap:6px}
.ndate{font-family:var(--display);font-weight:700;color:var(--lime);font-size:22px;letter-spacing:-.5px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.nold{font-style:normal;font-family:var(--font);font-size:10px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:#9aa293;border:1px solid #3a4350;padding:2px 8px;border-radius:12px}
.ncard h3{font-size:21px;letter-spacing:-.6px}
.nplace{font-size:14px;color:#c7ccc0;line-height:1.5}.nplace small{font-size:12px;color:#9ca497}
.ntext{font-size:13px;color:#aab1a3;line-height:1.65}
.news-sub{margin:56px 0 20px;font-size:26px}
.news-past{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(210px,230px);gap:16px;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:12px}
.ncard.past{scroll-snap-align:start;opacity:.66;transition:opacity .2s}
.ncard.past img{filter:grayscale(.55)}
.ncard.past:hover,.ncard.past:focus-within{opacity:1}
.ncard.past .ndate{font-size:18px;color:#c8cec0}.ncard.past h3{font-size:18px}.ncard.past .ntext{display:none}
.news-empty{font-size:15px;color:#c7ccc0;border:1px dashed #3a4350;border-radius:6px;padding:24px}
.news-empty a{color:var(--lime);text-decoration:underline;text-underline-offset:3px}
.gigs{background:var(--dark)}

/* DJ pult */
.pult{background:var(--pbg);position:relative;overflow:hidden;border-block:1px solid var(--pline)}
.pult-intro{max-width:420px}.pult-intro>p{font-size:15px;line-height:1.7;color:#aab1b8;margin-bottom:16px}
.sound-big{display:inline-flex;align-items:center;gap:10px;background:transparent;color:var(--paper);border:1px solid #55606b;border-radius:30px;padding:11px 18px;font-size:14px;min-height:44px}
.sound-big[aria-pressed=true]{background:var(--lime);color:var(--dark);border-color:var(--lime)}
.nowplaying{margin:-20px 0 34px;display:flex;align-items:center;gap:10px;font-size:14px;color:#c6ccd2;border-top:1px solid var(--pline);border-bottom:1px solid var(--pline);padding:12px 0}
.np-dot{width:8px;height:8px;border-radius:50%;background:var(--lime);animation:pulse 1.2s ease-in-out infinite}
@keyframes pulse{50%{opacity:.25}}
.np-label{color:#8d96a0}#nowp{color:var(--paper);font-weight:600;transition:opacity .4s}#nowp.fade{opacity:0}
.pult-grid{display:flex;flex-direction:column;gap:30px}
.decks{display:grid;grid-template-columns:1fr minmax(220px,300px) 1fr;gap:26px;align-items:center}
.deck{background:var(--pcard);border:1px solid var(--pline);border-radius:10px;padding:18px 18px 16px}
.deck-head{display:flex;justify-content:space-between;font-size:12px;color:#8d96a0;margin-bottom:12px}.deck-head b{color:var(--paper);font-size:14px;letter-spacing:.5px}
.platter-wrap{position:relative;width:min(100%,320px);margin:0 auto;aspect-ratio:1;touch-action:none}
.platter{position:absolute;inset:3%;border-radius:50%;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;outline-offset:6px}
.platter.grab{cursor:grabbing}
.disc{position:absolute;inset:0;border-radius:50%;background:repeating-radial-gradient(circle,#090b0e 0 2px,#1b2028 3px 4px);box-shadow:0 14px 34px #0009,0 0 0 2px #2b323c;will-change:transform}
.disc:before{content:'';position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 10deg,transparent 0 16%,#ffffff26 22%,transparent 28% 66%,#ffffff26 72%,transparent 78%)}
.strobe{position:absolute;inset:2%;border-radius:50%;background:repeating-conic-gradient(#ffffff40 0 1.5deg,transparent 1.5deg 9deg);-webkit-mask:radial-gradient(circle,transparent 94%,#000 95%);mask:radial-gradient(circle,transparent 94%,#000 95%);opacity:.55}
.dlabel{position:absolute;inset:32%;border-radius:50%;background:var(--lime);color:var(--dark);display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--display);line-height:1;box-shadow:inset 0 0 0 5px #0002}
.dlabel span{font-size:clamp(8px,1.7vw,11px);font-weight:800;letter-spacing:1px;margin-top:6px}.dlabel b{font-size:clamp(20px,4vw,34px);font-weight:800}
.dlabel:after{content:'';position:absolute;width:7px;height:7px;border-radius:50%;background:var(--pbg)}
.dmark{position:absolute;left:calc(50% - 5px);top:9%;width:10px;height:10px;border-radius:50%;background:#fff;box-shadow:0 0 10px #fff}
.deck[data-deck=a] .dlabel{background:#d2fc65}.deck[data-deck=b] .dlabel{background:var(--violet)}
.arm{position:absolute;top:-4%;right:-10%;width:42%;height:auto;overflow:visible;transform-origin:80% 13%;transform:rotate(var(--arm,6deg));pointer-events:none;filter:drop-shadow(0 6px 6px #0008)}
.arm path{fill:none;stroke:#cfd6dd;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}
.arm .arm-tube{stroke:#cfd6dd}.arm .arm-base{fill:#2a313b;stroke:#8e98a4;stroke-width:3}.arm .arm-head{fill:#e9eef2;stroke:none}
.deck-ctl{display:flex;justify-content:space-between;align-items:center;margin-top:14px;font-size:12px;color:#8d96a0}
.deck-run,.mbtn{background:#1c242e;color:var(--paper);border:1px solid #36404c;border-radius:6px;padding:10px 16px;font-size:14px;min-height:44px;transition:background .15s,transform .1s}
.deck-run:hover,.mbtn:hover{background:#26303c}.deck-run:active,.mbtn:active{transform:scale(.97)}
.deck-run.stopped{background:var(--lime);color:var(--dark);border-color:var(--lime)}
.mixer{display:flex;flex-direction:column;gap:20px;align-items:stretch;background:var(--pcard);border:1px solid var(--pline);border-radius:10px;padding:20px}
.mix-label{font-size:12px;letter-spacing:1.4px;text-transform:uppercase;color:#8d96a0;display:block;margin-bottom:12px}
#xfade{-webkit-appearance:none;appearance:none;width:100%;height:36px;background:transparent;margin:0;padding:0;border:0;min-height:36px;display:block}
#xfade::-webkit-slider-runnable-track{height:8px;border-radius:4px;background:linear-gradient(90deg,#d2fc65,#b66bff)}
#xfade::-moz-range-track{height:8px;border-radius:4px;background:linear-gradient(90deg,#d2fc65,#b66bff)}
#xfade::-webkit-slider-thumb{-webkit-appearance:none;width:30px;height:46px;margin-top:-19px;border-radius:5px;background:linear-gradient(#eef1f4 0 44%,#222 44% 56%,#eef1f4 56%);border:1px solid #111;box-shadow:0 4px 10px #0009;cursor:grab}
#xfade::-moz-range-thumb{width:28px;height:44px;border-radius:5px;background:linear-gradient(#eef1f4 0 44%,#222 44% 56%,#eef1f4 56%);border:1px solid #111;cursor:grab}
#xfade:focus-visible{outline:3px solid #83a62d;outline-offset:6px}
.xf-scale{display:flex;justify-content:space-between;font-size:11px;color:#8d96a0;margin-top:6px}
.help{font-size:13px;color:#98a1ab;line-height:1.6}
.mixer-btns{display:flex;flex-direction:column;gap:10px}
.mbtn[aria-pressed=true]{background:var(--lime);color:var(--dark);border-color:var(--lime)}
.eq{display:flex;align-items:flex-end;gap:3px;height:64px;border-top:1px solid var(--pline);padding-top:14px}
.eq i{flex:1;background:var(--lime);height:6%;border-radius:2px 2px 0 0;min-width:3px;transition:height .08s linear,background .3s}
.pult-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.pcard{background:var(--pcard);border:1px solid var(--pline);border-radius:10px;padding:22px;display:flex;flex-direction:column;gap:14px;min-width:0}
.pcard h3{font-size:22px;letter-spacing:-.8px}
.tap{align-self:center;width:150px;height:150px;border-radius:50%;background:var(--lime);color:var(--dark);border:0;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--display);box-shadow:0 0 0 8px #ffffff10;touch-action:manipulation;transition:transform .08s}
.tap:active,.tap.hit{transform:scale(.94)}
.tap span{font-size:46px;font-weight:800;line-height:1;letter-spacing:-2px}.tap small{font-size:12px;letter-spacing:2px;font-weight:700}
.tap-out{font-size:15px;color:var(--paper);line-height:1.5;min-height:48px}
.pads{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}
.pad{aspect-ratio:1;min-height:56px;border-radius:8px;border:1px solid #3b4552;background:#1b222b;color:var(--paper);font-size:12px;font-weight:600;padding:2px;touch-action:manipulation;position:relative;overflow:hidden;transition:transform .06s,background .2s}
.pad:before{content:'';position:absolute;inset:0;background:hsl(var(--h) 90% 60%);opacity:.18}
.pad.on{transform:scale(.93);background:hsl(var(--h) 90% 55%);color:#111}.pad.on:before{opacity:0}
.pad span{position:relative}
.seg{display:flex;flex-wrap:wrap;gap:6px}
.seg button{background:#1b222b;color:var(--paper);border:1px solid #36404c;border-radius:20px;padding:9px 14px;font-size:13px;min-height:40px}
.seg button[aria-checked=true]{background:var(--lime);color:var(--dark);border-color:var(--lime);font-weight:600}
.mixbar{display:flex;height:22px;border-radius:11px;overflow:hidden;background:#1b222b}
.mixbar i,.mixlegend i{display:block}.mixbar i{transition:flex-basis .5s cubic-bezier(.2,.8,.2,1);flex:0 0 25%}
.mb-o{background:#e8b04a}.mb-p{background:#e55d9b}.mb-d{background:#4fc3f7}
.mb-r{background:#9ccc65}
.mixlegend{list-style:none;margin:0;padding:0;display:flex;gap:14px;flex-wrap:wrap;font-size:13px;color:#c6ccd2}
.mixlegend li{display:flex;align-items:center;gap:6px}.mixlegend i{width:10px;height:10px;border-radius:2px}
.jukebox{display:flex;gap:8px}.jukebox input{margin:0;flex:1;min-width:0;min-height:44px}
.jb-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:170px;overflow:auto}
.jb-list li{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#1b222b;border-radius:6px;padding:8px 12px;font-size:14px}
.jb-list button{background:none;border:0;color:#9aa4ae;font-size:20px;min-width:32px;min-height:32px;line-height:1}
.pcard input[type=date]{margin:0;color-scheme:dark;min-height:46px}
.cd-text{font-family:var(--display);font-size:22px;line-height:1.25;letter-spacing:-.6px;color:var(--lime)}
.joke{font-size:16px;line-height:1.6;min-height:96px}

/* mini-pult */
.minipult{position:fixed;left:14px;bottom:14px;z-index:40;display:flex;align-items:center;gap:4px;background:#0a0e14e6;border:1px solid #2b333d;border-radius:40px;padding:5px 7px;backdrop-filter:blur(8px);box-shadow:0 8px 30px #0007}
.minipult button{width:42px;height:42px;border-radius:50%;border:0;background:transparent;color:var(--paper);font-size:19px;line-height:1;padding:0;display:grid;place-items:center}
.minipult button:hover{background:#ffffff18}.minipult button[aria-pressed=true]{background:var(--lime);color:var(--dark)}
.mini-deck{position:relative;width:44px;height:44px;margin-right:2px;display:block}
.mini-disc{position:absolute;inset:4px 6px 4px 2px;border-radius:50%;background:repeating-radial-gradient(circle,#090b0e 0 1px,#1b2028 2px 3px);box-shadow:0 0 0 1px #3a4350}
.mini-disc i{position:absolute;inset:34%;border-radius:50%;background:var(--lime)}
.mini-disc{animation:spin 3s linear infinite}
.mini-arm{position:absolute;top:-4px;right:-6px;left:auto;width:24px;transform-origin:80% 13%;transform:rotate(var(--arm,6deg));overflow:visible}
.mini-arm path{stroke:#e9eef2;stroke-width:9}
.mp-top{font-size:17px}

/* efekty */
.flash{position:fixed;inset:0;pointer-events:none;z-index:50;background:var(--fl,#fff);opacity:0;mix-blend-mode:screen}
.flash.go{animation:flash .28s ease-out}@keyframes flash{0%{opacity:.3}100%{opacity:0}}
.rewind{position:fixed;inset:0;z-index:60;pointer-events:none;opacity:0;display:grid;place-items:center;background:repeating-linear-gradient(0deg,#0000 0 3px,#0009 3px 5px)}
.rewind b{font-family:var(--display);font-size:clamp(28px,6vw,64px);color:var(--lime);letter-spacing:-1px;text-shadow:0 0 30px #000}
.rewind.on{opacity:1}
.toast{position:fixed;left:50%;bottom:78px;transform:translate(-50%,20px);background:#0a0e14f2;color:var(--paper);border:1px solid #3b4552;border-radius:10px;padding:12px 18px;font-size:14px;z-index:70;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;max-width:min(92vw,420px);text-align:center}
.toast.show{opacity:1;transform:translate(-50%,0)}
.v-cursor{position:fixed;left:0;top:0;width:30px;height:30px;margin:-15px 0 0 -15px;z-index:90;pointer-events:none;display:none;opacity:0;transition:width .15s,height .15s,margin .15s,opacity .2s}
.v-cursor:before{content:'';position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle,var(--lime) 0 22%,transparent 24%),conic-gradient(#ffffff55 0 12%,transparent 12% 50%,#ffffff33 50% 62%,transparent 62%),repeating-radial-gradient(circle,#0b0d10 0 1px,#232a33 2px 3px);box-shadow:0 0 0 1px #667;animation:spin 2.4s linear infinite}
.v-cursor i{position:absolute;left:58%;top:-34%;width:3px;height:70%;background:#e9eef2;border-radius:2px;transform-origin:50% 100%;transform:rotate(32deg);transition:transform .15s}
.v-cursor.on{display:block;opacity:.92}
.v-cursor.hot{width:46px;height:46px;margin:-23px 0 0 -23px}
.v-cursor.hot i{transform:rotate(6deg)}

/* klubový mód */
.klub-lights,.discoball{position:fixed;pointer-events:none;display:none}
body.klub .klub-lights{display:block;inset:0;z-index:3;overflow:hidden;mix-blend-mode:screen;opacity:.55}
.klub-lights i{position:absolute;top:-10%;left:50%;width:34vmax;height:120vmax;transform-origin:50% 0;background:linear-gradient(180deg,var(--c) 0,transparent 75%);clip-path:polygon(48% 0,52% 0,100% 100%,0 100%);opacity:.5;animation:sweep 7s ease-in-out infinite alternate}
.klub-lights i:nth-child(1){--c:#ff3d9a;animation-duration:6s;margin-left:-17vmax}
.klub-lights i:nth-child(2){--c:#3dd9ff;animation-duration:8s;animation-delay:-3s;margin-left:-17vmax}
.klub-lights i:nth-child(3){--c:var(--lime);animation-duration:9.5s;animation-delay:-5s;margin-left:-17vmax}
@keyframes sweep{from{transform:rotate(-38deg)}to{transform:rotate(38deg)}}
body.klub .discoball{display:block;top:78px;left:50%;margin-left:-34px;width:68px;height:112px;z-index:19}
.discoball:before{content:'';position:absolute;left:50%;top:-80px;width:2px;height:80px;background:#8a929c}
.discoball span{position:absolute;bottom:0;left:0;width:68px;height:68px;border-radius:50%;background:repeating-linear-gradient(0deg,#0000 0 6px,#0006 6px 7px),repeating-linear-gradient(90deg,#fff 0 6px,#99a 6px 7px),radial-gradient(circle at 35% 30%,#fff,#8a93a6 55%,#2a3140);background-blend-mode:multiply,normal,normal;box-shadow:0 0 40px #fff6,0 0 90px color-mix(in srgb,var(--lime) 60%,transparent);animation:ballspin 4s linear infinite}
@keyframes ballspin{to{filter:hue-rotate(360deg) brightness(1.15)}}
body.klub{background:#070a0f}
body.klub .light,body.klub .faq{background:#0f141b;color:var(--paper)}
body.klub .light em{color:var(--lime)}
body.klub .light .section-heading .eyebrow,body.klub .light .section-heading>p,body.klub .steps p,body.klub details>p{color:#b4bbae}
body.klub .service{border-color:#2b333d;color:var(--paper)}
body.klub .wedding{background:#141a22}body.klub .corporate{background:#121a1c}
body.klub .party{color:var(--dark)}
body.klub .service a{border-top-color:#ffffff2e}
body.klub .steps,body.klub details,body.klub details:first-child,body.klub .steps article{border-color:#2b333d}
body.klub .steps>article>span{color:#5f6b55}
body.klub .light .text-link{color:var(--paper)}
body.klub .hero,body.klub .about{background:radial-gradient(900px 520px at 78% 40%,color-mix(in srgb,var(--lime) 22%,transparent),transparent 70%),#070a0f}
body.klub .booking{background:#0d1219}body.klub .news{background:#0b0f15}

@media(max-width:1150px){.hero-visual{height:560px}.pult-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){
 .hero-visual{height:520px}.round-stamp{width:92px;height:92px;font-size:9px;left:0}
 .decks{grid-template-columns:1fr 1fr}.mixer{grid-column:1/-1;order:3}.decks .deck{padding:12px}
 .pult-intro{margin-top:24px}
 .about-art img{min-height:380px}
}
@media(max-width:600px){
 .hero-inner{grid-template-columns:1fr;padding-bottom:0;padding-top:18px;gap:18px}.hero-visual{height:400px;margin:0;order:-1}
 .hero-man{height:102%}.hero-disc{right:-18%;top:12%}
 .name-tag{bottom:22px}.name-tag b{font-size:22px}
 .round-stamp{left:0;bottom:110px}
 .lead{font-size:16px}
 .pult-cards{grid-template-columns:1fr}
 .decks{gap:12px}.deck-head{font-size:11px;flex-direction:column;gap:2px}.deck-ctl .hint{display:none}.deck-ctl{justify-content:center}
 .deck-run{padding:9px 12px}
 .nowplaying{margin-top:-6px;font-size:13px;flex-wrap:wrap}
 .minipult{left:8px;bottom:8px}.toast{bottom:70px}
 .ncard.past{opacity:.7}
 .news-past{grid-auto-columns:60%}
 .service p,.steps p,details>p{font-size:15px}
 .calendar-status{font-size:13px}.privacy-note,.form-note,.calendar-note{font-size:12px}
 .check{font-size:13px!important}
 footer .wrap{gap:14px}.credit{margin-left:0;width:100%}
}
@media(prefers-reduced-motion:reduce){
 .hero-disc,.mini-disc,.np-dot,.v-cursor:before,.klub-lights i,.discoball span{animation:none!important}
 .flash.go{animation:none}.disc{will-change:auto}
}
@media(hover:none),(pointer:coarse){.v-cursor{display:none!important}}

.pult .section-heading .eyebrow,.news .section-heading .eyebrow,.gigs .section-heading .eyebrow,.booking .section-heading .eyebrow{color:#b3baac}.gigs .section-heading>p{color:#b3baac}.nold{color:#aab1a3!important;border-color:#55606b!important}.nplace small{color:#b0b7aa}.ncard.past .ndate{color:#d0d5c9}
.ncard.past{opacity:1}.ncard.past img{opacity:.6;filter:grayscale(.55)}.ncard.past:hover img,.ncard.past:focus-within img{opacity:1}
.steps>article>span{color:#7f8c69}.weekdays{color:#5c6352}

.ic{display:block;flex:none}.sound-big .ic,.mbtn .ic{display:inline-block;vertical-align:-4px;margin-right:6px}.sound-big>span{display:inline-flex}.menu{display:none;place-items:center}
.ticker i{display:inline-block;width:10px;height:10px;background:var(--dark);transform:rotate(45deg);margin:0 40px!important;vertical-align:middle}
.calendar-title{border-bottom:1px solid #d7dacf}
@media(max-width:850px){.menu{display:grid}}

/* R.B. 30. 10.: na deskách se točí Markova hlava v brýlích */
.disc .dlabel{inset:24%;background-image:url(assets/hlava.webp)!important;background-size:cover!important;background-position:center 30%!important;background-repeat:no-repeat!important}
.disc .dlabel span{display:none}
.disc .dlabel b{position:absolute;bottom:-2px;right:-2px;width:30%;height:30%;font-size:clamp(11px,1.6vw,16px);display:grid;place-items:center;border-radius:50%;background:var(--dark);color:var(--lime)}
.disc .dlabel:after{display:none}

/* R.B. 30. 10.: vlastní ovládací prvky, novinky, fotka v kontaktu */
.field{display:block;font-size:10px;font-weight:500;color:#e0e4d9}.flabel{display:block;margin-bottom:8px}
.pills{display:flex;flex-wrap:wrap;gap:8px}.pills button{background:#2a3126;color:var(--paper);border:1px solid #454d3c;border-radius:999px;padding:10px 14px;font-size:12px;min-height:42px}
.pills button[aria-checked="true"]{background:var(--lime);color:var(--dark);border-color:var(--lime);font-weight:700}
.date-pick{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#2a3126;color:#a5ac9a;border:1px dashed #5a6450;border-radius:3px;padding:13px 12px;font-size:12px;min-height:46px;text-align:left}
.date-pick.set{color:var(--paper);border-style:solid;border-color:var(--lime);text-transform:none}.date-pick.err{border-color:#e07a5f;color:#ffb4a2}.date-pick i{font-style:normal;color:var(--lime)}
.pcard .date-pick{background:#1b222b;border-color:#3a4350;color:#c7ccc0}
.news-up.feat{grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr));gap:24px}
.news-up.feat .ncard{flex-direction:row;align-items:stretch;min-height:340px}
.news-up.feat .ncard img{width:44%;flex:0 0 44%;height:auto;aspect-ratio:640/905;object-fit:cover}
.news-up.feat .nbody{padding:28px 26px;display:flex;flex-direction:column;gap:10px}
.news-up.feat .ndate{font-family:var(--display);font-size:30px;color:var(--lime);letter-spacing:-1px;line-height:1}
.news-up.feat h3{font-size:26px;line-height:1.15}.news-up.feat .nplace{font-size:14px;color:#c7ccc0}.news-up.feat .ntext{font-size:14px;line-height:1.7;color:#aab1a3}
.news-up.feat .ncta{margin-top:auto;align-self:flex-start}
.contact{position:relative;overflow:hidden}.contact .wrap{position:relative;z-index:1}
.contact-marek{position:absolute;right:max(16px,calc((100% - 1280px)/2));bottom:0;height:115%;max-height:520px;width:auto;pointer-events:none;z-index:0}
.contact h2>a{position:relative;z-index:2}
@media(max-width:1150px){.contact-marek{height:90%;opacity:.95}}
@media(max-width:600px){.news-up.feat .ncard{flex-direction:column}.news-up.feat .ncard img{width:100%;flex:none}.contact-marek{height:62%;right:-30px;opacity:.9}.contact .phone,.contact h2{position:relative;z-index:1}}
/* kontakt: fotka celá, text vlevo, nic se nepřekrývá */
.contact-marek{height:100%;max-height:none;top:auto;bottom:0}
.contact .wrap{padding-right:min(440px,34%)}
.contact .contact-bottom{justify-content:flex-start;gap:48px;flex-wrap:wrap}
@media(max-width:850px){.contact .wrap{padding-right:0}.contact{padding-bottom:0}.contact-marek{position:relative;display:block;right:auto;height:auto;width:min(82%,340px);margin:28px auto 0;opacity:1}}

/* O mně: Marek v bílém tričku (vyříznutý) */
.about-white{background:radial-gradient(60% 55% at 50% 45%,#2b3a1c 0%,#161c14 60%,#11160f 100%);display:flex;align-items:flex-end;justify-content:center;min-height:470px}
.about-white picture{display:block;width:100%;height:100%}
.about-art.about-white img{width:auto;max-width:92%;height:100%;max-height:560px;min-height:0;object-fit:contain;object-position:50% 100%;filter:none;margin:24px auto 0;display:block}
.contact .wrap{padding-right:0}

/* moduly footer-credit + scroll-top-footer (převedeno ze _project/modules) */
  .rhc { display: flex; align-items: center; flex-wrap: wrap; gap: 1rem 1.6rem; }
  .rhc__app { display: inline-flex; align-items: center; gap: 0.7rem; padding: 0.5rem 0.9rem; border: 1px solid var(--line-dark, rgba(255,255,255,.12)); border-radius: 12px; }
  .rhc__app:hover { border-color: rgba(255,255,255,.28); }
  .rhc__app-ico { width: 2rem; height: 2rem; border-radius: 8px; background: #16a34a; color: #fff; display: flex; align-items: center; justify-content: center; font-size: 0.95rem; flex-shrink: 0; }
  .rhc__app-txt { display: flex; flex-direction: column; line-height: 1.15; }
  .rhc__app-label { font-family: var(--font-mono); font-size: 0.6rem; letter-spacing: 0.08em; text-transform: uppercase; color: #B3AAA2; }
  .rhc__app-name { font-weight: 700; color: #EAE3DA; font-size: 0.95rem; }
  .rhc__studio { display: inline-flex; align-items: center; gap: 0.4rem; color: #B3AAA2; font-size: 0.9rem; }
  .rhc__studio:hover { color: #E2DCD5; }
  .rhc__rh { display: inline-flex; align-items: center; gap: 0.35rem; }
  .rhc__hand { color: #e5484d; font-size: 0.95rem; }
  .rhc__hand-img { height: 15px; width: auto; display: inline-block; }
  .rhc__logo { height: 22px; width: auto; display: block; transform: translateY(1px); }
  .rhc__app-img { height: 1.1rem; width: auto; }
  .rhc__word { font-weight: 800; color: #fff; letter-spacing: -0.01em; }
  .rhc__word span { color: #ff7a7e; }
  .rhc__arr { color: #B3AAA2; }

.rh-scrolltop{display:flex;align-items:center;justify-content:center;padding:2rem 0 .5rem;color:#c7ccc0;opacity:.4;transition:opacity .2s ease}
.rh-scrolltop:hover{opacity:.7}.rh-scrolltop svg{transition:transform .2s ease}.rh-scrolltop:hover svg{transform:translateY(-2px)}
footer .rhc{margin-left:auto}

@media(max-width:959.98px){body{padding-bottom:calc(var(--mcta-h) + 72px)!important}}

.rhc.credit{text-decoration:none;font-size:inherit}.rhc.credit a{text-decoration:none}

/* ---- kanonický formulář @redhand/forms na tmavé sekci #termin (nadstavba webu, form se needituje) ---- */
.inquiry{--rhf-ink:var(--paper)}
.inquiry .rhf{color:var(--paper)}
.inquiry .rhf-label,.inquiry .flabel{font-size:12px;font-weight:500;color:#e0e4d9}
.inquiry .rhf-input,.inquiry .rhf-select,.inquiry .rhf-textarea,.inquiry .rh-phone-cc,.inquiry .rh-phone-national{background:#2a3126;border:1px solid #454d3c;border-radius:3px;color:var(--paper);font-size:14px;min-height:46px;padding:12px}
.inquiry .rhf-textarea{min-height:90px}
.inquiry .rhf-input::placeholder,.inquiry .rhf-textarea::placeholder{color:#a5ac9a}
.inquiry .rhf-input:focus,.inquiry .rhf-textarea:focus,.inquiry .rh-phone-cc:focus,.inquiry .rh-phone-national:focus{border-color:var(--lime);outline:2px solid var(--lime);outline-offset:1px}
.inquiry input[name="datum_akce"]{cursor:pointer;border-style:dashed;border-color:#5a6450}
.inquiry input[name="datum_akce"]:not(:placeholder-shown){border-style:solid;border-color:var(--lime)}
.inquiry .rhf-err{color:#ffb4a2;font-style:normal;font-size:12px}
.inquiry .rhf-req{color:var(--lime)}
.inquiry .rhf-gdpr{font-size:12px;line-height:1.6;color:#d4d9cc;margin-top:6px}
.inquiry .rhf-gdpr input{width:20px;height:20px;margin:2px 0 0;flex:0 0 20px;accent-color:var(--lime)}
.inquiry .rhf-gdpr a{color:var(--lime);text-decoration:underline;text-underline-offset:3px}
.inquiry .rhf-required-note{font-size:12px;color:#b3baac}
.inquiry .rhf-submit{width:100%;min-height:48px;margin-top:14px;border-radius:3px;background:var(--lime);color:var(--dark);font-weight:700;letter-spacing:.3px}
.inquiry .rhf-toast__msg{font-size:15px}.inquiry .rhf-toast__msg a{color:#161916;text-decoration:underline}
.inquiry .rhf-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.inquiry #type-field{grid-column:1/-1;margin:0}
.inquiry .rhf-grid{gap:16px 20px}
@media(min-width:641px){.inquiry .rhf-field:has([name="datum_akce"]),.inquiry .rhf-field:has([name="misto_akce"]),.inquiry .rhf-field:has([name="name"]),.inquiry .rhf-field:has(.rh-phone-field){grid-column:auto}}
.inquiry .form-title{margin-bottom:16px}.inquiry .form-note{margin-top:12px}
.alt-contact{margin:10px 0 0;font-size:12px;color:#b3baac}.alt-contact a{color:var(--paper);text-decoration:underline;text-underline-offset:3px}
.legal{padding:140px 0 80px}.legal .wrap{max-width:760px}.legal h1{margin:8px 0 24px}.legal h2{font-size:20px;margin:28px 0 8px}.legal p{line-height:1.7}.legal a{color:var(--lime)}

/* rh-select (H11) v tmavém formuláři */
.inquiry .rhs{--rhs-bg:#2a3126;--rhs-fg:var(--paper);--rhs-line:#454d3c;--rhs-acc:var(--lime);--rhs-hover:#3a4332;--rhs-pop:#2a3126;--rhs-pop-fg:var(--paper);--rhs-radius:3px}
.inquiry .rhs__btn{font-size:14px;min-height:46px;padding:12px}
.inquiry .rh-phone-field .rhs{flex:0 0 auto;width:auto;min-width:112px}
.inquiry .rh-phone-field .rhs__list{min-width:180px;right:auto}
.inquiry .rhf-visually-hidden .rhs__btn{display:none}

/* fotogalerie: náhled na úvodní stránce + stránka fotogalerie.html */
.gstrip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}
.gthumb{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:6px;background:#0d0f0d}
.gthumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.gthumb:hover img,.gthumb:focus-visible img{transform:scale(1.04)}
.gmore{margin:24px 0 0;text-align:center}
@media(max-width:700px){.gstrip{grid-template-columns:repeat(2,1fr)}}
.gal-page{padding-top:110px}
.gal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.gal-grid button{all:unset;cursor:zoom-in;display:block;aspect-ratio:4/3;overflow:hidden;border-radius:6px;background:#0d0f0d}
.gal-grid button:focus-visible{outline:3px solid #e55d9b;outline-offset:2px}
.gal-grid img{width:100%;height:100%;object-fit:cover;display:block}
.gal-videos{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;margin-top:12px}
.gal-videos video{width:100%;display:block;border-radius:6px;background:#0d0f0d;aspect-ratio:16/9;object-fit:cover}
.gal-videos video.tall{aspect-ratio:9/16}
.lb{position:fixed;inset:0;background:rgba(5,7,10,.94);display:none;align-items:center;justify-content:center;z-index:200;touch-action:pan-y}
.lb.open{display:flex}
.lb img{max-width:94vw;max-height:86vh;object-fit:contain;border-radius:4px}
.lb button{position:absolute;background:rgba(255,255,255,.12);color:#fff;border:0;border-radius:50%;width:48px;height:48px;font-size:24px;cursor:pointer}
.lb .lb-x{top:16px;right:16px}.lb .lb-p{left:16px;top:50%;transform:translateY(-50%)}.lb .lb-n{right:16px;top:50%;transform:translateY(-50%)}
.lb .lb-c{position:absolute;bottom:16px;left:0;right:0;text-align:center;color:#c6ccd2;font-size:14px}
.gal-page h1.h2{font-size:64px}
@media(max-width:850px){.gal-page h1.h2{font-size:44px}}
.gal-page{background:var(--dark);color:var(--paper)}
.gal-page .section-heading>p{color:#b3baac}
@media(max-width:600px){.gal-grid{grid-template-columns:repeat(2,1fr);gap:6px}.gal-videos{grid-template-columns:1fr}.gal-page{padding-top:96px}}
