/* Layout: clean video hero → raspberry band with portrait video → straight VHS strip → grainy cream "O nás" with a small taped print → notes + phone */
/* Palette A "Kazeta": cream, raspberry, butter, chocolate (text) */
:root{
  --cream:#FBF1DE; --rasp:#D93B6E; --butter:#F5D978; --choc:#4A2A1E;
  --f-display:'Fraunces',Georgia,serif; --f-body:'DM Sans',system-ui,sans-serif; --f-mono:'Space Mono',ui-monospace,monospace; --f-hand:'Caveat','Comic Sans MS',cursive;
  --noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .6 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  color-scheme:light;
}
body{background:var(--cream);color:var(--choc);font-family:var(--f-body);font-size:16px;overflow-x:hidden}
.d{font-family:var(--f-display);font-weight:900;font-variation-settings:'SOFT' 100,'WONK' 0,'opsz' 144;letter-spacing:-.02em}
.m{font-family:var(--f-mono);letter-spacing:.08em;text-transform:uppercase}
.it{font-style:italic;font-variation-settings:'SOFT' 100,'WONK' 1,'opsz' 144}
.wrap{padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px))}
.inner{max-width:1200px;margin:0 auto}

/* film grain on coloured backgrounds */
.grain{position:relative;isolation:isolate}
.grain::before{content:"";position:absolute;inset:0;background-image:var(--noise);background-size:220px;opacity:.13;mix-blend-mode:multiply;pointer-events:none;z-index:-1}
.grain.on-dark::before{opacity:.32}

/* hand-drawn marks */
.ul{position:relative;display:inline-block;white-space:nowrap;z-index:0}
.ul svg{position:absolute;pointer-events:none;overflow:visible;left:-3%;bottom:-.34em;width:106%;height:.42em}
.ul use{stroke:var(--rasp);stroke-width:1.9;vector-effect:non-scaling-stroke;filter:none}
.ul .l2{animation-delay:.95s;animation-duration:.55s}
.mark use{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:draw .7s .25s cubic-bezier(.4,0,.6,1) forwards;animation-play-state:paused}
.mark.in use{animation-play-state:running}
html:not(.js) .mark use{animation:none;stroke-dashoffset:0}
@keyframes draw{to{stroke-dashoffset:0}}
.note{font-family:var(--f-hand);font-weight:700;font-size:30px;line-height:1;display:flex;align-items:flex-end;gap:6px}
.note svg{width:54px;height:44px;flex:none}
.note use{fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}

/* buttons/links */
.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--rasp);color:var(--cream)!important;font-weight:700;text-decoration:none;border-radius:999px;padding:12px 22px;font-size:15px;transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-1px);box-shadow:0 3px 0 var(--choc)}
a:focus-visible{outline:3px solid var(--rasp);outline-offset:3px}
.tlink{font-weight:700;text-decoration:none;border-bottom:2px solid var(--butter);padding-bottom:2px;color:inherit}

/* ---- hero ---- */
.hero{position:relative;overflow:hidden;background:var(--choc);color:var(--cream);height:clamp(560px,92vh,940px);display:flex;flex-direction:column}
.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(40,20,14,.55) 0%,rgba(40,20,14,0) 28%,rgba(40,20,14,.1) 50%,rgba(40,20,14,.84) 100%);pointer-events:none}
.hero>*:not(video){position:relative;z-index:1}
nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:14px}
.logo{font-size:20px;line-height:1;color:var(--cream);text-decoration:none;white-space:nowrap}
.menu{display:flex;align-items:center;gap:26px;font-size:15px}
.menu .btn{padding:9px 18px;font-size:14px}
.menu a{color:var(--cream);text-decoration:none}
.menu a:not(.btn):hover{color:var(--butter)}
.rec{position:absolute;top:72px;right:max(24px,env(safe-area-inset-right,0px));display:flex;flex-direction:column;align-items:flex-end;gap:6px;font-size:13px;color:var(--cream);text-shadow:0 1px 2px rgba(0,0,0,.6);z-index:1}
.rec b{display:flex;align-items:center;gap:8px}
.rec b::before{content:"";width:10px;height:10px;border-radius:50%;background:#ff3b3b;animation:blink 1.2s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.copy{margin-top:auto;padding-block:0 64px;display:flex;flex-direction:column;gap:18px;max-width:820px}
.kicker{font-size:13px;font-weight:700;color:var(--butter)}
.hero h1{margin:0;font-size:clamp(44px,6.4vw,92px);line-height:.98;text-wrap:balance}
.hero h1 .sub{display:block;color:var(--butter);font-weight:600;font-size:.52em;line-height:1.1;margin-top:.3em;letter-spacing:-.01em}
.lead{margin:0;font-size:clamp(17px,1.4vw,20px);line-height:1.5;max-width:56ch;color:rgba(251,241,222,.92)}
.ctas{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:6px}
.ctas .btn{padding:16px 30px;font-size:17px}
.hero .tlink:hover{color:var(--butter)}

/* ---- section 2: raspberry band ---- */
.band-butter{background:var(--butter);color:var(--choc)}
.band-cream{background:var(--cream);color:var(--choc)}
.s2{padding-block:120px;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:88px;align-items:center}
.s2 .s2-media{order:-1}
.s2-text{display:flex;flex-direction:column;gap:28px;min-width:0}
.s2 h2{margin:0;font-size:clamp(40px,4.8vw,68px);line-height:1.04;text-wrap:balance}
.s2 h2 .line2{display:block;margin-top:.16em;font-weight:700;color:var(--rasp)}
.s2 p{margin:0;font-size:19px;line-height:1.65;max-width:52ch}
.s2 p strong{color:var(--rasp)}
.s2-media{display:flex;flex-direction:column;align-items:center;gap:14px;justify-self:center;width:100%;max-width:400px}
.frame{width:100%;border:3.5px solid var(--choc);border-radius:26px;overflow:hidden;box-sizing:border-box;box-shadow:0 18px 40px rgba(74,42,30,.16)}
.clip{width:100%;aspect-ratio:4/5;overflow:hidden;background:var(--choc)}
.clip video{width:100%;height:100%;object-fit:cover;display:block}

/* ---- VHS strip ---- */
.strip{background:var(--butter);color:var(--choc);overflow:hidden;border-block:3px solid var(--choc)}
.strip::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(74,42,30,.09) 0 1px,transparent 1px 3px);pointer-events:none;z-index:1}
.strip .glitch{position:absolute;left:0;right:0;height:38%;top:-45%;background:linear-gradient(transparent,rgba(251,241,222,.7),transparent);animation:track 6s linear infinite;pointer-events:none;z-index:2}
@keyframes track{0%,64%{top:-45%}100%{top:120%}}
.strip .run{display:flex;gap:40px;white-space:nowrap;padding:18px 0;font-size:16px;font-weight:700;width:max-content;animation:run 50s linear infinite;text-shadow:2px 0 0 rgba(217,59,110,.5),-2px 0 0 rgba(110,180,205,.45)}
.strip .run span{display:flex;align-items:center;gap:40px}
.strip .run span::after{content:"▶";font-size:11px;color:var(--rasp)}
@keyframes run{to{transform:translateX(-50%)}}

/* ---- Jak to funguje ---- */
.jtf{padding-block:110px 120px;display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:80px;align-items:start}
.jtf-head{display:flex;flex-direction:column;gap:18px;position:sticky;top:40px}
.jtf .kick{font-size:13px;font-weight:700;color:var(--rasp)}
.jtf h2{margin:0;font-size:clamp(38px,4.2vw,56px);line-height:1.04;text-wrap:balance}
.jtf .more{align-self:flex-start;color:var(--choc);border-bottom-color:var(--rasp);margin-top:10px}
.steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.step{display:grid;grid-template-columns:88px minmax(0,1fr);gap:8px 28px;padding-block:30px;border-top:1.5px solid var(--choc)}
.step:last-child{border-bottom:1.5px solid var(--choc)}
.step .num{grid-row:span 2;font-family:var(--f-display);font-weight:900;font-variation-settings:'SOFT' 100,'WONK' 1,'opsz' 144;font-style:italic;font-size:64px;line-height:.85;color:var(--rasp)}
.step h3{margin:0;font-size:26px;line-height:1.1}
.step p{margin:0;font-size:17px;line-height:1.6;max-width:58ch}

/* ---- Nostalgie ---- */
.nst{padding-block:72px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:64px;align-items:center;max-width:1000px}
.sq{width:300px;max-width:100%;aspect-ratio:1/1;border:3.5px solid var(--choc);border-radius:26px;overflow:hidden;box-sizing:border-box;background:var(--choc);box-shadow:0 18px 40px rgba(74,42,30,.18);justify-self:center}
.sq video{width:100%;height:100%;object-fit:cover;display:block}
.nst-text{display:flex;flex-direction:column;gap:26px;min-width:0}
.nst .kick{font-size:13px;font-weight:700;color:var(--rasp);margin-bottom:-12px}
.nst h2{margin:0;font-size:clamp(38px,4.3vw,58px);line-height:1.05;display:flex;flex-wrap:wrap;gap:0 .26em}
.nst h2 .it{color:var(--rasp)}
.nst h2 .ul{align-self:baseline}
.nst p{margin:0;font-size:19px;line-height:1.65;max-width:52ch}

/* ---- Balíčky ---- */
.pk{padding-block:110px 120px;display:flex;flex-direction:column;gap:52px}
.pk-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px 48px;align-items:center}
.pk-head>div{display:flex;flex-direction:column;gap:16px;min-width:0}
.pk-sub{margin:0;font-size:19px;line-height:1.5;max-width:none}
@media (min-width:600px){.pk-sub{white-space:nowrap}}
.cut{position:relative;margin:-185px 0 0;width:400px;max-width:100%;transform:rotate(-7deg);z-index:2;display:flex;flex-direction:column;align-items:center;gap:6px}
.cut img{display:block;width:100%;height:auto;filter:drop-shadow(0 18px 18px rgba(74,42,30,.28))}
.cut .patch{position:absolute;left:44%;top:50%;width:9%;aspect-ratio:1;background:var(--butter);border-radius:2px;transform:translate(-50%,-50%) rotate(-2deg);display:flex;align-items:center;justify-content:center;box-shadow:0 1px 1px rgba(30,10,5,.35),0 2px 5px rgba(30,10,5,.3);outline:1.3px dashed var(--rasp);outline-offset:-3px}
.cut .patch span{font-family:var(--f-display);font-weight:900;font-size:8.5px;line-height:.82;color:var(--rasp);text-align:center}
.cut figcaption{font-size:10px;font-weight:700;color:var(--choc);opacity:.6;transform:rotate(7deg)}
.pk .kick{font-size:13px;font-weight:700;color:var(--rasp)}
.pk h2{margin:0;font-size:clamp(38px,4.4vw,60px);line-height:1.04;text-wrap:balance}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.card{position:relative;border:1.5px solid var(--choc);border-radius:24px;padding:32px 28px 28px;display:flex;flex-direction:column;gap:18px;min-width:0;background:rgba(255,252,245,.5)}
.card.pick{background:var(--butter);border-width:2px;box-shadow:0 18px 40px rgba(74,42,30,.14)}
.badge{position:absolute;top:-14px;right:22px;background:var(--rasp);color:var(--cream);font-family:var(--f-mono);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:7px 12px;border-radius:999px;transform:rotate(3deg)}
.card h3{margin:0;font-size:28px;line-height:1.05}
.card .claim{margin:-8px 0 0;font-family:var(--f-display);font-style:italic;font-variation-settings:'SOFT' 100,'WONK' 1,'opsz' 144;font-weight:600;font-size:19px;line-height:1.3;color:var(--rasp)}
.card .desc{margin:0;font-size:15.5px;line-height:1.6}
.inc{list-style:none;margin:0;padding:18px 0 0;border-top:1.5px solid var(--choc);display:flex;flex-direction:column;gap:9px;font-size:15px;line-height:1.45}
.inc li{display:grid;grid-template-columns:16px minmax(0,1fr);gap:8px}
.inc li::before{content:"+";font-family:var(--f-mono);font-weight:700;color:var(--rasp)}
.inc li.all{font-weight:700}
.price{margin-top:auto;display:flex;align-items:baseline;gap:8px;padding-top:10px}
.price small{font-size:15px}
.price b{font-family:var(--f-display);font-weight:900;font-size:40px;letter-spacing:-.02em;line-height:1}
.card .btn{width:100%;box-sizing:border-box;padding:14px 20px;font-size:16px}
.btn.ghost{background:transparent;color:var(--choc)!important;box-shadow:inset 0 0 0 1.5px var(--choc)}
.btn.ghost:hover{background:var(--choc);color:var(--cream)!important;box-shadow:none}
.pk-note{margin:0;font-size:15px;line-height:1.6;max-width:70ch}
.pk-note a{color:var(--choc);font-weight:700}

/* ---- O nás ---- */
.onas{padding-block:100px 92px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:96px;align-items:center;max-width:1040px}
.print-wrap{display:flex;flex-direction:column;align-items:center;gap:10px}
.print{position:relative;background:#FFFCF5;padding:10px 10px 38px;margin:0;width:280px;max-width:100%;box-sizing:border-box;transform:rotate(-3deg);box-shadow:0 2px 3px rgba(74,42,30,.15),0 20px 40px rgba(74,42,30,.2)}
.print img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
.print::before{content:"";position:absolute;top:-13px;left:50%;width:96px;height:26px;transform:translateX(-50%) rotate(4deg);background:var(--cream);opacity:.85;box-shadow:0 1px 2px rgba(74,42,30,.15)}
.onas .note{color:var(--rasp);transform:rotate(-4deg);margin-left:40px}
.onas-text{display:flex;flex-direction:column;gap:24px;min-width:0}
.onas .kick{font-size:13px;font-weight:700;color:var(--rasp)}
.onas h2{margin:0;font-size:clamp(36px,4.2vw,58px);line-height:1.06;text-wrap:balance}
.onas h2 .it{color:var(--rasp)}
.onas p{margin:0;font-size:18px;line-height:1.7;max-width:56ch}
.onas .brand{color:var(--rasp);font-size:1.12em;letter-spacing:-.01em;white-space:nowrap}
.onas .signoff{font-size:clamp(26px,2.6vw,34px);line-height:1.15;font-weight:700;padding-top:20px;border-top:1.5px solid var(--choc);max-width:none;align-self:flex-start;padding-right:8px}

/* ---- FAQ ---- */
.faq{padding-block:110px 120px;display:flex;flex-direction:column;gap:44px;max-width:880px}
.faq-head{display:flex;flex-direction:column;gap:14px}
.faq .kick,.date .kick{font-size:13px;font-weight:700;color:var(--rasp)}
.faq h2{margin:0;font-size:clamp(30px,3.2vw,42px);line-height:1.05;text-wrap:balance}
.qa{display:flex;flex-direction:column;border-top:1.5px solid var(--choc)}
.qa details{border-bottom:1.5px solid var(--choc)}
.qa summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 4px}
.qa summary::-webkit-details-marker{display:none}
.qa summary h3{margin:0;font-family:var(--f-display);font-weight:700;font-variation-settings:'SOFT' 100,'WONK' 0,'opsz' 144;font-size:21px;line-height:1.25;letter-spacing:-.01em}
.qa summary::after{content:"+";flex:none;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--f-mono);font-weight:700;font-size:20px;color:var(--cream);background:var(--rasp);transition:transform .2s}
.qa details[open] summary::after{transform:rotate(45deg)}
.qa summary:hover h3{color:var(--rasp)}
.qa summary:focus-visible{outline:3px solid var(--rasp);outline-offset:2px;border-radius:6px}
.qa p{margin:0;padding:0 60px 26px 4px;font-size:17px;line-height:1.65;max-width:64ch}
.faq .more{align-self:flex-start;color:var(--choc);border-bottom-color:var(--rasp)}

/* ---- Máte datum? ---- */
.date-band{position:relative;overflow:hidden;background:var(--choc)}
.date-band>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.date-band::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(40,20,14,.78),rgba(40,20,14,.45) 58%,rgba(40,20,14,.55));pointer-events:none}
.date-band .wrap{position:relative;z-index:1}
.date{padding-block:110px;display:grid;grid-template-columns:minmax(0,460px) auto;justify-content:center;gap:40px 72px;align-items:center}
.date-side{display:flex;flex-direction:column;gap:18px;min-width:0;color:var(--cream);text-shadow:0 2px 14px rgba(20,10,6,.5);justify-self:start;max-width:460px;order:-1}
.date-side .kick{color:var(--rasp);text-shadow:none}
.date-side h2{color:var(--butter)}
.date-side p{margin:0;font-size:19px;line-height:1.55;max-width:36ch}
.date-side .tags{margin-top:6px}
.date-side .big{margin:0;font-size:clamp(34px,4vw,56px);line-height:1.03;font-weight:900}
.date-side .big span{display:block;color:var(--butter);font-style:italic;font-variation-settings:'SOFT' 100,'WONK' 1,'opsz' 144}
.tags{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.tags li{font-family:var(--f-mono);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:var(--cream);color:var(--choc);padding:7px 12px;border-radius:999px;text-shadow:none}
.ticket{position:relative;isolation:isolate;background:var(--butter);border:2px solid var(--choc);border-radius:26px;padding:34px 32px 26px;width:420px;max-width:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:26px;box-shadow:0 30px 60px rgba(30,15,10,.35)}
.ticket::before{content:"";position:absolute;inset:0;border-radius:inherit;background-image:var(--noise);background-size:220px;opacity:.22;mix-blend-mode:multiply;pointer-events:none;z-index:-1}
.date-head{display:flex;flex-direction:column;gap:16px;min-width:0}
.date h2{margin:0;font-size:clamp(36px,4vw,54px);line-height:1}
.date-head p{margin:0;font-size:18px;line-height:1.55;max-width:36ch}
.date form{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;min-width:0}
.field{display:flex;flex-direction:column;gap:8px;min-width:0}
.field label{font-family:var(--f-mono);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.field input{font:inherit;font-size:17px;color:var(--choc);background:var(--cream);border:1.5px solid var(--choc);border-radius:14px;padding:15px 16px;min-width:0;width:100%;box-sizing:border-box}
.field input:focus{outline:3px solid var(--rasp);outline-offset:1px}
.date form .btn{grid-column:1/-1;padding:17px 30px;font-size:17px;border:0;cursor:pointer;font-family:inherit}
.date .fine{grid-column:1/-1;margin:0;font-size:14px;line-height:1.5}
.date .fine:empty{display:none}

/* ---- footer ---- */
.foot{background:var(--cream);color:var(--choc);border-top:3px solid var(--choc)}
.foot .inner{padding-block:72px 28px;display:grid;grid-template-columns:minmax(0,6fr) minmax(0,3fr) minmax(0,3fr);gap:40px 56px;align-items:start}
.foot .lead-col{display:flex;flex-direction:column;gap:20px;min-width:0}
.foot .lead-col .claim-foot{margin:0;opacity:1;font-size:clamp(30px,3.4vw,46px);line-height:1.08;font-weight:700;color:var(--rasp);text-wrap:balance;max-width:16ch}
.foot .lead-col p{margin:0;font-size:16.5px;line-height:1.6;max-width:44ch;opacity:.9}
.foot .lead-col .btn{align-self:flex-start;padding:14px 26px;font-size:16px;margin-top:6px}
.foot .col{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:0;gap:12px;font-size:15px;min-width:0}
.foot .col b{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--rasp);margin-bottom:4px}
.foot a{color:var(--choc);text-decoration:none}
.foot .col a{align-self:flex-start;border-bottom:1px solid rgba(74,42,30,.35);padding-bottom:2px}
.foot a:hover{color:var(--rasp)}
.foot .col a:hover{border-bottom-color:var(--rasp)}
.foot .lead-col .btn{color:var(--cream)!important}
.foot .base{grid-column:1/-1;margin-top:28px;border-top:1px solid rgba(74,42,30,.25);padding-top:18px;display:flex;justify-content:space-between;align-items:center;gap:8px 16px;flex-wrap:wrap;font-size:13px}
.foot .base .logo{font-size:18px;line-height:1;opacity:1}
.foot .base span{opacity:.75}

/* ---- sticky bar ---- */
.bar{position:fixed;top:0;left:0;right:0;z-index:40;background:var(--choc);color:var(--cream);isolation:isolate;padding-top:env(safe-area-inset-top,0px);transition:transform .3s ease}
.home .bar:not(.show){transform:translateY(-110%)}
.bar.show{transform:none}
section[id]{scroll-margin-top:90px}
html{scroll-behavior:smooth}
.bar .in{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:5px}
.bar::before{content:"";position:absolute;inset:0;background-image:var(--noise);background-size:220px;opacity:.5;mix-blend-mode:soft-light;pointer-events:none;z-index:-1}
.bar .logo{color:var(--cream);font-size:16px;line-height:1;white-space:nowrap}
.bar .links{display:flex;align-items:center;gap:26px;font-size:15px}
.bar .links a:not(.btn){color:var(--cream);text-decoration:none}
.bar .links a:not(.btn):hover{color:var(--butter)}
.bar .btn{padding:7px 15px;font-size:13.5px}
.onas-btn{align-self:flex-start;padding:15px 28px;font-size:16px;margin-top:4px}


@media (max-width:1080px){.steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:48px}.step:nth-child(3){border-left:0;padding-left:0}.step:nth-child(2){padding-right:0}}
@media (max-width:600px){.steps{grid-template-columns:minmax(0,1fr);row-gap:36px}.step{border-left:0;padding:0}}
@media (max-width:980px){.cards{grid-template-columns:minmax(0,1fr);max-width:520px}}
@media (max-width:860px){
  .pk{padding-block:80px;gap:40px}
  .faq{padding-block:80px;gap:32px}
  .qa p{padding-right:4px}
  .date{padding-block:64px;grid-template-columns:minmax(0,1fr)}
  .date-side{justify-self:start}
  .ticket{padding:28px 22px 24px}
  .date form{grid-template-columns:minmax(0,1fr)}
  .foot .inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px 28px;padding-block:56px 24px}
  .foot .lead-col{grid-column:1/-1}
  .pk-head{grid-template-columns:minmax(0,1fr)}
  .cut{margin:0 auto;width:280px}
  .menu a:not(.btn){display:none}
  .bar .links a:not(.btn){display:none}
  .hero>.rec{display:none}
  .s2{grid-template-columns:minmax(0,1fr);gap:48px;padding-block:80px}
  .s2-media{max-width:360px}
  .jtf{grid-template-columns:minmax(0,1fr);gap:40px;padding-block:80px}
  .jtf-head{position:static}
  .step{grid-template-columns:56px minmax(0,1fr);gap:6px 18px}
  .step .num{font-size:44px}
  .nst{grid-template-columns:minmax(0,1fr);gap:36px;padding-block:56px}
  .sq{width:300px}
  .onas{grid-template-columns:minmax(0,1fr);gap:48px;padding-block:96px 80px}
  .onas .print-wrap{order:-1}
  .print{width:230px}
}
@media (prefers-reduced-motion:reduce){
  .bar{transition:none}
  .mark use{animation:none;stroke-dashoffset:0}
  .rec b::before,.strip .run,.strip .glitch{animation:none}
  .btn{transition:none}
}

/* ---- mobile menu ---- */
.burger-btn{display:none;width:42px;height:42px;border:0;border-radius:50%;background:transparent;color:var(--cream);cursor:pointer;align-items:center;justify-content:center;padding:0;flex:none}
.burger-btn span{position:relative;display:block;width:22px;height:2px;background:currentColor;border-radius:2px}
.burger-btn span::before,.burger-btn span::after{content:"";position:absolute;left:0;width:22px;height:2px;background:currentColor;border-radius:2px}
.burger-btn span::before{top:-7px}.burger-btn span::after{top:7px}
.burger-btn:focus-visible{outline:3px solid var(--butter);outline-offset:2px}
.mnav{position:fixed;inset:0;z-index:60;background:var(--choc);color:var(--cream);display:flex;flex-direction:column;padding:calc(env(safe-area-inset-top,0px) + 14px) max(24px,env(safe-area-inset-right,0px)) calc(env(safe-area-inset-bottom,0px) + 28px) max(24px,env(safe-area-inset-left,0px));transform:translateY(-100%);visibility:hidden;transition:transform .35s ease,visibility 0s .35s;isolation:isolate;overflow-y:auto}
.mnav::before{content:"";position:absolute;inset:0;background-image:var(--noise);background-size:220px;opacity:.5;mix-blend-mode:soft-light;pointer-events:none;z-index:-1}
.mnav.open{transform:none;visibility:visible;transition:transform .35s ease}
.mnav-top{display:flex;justify-content:space-between;align-items:center;gap:16px}
.mnav-top .logo{font-size:17px;color:var(--cream)}
.mnav-close{width:42px;height:42px;border:0;border-radius:50%;background:var(--rasp);color:var(--cream);font-size:22px;line-height:1;cursor:pointer}
.mnav-links{list-style:none;margin:40px 0 0;padding:0;display:flex;flex-direction:column}
.mnav-links a{display:block;padding:14px 0;border-bottom:1px solid rgba(251,241,222,.18);font-family:var(--f-display);font-weight:900;font-variation-settings:'SOFT' 100,'WONK' 0,'opsz' 144;letter-spacing:-.02em;font-size:34px;line-height:1.1;color:var(--cream);text-decoration:none}
.mnav-links a[aria-current]{color:var(--butter)}
.mnav-links a:active{color:var(--butter)}
.mnav .btn{margin-top:32px;align-self:stretch;padding:17px;font-size:17px}
.mnav-foot{margin-top:auto;padding-top:32px;display:flex;flex-direction:column;gap:10px}
.mnav-foot .claim{margin:0;font-family:var(--f-display);font-style:italic;font-weight:700;font-variation-settings:'SOFT' 100,'WONK' 1,'opsz' 144;font-size:22px;line-height:1.15;color:var(--rasp)}
.mnav-foot a{color:var(--cream);font-size:15px;opacity:.85}
body.menu-open{overflow:hidden}
.btn{white-space:nowrap}
@media (max-width:860px){.burger-btn{display:inline-flex}.menu{gap:10px}.menu .btn,.bar .btn{padding:8px 14px;font-size:13px}.bar .in{padding-block:6px}.bar .links{gap:10px}}
@media (prefers-reduced-motion:reduce){.mnav{transition:none}}

/* Layout: clean video hero → raspberry band with portrait video → straight VHS strip → grainy cream "O nás" with a small taped print → notes + phone */
/* Palette A "Kazeta": cream, raspberry, butter, chocolate (text) */
:root{
  --cream:#FBF1DE; --rasp:#D93B6E; --butter:#F5D978; --choc:#4A2A1E;
  --f-display:'Fraunces',Georgia,serif; --f-body:'DM Sans',system-ui,sans-serif; --f-mono:'Space Mono',ui-monospace,monospace; --f-hand:'Caveat','Comic Sans MS',cursive;
  --noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .6 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  color-scheme:light;
}
body{background:var(--cream);color:var(--choc);font-family:var(--f-body);font-size:16px;overflow-x:hidden}
.d{font-family:var(--f-display);font-weight:900;font-variation-settings:'SOFT' 100,'WONK' 0,'opsz' 144;letter-spacing:-.02em}
.m{font-family:var(--f-mono);letter-spacing:.08em;text-transform:uppercase}
.it{font-style:italic;font-variation-settings:'SOFT' 100,'WONK' 1,'opsz' 144}
.wrap{padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px))}
.inner{max-width:1200px;margin:0 auto}

/* film grain on coloured backgrounds */
.grain{position:relative;isolation:isolate}
.grain::before{content:"";position:absolute;inset:0;background-image:var(--noise);background-size:220px;opacity:.13;mix-blend-mode:multiply;pointer-events:none;z-index:-1}
.grain.on-dark::before{opacity:.32}

/* hand-drawn marks */
.ul{position:relative;display:inline-block;white-space:nowrap;z-index:0}
.ul svg{position:absolute;pointer-events:none;overflow:visible;left:-3%;bottom:-.34em;width:106%;height:.42em}
.ul use{stroke:var(--rasp);stroke-width:1.9;vector-effect:non-scaling-stroke;filter:none}
.ul .l2{animation-delay:.95s;animation-duration:.55s}
.mark use{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:draw .7s .25s cubic-bezier(.4,0,.6,1) forwards;animation-play-state:paused}
.mark.in use{animation-play-state:running}
html:not(.js) .mark use{animation:none;stroke-dashoffset:0}
@keyframes draw{to{stroke-dashoffset:0}}
.note{font-family:var(--f-hand);font-weight:700;font-size:30px;line-height:1;display:flex;align-items:flex-end;gap:6px}
.note svg{width:54px;height:44px;flex:none}
.note use{fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}

/* buttons/links */
.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--rasp);color:var(--cream)!important;font-weight:700;text-decoration:none;border-radius:999px;padding:12px 22px;font-size:15px;transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-1px);box-shadow:0 3px 0 var(--choc)}
a:focus-visible{outline:3px solid var(--rasp);outline-offset:3px}
.tlink{font-weight:700;text-decoration:none;border-bottom:2px solid var(--butter);padding-bottom:2px;color:inherit}

/* ---- hero ---- */
.hero{position:relative;overflow:hidden;background:var(--choc);color:var(--cream);height:clamp(560px,92vh,940px);display:flex;flex-direction:column}
.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(40,20,14,.55) 0%,rgba(40,20,14,0) 28%,rgba(40,20,14,.1) 50%,rgba(40,20,14,.84) 100%);pointer-events:none}
.hero>*:not(video){position:relative;z-index:1}
nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:14px}
.logo{font-size:20px;line-height:1;color:var(--cream);text-decoration:none;white-space:nowrap}
.menu{display:flex;align-items:center;gap:26px;font-size:15px}
.menu .btn{padding:9px 18px;font-size:14px}
.menu a{color:var(--cream);text-decoration:none}
.menu a:not(.btn):hover{color:var(--butter)}
.rec{position:absolute;top:72px;right:max(24px,env(safe-area-inset-right,0px));display:flex;flex-direction:column;align-items:flex-end;gap:6px;font-size:13px;color:var(--cream);text-shadow:0 1px 2px rgba(0,0,0,.6);z-index:1}
.rec b{display:flex;align-items:center;gap:8px}
.rec b::before{content:"";width:10px;height:10px;border-radius:50%;background:#ff3b3b;animation:blink 1.2s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.copy{margin-top:auto;padding-block:0 64px;display:flex;flex-direction:column;gap:18px;max-width:820px}
.kicker{font-size:13px;font-weight:700;color:var(--butter)}
.hero h1{margin:0;font-size:clamp(44px,6.4vw,92px);line-height:.98;text-wrap:balance}
.hero h1 .sub{display:block;color:var(--butter);font-weight:600;font-size:.52em;line-height:1.1;margin-top:.3em;letter-spacing:-.01em}
.lead{margin:0;font-size:clamp(17px,1.4vw,20px);line-height:1.5;max-width:56ch;color:rgba(251,241,222,.92)}
.ctas{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:6px}
.ctas .btn{padding:16px 30px;font-size:17px}
.hero .tlink:hover{color:var(--butter)}

/* ---- section 2: raspberry band ---- */
.band-butter{background:var(--butter);color:var(--choc)}
.band-cream{background:var(--cream);color:var(--choc)}
.s2{padding-block:120px;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:88px;align-items:center}
.s2 .s2-media{order:-1}
.s2-text{display:flex;flex-direction:column;gap:28px;min-width:0}
.s2 h2{margin:0;font-size:clamp(40px,4.8vw,68px);line-height:1.04;text-wrap:balance}
.s2 h2 .line2{display:block;margin-top:.16em;font-weight:700;color:var(--rasp)}
.s2 p{margin:0;font-size:19px;line-height:1.65;max-width:52ch}
.s2 p strong{color:var(--rasp)}
.s2-media{display:flex;flex-direction:column;align-items:center;gap:14px;justify-self:center;width:100%;max-width:400px}
.frame{width:100%;border:7px solid var(--choc);border-radius:26px;overflow:hidden;box-sizing:border-box;box-shadow:0 18px 40px rgba(74,42,30,.16)}
.clip{width:100%;aspect-ratio:4/5;overflow:hidden;background:var(--choc)}
.clip video{width:100%;height:100%;object-fit:cover;display:block}

/* ---- VHS strip ---- */
.strip{background:var(--butter);color:var(--choc);overflow:hidden;border-block:3px solid var(--choc)}
.strip::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(74,42,30,.09) 0 1px,transparent 1px 3px);pointer-events:none;z-index:1}
.strip .glitch{position:absolute;left:0;right:0;height:38%;top:-45%;background:linear-gradient(transparent,rgba(251,241,222,.7),transparent);animation:track 6s linear infinite;pointer-events:none;z-index:2}
@keyframes track{0%,64%{top:-45%}100%{top:120%}}
.strip .run{display:flex;gap:40px;white-space:nowrap;padding:18px 0;font-size:16px;font-weight:700;width:max-content;animation:run 50s linear infinite;text-shadow:2px 0 0 rgba(217,59,110,.5),-2px 0 0 rgba(110,180,205,.45)}
.strip .run span{display:flex;align-items:center;gap:40px}
.strip .run span::after{content:"▶";font-size:11px;color:var(--rasp)}
@keyframes run{to{transform:translateX(-50%)}}

/* ---- Jak to funguje ---- */
.jtf{padding-block:110px 120px;display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:80px;align-items:start}
.jtf-head{display:flex;flex-direction:column;gap:18px;position:sticky;top:40px}
.jtf .kick{font-size:13px;font-weight:700;color:var(--rasp)}
.jtf h2{margin:0;font-size:clamp(38px,4.2vw,56px);line-height:1.04;text-wrap:balance}
.jtf .more{align-self:flex-start;color:var(--choc);border-bottom-color:var(--rasp);margin-top:10px}
.steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.step{display:grid;grid-template-columns:88px minmax(0,1fr);gap:8px 28px;padding-block:30px;border-top:1.5px solid var(--choc)}
.step:last-child{border-bottom:1.5px solid var(--choc)}
.step .num{grid-row:span 2;font-family:var(--f-display);font-weight:900;font-variation-settings:'SOFT' 100,'WONK' 1,'opsz' 144;font-style:italic;font-size:64px;line-height:.85;color:var(--rasp)}
.step h3{margin:0;font-size:26px;line-height:1.1}
.step p{margin:0;font-size:17px;line-height:1.6;max-width:58ch}

/* ---- Nostalgie ---- */
.nst{padding-block:72px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:64px;align-items:center;max-width:1000px}
.sq{width:300px;max-width:100%;aspect-ratio:1/1;border:7px solid var(--choc);border-radius:26px;overflow:hidden;box-sizing:border-box;background:var(--choc);box-shadow:0 18px 40px rgba(74,42,30,.18);justify-self:center}
.sq video{width:100%;height:100%;object-fit:cover;display:block}
.nst-text{display:flex;flex-direction:column;gap:26px;min-width:0}
.nst .kick{font-size:13px;font-weight:700;color:var(--rasp);margin-bottom:-12px}
.nst h2{margin:0;font-size:clamp(38px,4.3vw,58px);line-height:1.05;display:flex;flex-wrap:wrap;gap:0 .26em}
.nst h2 .it{color:var(--rasp)}
.nst h2 .ul{align-self:baseline}
.nst p{margin:0;font-size:19px;line-height:1.65;max-width:52ch}

/* ---- Balíčky ---- */
.pk{padding-block:110px 120px;display:flex;flex-direction:column;gap:52px}
.pk-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px 48px;align-items:center}
.pk-head>div{display:flex;flex-direction:column;gap:16px;min-width:0}
.pk-sub{margin:0;font-size:19px;line-height:1.5;max-width:none}
@media (min-width:600px){.pk-sub{white-space:nowrap}}
.cut{position:relative;margin:-185px 0 0;width:400px;max-width:100%;transform:rotate(-7deg);z-index:2;display:flex;flex-direction:column;align-items:center;gap:6px}
.cut img{display:block;width:100%;height:auto;filter:drop-shadow(0 18px 18px rgba(74,42,30,.28))}
.cut .patch{position:absolute;left:44%;top:50%;width:9%;aspect-ratio:1;background:var(--butter);border-radius:2px;transform:translate(-50%,-50%) rotate(-2deg);display:flex;align-items:center;justify-content:center;box-shadow:0 1px 1px rgba(30,10,5,.35),0 2px 5px rgba(30,10,5,.3);outline:1.3px dashed var(--rasp);outline-offset:-3px}
.cut .patch span{font-family:var(--f-display);font-weight:900;font-size:8.5px;line-height:.82;color:var(--rasp);text-align:center}
.cut figcaption{font-size:10px;font-weight:700;color:var(--choc);opacity:.6;transform:rotate(7deg)}
.pk .kick{font-size:13px;font-weight:700;color:var(--rasp)}
.pk h2{margin:0;font-size:clamp(38px,4.4vw,60px);line-height:1.04;text-wrap:balance}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.card{position:relative;border:1.5px solid var(--choc);border-radius:24px;padding:32px 28px 28px;display:flex;flex-direction:column;gap:18px;min-width:0;background:rgba(255,252,245,.5)}
.card.pick{background:var(--butter);border-width:2px;box-shadow:0 18px 40px rgba(74,42,30,.14)}
.badge{position:absolute;top:-14px;right:22px;background:var(--rasp);color:var(--cream);font-family:var(--f-mono);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:7px 12px;border-radius:999px;transform:rotate(3deg)}
.card h3{margin:0;font-size:28px;line-height:1.05}
.card .claim{margin:-8px 0 0;font-family:var(--f-display);font-style:italic;font-variation-settings:'SOFT' 100,'WONK' 1,'opsz' 144;font-weight:600;font-size:19px;line-height:1.3;color:var(--rasp)}
.card .desc{margin:0;font-size:15.5px;line-height:1.6}
.inc{list-style:none;margin:0;padding:18px 0 0;border-top:1.5px solid var(--choc);display:flex;flex-direction:column;gap:9px;font-size:15px;line-height:1.45}
.inc li{display:grid;grid-template-columns:16px minmax(0,1fr);gap:8px}
.inc li::before{content:"+";font-family:var(--f-mono);font-weight:700;color:var(--rasp)}
.inc li.all{font-weight:700}
.price{margin-top:auto;display:flex;align-items:baseline;gap:8px;padding-top:10px}
.price small{font-size:15px}
.price b{font-family:var(--f-display);font-weight:900;font-size:40px;letter-spacing:-.02em;line-height:1}
.card .btn{width:100%;box-sizing:border-box;padding:14px 20px;font-size:16px}
.btn.ghost{background:transparent;color:var(--choc)!important;box-shadow:inset 0 0 0 1.5px var(--choc)}
.btn.ghost:hover{background:var(--choc);color:var(--cream)!important;box-shadow:none}
.pk-note{margin:0;font-size:15px;line-height:1.6;max-width:70ch}
.pk-note a{color:var(--choc);font-weight:700}

/* ---- O nás ---- */
.onas{padding-block:100px 92px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:96px;align-items:center;max-width:1040px}
.print-wrap{display:flex;flex-direction:column;align-items:center;gap:10px}
.print{position:relative;background:#FFFCF5;padding:10px 10px 38px;margin:0;width:280px;max-width:100%;box-sizing:border-box;transform:rotate(-3deg);box-shadow:0 2px 3px rgba(74,42,30,.15),0 20px 40px rgba(74,42,30,.2)}
.print img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
.print::before{content:"";position:absolute;top:-13px;left:50%;width:96px;height:26px;transform:translateX(-50%) rotate(4deg);background:var(--cream);opacity:.85;box-shadow:0 1px 2px rgba(74,42,30,.15)}
.onas .note{color:var(--rasp);transform:rotate(-4deg);margin-left:40px}
.onas-text{display:flex;flex-direction:column;gap:24px;min-width:0}
.onas .kick{font-size:13px;font-weight:700;color:var(--rasp)}
.onas h2{margin:0;font-size:clamp(36px,4.2vw,58px);line-height:1.06;text-wrap:balance}
.onas h2 .it{color:var(--rasp)}
.onas p{margin:0;font-size:18px;line-height:1.7;max-width:56ch}
.onas .brand{color:var(--rasp);font-size:1.12em;letter-spacing:-.01em;white-space:nowrap}
.onas .signoff{font-size:clamp(26px,2.6vw,34px);line-height:1.15;font-weight:700;padding-top:20px;border-top:1.5px solid var(--choc);max-width:none;align-self:flex-start;padding-right:8px}

/* ---- FAQ ---- */
.faq{padding-block:110px 120px;display:flex;flex-direction:column;gap:44px;max-width:880px}
.faq-head{display:flex;flex-direction:column;gap:14px}
.faq .kick,.date .kick{font-size:13px;font-weight:700;color:var(--rasp)}
.faq h2{margin:0;font-size:clamp(30px,3.2vw,42px);line-height:1.05;text-wrap:balance}
.qa{display:flex;flex-direction:column;border-top:1.5px solid var(--choc)}
.qa details{border-bottom:1.5px solid var(--choc)}
.qa summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 4px}
.qa summary::-webkit-details-marker{display:none}
.qa summary h3{margin:0;font-family:var(--f-display);font-weight:700;font-variation-settings:'SOFT' 100,'WONK' 0,'opsz' 144;font-size:21px;line-height:1.25;letter-spacing:-.01em}
.qa summary::after{content:"+";flex:none;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--f-mono);font-weight:700;font-size:20px;color:var(--cream);background:var(--rasp);transition:transform .2s}
.qa details[open] summary::after{transform:rotate(45deg)}
.qa summary:hover h3{color:var(--rasp)}
.qa summary:focus-visible{outline:3px solid var(--rasp);outline-offset:2px;border-radius:6px}
.qa p{margin:0;padding:0 60px 26px 4px;font-size:17px;line-height:1.65;max-width:64ch}
.faq .more{align-self:flex-start;color:var(--choc);border-bottom-color:var(--rasp)}

/* ---- Máte datum? ---- */
.date-band{position:relative;overflow:hidden;background:var(--choc)}
.date-band>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.date-band::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(40,20,14,.78),rgba(40,20,14,.45) 58%,rgba(40,20,14,.55));pointer-events:none}
.date-band .wrap{position:relative;z-index:1}
.date{padding-block:110px;display:grid;grid-template-columns:minmax(0,460px) auto;justify-content:center;gap:40px 72px;align-items:center}
.date-side{display:flex;flex-direction:column;gap:18px;min-width:0;color:var(--cream);text-shadow:0 2px 14px rgba(20,10,6,.5);justify-self:start;max-width:460px;order:-1}
.date-side .kick{color:var(--rasp);text-shadow:none}
.date-side h2{color:var(--butter)}
.date-side p{margin:0;font-size:19px;line-height:1.55;max-width:36ch}
.date-side .tags{margin-top:6px}
.date-side .big{margin:0;font-size:clamp(34px,4vw,56px);line-height:1.03;font-weight:900}
.date-side .big span{display:block;color:var(--butter);font-style:italic;font-variation-settings:'SOFT' 100,'WONK' 1,'opsz' 144}
.tags{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.tags li{font-family:var(--f-mono);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:var(--cream);color:var(--choc);padding:7px 12px;border-radius:999px;text-shadow:none}
.ticket{position:relative;isolation:isolate;background:var(--butter);border:2px solid var(--choc);border-radius:26px;padding:34px 32px 26px;width:420px;max-width:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:26px;box-shadow:0 30px 60px rgba(30,15,10,.35)}
.ticket::before{content:"";position:absolute;inset:0;border-radius:inherit;background-image:var(--noise);background-size:220px;opacity:.22;mix-blend-mode:multiply;pointer-events:none;z-index:-1}
.date-head{display:flex;flex-direction:column;gap:16px;min-width:0}
.date h2{margin:0;font-size:clamp(36px,4vw,54px);line-height:1}
.date-head p{margin:0;font-size:18px;line-height:1.55;max-width:36ch}
.date form{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;min-width:0}
.field{display:flex;flex-direction:column;gap:8px;min-width:0}
.field label{font-family:var(--f-mono);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.field input{font:inherit;font-size:17px;color:var(--choc);background:var(--cream);border:1.5px solid var(--choc);border-radius:14px;padding:15px 16px;min-width:0;width:100%;box-sizing:border-box}
.field input:focus{outline:3px solid var(--rasp);outline-offset:1px}
.date form .btn{grid-column:1/-1;padding:17px 30px;font-size:17px;border:0;cursor:pointer;font-family:inherit}
.date .fine{grid-column:1/-1;margin:0;font-size:14px;line-height:1.5}
.date .fine:empty{display:none}

/* ---- footer ---- */
.foot{background:var(--cream);color:var(--choc);border-top:3px solid var(--choc)}
.foot .inner{padding-block:72px 28px;display:grid;grid-template-columns:minmax(0,6fr) minmax(0,3fr) minmax(0,3fr);gap:40px 56px;align-items:start}
.foot .lead-col{display:flex;flex-direction:column;gap:20px;min-width:0}
.foot .lead-col .claim-foot{margin:0;opacity:1;font-size:clamp(30px,3.4vw,46px);line-height:1.08;font-weight:700;color:var(--rasp);text-wrap:balance;max-width:16ch}
.foot .lead-col p{margin:0;font-size:16.5px;line-height:1.6;max-width:44ch;opacity:.9}
.foot .lead-col .btn{align-self:flex-start;padding:14px 26px;font-size:16px;margin-top:6px}
.foot .col{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:0;gap:12px;font-size:15px;min-width:0}
.foot .col b{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--rasp);margin-bottom:4px}
.foot a{color:var(--choc);text-decoration:none}
.foot .col a{align-self:flex-start;border-bottom:1px solid rgba(74,42,30,.35);padding-bottom:2px}
.foot a:hover{color:var(--rasp)}
.foot .col a:hover{border-bottom-color:var(--rasp)}
.foot .lead-col .btn{color:var(--cream)!important}
.foot .base{grid-column:1/-1;margin-top:28px;border-top:1px solid rgba(74,42,30,.25);padding-top:18px;display:flex;justify-content:space-between;align-items:center;gap:8px 16px;flex-wrap:wrap;font-size:13px}
.foot .base .logo{font-size:18px;line-height:1;opacity:1}
.foot .base span{opacity:.75}

/* ---- sticky bar ---- */
.bar{position:fixed;top:0;left:0;right:0;z-index:40;background:var(--choc);color:var(--cream);isolation:isolate;padding-top:env(safe-area-inset-top,0px);transform:translateY(-110%);transition:transform .3s ease}
.bar.show{transform:none}
section[id]{scroll-margin-top:90px}
html{scroll-behavior:smooth}
.bar .in{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:5px}
.bar::before{content:"";position:absolute;inset:0;background-image:var(--noise);background-size:220px;opacity:.5;mix-blend-mode:soft-light;pointer-events:none;z-index:-1}
.bar .logo{color:var(--cream);font-size:16px;line-height:1;white-space:nowrap}
.bar .links{display:flex;align-items:center;gap:26px;font-size:15px}
.bar .links a:not(.btn){color:var(--cream);text-decoration:none}
.bar .links a:not(.btn):hover{color:var(--butter)}
.bar .btn{padding:7px 15px;font-size:13.5px}
.onas-btn{align-self:flex-start;padding:15px 28px;font-size:16px;margin-top:4px}


@media (max-width:1080px){.steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:48px}.step:nth-child(3){border-left:0;padding-left:0}.step:nth-child(2){padding-right:0}}
@media (max-width:600px){.steps{grid-template-columns:minmax(0,1fr);row-gap:36px}.step{border-left:0;padding:0}}
@media (max-width:980px){.cards{grid-template-columns:minmax(0,1fr);max-width:520px}}
@media (max-width:860px){
  .pk{padding-block:80px;gap:40px}
  .faq{padding-block:80px;gap:32px}
  .qa p{padding-right:4px}
  .date{padding-block:64px;grid-template-columns:minmax(0,1fr)}
  .date-side{justify-self:start}
  .ticket{padding:28px 22px 24px}
  .date form{grid-template-columns:minmax(0,1fr)}
  .foot .inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px 28px;padding-block:56px 24px}
  .foot .lead-col{grid-column:1/-1}
  .pk-head{grid-template-columns:minmax(0,1fr)}
  .cut{margin:0 auto;width:280px}
  .menu a:not(.btn){display:none}
  .bar .links a:not(.btn){display:none}
  .hero>.rec{display:none}
  .s2{grid-template-columns:minmax(0,1fr);gap:48px;padding-block:80px}
  .s2-media{max-width:360px}
  .jtf{grid-template-columns:minmax(0,1fr);gap:40px;padding-block:80px}
  .jtf-head{position:static}
  .step{grid-template-columns:56px minmax(0,1fr);gap:6px 18px}
  .step .num{font-size:44px}
  .nst{grid-template-columns:minmax(0,1fr);gap:36px;padding-block:56px}
  .sq{width:300px}
  .onas{grid-template-columns:minmax(0,1fr);gap:48px;padding-block:96px 80px}
  .onas .print-wrap{order:-1}
  .print{width:230px}
}
@media (prefers-reduced-motion:reduce){
  .bar{transition:none}
  .mark use{animation:none;stroke-dashoffset:0}
  .rec b::before,.strip .run,.strip .glitch{animation:none}
  .btn{transition:none}
}

.kit-shot{position:relative;margin:10px 0 0;max-width:560px;border:7px solid var(--choc);border-radius:22px;overflow:hidden;aspect-ratio:4/3;background:var(--choc)}
.kit-shot img{display:block;width:100%;height:100%;object-fit:cover}
.kit-shot .tag{position:absolute;left:12px;bottom:12px;background:var(--cream);color:var(--choc);font-size:11px;font-weight:700;padding:6px 10px;border-radius:999px}

:root{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
body{margin:0;font-size:16px}img{max-width:100%}[hidden]{display:none!important}
/* ---- page head ---- */
.ph{padding-block:110px 56px;display:flex;flex-direction:column;gap:20px}
.crumbs{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;display:flex;justify-content:flex-start;padding:0;gap:10px;align-items:center;color:var(--choc)}
.crumbs a{color:var(--choc);text-decoration:none;border-bottom:1px solid rgba(74,42,30,.35)}
.crumbs a:hover{color:var(--rasp);border-color:var(--rasp)}
.crumbs span{opacity:.6}
.ph h1{margin:0;font-size:clamp(42px,5.4vw,76px);line-height:1;text-wrap:balance}
.ph h1 .it{color:var(--rasp)}
.facts{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 0;font-size:15px}
.facts li{display:flex;align-items:baseline;gap:8px;padding-right:20px;margin-right:20px;border-right:1.5px solid rgba(74,42,30,.3)}
.facts li:last-child{border-right:0}
.facts b{font-family:var(--f-mono);font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--rasp)}
/* ---- phases ---- */
.phase-band{padding-block:80px;display:grid;grid-template-columns:minmax(0,3fr) minmax(0,8fr);gap:64px;align-items:start}
.ph-title{position:sticky;top:84px;display:flex;flex-direction:column;gap:10px}
.ph-range{font-size:12px;font-weight:700;color:var(--rasp)}
.ph-title h2{margin:0;font-size:clamp(36px,3.6vw,52px);line-height:1}
.steps2{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border-top:1.5px solid var(--choc)}
.st{display:grid;grid-template-columns:76px minmax(0,1fr);gap:10px 26px;padding-block:28px;border-bottom:1.5px solid var(--choc)}
.st:last-child{border-bottom:0}
.st .num{grid-row:span 3;font-family:var(--f-display);font-weight:900;font-style:italic;font-variation-settings:'SOFT' 100,'WONK' 1,'opsz' 144;font-size:58px;line-height:.85;color:var(--rasp)}
.st h3{margin:0;font-family:var(--f-display);font-size:26px;line-height:1.1}
.st p{margin:0;font-size:17px;line-height:1.65;max-width:60ch}
.kit{list-style:none;margin:2px 0 0;padding:0;display:flex;flex-direction:column;max-width:60ch;font-size:17px;line-height:1.5}
.kit li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:6px;padding-block:9px;border-bottom:1px dashed rgba(74,42,30,.35)}
.kit li:first-child{padding-top:2px}
.kit li::before{content:"+";font-family:var(--f-mono);font-weight:700;color:var(--rasp)}
.st .note2{font-size:15px;opacity:.85;margin-top:4px}
.band-butter .steps2{border-top-color:var(--choc)}
.faq2{max-width:880px}
.more-q{padding-block:56px 72px}
.more-q p{margin:0;font-size:18px;line-height:1.7;max-width:62ch}
.more-q .tlink{border-bottom-color:var(--rasp);color:var(--choc)}
@media (max-width:860px){
  .ph{padding-block:96px 40px}
  .facts{flex-direction:column;gap:6px}
  .facts li{border-right:0;padding-right:0;margin-right:0}
  .phase-band{grid-template-columns:minmax(0,1fr);gap:20px;padding-block:56px}
  .ph-title{position:static}
  .st{grid-template-columns:48px minmax(0,1fr);gap:6px 14px}
  .st .num{font-size:40px}
}

.faq-list{padding-block:0 24px}
.faq-list .qa{max-width:880px}
.qa summary h2{margin:0;font-family:var(--f-display);font-weight:700;font-variation-settings:'SOFT' 100,'WONK' 0,'opsz' 144;font-size:21px;line-height:1.25;letter-spacing:-.01em}
.qa summary:hover h2{color:var(--rasp)}
.faq-cat{padding-block:72px;display:grid;grid-template-columns:minmax(0,3fr) minmax(0,8fr);gap:64px;align-items:start}
.faq-cat .qa{border-top:1.5px solid var(--choc)}
.band-butter .qa summary::after{background:var(--rasp)}
.cats{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 0;font-family:var(--f-mono);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.cats li{padding-right:18px;margin-right:18px;border-right:1.5px solid rgba(74,42,30,.3)}
.cats li:last-child{border-right:0}
.cats a{color:var(--rasp);text-decoration:none}
.cats a:hover{text-decoration:underline}
.faq-cat{scroll-margin-top:60px}
.more-q{padding-block:40px 80px}
.more-q p{margin:0;font-size:18px;line-height:1.7;max-width:62ch}
.more-q .tlink{border-bottom-color:var(--rasp);color:var(--choc)}
@media (max-width:860px){.faq-cat{grid-template-columns:minmax(0,1fr);gap:20px;padding-block:52px}.cats{flex-direction:column;gap:6px}.cats li{border-right:0}}

:root{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
body{margin:0;font-size:16px}img{max-width:100%}[hidden]{display:none!important}
/* ---- page head ---- */
.ph{padding-block:110px 56px;display:flex;flex-direction:column;gap:20px}
.crumbs{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;display:flex;justify-content:flex-start;padding:0;gap:10px;align-items:center;color:var(--choc)}
.crumbs a{color:var(--choc);text-decoration:none;border-bottom:1px solid rgba(74,42,30,.35)}
.crumbs a:hover{color:var(--rasp);border-color:var(--rasp)}
.crumbs span{opacity:.6}
.ph h1{margin:0;font-size:clamp(42px,5.4vw,76px);line-height:1;text-wrap:balance}
.ph h1 .it{color:var(--rasp)}
.facts{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 0;font-size:15px}
.facts li{display:flex;align-items:baseline;gap:8px;padding-right:20px;margin-right:20px;border-right:1.5px solid rgba(74,42,30,.3)}
.facts li:last-child{border-right:0}
.facts b{font-family:var(--f-mono);font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--rasp)}
/* ---- phases ---- */
.phase-band{padding-block:80px;display:grid;grid-template-columns:minmax(0,3fr) minmax(0,8fr);gap:64px;align-items:start}
.ph-title{position:sticky;top:84px;display:flex;flex-direction:column;gap:10px}
.ph-range{font-size:12px;font-weight:700;color:var(--rasp)}
.ph-title h2{margin:0;font-size:clamp(36px,3.6vw,52px);line-height:1}
.steps2{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border-top:1.5px solid var(--choc)}
.st{display:grid;grid-template-columns:76px minmax(0,1fr);gap:10px 26px;padding-block:28px;border-bottom:1.5px solid var(--choc)}
.st:last-child{border-bottom:0}
.st .num{grid-row:span 3;font-family:var(--f-display);font-weight:900;font-style:italic;font-variation-settings:'SOFT' 100,'WONK' 1,'opsz' 144;font-size:58px;line-height:.85;color:var(--rasp)}
.st h3{margin:0;font-family:var(--f-display);font-size:26px;line-height:1.1}
.st p{margin:0;font-size:17px;line-height:1.65;max-width:60ch}
.kit{list-style:none;margin:4px 0 0;padding:20px 22px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 28px;background:var(--butter);border:1.5px solid var(--choc);border-radius:18px;font-size:15.5px;line-height:1.45;position:relative;isolation:isolate}
.kit::before{content:"";position:absolute;inset:0;border-radius:inherit;background-image:var(--noise);background-size:220px;opacity:.2;mix-blend-mode:multiply;z-index:-1}
.kit li{display:grid;grid-template-columns:16px minmax(0,1fr);gap:8px}
.kit li::before{content:"+";font-family:var(--f-mono);font-weight:700;color:var(--rasp)}
.st .note2{font-size:15px;opacity:.85}
.band-butter .steps2{border-top-color:var(--choc)}
.faq2{max-width:880px}
@media (max-width:860px){
  .ph{padding-block:96px 40px}
  .facts{flex-direction:column;gap:6px}
  .facts li{border-right:0;padding-right:0;margin-right:0}
  .phase-band{grid-template-columns:minmax(0,1fr);gap:20px;padding-block:56px}
  .ph-title{position:static}
  .st{grid-template-columns:48px minmax(0,1fr);gap:6px 14px}
  .st .num{font-size:40px}
  .kit{grid-template-columns:minmax(0,1fr)}
}

body.form-page{min-height:100vh;min-height:100svh;display:flex;flex-direction:column}
.fill{flex:1 0 auto;display:flex;flex-direction:column;justify-content:center;padding-top:56px}
.fill>section{width:100%;box-sizing:border-box;padding-block:56px 64px}
.foot-mini{flex:none}

.foot-mini{border-top:1px solid rgba(74,42,30,.25)}
.foot-mini .inner{padding-block:20px 22px;display:flex;justify-content:center;align-items:center;gap:8px 24px;flex-wrap:wrap;font-size:13px}
.foot-mini span{opacity:.8}
.foot-mini .legal{display:flex;gap:18px;opacity:1}
.foot-mini a{color:var(--choc);text-decoration:none;border-bottom:1px solid rgba(74,42,30,.3)}
.foot-mini a:hover{color:var(--rasp);border-color:var(--rasp)}

.kt{padding-block:110px 80px;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:48px 80px;align-items:center}
.kt-text{display:flex;flex-direction:column;gap:20px;min-width:0}
.kt h1{margin:0;font-size:clamp(44px,5.4vw,76px);line-height:1}
.kt h1 .it{color:var(--rasp)}
.kt-text p{margin:0;font-size:19px;line-height:1.6;max-width:40ch}
.kt-text .aside{font-size:16px;padding-top:18px;border-top:1.5px solid rgba(74,42,30,.25)}
.kt-text .aside a{color:var(--choc);font-weight:700;border-bottom:2px solid var(--rasp);text-decoration:none}
.kform{position:relative;isolation:isolate;background:var(--butter);border:2px solid var(--choc);border-radius:26px;padding:32px 32px 26px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;box-shadow:0 18px 40px rgba(74,42,30,.14)}
.kform::before{content:"";position:absolute;inset:0;border-radius:inherit;background-image:var(--noise);background-size:220px;opacity:.22;mix-blend-mode:multiply;pointer-events:none;z-index:-1}
.kform .full{grid-column:1/-1}
.kform .field label small{font-weight:400;text-transform:none;letter-spacing:0;opacity:.7}
.kform input[type=text],.kform input[type=email],.kform input[type=date],.kform select,.kform textarea{font:inherit;font-size:17px;color:var(--choc);background:var(--cream);border:1.5px solid var(--choc);border-radius:14px;padding:14px 16px;width:100%;box-sizing:border-box;min-width:0}
.kform textarea{min-height:140px;resize:vertical;line-height:1.5}
.kform select:focus,.kform textarea:focus,.kform input:focus{outline:3px solid var(--rasp);outline-offset:1px}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;line-height:1.5}
.consent input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--rasp);flex:none}
.consent a{color:var(--choc);font-weight:700}
.kform .btn{border:0;cursor:pointer;font-family:inherit;padding:16px 28px;font-size:17px}
.kform .fine{margin:0;font-size:14px;line-height:1.5}
.kform .fine:empty{display:none}
.kform .fine.ok{font-weight:700}
@media (max-width:860px){.kt{grid-template-columns:minmax(0,1fr);padding-block:96px 64px}.kform{grid-template-columns:minmax(0,1fr);padding:24px 20px}}

/* Layout: clean video hero → raspberry band with portrait video → straight VHS strip → grainy cream "O nás" with a small taped print → notes + phone */
/* Palette A "Kazeta": cream, raspberry, butter, chocolate (text) */
:root{
  --cream:#FBF1DE; --rasp:#D93B6E; --butter:#F5D978; --choc:#4A2A1E;
  --f-display:'Fraunces',Georgia,serif; --f-body:'DM Sans',system-ui,sans-serif; --f-mono:'Space Mono',ui-monospace,monospace; --f-hand:'Caveat','Comic Sans MS',cursive;
  --noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .6 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  color-scheme:light;
}
body{background:var(--cream);color:var(--choc);font-family:var(--f-body);font-size:16px;overflow-x:hidden}
.d{font-family:var(--f-display);font-weight:900;font-variation-settings:'SOFT' 100,'WONK' 0,'opsz' 144;letter-spacing:-.02em}
.m{font-family:var(--f-mono);letter-spacing:.08em;text-transform:uppercase}
.it{font-style:italic;font-variation-settings:'SOFT' 100,'WONK' 1,'opsz' 144}
.wrap{padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px))}
.inner{max-width:1200px;margin:0 auto}

/* film grain on coloured backgrounds */
.grain{position:relative;isolation:isolate}
.grain::before{content:"";position:absolute;inset:0;background-image:var(--noise);background-size:220px;opacity:.13;mix-blend-mode:multiply;pointer-events:none;z-index:-1}
.grain.on-dark::before{opacity:.32}

/* hand-drawn marks */
.ul{position:relative;display:inline-block;white-space:nowrap;z-index:0}
.ul svg{position:absolute;pointer-events:none;overflow:visible;left:-3%;bottom:-.34em;width:106%;height:.42em}
.ul use{stroke:var(--rasp);stroke-width:1.9;vector-effect:non-scaling-stroke;filter:none}
.ul .l2{animation-delay:.95s;animation-duration:.55s}
.mark use{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:draw .7s .25s cubic-bezier(.4,0,.6,1) forwards;animation-play-state:paused}
.mark.in use{animation-play-state:running}
html:not(.js) .mark use{animation:none;stroke-dashoffset:0}
@keyframes draw{to{stroke-dashoffset:0}}
.note{font-family:var(--f-hand);font-weight:700;font-size:30px;line-height:1;display:flex;align-items:flex-end;gap:6px}
.note svg{width:54px;height:44px;flex:none}
.note use{fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}

/* buttons/links */
.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--rasp);color:var(--cream)!important;font-weight:700;text-decoration:none;border-radius:999px;padding:12px 22px;font-size:15px;transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-1px);box-shadow:0 3px 0 var(--choc)}
a:focus-visible{outline:3px solid var(--rasp);outline-offset:3px}
.tlink{font-weight:700;text-decoration:none;border-bottom:2px solid var(--butter);padding-bottom:2px;color:inherit}

/* ---- hero ---- */
.hero{position:relative;overflow:hidden;background:var(--choc);color:var(--cream);height:clamp(560px,92vh,940px);display:flex;flex-direction:column}
.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(40,20,14,.55) 0%,rgba(40,20,14,0) 28%,rgba(40,20,14,.1) 50%,rgba(40,20,14,.84) 100%);pointer-events:none}
.hero>*:not(video){position:relative;z-index:1}
nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:14px}
.logo{font-size:20px;line-height:1;color:var(--cream);text-decoration:none;white-space:nowrap}
.menu{display:flex;align-items:center;gap:26px;font-size:15px}
.menu .btn{padding:9px 18px;font-size:14px}
.menu a{color:var(--cream);text-decoration:none}
.menu a:not(.btn):hover{color:var(--butter)}
.rec{position:absolute;top:72px;right:max(24px,env(safe-area-inset-right,0px));display:flex;flex-direction:column;align-items:flex-end;gap:6px;font-size:13px;color:var(--cream);text-shadow:0 1px 2px rgba(0,0,0,.6);z-index:1}
.rec b{display:flex;align-items:center;gap:8px}
.rec b::before{content:"";width:10px;height:10px;border-radius:50%;background:#ff3b3b;animation:blink 1.2s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.copy{margin-top:auto;padding-block:0 64px;display:flex;flex-direction:column;gap:18px;max-width:820px}
.kicker{font-size:13px;font-weight:700;color:var(--butter)}
.hero h1{margin:0;font-size:clamp(44px,6.4vw,92px);line-height:.98;text-wrap:balance}
.hero h1 .sub{display:block;color:var(--butter);font-weight:600;font-size:.52em;line-height:1.1;margin-top:.3em;letter-spacing:-.01em}
.lead{margin:0;font-size:clamp(17px,1.4vw,20px);line-height:1.5;max-width:56ch;color:rgba(251,241,222,.92)}
.ctas{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:6px}
.ctas .btn{padding:16px 30px;font-size:17px}
.hero .tlink:hover{color:var(--butter)}

/* ---- section 2: raspberry band ---- */
.band-butter{background:var(--butter);color:var(--choc)}
.band-cream{background:var(--cream);color:var(--choc)}
.s2{padding-block:120px;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:88px;align-items:center}
.s2 .s2-media{order:-1}
.s2-text{display:flex;flex-direction:column;gap:28px;min-width:0}
.s2 h2{margin:0;font-size:clamp(40px,4.8vw,68px);line-height:1.04;text-wrap:balance}
.s2 h2 .line2{display:block;margin-top:.16em;font-weight:700;color:var(--rasp)}
.s2 p{margin:0;font-size:19px;line-height:1.65;max-width:52ch}
.s2 p strong{color:var(--rasp)}
.s2-media{display:flex;flex-direction:column;align-items:center;gap:14px;justify-self:center;width:100%;max-width:400px}
.frame{width:100%;border:7px solid var(--choc);border-radius:26px;overflow:hidden;box-sizing:border-box;box-shadow:0 18px 40px rgba(74,42,30,.16)}
.clip{width:100%;aspect-ratio:4/5;overflow:hidden;background:var(--choc)}
.clip video{width:100%;height:100%;object-fit:cover;display:block}

/* ---- VHS strip ---- */
.strip{background:var(--butter);color:var(--choc);overflow:hidden;border-block:3px solid var(--choc)}
.strip::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(74,42,30,.09) 0 1px,transparent 1px 3px);pointer-events:none;z-index:1}
.strip .glitch{position:absolute;left:0;right:0;height:38%;top:-45%;background:linear-gradient(transparent,rgba(251,241,222,.7),transparent);animation:track 6s linear infinite;pointer-events:none;z-index:2}
@keyframes track{0%,64%{top:-45%}100%{top:120%}}
.strip .run{display:flex;gap:40px;white-space:nowrap;padding:18px 0;font-size:16px;font-weight:700;width:max-content;animation:run 50s linear infinite;text-shadow:2px 0 0 rgba(217,59,110,.5),-2px 0 0 rgba(110,180,205,.45)}
.strip .run span{display:flex;align-items:center;gap:40px}
.strip .run span::after{content:"▶";font-size:11px;color:var(--rasp)}
@keyframes run{to{transform:translateX(-50%)}}

/* ---- Jak to funguje ---- */
.jtf{padding-block:110px 120px;display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:80px;align-items:start}
.jtf-head{display:flex;flex-direction:column;gap:18px;position:sticky;top:40px}
.jtf .kick{font-size:13px;font-weight:700;color:var(--rasp)}
.jtf h2{margin:0;font-size:clamp(38px,4.2vw,56px);line-height:1.04;text-wrap:balance}
.jtf .more{align-self:flex-start;color:var(--choc);border-bottom-color:var(--rasp);margin-top:10px}
.steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.step{display:grid;grid-template-columns:88px minmax(0,1fr);gap:8px 28px;padding-block:30px;border-top:1.5px solid var(--choc)}
.step:last-child{border-bottom:1.5px solid var(--choc)}
.step .num{grid-row:span 2;font-family:var(--f-display);font-weight:900;font-variation-settings:'SOFT' 100,'WONK' 1,'opsz' 144;font-style:italic;font-size:64px;line-height:.85;color:var(--rasp)}
.step h3{margin:0;font-size:26px;line-height:1.1}
.step p{margin:0;font-size:17px;line-height:1.6;max-width:58ch}

/* ---- Nostalgie ---- */
.nst{padding-block:72px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:64px;align-items:center;max-width:1000px}
.sq{width:300px;max-width:100%;aspect-ratio:1/1;border:7px solid var(--choc);border-radius:26px;overflow:hidden;box-sizing:border-box;background:var(--choc);box-shadow:0 18px 40px rgba(74,42,30,.18);justify-self:center}
.sq video{width:100%;height:100%;object-fit:cover;display:block}
.nst-text{display:flex;flex-direction:column;gap:26px;min-width:0}
.nst .kick{font-size:13px;font-weight:700;color:var(--rasp);margin-bottom:-12px}
.nst h2{margin:0;font-size:clamp(38px,4.3vw,58px);line-height:1.05;display:flex;flex-wrap:wrap;gap:0 .26em}
.nst h2 .it{color:var(--rasp)}
.nst h2 .ul{align-self:baseline}
.nst p{margin:0;font-size:19px;line-height:1.65;max-width:52ch}

/* ---- Balíčky ---- */
.pk{padding-block:110px 120px;display:flex;flex-direction:column;gap:52px}
.pk-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px 48px;align-items:center}
.pk-head>div{display:flex;flex-direction:column;gap:16px;min-width:0}
.pk-sub{margin:0;font-size:19px;line-height:1.5;max-width:none}
@media (min-width:600px){.pk-sub{white-space:nowrap}}
.cut{position:relative;margin:-185px 0 0;width:400px;max-width:100%;transform:rotate(-7deg);z-index:2;display:flex;flex-direction:column;align-items:center;gap:6px}
.cut img{display:block;width:100%;height:auto;filter:drop-shadow(0 18px 18px rgba(74,42,30,.28))}
.cut .patch{position:absolute;left:44%;top:50%;width:9%;aspect-ratio:1;background:var(--butter);border-radius:2px;transform:translate(-50%,-50%) rotate(-2deg);display:flex;align-items:center;justify-content:center;box-shadow:0 1px 1px rgba(30,10,5,.35),0 2px 5px rgba(30,10,5,.3);outline:1.3px dashed var(--rasp);outline-offset:-3px}
.cut .patch span{font-family:var(--f-display);font-weight:900;font-size:8.5px;line-height:.82;color:var(--rasp);text-align:center}
.cut figcaption{font-size:10px;font-weight:700;color:var(--choc);opacity:.6;transform:rotate(7deg)}
.pk .kick{font-size:13px;font-weight:700;color:var(--rasp)}
.pk h2{margin:0;font-size:clamp(38px,4.4vw,60px);line-height:1.04;text-wrap:balance}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.card{position:relative;border:1.5px solid var(--choc);border-radius:24px;padding:32px 28px 28px;display:flex;flex-direction:column;gap:18px;min-width:0;background:rgba(255,252,245,.5)}
.card.pick{background:var(--butter);border-width:2px;box-shadow:0 18px 40px rgba(74,42,30,.14)}
.badge{position:absolute;top:-14px;right:22px;background:var(--rasp);color:var(--cream);font-family:var(--f-mono);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:7px 12px;border-radius:999px;transform:rotate(3deg)}
.card h3{margin:0;font-size:28px;line-height:1.05}
.card .claim{margin:-8px 0 0;font-family:var(--f-display);font-style:italic;font-variation-settings:'SOFT' 100,'WONK' 1,'opsz' 144;font-weight:600;font-size:19px;line-height:1.3;color:var(--rasp)}
.card .desc{margin:0;font-size:15.5px;line-height:1.6}
.inc{list-style:none;margin:0;padding:18px 0 0;border-top:1.5px solid var(--choc);display:flex;flex-direction:column;gap:9px;font-size:15px;line-height:1.45}
.inc li{display:grid;grid-template-columns:16px minmax(0,1fr);gap:8px}
.inc li::before{content:"+";font-family:var(--f-mono);font-weight:700;color:var(--rasp)}
.inc li.all{font-weight:700}
.price{margin-top:auto;display:flex;align-items:baseline;gap:8px;padding-top:10px}
.price small{font-size:15px}
.price b{font-family:var(--f-display);font-weight:900;font-size:40px;letter-spacing:-.02em;line-height:1}
.card .btn{width:100%;box-sizing:border-box;padding:14px 20px;font-size:16px}
.btn.ghost{background:transparent;color:var(--choc)!important;box-shadow:inset 0 0 0 1.5px var(--choc)}
.btn.ghost:hover{background:var(--choc);color:var(--cream)!important;box-shadow:none}
.pk-note{margin:0;font-size:15px;line-height:1.6;max-width:70ch}
.pk-note a{color:var(--choc);font-weight:700}

/* ---- O nás ---- */
.onas{padding-block:100px 92px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:96px;align-items:center;max-width:1040px}
.print-wrap{display:flex;flex-direction:column;align-items:center;gap:10px}
.print{position:relative;background:#FFFCF5;padding:10px 10px 38px;margin:0;width:280px;max-width:100%;box-sizing:border-box;transform:rotate(-3deg);box-shadow:0 2px 3px rgba(74,42,30,.15),0 20px 40px rgba(74,42,30,.2)}
.print img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
.print::before{content:"";position:absolute;top:-13px;left:50%;width:96px;height:26px;transform:translateX(-50%) rotate(4deg);background:var(--cream);opacity:.85;box-shadow:0 1px 2px rgba(74,42,30,.15)}
.onas .note{color:var(--rasp);transform:rotate(-4deg);margin-left:40px}
.onas-text{display:flex;flex-direction:column;gap:24px;min-width:0}
.onas .kick{font-size:13px;font-weight:700;color:var(--rasp)}
.onas h2{margin:0;font-size:clamp(36px,4.2vw,58px);line-height:1.06;text-wrap:balance}
.onas h2 .it{color:var(--rasp)}
.onas p{margin:0;font-size:18px;line-height:1.7;max-width:56ch}
.onas .brand{color:var(--rasp);font-size:1.12em;letter-spacing:-.01em;white-space:nowrap}
.onas .signoff{font-size:clamp(26px,2.6vw,34px);line-height:1.15;font-weight:700;padding-top:20px;border-top:1.5px solid var(--choc);max-width:none;align-self:flex-start;padding-right:8px}

/* ---- FAQ ---- */
.faq{padding-block:110px 120px;display:flex;flex-direction:column;gap:44px;max-width:880px}
.faq-head{display:flex;flex-direction:column;gap:14px}
.faq .kick,.date .kick{font-size:13px;font-weight:700;color:var(--rasp)}
.faq h2{margin:0;font-size:clamp(30px,3.2vw,42px);line-height:1.05;text-wrap:balance}
.qa{display:flex;flex-direction:column;border-top:1.5px solid var(--choc)}
.qa details{border-bottom:1.5px solid var(--choc)}
.qa summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 4px}
.qa summary::-webkit-details-marker{display:none}
.qa summary h3{margin:0;font-family:var(--f-display);font-weight:700;font-variation-settings:'SOFT' 100,'WONK' 0,'opsz' 144;font-size:21px;line-height:1.25;letter-spacing:-.01em}
.qa summary::after{content:"+";flex:none;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--f-mono);font-weight:700;font-size:20px;color:var(--cream);background:var(--rasp);transition:transform .2s}
.qa details[open] summary::after{transform:rotate(45deg)}
.qa summary:hover h3{color:var(--rasp)}
.qa summary:focus-visible{outline:3px solid var(--rasp);outline-offset:2px;border-radius:6px}
.qa p{margin:0;padding:0 60px 26px 4px;font-size:17px;line-height:1.65;max-width:64ch}
.faq .more{align-self:flex-start;color:var(--choc);border-bottom-color:var(--rasp)}

/* ---- Máte datum? ---- */
.date-band{position:relative;overflow:hidden;background:var(--choc)}
.date-band>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.date-band::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(40,20,14,.78),rgba(40,20,14,.45) 58%,rgba(40,20,14,.55));pointer-events:none}
.date-band .wrap{position:relative;z-index:1}
.date{padding-block:110px;display:grid;grid-template-columns:minmax(0,460px) auto;justify-content:center;gap:40px 72px;align-items:center}
.date-side{display:flex;flex-direction:column;gap:18px;min-width:0;color:var(--cream);text-shadow:0 2px 14px rgba(20,10,6,.5);justify-self:start;max-width:460px;order:-1}
.date-side .kick{color:var(--rasp);text-shadow:none}
.date-side h2{color:var(--butter)}
.date-side p{margin:0;font-size:19px;line-height:1.55;max-width:36ch}
.date-side .tags{margin-top:6px}
.date-side .big{margin:0;font-size:clamp(34px,4vw,56px);line-height:1.03;font-weight:900}
.date-side .big span{display:block;color:var(--butter);font-style:italic;font-variation-settings:'SOFT' 100,'WONK' 1,'opsz' 144}
.tags{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.tags li{font-family:var(--f-mono);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:var(--cream);color:var(--choc);padding:7px 12px;border-radius:999px;text-shadow:none}
.ticket{position:relative;isolation:isolate;background:var(--butter);border:2px solid var(--choc);border-radius:26px;padding:34px 32px 26px;width:420px;max-width:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:26px;box-shadow:0 30px 60px rgba(30,15,10,.35)}
.ticket::before{content:"";position:absolute;inset:0;border-radius:inherit;background-image:var(--noise);background-size:220px;opacity:.22;mix-blend-mode:multiply;pointer-events:none;z-index:-1}
.date-head{display:flex;flex-direction:column;gap:16px;min-width:0}
.date h2{margin:0;font-size:clamp(36px,4vw,54px);line-height:1}
.date-head p{margin:0;font-size:18px;line-height:1.55;max-width:36ch}
.date form{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;min-width:0}
.field{display:flex;flex-direction:column;gap:8px;min-width:0}
.field label{font-family:var(--f-mono);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.field input{font:inherit;font-size:17px;color:var(--choc);background:var(--cream);border:1.5px solid var(--choc);border-radius:14px;padding:15px 16px;min-width:0;width:100%;box-sizing:border-box}
.field input:focus{outline:3px solid var(--rasp);outline-offset:1px}
.date form .btn{grid-column:1/-1;padding:17px 30px;font-size:17px;border:0;cursor:pointer;font-family:inherit}
.date .fine{grid-column:1/-1;margin:0;font-size:14px;line-height:1.5}
.date .fine:empty{display:none}

/* ---- footer ---- */
.foot{background:var(--cream);color:var(--choc);border-top:3px solid var(--choc)}
.foot .inner{padding-block:56px 28px;display:grid;grid-template-columns:auto auto 1fr;gap:40px 56px;align-items:start}
.foot .lead-col{display:flex;flex-direction:column;gap:20px;min-width:0}
.foot .lead-col .claim-foot{margin:0;opacity:1;font-size:clamp(30px,3.4vw,46px);line-height:1.08;font-weight:700;color:var(--rasp);text-wrap:balance;max-width:16ch}
.foot .lead-col p{margin:0;font-size:16.5px;line-height:1.6;max-width:44ch;opacity:.9}
.foot .lead-col .btn{align-self:flex-start;padding:14px 26px;font-size:16px;margin-top:6px}
.foot .col{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:0;gap:12px;font-size:15px;min-width:0}
.foot .col b{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--rasp);margin-bottom:4px}
.foot a{color:var(--choc);text-decoration:none}
.foot .col a{align-self:flex-start;border-bottom:1px solid rgba(74,42,30,.35);padding-bottom:2px}
.foot a:hover{color:var(--rasp)}
.foot .col a:hover{border-bottom-color:var(--rasp)}
.foot .lead-col .btn{color:var(--cream)!important}
.foot .base{grid-column:1/-1;margin-top:28px;border-top:1px solid rgba(74,42,30,.25);padding-top:18px;display:flex;justify-content:space-between;align-items:center;gap:8px 16px;flex-wrap:wrap;font-size:13px}
.foot .base .logo{font-size:18px;line-height:1;opacity:1}
.foot .base span{opacity:.75}

/* ---- sticky bar ---- */
.bar{position:fixed;top:0;left:0;right:0;z-index:40;background:var(--choc);color:var(--cream);isolation:isolate;padding-top:env(safe-area-inset-top,0px);transform:translateY(-110%);transition:transform .3s ease}
.bar.show{transform:none}
section[id]{scroll-margin-top:90px}
html{scroll-behavior:smooth}
.bar .in{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:5px}
.bar::before{content:"";position:absolute;inset:0;background-image:var(--noise);background-size:220px;opacity:.5;mix-blend-mode:soft-light;pointer-events:none;z-index:-1}
.bar .logo{color:var(--cream);font-size:16px;line-height:1;white-space:nowrap}
.bar .links{display:flex;align-items:center;gap:26px;font-size:15px}
.bar .links a:not(.btn){color:var(--cream);text-decoration:none}
.bar .links a:not(.btn):hover{color:var(--butter)}
.bar .btn{padding:7px 15px;font-size:13.5px}
.onas-btn{align-self:flex-start;padding:15px 28px;font-size:16px;margin-top:4px}


@media (max-width:1080px){.steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:48px}.step:nth-child(3){border-left:0;padding-left:0}.step:nth-child(2){padding-right:0}}
@media (max-width:600px){.steps{grid-template-columns:minmax(0,1fr);row-gap:36px}.step{border-left:0;padding:0}}
@media (max-width:980px){.cards{grid-template-columns:minmax(0,1fr);max-width:520px}}
@media (max-width:860px){
  .pk{padding-block:80px;gap:40px}
  .faq{padding-block:80px;gap:32px}
  .qa p{padding-right:4px}
  .date{padding-block:64px;grid-template-columns:minmax(0,1fr)}
  .date-side{justify-self:start}
  .ticket{padding:28px 22px 24px}
  .date form{grid-template-columns:minmax(0,1fr)}
  .foot .inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px 28px;padding-block:56px 24px}
  .foot .lead-col{grid-column:1/-1}
  .pk-head{grid-template-columns:minmax(0,1fr)}
  .cut{margin:0 auto;width:280px}
  .menu a:not(.btn){display:none}
  .bar .links a:not(.btn){display:none}
  .hero>.rec{display:none}
  .s2{grid-template-columns:minmax(0,1fr);gap:48px;padding-block:80px}
  .s2-media{max-width:360px}
  .jtf{grid-template-columns:minmax(0,1fr);gap:40px;padding-block:80px}
  .jtf-head{position:static}
  .step{grid-template-columns:56px minmax(0,1fr);gap:6px 18px}
  .step .num{font-size:44px}
  .nst{grid-template-columns:minmax(0,1fr);gap:36px;padding-block:56px}
  .sq{width:300px}
  .onas{grid-template-columns:minmax(0,1fr);gap:48px;padding-block:96px 80px}
  .onas .print-wrap{order:-1}
  .print{width:230px}
}
@media (prefers-reduced-motion:reduce){
  .bar{transition:none}
  .mark use{animation:none;stroke-dashoffset:0}
  .rec b::before,.strip .run,.strip .glitch{animation:none}
  .btn{transition:none}
}

.foot-slim .inner{padding-block:40px 26px;display:flex;flex-direction:column;align-items:stretch;gap:26px}
.fs-top{display:flex;justify-content:space-between;align-items:center;gap:20px 40px;flex-wrap:wrap}
.fs-top .logo{font-size:20px;color:var(--choc)}
.fs-top nav{padding:0;display:flex;flex-wrap:wrap;gap:10px 28px;font-size:15px}
.fs-top nav a,.fs-base a{color:var(--choc);text-decoration:none}
.fs-top nav a:hover,.fs-base a:hover{color:var(--rasp)}
.fs-base{display:flex;justify-content:space-between;align-items:center;gap:10px 24px;flex-wrap:wrap;border-top:1px solid rgba(74,42,30,.25);padding-top:18px;font-size:13px}
.fs-base>span{opacity:.8}
.fs-base .legal{display:flex;gap:18px;flex-wrap:wrap;opacity:1}
@media (max-width:860px){.fs-top,.fs-base{flex-direction:column;align-items:flex-start}}

.rz{padding-block:110px 80px;display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:48px 72px;align-items:start}
.rz-side{display:flex;flex-direction:column;gap:20px;position:sticky;top:84px;min-width:0}
.rz h1{margin:0;font-size:clamp(44px,5.4vw,76px);line-height:1}
.rz h1 .it{color:var(--rasp)}
.rz-side>p{margin:0;font-size:18px;line-height:1.6;max-width:38ch}
.next{list-style:none;margin:8px 0 0;padding:20px 0 0;border-top:1.5px solid rgba(74,42,30,.25);display:flex;flex-direction:column;gap:14px;counter-reset:n}
.next b{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--rasp)}
.next li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;font-size:15.5px;line-height:1.5;counter-increment:n}
.next li::before{content:counter(n);font-family:var(--f-display);font-weight:900;font-style:italic;font-size:24px;line-height:1;color:var(--rasp)}
.rform{position:relative;isolation:isolate;background:var(--butter);border:2px solid var(--choc);border-radius:26px;padding:34px 34px 28px;display:flex;flex-direction:column;gap:30px;box-shadow:0 18px 40px rgba(74,42,30,.14);scroll-margin-top:80px}
.rform::before{content:"";position:absolute;inset:0;border-radius:inherit;background-image:var(--noise);background-size:220px;opacity:.22;mix-blend-mode:multiply;pointer-events:none;z-index:-1}
#r-form{display:flex;flex-direction:column;gap:34px}
.rform fieldset{border:0;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 16px;min-width:0}
.rform legend{grid-column:1/-1;padding:0 0 12px;font-family:var(--f-display);font-weight:900;font-size:24px;letter-spacing:-.01em;display:flex;gap:10px;align-items:baseline;width:100%;border-bottom:1.5px dashed rgba(74,42,30,.4);margin-bottom:4px}
.rform legend span{font-family:var(--f-mono);font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--rasp)}
.rform .full{grid-column:1/-1}
.rform .field label small{font-weight:400;text-transform:none;letter-spacing:0;opacity:.7}
.rform input[type=text],.rform input[type=email],.rform input[type=tel],.rform input[type=date],.rform select,.rform textarea{font:inherit;font-size:17px;color:var(--choc);background:var(--cream);border:1.5px solid var(--choc);border-radius:14px;padding:14px 16px;width:100%;box-sizing:border-box;min-width:0}
.rform textarea{min-height:110px;resize:vertical;line-height:1.5}
.rform input:focus,.rform select:focus,.rform textarea:focus{outline:3px solid var(--rasp);outline-offset:1px}
.pk-pick{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.pk-pick label{position:relative;display:flex;flex-direction:column;gap:6px;background:var(--cream);border:1.5px solid var(--choc);border-radius:16px;padding:16px 16px 14px;cursor:pointer;min-width:0}
.pk-pick input{position:absolute;opacity:0;pointer-events:none}
.pk-pick b{font-family:var(--f-display);font-weight:900;font-size:18px;line-height:1.1}
.pk-pick span{font-size:14px;line-height:1.35}
.pk-pick em{font-style:normal;font-weight:700;font-size:15px;margin-top:auto;padding-top:6px}
.pk-pick label:has(input:checked){border-color:var(--rasp);box-shadow:inset 0 0 0 2px var(--rasp)}
.pk-pick label:has(input:checked)::after{content:"✓";position:absolute;top:10px;right:12px;width:22px;height:22px;border-radius:50%;background:var(--rasp);color:var(--cream);font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center}
.pk-pick label:has(input:focus-visible){outline:3px solid var(--rasp);outline-offset:2px}
.opts{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px}
.opts label{display:flex;gap:10px;align-items:center;background:var(--cream);border:1.5px solid var(--choc);border-radius:999px;padding:11px 18px;font-size:15.5px;cursor:pointer}
.opts input{accent-color:var(--rasp);width:18px;height:18px;margin:0}
.opts label:has(input:checked){border-color:var(--rasp);box-shadow:inset 0 0 0 1.5px var(--rasp)}
.check{grid-column:1/-1;display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.5;cursor:pointer}
.check input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--rasp);flex:none}
.check a{color:var(--choc);font-weight:700}
.send{display:flex;flex-direction:column;gap:10px;align-items:stretch}
.send .btn{border:0;cursor:pointer;font-family:inherit;padding:17px 30px;font-size:17px}
.send .sub{margin:0;font-size:14.5px;text-align:center}
.send .err{margin:0;font-size:14.5px;font-weight:700;color:var(--choc);text-align:center}
.send .err:empty{display:none}
.done{display:flex;flex-direction:column;gap:16px;align-items:flex-start;padding:8px 0}
.done h2{margin:0;font-size:clamp(40px,4.6vw,60px);line-height:1}
.done h2 .it{color:var(--rasp)}
.done p{margin:0;font-size:18px;line-height:1.6;max-width:46ch}
.done a{color:var(--choc);font-weight:700}
#firma-pole[hidden]{display:none!important}
@media (max-width:980px){.pk-pick{grid-template-columns:minmax(0,1fr)}}
@media (max-width:860px){.rz{grid-template-columns:minmax(0,1fr);padding-block:96px 64px}.rz-side{position:static}.rform{padding:24px 18px 22px}.rform fieldset{grid-template-columns:minmax(0,1fr)}}

.kt{padding-block:110px 100px;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:48px 80px;align-items:start}
.kt-text{display:flex;flex-direction:column;gap:20px;min-width:0}
.kt h1{margin:0;font-size:clamp(44px,5.4vw,76px);line-height:1}
.kt h1 .it{color:var(--rasp)}
.kt-text p{margin:0;font-size:19px;line-height:1.6;max-width:40ch}
.kt-text .aside{font-size:16px;padding-top:18px;border-top:1.5px solid rgba(74,42,30,.25)}
.kt-text .aside a{color:var(--choc);font-weight:700;border-bottom:2px solid var(--rasp);text-decoration:none}
.kform{position:relative;isolation:isolate;background:var(--butter);border:2px solid var(--choc);border-radius:26px;padding:32px 32px 26px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;box-shadow:0 18px 40px rgba(74,42,30,.14)}
.kform::before{content:"";position:absolute;inset:0;border-radius:inherit;background-image:var(--noise);background-size:220px;opacity:.22;mix-blend-mode:multiply;pointer-events:none;z-index:-1}
.kform .full{grid-column:1/-1}
.kform .field label small{font-weight:400;text-transform:none;letter-spacing:0;opacity:.7}
.kform input[type=text],.kform input[type=email],.kform input[type=date],.kform select,.kform textarea{font:inherit;font-size:17px;color:var(--choc);background:var(--cream);border:1.5px solid var(--choc);border-radius:14px;padding:14px 16px;width:100%;box-sizing:border-box;min-width:0}
.kform textarea{min-height:140px;resize:vertical;line-height:1.5}
.kform select:focus,.kform textarea:focus,.kform input:focus{outline:3px solid var(--rasp);outline-offset:1px}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;line-height:1.5}
.consent input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--rasp);flex:none}
.consent a{color:var(--choc);font-weight:700}
.kform .btn{border:0;cursor:pointer;font-family:inherit;padding:16px 28px;font-size:17px}
.kform .fine{margin:0;font-size:14px;line-height:1.5}
.kform .fine:empty{display:none}
.kform .fine.ok{font-weight:700}
@media (max-width:860px){.kt{grid-template-columns:minmax(0,1fr);padding-block:96px 64px}.kform{grid-template-columns:minmax(0,1fr);padding:24px 20px}}

.e404{padding-block:40px 64px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:22px}
.screen{position:relative;width:min(560px,100%);aspect-ratio:4/3;border:7px solid var(--choc);border-radius:26px;background:#1E3FA8;overflow:hidden;box-shadow:0 18px 40px rgba(74,42,30,.2);display:flex;align-items:center;justify-content:center}
.screen::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(0,0,0,.14) 0 1px,transparent 1px 3px);pointer-events:none}
.screen::after{content:"";position:absolute;left:0;right:0;height:22%;top:-25%;background:linear-gradient(transparent,rgba(255,255,255,.18),transparent);animation:roll 4.5s linear infinite;pointer-events:none}
@keyframes roll{0%,55%{top:-25%}100%{top:110%}}
.osd{position:absolute;font-family:var(--f-mono);font-weight:700;color:#fff;font-size:clamp(13px,2.4vw,18px);letter-spacing:.08em;text-shadow:2px 0 0 rgba(217,59,110,.7),-2px 0 0 rgba(110,200,230,.6)}
.osd.tl{top:18px;left:22px}.osd.tr{top:18px;right:22px}.osd.bl{bottom:18px;left:22px}
.osd.tl::before{content:"■ ";color:#fff}
.big404{font-family:var(--f-display);font-weight:900;font-variation-settings:'SOFT' 100,'WONK' 0,'opsz' 144;font-size:clamp(96px,22vw,180px);line-height:1;color:#fff;letter-spacing:-.03em;text-shadow:4px 0 0 rgba(217,59,110,.75),-4px 0 0 rgba(110,200,230,.65);animation:jit 3.2s steps(1) infinite}
@keyframes jit{0%,92%{transform:none}93%{transform:translateX(3px)}95%{transform:translateX(-2px)}97%{transform:none}}
.e404 h1{margin:12px 0 0;font-size:clamp(40px,5vw,64px);line-height:1.02;text-wrap:balance}
.e404 h1 .it{color:var(--rasp)}
.e404 p{margin:0;font-size:17px;line-height:1.6;max-width:46ch}
.e404 .acts{display:flex;flex-wrap:wrap;gap:16px 26px;align-items:center;justify-content:center;margin-top:6px}
.e404 .acts .btn{padding:15px 28px;font-size:16px}
.e404 .acts .tlink{color:var(--choc);border-bottom-color:var(--rasp)}
@media (prefers-reduced-motion:reduce){.screen::after,.big404{animation:none}}

/* honeypot + form states */
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.cf-turnstile{min-height:65px}
.cf-turnstile.ts-quiet{min-height:0}
#f-msg.ok{font-weight:700}
button[disabled]{opacity:.6;cursor:wait}
