
:root{--wine:#4c092c;--wine2:#751642;--gold:#b89550;--ink:#282529;--muted:#766f75;--light:#f7f5f6}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Montserrat,Arial,sans-serif;background:#fff}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.wrap{max-width:1180px;margin:auto;padding:0 28px}.narrow{max-width:870px;text-align:center}.hero{min-height:590px;color:#fff;background:
linear-gradient(rgba(55,0,29,.12),rgba(25,0,15,.35)),
url('https://duyn491kcolsw.cloudfront.net/files/1g/1gn/1gnn8x.jpg?ph=3683907fe9') center/cover no-repeat;position:relative}.nav{height:78px;display:flex;align-items:center;padding:0 5vw;border-bottom:1px solid rgba(255,255,255,.2)}.brand{font-size:12px;letter-spacing:.16em;font-weight:600}.links{margin-left:auto;display:flex;gap:28px;font-size:11px;text-transform:uppercase;letter-spacing:.12em}.hero-inner{min-height:510px;display:flex;flex-direction:column;align-items:center;justify-content:center}.round-logo{width:300px;height:300px;border:3px solid var(--gold);border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;text-align:center}.round-logo:after{content:"";position:absolute;inset:9px;border:1px solid var(--gold);border-radius:50%}.round-logo span,.round-logo b{font-family:'Playfair Display',serif;font-style:italic;font-weight:500;line-height:1}.round-logo span{font-size:43px}.round-logo b{font-size:39px}.hero-sub{font-size:10px;letter-spacing:.35em;margin-top:25px}.intro{padding:92px 0 80px;text-align:center}.intro h1{font:300 clamp(35px,4vw,52px) Montserrat;margin:0 0 22px}.intro h1 strong{font-weight:600}.bigline{font-size:14px;letter-spacing:.1em;font-weight:600}.intro p:not(.bigline){color:var(--muted);font-size:14px}.button{display:inline-block;background:var(--wine);color:white;padding:15px 25px;margin-top:20px;font-size:11px;letter-spacing:.09em;font-weight:600}.photo-band{background:#f7f5f6;padding:0 24px 70px}
.photo-band img{width:min(100%,1400px);height:auto;margin:0 auto;object-fit:contain;box-shadow:0 16px 42px rgba(30,10,20,.08)}.section{padding:100px 0}.overline{font-size:10px;letter-spacing:.24em;color:#9a8b94;text-align:center}.section h2,.story h2,.booking h2,.gallery h2{font:500 clamp(38px,4.8vw,62px) 'Playfair Display',serif;text-align:center;margin:12px 0 55px}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:60px 55px;text-align:center}.ico{width:74px;height:74px;border:1px solid #bbb;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 23px;font:500 20px 'Playfair Display',serif}.features h3{font:500 22px 'Playfair Display',serif;margin:0 0 12px}.features p{font-size:13px;line-height:1.8;color:var(--muted);margin:0}.price{background:var(--wine);color:#fff;text-align:center;padding:95px 0}.overline.light{color:#d6becb}.price h2{font:500 clamp(44px,6vw,75px) 'Playfair Display',serif;margin:10px 0 20px}.price h2 strong{color:#e0c384}.price p{font-size:14px;line-height:1.8;color:#eadfe5}.lightbtn{background:#fff;color:var(--wine)}.backgrounds{background:#fafafa}.bg-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px 25px}.bg-grid figure{margin:0;text-align:center}.bg-grid img{width:100%;aspect-ratio:1.35/1;object-fit:cover}.bg-grid figcaption{font:italic 14px 'Playfair Display',serif;color:#777;margin-top:9px}.bg-grid figcaption span{display:block;font:600 8px Montserrat;color:var(--gold);letter-spacing:.13em;margin-top:4px}.gallery{padding:100px 0;background:#fff}.gallery-grid{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:255px;gap:8px}.gallery-grid img{width:100%;height:100%;object-fit:cover}.gallery-grid .g1{grid-row:span 2}.story{padding:100px 0;background:#f4f0f2;text-align:center}.story p:last-child{font-size:14px;line-height:1.9;color:var(--muted)}.booking{padding:100px 0}.booking-lead{text-align:center;color:var(--muted);font-size:14px;margin:-35px auto 45px;max-width:680px}.booking form{max-width:900px;margin:auto;background:#fff;border:1px solid #ddd;padding:35px}label,legend{font-size:11px;font-weight:600;color:#625b61}input,textarea{width:100%;border:1px solid #ccc;background:white;padding:13px;margin-top:7px;font:inherit}input:focus,textarea:focus{outline:1px solid var(--wine)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.booking form>label,.form-row{display:block;margin-bottom:16px}.form-row{display:grid}.booking fieldset{border:0;padding:0;margin:28px 0}.picker{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}.picker label{cursor:pointer}.picker input{position:absolute;opacity:0;pointer-events:none}.picker span{display:block;border:1px solid #ddd}.picker img{width:100%;aspect-ratio:1.35/1;object-fit:cover}.picker b{display:block;padding:8px;font-size:9px;text-align:center;font-weight:500}.picker input:checked+span{border:2px solid var(--wine);box-shadow:0 0 0 2px #4c092c18}.check{display:flex!important;align-items:flex-start;gap:9px}.check input{width:17px;height:17px;margin:0;accent-color:var(--wine)}.check span{font-size:10px;line-height:1.5}.check a{text-decoration:underline;color:var(--wine)}button{width:100%;background:var(--wine);color:#fff;border:0;padding:16px;font-weight:600;font-size:11px;letter-spacing:.09em;cursor:pointer}form small{display:block;text-align:center;color:#999;font-size:9px;margin-top:10px}footer{background:#250518;color:#ddd;text-align:center;padding:60px 20px}.round-logo.small{width:150px;height:150px;margin:auto;border-width:2px}.round-logo.small:after{inset:5px}.round-logo.small span{font-size:22px}.round-logo.small b{font-size:20px}footer p{font-size:10px;letter-spacing:.12em;margin-top:24px;color:#a9919d}
@media(max-width:850px){.links{display:none}.features{grid-template-columns:1fr 1fr}.bg-grid{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid .g1{grid-row:auto;grid-column:span 2}.picker{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.nav{padding:0 18px}.brand{font-size:10px}.hero{min-height:510px}.hero-inner{min-height:430px}.round-logo{width:230px;height:230px}.round-logo span{font-size:34px}.round-logo b{font-size:30px}.intro,.section,.gallery,.story,.booking,.price{padding:70px 0}.photo-band img{height:380px}.features{grid-template-columns:1fr;gap:45px}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:260px}.gallery-grid .g1{grid-column:auto}.form-row{grid-template-columns:1fr}.booking form{padding:20px}.wrap{padding:0 18px}}

/* V7: fotografie bez agresivního ořezu + kvalitnější originály */
.gallery-natural{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  grid-auto-rows:auto;
}
.gallery-natural figure{margin:0;background:#f7f5f6}
.gallery-natural img{
  width:100%;
  height:auto;
  object-fit:contain;
  object-position:center top;
}
.gallery-natural figcaption{
  padding:10px 12px 12px;
  font:italic 13px 'Playfair Display',serif;
  color:#777;
}
@media(max-width:700px){
  .gallery-natural{grid-template-columns:1fr}
  .photo-band{padding:0 0 45px}
  .photo-band img{box-shadow:none}
}

/* V8: hustá party galerie bez prázdných míst */
.gallery-party{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  align-items:start;
}
.gallery-party figure{margin:0;background:transparent;overflow:hidden}
.gallery-party img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
.gallery-party figcaption{display:none}
@media(max-width:700px){
  .gallery-party{grid-template-columns:1fr;gap:7px}
}
/* odstraní staré výšky/pozadí, které mohly vytvářet bílé kapsy */
.gallery .gallery-party{grid-auto-rows:auto}

/* V10: Netlify honeypot */
.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
