/* ============ Pod Ždánickým lesem — sdílené styly (v2, světlá paleta) ============ */
:root{
  --cream:#faf6ec;
  --cream-2:#f2ecdd;
  --ink:#2a2820;
  --sage:#5a6e46;
  --sage-deep:#39492c;
  --sage-pale:#e7ead9;
  --gold:#c9a24c;
  --stone:#9c9583;
  --black:#1b1a15;
  --max:1180px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--cream);
  color:var(--ink);
  font-family:'Inter',sans-serif;
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,.display{
  font-family:'Fraunces',serif;
  font-weight:600;
  letter-spacing:-0.01em;
  margin:0;
}
.eyebrow{
  font-family:'Inter',sans-serif;
  font-size:0.72rem;
  font-weight:600;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--sage-deep);
  display:inline-flex;
  align-items:center;
  gap:.6em;
}
.eyebrow::before{content:"";width:22px;height:1px;background:var(--gold);display:inline-block;}
a{color:inherit;}
img{max-width:100%;display:block;}
.wrap{max-width:var(--max);margin:0 auto;padding:0 32px;}
section{position:relative;}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;}

/* ---------- NAV ---------- */
header.nav{padding:8px 0;background:var(--cream);border-bottom:1px solid rgba(42,40,32,.08);}
header.nav .wrap{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:20px;}
.brand{display:flex;align-items:center;text-decoration:none;flex-shrink:0;}
.brand img{height:24px;width:auto;display:block;}
ul.links{display:flex;flex-wrap:nowrap;align-items:center;gap:26px;list-style:none;margin:0;padding:0;white-space:nowrap;}
ul.links a{font-size:.85rem;font-weight:500;text-decoration:none;color:var(--ink);opacity:.75;transition:opacity .2s ease;}
ul.links a:hover{opacity:1;}
ul.links a.current{opacity:1;border-bottom:1px solid var(--gold);padding-bottom:4px;}

/* varianta hlavičky přes fotku v hero (jen na domovské stránce) */
header.nav.nav-overlay{
  position:absolute;top:0;left:0;right:0;z-index:20;
  padding:14px 0;
  background:rgba(15,14,11,.82);
  border-bottom:none;
}
header.nav.nav-overlay .wrap{justify-content:flex-end;}
header.nav.nav-overlay ul.links a{color:#f7f2e4;opacity:.85;}
header.nav.nav-overlay ul.links a:hover{opacity:1;}
header.nav.nav-overlay ul.links a.current{opacity:1;border-bottom-color:var(--gold);}

/* ---------- HOME HERO (photo) ---------- */
.hero{position:relative;height:80vh;min-height:560px;overflow:hidden;}
.hero .photo{position:absolute;inset:0;background-image:url('assets/hero-vinice.jpg');background-size:cover;background-position:center 58%;}
.hero .wash{position:absolute;inset:0;background:linear-gradient(180deg, rgba(250,246,236,.55) 0%, rgba(250,246,236,.18) 24%, rgba(42,40,32,0) 40%, rgba(42,40,32,0) 100%);}
.hero-content{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:flex-start;padding-top:9vh;}
.hero-content .wrap{width:100%;}
.hero-brand-row{display:flex;align-items:center;gap:32px;}
.hero-seal{width:150px;height:150px;flex-shrink:0;margin-bottom:0;filter:drop-shadow(0 2px 10px rgba(250,246,236,.9)) drop-shadow(0 0 18px rgba(250,246,236,.7));}
.hero h1{font-size:clamp(2.6rem,6vw,4.6rem);line-height:1;color:var(--ink);text-shadow:0 2px 18px rgba(250,246,236,.85), 0 1px 3px rgba(250,246,236,.9);}
.hero h1 span{display:block;font-style:italic;font-weight:450;color:var(--sage-deep);font-size:.4em;margin-top:.4em;text-shadow:0 2px 14px rgba(250,246,236,.85);}

/* ---------- PAGE HERO (subpages) ---------- */
.page-hero{
  position:relative;
  height:46vh;
  min-height:320px;
  overflow:hidden;
}
.page-hero .photo{position:absolute;inset:0;background-image:url('assets/hero-vinice.jpg');background-size:cover;background-position:center 55%;}
.page-hero .wash{position:absolute;inset:0;background:linear-gradient(180deg, rgba(20,18,12,.28) 0%, rgba(20,18,12,0) 32%, rgba(42,40,32,0) 55%, rgba(250,246,236,.95) 90%, var(--cream) 100%);}
.page-hero-content{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:38px;}
.page-hero-content .wrap{width:100%;}
.page-hero .eyebrow{color:var(--sage-deep);}
.page-hero .back-link{color:var(--ink);opacity:.75;}
.page-hero .back-link:hover{opacity:1;}
.page-hero h1{font-size:clamp(2.2rem,4.6vw,3.3rem);margin:14px 0 12px;color:var(--ink);text-shadow:0 2px 16px rgba(250,246,236,.7);}
.page-hero p{max-width:560px;color:#4a4636;font-size:1.02rem;margin:0;}

/* ---------- BUTTONS ---------- */
.btn-row{display:flex;gap:16px;flex-wrap:wrap;}
.btn{display:inline-flex;align-items:center;gap:.5em;padding:14px 26px;border-radius:2px;font-size:.86rem;font-weight:600;
  letter-spacing:.03em;text-decoration:none;border:1px solid transparent;cursor:pointer;
  transition:transform .25s ease, background .25s ease, border-color .25s ease, color .25s ease;}
.btn:hover{transform:translateY(-2px);}
.btn-sage{background:var(--sage-deep);color:var(--cream);}
.btn-sage:hover{background:var(--sage);}
.btn-outline-ink{border-color:rgba(42,40,32,.3);color:var(--ink);background:transparent;}
.btn-outline-ink:hover{border-color:var(--sage-deep);color:var(--sage-deep);}
.btn-gold{background:var(--gold);color:var(--black);}
.btn-gold:hover{background:#d8b662;}

/* ---------- SECTION GENERIC ---------- */
.section{padding:90px 0;}
.section-flush-top{padding-top:44px;}
.section-tight{padding:70px 0;}
.section-cream2{background:var(--cream-2);}
.section-sage{background:var(--sage-deep);color:var(--cream);}
.section-sage h2{color:var(--cream);}
.section-sage .eyebrow{color:var(--gold);}
.section-sage .eyebrow::before{background:var(--gold);}
h2.big{font-size:clamp(1.9rem,3.4vw,2.6rem);margin:14px 0 0;line-height:1.1;}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;}
.section-head p.lead{max-width:420px;color:#5a5646;margin:14px 0 0;}
.section-sage .section-head p.lead{color:#dbe0cf;}

/* ---------- ABOUT / QUOTE ---------- */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;margin-top:44px;align-items:start;}
.about-grid .quote{font-family:'Fraunces',serif;font-style:italic;font-weight:450;font-size:1.4rem;line-height:1.42;
  color:var(--sage-deep);border-left:2px solid var(--gold);padding-left:24px;}
.about-grid p{color:#4a4636;font-size:1rem;}
.about-grid p+p{margin-top:14px;}
.about-grid h3{font-family:'Fraunces',serif;font-size:1.2rem;font-weight:600;margin-bottom:12px;color:var(--sage-deep);}
.section-sage .about-grid p{color:#dbe0cf;}
.section-sage .about-grid .quote{color:var(--cream);}

/* ---------- GOALS (stanovy) ---------- */
.goals{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:48px;background:rgba(250,246,236,.14);border:1px solid rgba(250,246,236,.14);}
.goal{background:var(--sage-deep);padding:30px 28px;}
.goal .num{font-family:'Fraunces',serif;font-style:italic;color:var(--gold);font-size:1rem;opacity:.9;}
.goal h3{font-size:1.08rem;margin:12px 0 8px;color:var(--cream);font-weight:600;}
.goal p{font-size:.9rem;color:#dbe0cf;margin:0;}
.stanovy-foot{margin-top:40px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;
  border-top:1px solid rgba(250,246,236,.18);padding-top:28px;}
.stanovy-foot p{margin:0;color:#dbe0cf;font-size:.9rem;max-width:520px;}

/* ---------- VINAŘSTVÍ / MEMBERS ---------- */
.members-grid{margin-top:44px;display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--stone);}
.members-grid.compact{grid-template-columns:repeat(4,1fr);}
.member{background:var(--cream);padding:32px 28px;display:flex;flex-direction:column;min-height:260px;text-decoration:none;color:inherit;transition:background .2s;}
a.member:hover{background:var(--cream-2);}
.member .tag{font-size:.66rem;letter-spacing:.13em;text-transform:uppercase;font-weight:600;color:var(--sage);margin-bottom:14px;}
.member h3{font-size:1.24rem;margin-bottom:6px;}
.member .place{font-size:.82rem;color:var(--stone);margin-bottom:14px;font-style:italic;font-family:'Fraunces',serif;}
.member p.desc{font-size:.9rem;color:#5a5646;flex:1;margin:0;}
.member .stats{display:flex;gap:16px;margin-top:18px;padding-top:16px;border-top:1px solid rgba(42,40,32,.1);}
.member .stats div{font-size:.7rem;color:var(--stone);}
.member .stats strong{display:block;font-family:'Fraunces',serif;font-size:1rem;color:var(--sage-deep);font-weight:600;}
.member .more{margin-top:14px;font-size:.76rem;color:var(--sage-deep);font-weight:600;letter-spacing:.02em;}
.member.placeholder{display:flex;align-items:center;justify-content:center;text-align:center;border:1px dashed rgba(42,40,32,.22);}
.member.placeholder .plus{font-size:1.9rem;color:var(--gold);font-family:'Fraunces',serif;font-style:italic;margin-bottom:8px;}
.member.placeholder p{color:var(--stone);font-size:.86rem;max-width:220px;margin:0 auto;}

/* ---------- WINERY DETAIL ---------- */
.detail-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:56px;margin-top:16px;}
.detail-fact-card{border:1px solid rgba(42,40,32,.12);padding:26px;background:var(--cream-2);height:fit-content;}
.detail-fact-card .row{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid rgba(42,40,32,.1);font-size:.88rem;}
.detail-fact-card .row:last-child{border-bottom:none;}
.detail-fact-card .row .k{color:var(--stone);}
.detail-fact-card .row .v{font-weight:600;color:var(--sage-deep);}
.detail-photo{position:relative;}
.detail-photo img{width:100%;border-radius:3px;display:block;}

.winery-logo-top{padding:34px 0 0;}
.winery-logo-top img{height:88px;width:auto;max-width:260px;object-fit:contain;}

.winery-link-bottom{margin-top:40px;padding-top:26px;border-top:1px solid rgba(42,40,32,.12);}
.detail-body p{color:#4a4636;font-size:1rem;margin:0 0 14px;}
.back-link{display:inline-flex;align-items:center;gap:8px;font-size:.82rem;color:var(--sage-deep);text-decoration:none;margin-top:4px;}
.back-link:hover{color:var(--sage);}

/* ---------- AKCE — obecný rámeček (bude doplněno) ---------- */
.event{margin-top:44px;display:grid;grid-template-columns:1.1fr .9fr;background:rgba(255,255,255,.06);}
.event-copy{padding:44px 46px;}
.event-copy h3{font-size:1.5rem;margin:14px 0 14px;color:var(--cream);}
.event-copy p{color:#dbe0cf;font-size:.95rem;max-width:420px;}
.event-facts{padding:44px 38px;display:flex;flex-direction:column;gap:16px;justify-content:center;background:rgba(0,0,0,.14);}
.event-facts .fact{display:flex;gap:14px;align-items:baseline;}
.event-facts .fact .n{font-family:'Fraunces',serif;font-size:1.3rem;color:var(--gold);font-weight:600;min-width:20px;}
.event-facts .fact .l{font-size:.84rem;color:#dbe0cf;}

.event-list{margin-top:44px;display:flex;flex-direction:column;gap:2px;background:rgba(42,40,32,.08);}
.event-row{background:var(--cream);display:grid;grid-template-columns:170px 1fr auto;gap:24px;align-items:center;padding:26px 30px;}
.event-row .when{font-family:'Fraunces',serif;font-style:italic;color:var(--sage-deep);font-size:1rem;}
.event-row h3{font-size:1.12rem;margin-bottom:6px;}
.event-row p{margin:0;color:#5a5646;font-size:.9rem;max-width:520px;}

/* ---------- CONTACT ---------- */
.contact-grid{margin-top:44px;display:grid;grid-template-columns:1fr 1fr;gap:56px;}
.contact-block h3{font-size:.95rem;color:var(--sage);margin-bottom:12px;font-family:'Inter',sans-serif;font-weight:600;letter-spacing:.02em;}
.contact-block p, .contact-block a{font-size:.95rem;color:#4a4636;text-decoration:none;}
.contact-block a:hover{color:var(--sage-deep);}
.contact-block + .contact-block{margin-top:30px;}
.social-row{display:flex;gap:12px;margin-top:6px;}
.social-row a{width:36px;height:36px;border:1px solid rgba(42,40,32,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.76rem;transition:border-color .2s, background .2s;}
.social-row a:hover{border-color:var(--sage-deep);background:rgba(90,110,70,.08);}
.map-card{border:1px solid rgba(42,40,32,.12);padding:28px;background:var(--cream-2);}
.map-card .row{display:flex;gap:16px;padding:11px 0;border-bottom:1px solid rgba(42,40,32,.1);}
.map-card .row:last-child{border-bottom:none;}
.map-card .row .k{width:110px;font-size:.76rem;color:var(--stone);letter-spacing:.03em;text-transform:uppercase;flex-shrink:0;}
.map-card .row .v{font-size:.9rem;color:var(--ink);}
.people-grid{margin-top:44px;display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:var(--stone);}
.person{background:var(--cream);padding:28px 30px;}
.person .role{font-size:.66rem;letter-spacing:.13em;text-transform:uppercase;font-weight:600;color:var(--sage);margin-bottom:8px;}
.person h3{font-size:1.1rem;margin-bottom:6px;}
.person a{font-size:.88rem;color:var(--sage-deep);text-decoration:none;}
.person a:hover{color:var(--sage);}

/* ---------- HOME TEASERS ---------- */
.teaser-cta{margin-top:36px;}

/* ---------- FOOTER (black) ---------- */
footer{background:var(--black);color:#b9b6a9;padding:56px 0 26px;}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding-bottom:34px;border-bottom:1px solid rgba(255,255,255,.1);}
img.foot-brand{width:150px;height:auto;margin-bottom:14px;}
.foot-grid p{font-size:.86rem;color:#8f8c7e;max-width:280px;margin:0;}
.foot-col h4{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:#8f8c7e;margin-bottom:12px;font-weight:600;}
.foot-col a{display:block;font-size:.86rem;color:#d8d5c8;text-decoration:none;margin-bottom:8px;}
.foot-col a:hover{color:var(--gold);}
.foot-social{display:flex;gap:10px;margin-top:8px;}
.foot-social a{width:32px;height:32px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.72rem;margin:0;}
.foot-bottom{display:flex;justify-content:space-between;padding-top:20px;font-size:.76rem;color:#77746a;flex-wrap:wrap;gap:10px;}
.foot-bottom a{color:#77746a;text-decoration:none;}
.foot-bottom a:hover{color:var(--gold);}

.vine-divider{height:30px;background-image:repeating-linear-gradient(115deg, var(--gold) 0 2px, transparent 2px 32px);opacity:.3;}

@media (max-width:900px){
  ul.links{display:none;}
  .hero{height:68vh;min-height:460px;}
  .page-hero{height:38vh;min-height:260px;}
  .hero-brand-row{flex-direction:column;align-items:flex-start;gap:16px;}
  .hero-seal{width:96px;height:96px;}
  .about-grid{grid-template-columns:1fr;gap:30px;}
  .goals{grid-template-columns:1fr;}
  .members-grid, .members-grid.compact{grid-template-columns:1fr;}
  .event{grid-template-columns:1fr;}
  .event-row{grid-template-columns:1fr;gap:8px;}
  .contact-grid{grid-template-columns:1fr;gap:34px;}
  .detail-grid{grid-template-columns:1fr;gap:28px;}
  .people-grid{grid-template-columns:1fr;}
  .foot-grid{grid-template-columns:1fr;gap:26px;}
  .section{padding:64px 0;}
  .wrap{padding:0 22px;}
}
