.vintro,.vintro *{box-sizing:border-box}
/* Web si rezervuje místo na scrollbar; během úvodu by po něm zůstal bílý pruh. */
html.vintro-on{overflow:hidden;scrollbar-gutter:auto}
/* Nad cookie lištou (9999): ta se ukáže hned po zavření úvodu. */
.vintro{position:fixed;inset:0;z-index:10000;overflow:hidden;background:var(--primary-dark,#1b4332);font-family:'Outfit',system-ui,sans-serif;color:var(--text-dark,#1a2f26);
  animation:vintro-in .25s ease;transition:opacity .6s ease,transform .6s ease}
@keyframes vintro-in{from{opacity:0}}
.vintro[hidden]{display:none}
.vintro.is-gone{opacity:0;transform:scale(1.03);pointer-events:none}
.vintro-bg,.vintro canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.vintro-bg{object-fit:cover}
#vintro-winter{--wx:-300px;
  -webkit-mask-image:linear-gradient(90deg,transparent calc(var(--wx) - 90px),#000 calc(var(--wx) + 90px));
  mask-image:linear-gradient(90deg,transparent calc(var(--wx) - 90px),#000 calc(var(--wx) + 90px))}
.vintro-tint{position:absolute;inset:0;background:linear-gradient(180deg,rgba(27,67,50,.12) 0%,rgba(27,67,50,.2) 45%,rgba(27,67,50,.72) 72%,rgba(27,67,50,.82) 100%)}

.vintro-bar{position:absolute;left:0;right:0;top:0;z-index:3;height:64px;display:flex;align-items:center;justify-content:space-between;
  padding:0 max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left));background:#fff;box-shadow:0 2px 14px rgba(0,0,0,.12)}
.vintro-brand{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:clamp(1.05rem,.95rem + .5vw,1.35rem);color:var(--primary,#2d6a4f)}
.vintro-brand img{width:28px;height:28px;object-fit:contain;transform:scaleX(-1)}
.vintro-skip{font:inherit;font-weight:500;color:var(--text-dark,#1a2f26);background:none;border:0;border-radius:.5rem;padding:.45em .7em;cursor:pointer;transition:color .2s}
.vintro-skip:hover{color:var(--orange,#e87722)}
.vintro.is-told .vintro-skip{visibility:hidden}

.vintro-copy{position:absolute;left:0;right:0;top:var(--copy-top,60%);bottom:0;z-index:2;
  display:flex;flex-direction:column;align-items:center;gap:clamp(10px,2vh,18px);
  padding:0 calc(var(--tw,30px) + 12px) 16px;text-align:center;overflow-y:auto;
  opacity:0;transform:translateY(14px);transition:opacity .8s ease .1s,transform .8s cubic-bezier(.2,.7,.2,1) .1s}
.vintro.is-told .vintro-copy{opacity:1;transform:none}
.vintro-title{margin:0;font-family:inherit;font-weight:800;font-size:clamp(1.9rem,min(1.1rem + 3vw,7vh),3.5rem);line-height:1.1;color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.28);text-wrap:balance}
.vintro-notice{margin:0;background:rgba(255,255,255,.98);border-radius:1rem;border-left:5px solid var(--orange,#e87722);box-shadow:0 10px 40px rgba(0,0,0,.15);
  padding:.8em 1.25em;font-size:clamp(.98rem,.94rem + .25vw,1.12rem);line-height:1.4;max-width:34em;text-wrap:pretty}
.vintro-go{flex:none;font:inherit;font-weight:600;font-size:1.05rem;color:#fff;border:0;border-radius:.75rem;padding:.72rem 1.5rem;cursor:pointer;
  background:linear-gradient(135deg,#bb5a0d,#a14a08);visibility:hidden;transition:filter .15s ease}
.vintro.is-told .vintro-go{visibility:visible}
.vintro-go:hover{filter:brightness(1.1)}
.vintro button:focus-visible{outline:3px solid var(--orange,#e87722);outline-offset:2px}
.vintro .vintro-go:focus-visible{outline-color:#fff}

@media (max-width:560px){.vintro-bar{height:54px}}
@media (max-height:480px){
  .vintro-bar{height:44px}
  .vintro-copy{gap:6px;padding-bottom:6px}
  .vintro-title{font-size:1.35rem}
  .vintro-notice{padding:.35em .9em;font-size:.88rem;max-width:none}
  .vintro-go{padding:.4rem 1.2rem;font-size:.95rem}
}
@media (prefers-reduced-motion:reduce){
  .vintro,.vintro-copy{transition:none;animation:none}
  .vintro-copy{transform:none}
  .vintro.is-gone{transform:none}
}
@media print{.vintro{display:none}}
