/* Reference z provozu: řádek u tlačítka (.ref-line), blok s videem (.ref-voice) a malá karta (.ref-mini).
   Vkládá scripts/apply_reference.py podle data/reference.json. Tvary a stíny podle brandmanuálu: tvrdý stín, coral jen jako „úsměv“ zespodu. */
.ref-wrap{margin-top:18px}
.ref-line{display:inline-flex;align-items:center;gap:12px;max-width:100%;padding:6px 18px 6px 6px;border:0;border-radius:999px;background:var(--cream);color:var(--ink);font:inherit;text-align:left;cursor:pointer;box-shadow:0 4px 0 #1e1b2e14;transition:transform .2s,box-shadow .2s}
.ref-line:hover,.ref-line:focus-visible{transform:translateY(-3px);box-shadow:0 5px 0 var(--coral)}
.ref-line--paper{background:var(--paper);box-shadow:0 0 0 1px var(--line),0 4px 0 #1e1b2e14}
.ref-line--paper:hover,.ref-line--paper:focus-visible{box-shadow:0 0 0 1px var(--line),0 5px 0 var(--coral)}
.ref-face{position:relative;flex-shrink:0;width:48px;height:48px}
.ref-face img{width:48px;height:48px;border-radius:50%;object-fit:cover}
.ref-face i{position:absolute;right:-4px;bottom:-4px;width:22px;height:22px;border-radius:50%;background:var(--ink);color:var(--cream);display:grid;place-items:center;border:2px solid var(--cream)}
.ref-line--paper .ref-face i{border-color:var(--paper)}
.ref-face svg{width:9px;height:9px}
.ref-text{min-width:0;line-height:1.3}
.ref-text q{display:block;font-family:var(--heading);font-weight:500;font-size:15px;letter-spacing:-.015em;quotes:"„" "“"}
.ref-text small{display:block;font-size:13px;color:var(--muted)}
.ref-wrap noscript a,.ref-voice noscript a{font-size:13px;text-decoration:underline}

.ref-voice{padding-block:70px}
.ref-voice-grid{display:grid;grid-template-columns:minmax(0,250px) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:center;max-width:880px;margin-inline:auto}
.ref-poster{position:relative;display:block;width:100%;aspect-ratio:9/16;padding:0;border:0;border-radius:24px;overflow:hidden;background:var(--ink);cursor:pointer;box-shadow:10px 14px 0 #1e1b2e12}
.ref-poster img{width:100%;height:100%;object-fit:cover}
.ref-poster-play{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);display:inline-flex;align-items:center;gap:10px;white-space:nowrap;background:var(--ink);color:var(--cream);font:700 15px var(--body);border-radius:999px;padding:12px 20px 12px 16px;transition:transform .2s,box-shadow .2s}
.ref-poster:hover .ref-poster-play,.ref-poster:focus-visible .ref-poster-play{transform:translate(-50%,-3px);box-shadow:0 5px 0 var(--coral)}
.ref-poster-play svg{width:14px;height:14px}
.ref-voice .ref-question{font-family:var(--heading);font-weight:500;font-size:16px;letter-spacing:-.01em;color:var(--ink)}
.ref-voice blockquote{margin:12px 0 0;font-family:var(--heading);font-weight:700;font-size:clamp(24px,3vw,34px);line-height:1.18;letter-spacing:-.035em;color:var(--ink);text-wrap:balance}
.ref-voice blockquote p{color:inherit}
.ref-who{display:flex;align-items:center;gap:14px 28px;flex-wrap:wrap;margin-top:24px}
.ref-who p{font-size:15px;line-height:1.35;color:var(--muted)}
.ref-who strong{display:block;font-size:16px;color:var(--ink)}
.ref-who img{height:24px;width:auto}

.ref-mini{display:grid;grid-template-columns:76px minmax(0,1fr);gap:16px;align-items:start;max-width:420px;margin-top:28px;padding:16px;background:var(--cream);border-radius:20px;box-shadow:0 4px 0 #1e1b2e14}
.ref-mini .ref-poster{border-radius:12px;box-shadow:none}
.ref-mini .ref-poster-play{bottom:8px;padding:8px;gap:0}
.ref-mini .ref-poster-play span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.ref-mini blockquote{margin:0;font-family:var(--heading);font-weight:500;font-size:17px;letter-spacing:-.02em;line-height:1.3;color:var(--ink)}
.ref-mini blockquote p{color:inherit;font-size:inherit;margin:0;max-width:none}
.ref-mini .ref-who{margin-top:10px;gap:10px 14px}
.ref-mini .ref-who p{font-size:13px;margin:0}.ref-mini .ref-who strong{font-size:14px}
.ref-mini .ref-who img{height:16px}

/* přehrání přes celou obrazovku, video na výšku */
.rlb{border:0;padding:0;background:transparent;max-width:none;max-height:none;width:100%;height:100%}
.rlb::backdrop{background:rgba(20,18,32,.88)}
.rlb-inner{box-sizing:border-box;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:20px}
.rlb-video{width:min(400px,100%,calc((100vh - 190px)*9/16))}
.rlb-video video{display:block;width:100%;aspect-ratio:9/16;border-radius:20px;background:#000}
.rlb-close{position:absolute;right:28px;top:24px;width:52px;height:52px;border-radius:50%;border:0;background:var(--cream);color:var(--ink);display:grid;place-items:center;cursor:pointer}
.rlb-close svg{width:22px;height:22px}
.rlb-cta{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--cream);text-align:center}
.rlb-cta .button{background:var(--butter);color:var(--ink)}
.rlb-cta small{color:#c9c3d6;font-size:14px}
@media(max-width:800px){
  .hero .ref-wrap{display:flex;justify-content:center}
  .ref-voice{padding-block:52px}
  .ref-voice-grid{grid-template-columns:1fr;gap:24px}
  .ref-voice .ref-poster{width:min(240px,70%);margin-inline:auto}
  .rlb-close{right:14px;top:14px;width:44px;height:44px}
}
@media(prefers-reduced-motion:reduce){.ref-line,.ref-poster-play{transition:none}}
@media print{.ref-wrap,.ref-voice,.ref-mini{display:none!important}}
