   :root{
      --brand: #ff7d24;          /* oranžová z loga (vážka) */
      --accent:#3a7e42;         /* zahradní zelená (tráva/kruh) */
      --hero-h: 60vh;           /* výška úvodní sekce */
    }

    body{ scroll-behavior:smooth; }

.hero{
  position: relative;
  min-height: 50vh;
 /* background: url("/assets/img/poz.webp") right bottom / 1050px auto no-repeat;*/
  background-color: #bfe0ad;
}


.form-label{
	font-weight:bold;
	margin-bottom:0px;
}

.hero-logo{
  position:absolute;
  left: clamp(8px, 3vw, 28px);
  top:  5px;
  z-index: 1; /* pod textem */
}

/* velikost loga */
.hero-logo svg{
  width: clamp(100px, 22vw, 230px);
  height: auto;
  display:block;
  background-color:#fff;
    border-radius: 300px;
	border: 2px solid #dbd533;
}

/* text posuň doprava o šířku loga; je nad logem */
.hero-copy{
  display:inline-block;
  z-index: 2;
  padding-left: clamp(180px, 24vw, 320px);
}

/* aby se tahy SVG netenčily při škálování */
.hero-logo svg [stroke]{ vector-effect: non-scaling-stroke; }


/* responsivní doladění: na mobilu zmenši vážku a zdvihni trávu */
@media (max-width: 575px){
  .hero{
    background:
      url("/assets/img/1.webp") center center / 900px auto no-repeat;,
      linear-gradient(180deg, #fbfbe3 0%, #fffbe9 60%);
  }

section{
	padding-top:40px;
}

}
/* mobil: stacknout pod sebe (logo nahoře, text pod ním) */
@media (max-width: 992px){
  .hero-logo{ position: absolute; margin-bottom: 12px;text-align:center;    display: inline-block; }
  .hero-copy{ padding-left: clamp(125px,25vw,200px);    display: inline-block; }
}

    .hero .container{ position:relative; z-index:2; padding-top: clamp(10px, 1vh, 96px); padding-bottom: clamp(24px, 6vh, 72px); }
    .brand-title{ font-weight:800; font-size: clamp(30px, 5vw, 70px); letter-spacing:.5px; margin:0; color:#0f2a1a; text-shadow:0 1px 2px rgba(255,255,255,.6); }
    .brand-sub{ font-size: clamp(16px, 2.5vw, 28px); opacity:.9; color:#0f2a1a; text-shadow:0 1px 1px rgba(255,255,255,.7);font-weight:bold }

    /* Dekorativní SVG ilustrace v pozadí hero */
    .hero-art{ position:absolute; inset:0; z-index:1; pointer-events:none; opacity:.38; }
    .hero-art [stroke]{ stroke-linecap:round; stroke-linejoin:round; }

    /* CTA na pravé straně hero */
    .hero-cta{ position: absolute; right: clamp(16px, 5vw, 56px); bottom: clamp(16px,4vw,48px); display:flex; gap:.5rem; align-items:center; z-index:2; }

    /* Hlavní rozvržení: obsah vlevo, menu vpravo */
    .content-wrap{ padding-block: 40px; }
    .side{ position: sticky; top: 90px; }
    #sideNav .nav-link{ color:#456; border-left:3px solid transparent; padding-left: .75rem; }
    #sideNav .nav-link:hover{ color:var(--accent); }
    #sideNav .nav-link.active{ color:var(--accent); border-left-color: var(--brand); font-weight:700; }

    /* Karty služeb */
    .service-card .badge-num{ background:var(--brand); color:#fff; width:38px; height:38px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; font-weight:700; margin-right:.4rem; }
    .service-card ul{ margin-bottom:0; }

    /* Galerie – jednoduchý placeholder grid */
    .gal-item{ background:#f4f7f5; border:1px solid #e8eef2; border-radius:12px; height:180px; }

    /* Patička */
    footer{ background:#0f2a1a; color:#d7e4dc; }
    a.link-invert{ color:#d7e4dc; }
    a.link-invert:hover{ color:#fff; }

    /* Mobilní topbar (jen na menších obrazovkách) */
    .mobile-topbar{ border-bottom:1px solid #e8eef2; }
	
/* základní vzhled mapy */
.cz-map [id^="CZ"] { fill:#eef6ee; stroke:#9bb99f; stroke-width:1.2;
  transition: fill .18s, stroke .18s, stroke-width .18s; cursor:pointer;
  vector-effect: non-scaling-stroke;
}
.cz-map .is-selected { fill:#3a7e42; stroke:#2a6d32; }
.cz-map .is-hover { stroke:#2a6d32; stroke-width:2.4; }

/* tooltip */
.map-tip { position:absolute; pointer-events:none; padding:.35rem .5rem;
  background:#183021; color:#fff; border-radius:.4rem; font-size:.875rem;
  transform:translate(-50%, calc(-100% - 8px)); opacity:0; transition:opacity .12s;
}
.map-tip.show { opacity:1; }	
	
/* overlay vrstva přes celé .hero, do které vážku dočasně přesuneme */
.hero-flylayer{
  position:absolute; inset:0; z-index:3; pointer-events:none;
}



	.hero { overflow: hidden; }
	
.service-card{
	    border-top: 2px solid #389e00;
		
}	

.card-header{
	background-color:#e7f3e0;
}
	
	
	
	
	.photo-row {
  overflow: hidden; /* co se nevejde, prostě zmizí */
  padding-top:15px;
  padding-bottom:10px;
}

.photo-card {
  flex: 0 0 400px;       /* všechny mají fixní šířku 200px */
  height: 300px;         /* výška */
  margin: 0 10px;        /* okraje mezi fotkami */
  background: #fff;      /* „pohlednicový“ podklad */
  padding: 6px;          /* rámeček */
  box-shadow: 0 4px 8px rgba(0,0,0,0.15);
  border: 1px solid #ccc;
  transition: transform 0.3s ease;
}
.photo-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;     /* ořízne, aby vyplnila celý rámeček */
}

/* Trochu náhodně nahnuté */
.tilt-1 { transform: rotate(-2deg); }
.tilt-2 { transform: rotate(1.5deg); }
.tilt-3 { transform: rotate(-1deg); }
.tilt-4 { transform: rotate(2deg); }
.tilt-5 { transform: rotate(-1.5deg); }

/* Na hover se trochu narovnají a „vyjedou“ dopředu */
.photo-card:hover {
  transform: rotate(0deg) scale(1.05);
  z-index: 2;
}








.custom-card .nadpis {
    font-size: 25px;
    line-height: 1.2;
}
.card-body .nadpis {
    font-size: 20px;
   /* color: #0f2a1a;/*#d18029;*/
    padding-top: 10px;
    padding-bottom: 20px;
	text-align:center;
	
	
	    font-weight: 800;
   
    letter-spacing: .5px;

    text-shadow: 0 1px 2px rgba(255, 255, 255, .6);
}

a.card-link{
	text-decoration:none;
}