@font-face{font-family:Cinzel;font-display:swap;src:url(cinzel-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:Cinzel;font-display:swap;src:url(cinzel-latin-ext-500-normal.woff2) format("woff2");unicode-range:U+0100-024F}
@font-face{font-family:Corm;font-display:swap;src:url(cormorant-garamond-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:Corm;font-display:swap;src:url(cormorant-garamond-latin-ext-500-normal.woff2) format("woff2");unicode-range:U+0100-024F}
@font-face{font-family:Corm;font-style:italic;font-display:swap;src:url(cormorant-garamond-latin-500-italic.woff2) format("woff2")}
@font-face{font-family:Corm;font-style:italic;font-display:swap;src:url(cormorant-garamond-latin-ext-500-italic.woff2) format("woff2");unicode-range:U+0100-024F}
@font-face{font-family:Mont;font-display:swap;src:url(montserrat-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:Mont;font-display:swap;src:url(montserrat-latin-ext-500-normal.woff2) format("woff2");unicode-range:U+0100-024F}

:root{--bg:#07090e;--bg2:#0d121b;--line:#232c3a;--text:#dfe5ec;--muted:#98a4b4;--silver:#eef2f6;--accent:#c9d3df}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font-family:Corm,Georgia,serif;font-size:20px;line-height:1.55}
a{color:var(--accent)}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
.kicker{font-family:Mont,Arial,sans-serif;font-size:12px;letter-spacing:.45em;text-transform:uppercase;color:var(--muted)}
h1,h2{font-family:Cinzel,Georgia,serif;font-weight:500;color:var(--silver);letter-spacing:.04em;line-height:1.2;margin:0}
h1{font-size:clamp(44px,8vw,76px)}
.sub{font-style:italic;font-size:clamp(28px,4.5vw,40px);margin:4px 0 18px;color:var(--text)}

/* hero */
.hero{padding:40px 0 56px}
.hero .grid{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:56px;align-items:center}
.cover img{width:100%;height:auto;display:block;border-radius:4px;box-shadow:0 30px 80px rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.05)}
.quote{font-style:italic;font-size:24px;color:var(--silver);border-left:2px solid var(--line);padding-left:16px;margin:0 0 20px}
.blurb p{margin:0 0 14px}
.blurb .beat{font-family:Cinzel,Georgia,serif;letter-spacing:.06em;color:var(--silver);font-size:19px}

/* form */
.form{margin-top:26px;background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:22px}
.form h2{font-size:20px;letter-spacing:.06em;margin-bottom:6px}
.form .lead{font-size:18px;color:var(--muted);margin:0 0 16px}
.row{display:flex;gap:10px;flex-wrap:wrap}
input[type=text],input[type=email]{flex:1 1 200px;min-width:0;background:#05070b;border:1px solid var(--line);color:var(--text);border-radius:6px;padding:13px 14px;font:17px Mont,Arial,sans-serif}
input:focus{outline:2px solid #5d6f88;outline-offset:1px}
.check{display:flex;gap:10px;align-items:flex-start;font-size:16px;line-height:1.4;color:var(--muted);margin-top:12px}
.check input{margin-top:3px;width:18px;height:18px;flex:none;accent-color:#9fb0c6}
button{cursor:pointer;border:0;border-radius:6px;font:15px Mont,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.btn{width:100%;margin-top:16px;padding:16px;background:linear-gradient(180deg,#f3f6f9,#b9c4d1);color:#0a0d13}
.btn:hover{filter:brightness(1.06)}
.btn[disabled]{opacity:.6;cursor:wait}
.err{color:#e8a0a0;font-size:16px;margin-top:10px;min-height:1em}
.small{font-size:14px;color:var(--muted);line-height:1.4}

/* sections */
.points{border-top:1px solid var(--line);padding:56px 0}
.points .grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.points h3{font-family:Mont,Arial,sans-serif;font-weight:500;font-size:13px;letter-spacing:.3em;text-transform:uppercase;color:var(--silver);margin:0 0 8px}
.points p{margin:0;color:var(--muted)}
.author{border-top:1px solid var(--line);padding:56px 0;text-align:center}
.author p{font-style:italic;font-size:24px;max-width:620px;margin:14px auto 0}
footer{border-top:1px solid var(--line);padding:28px 0 40px;font-size:14px;color:var(--muted);font-family:Mont,Arial,sans-serif;line-height:1.7}
footer a{color:var(--muted)}

/* plain pages */
.page{max-width:760px;margin:0 auto;padding:48px 20px 64px}
.page h1{font-size:clamp(30px,5vw,42px);margin-bottom:24px}
.page h2{font-size:20px;margin:32px 0 10px}
.page p,.page li{font-size:19px}

/* cookie bar */
.cookies{position:fixed;left:12px;right:12px;bottom:12px;max-width:720px;margin:0 auto;background:#111823;border:1px solid var(--line);border-radius:10px;padding:16px 18px;font:15px/1.5 Mont,Arial,sans-serif;color:var(--text);box-shadow:0 10px 40px rgba(0,0,0,.6);display:none;z-index:10}
.cookies .row{margin-top:12px}
.cookies button{padding:11px 16px;flex:1 1 140px}
.cookies .yes{background:#e8edf2;color:#0a0d13}
.cookies .no{background:transparent;color:var(--text);border:1px solid var(--line)}

@media (max-width:760px){
  body{font-size:19px}
  .hero{padding:24px 0 40px}
  .hero .grid{grid-template-columns:1fr;gap:28px}
  .cover{max-width:230px;margin:0 auto}
  .head{text-align:center}
  .quote{text-align:left}
  .points .grid{grid-template-columns:1fr;gap:24px}
}

/* ================= V2: designová verze ================= */
@font-face{font-family:Cinzel;font-weight:600;font-display:swap;src:url(cinzel-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:Cinzel;font-weight:600;font-display:swap;src:url(cinzel-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-024F}
@font-face{font-family:Corm;font-style:italic;font-weight:600;font-display:swap;src:url(cormorant-garamond-latin-600-italic.woff2) format("woff2")}
@font-face{font-family:Corm;font-style:italic;font-weight:600;font-display:swap;src:url(cormorant-garamond-latin-ext-600-italic.woff2) format("woff2");unicode-range:U+0100-024F}
.grain{pointer-events:none;position:fixed;inset:-50%;z-index:5;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grain 1.2s steps(6) infinite}
@keyframes grain{0%{transform:translate(0,0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-3%)}60%{transform:translate(-2%,-1%)}80%{transform:translate(3%,3%)}100%{transform:translate(0,0)}}
#snih{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:4}

.v2 .hero2{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:center;overflow:hidden}
.hero2 .foto{position:absolute;top:0;right:0;bottom:0;width:58%;background:url(hero-d.jpg) center 35%/cover}
.hero2 .foto:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--bg) 0%,rgba(7,9,14,.55) 30%,rgba(7,9,14,0) 60%),linear-gradient(0deg,var(--bg) 0%,rgba(7,9,14,0) 25%),linear-gradient(180deg,rgba(7,9,14,.6) 0%,rgba(7,9,14,0) 20%)}
.hero2 .in{position:relative;z-index:2;max-width:1180px;margin:0 auto;padding:80px 24px;width:100%}
.hero2 .txt{max-width:820px}
.hero2 h1{font-size:clamp(56px,8.6vw,132px);font-weight:500;white-space:nowrap;line-height:1;letter-spacing:.03em;background:linear-gradient(180deg,#fff 0%,#e6ecf2 55%,#9eabbb 100%);-webkit-background-clip:text;background-clip:text;color:transparent;padding-top:.12em}
.hero2 .sub{font-size:clamp(34px,5vw,62px);margin:0 0 30px 6px}
.hero2 .quote{font-weight:500;font-size:clamp(23px,2.3vw,29px);border:0;padding:0;margin:0 0 36px;max-width:440px}
.hero2 .quote:before{content:"";display:block;width:64px;height:1px;background:linear-gradient(90deg,#aab6c4,transparent);margin-bottom:18px}
.cta{display:inline-flex;align-items:center;gap:14px;padding:18px 30px;border-radius:999px;background:linear-gradient(180deg,#f5f7fa,#b8c3cf);color:#0a0d13;text-decoration:none;font:14px Mont,Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase;box-shadow:0 10px 40px rgba(180,200,225,.18);transition:transform .3s,box-shadow .3s}
.cta:hover{transform:translateY(-2px);box-shadow:0 16px 50px rgba(180,200,225,.3)}
.hero2 .meta{margin-top:22px;font:13px Mont,Arial,sans-serif;letter-spacing:.2em;color:var(--muted);text-transform:uppercase}
.scroll{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);z-index:2;width:1px;height:56px;background:linear-gradient(180deg,transparent,#aab6c4);animation:drop 2.2s ease-in-out infinite}
@keyframes drop{0%{opacity:0;transform:translate(-50%,-16px)}40%{opacity:1}100%{opacity:0;transform:translate(-50%,12px)}}

.sec{position:relative;z-index:2;padding:120px 24px;max-width:1180px;margin:0 auto}
.beats{text-align:center}
.beats .big{font-family:Cinzel,Georgia,serif;font-size:clamp(34px,5.4vw,72px);line-height:1.15;color:var(--silver);letter-spacing:.03em}
.beats .big span{display:block}
.beats p.story{max-width:680px;margin:44px auto 0;font-size:23px;color:var(--text)}
.beats p.story em{color:var(--silver)}

.rules{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(180deg,rgba(13,18,27,0),rgba(13,18,27,.8),rgba(13,18,27,0))}
.rules .kicker{text-align:center;margin-bottom:56px}
.rules .grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.rule{background:var(--bg);padding:44px 34px 48px}
.rule .n{font-family:Cinzel,Georgia,serif;font-size:64px;line-height:1;color:transparent;-webkit-text-stroke:1px #6d7b8e}
.rule h3{font-family:Corm,Georgia,serif;font-style:italic;font-weight:500;font-size:30px;line-height:1.2;color:var(--silver);margin:22px 0 12px}
.rule p{margin:0;color:var(--muted);font-size:19px}
.rules .foot{text-align:center;margin-top:44px;font-style:italic;font-size:24px;color:var(--text)}

.excerpt{max-width:760px}
.excerpt .kicker{margin-bottom:28px}
.excerpt .page-txt p{margin:0 0 16px;font-size:22px;line-height:1.7}
.excerpt .page-txt p:first-child{font-family:Cinzel,Georgia,serif;font-size:30px;color:var(--silver);letter-spacing:.02em}
.excerpt .fade{position:relative}
.excerpt .fade:after{content:"";position:absolute;left:0;right:0;bottom:0;height:160px;background:linear-gradient(180deg,rgba(7,9,14,0),var(--bg))}

.offer{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:72px;align-items:center}
.book{perspective:1400px}
.book img{width:100%;height:auto;display:block;border-radius:3px 6px 6px 3px;transform:rotateY(-14deg) rotateX(2deg);box-shadow:-2px 0 0 #1a212c inset,30px 40px 80px rgba(0,0,0,.75),0 0 60px rgba(160,185,215,.08);transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.book:hover img{transform:rotateY(-4deg) rotateX(0)}
.offer h2{font-size:clamp(30px,3.6vw,44px);margin-bottom:10px}
.offer .form{margin-top:24px;background:rgba(13,18,27,.85);backdrop-filter:blur(6px)}

.v2 .author{border-top:0;padding:40px 24px 110px}
.v2 .author .sig{font-family:Cinzel,Georgia,serif;font-size:22px;letter-spacing:.3em;color:var(--silver);margin-top:26px}
.v2 footer{position:relative;z-index:2}

/* odhalování při rolování */
.rv{opacity:0;transform:translateY(28px);transition:opacity 1.2s ease,transform 1.2s cubic-bezier(.2,.7,.2,1)}
.rv.on{opacity:1;transform:none}
.d1{transition-delay:.15s}.d2{transition-delay:.3s}.d3{transition-delay:.45s}.d4{transition-delay:.6s}
.hero2 .rv{transition-duration:1.6s}

@media (max-width:860px){
  .v2 .hero2{align-items:flex-start}
  .hero2 .foto{width:100%;top:auto;height:64%;background-image:url(hero-m.jpg);background-position:center 70%}
  .cta{padding:16px 22px;letter-spacing:.12em;font-size:13px}
  .hero2 .foto:after{background:linear-gradient(180deg,var(--bg) 0%,rgba(7,9,14,0) 35%),linear-gradient(0deg,var(--bg) 0%,rgba(7,9,14,0) 22%)}
  .hero2 .in{padding:72px 22px 0;text-align:center}
  .hero2 .txt{margin:0 auto}
  .hero2 .quote{margin:0 auto 28px}
  .hero2 .quote:before{margin:0 auto 16px}
  .hero2 .sub{margin-left:0}
  .sec{padding:84px 22px}
  .rules .grid{grid-template-columns:1fr}
  .rule{padding:34px 26px}
  .offer{grid-template-columns:1fr;gap:40px}
  .book{max-width:260px;margin:0 auto}
  .excerpt .page-txt p{font-size:20px}
}
@media (prefers-reduced-motion:reduce){
  .grain,.scroll{animation:none}
  #snih{display:none}
  .rv{opacity:1;transform:none;transition:none}
}
