/* Basic reset and variables */
:root{
  --bg:#ffffff;--fg:#0f172a;--muted:#6b7280;--primary:#111827;--accent:#0f172a;
  --card:#f8fafc;--border:#e5e7eb;
}
*{box-sizing:border-box}html,body{margin:0;padding:0}
body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial,'Noto Sans',sans-serif;background:var(--bg);color:var(--fg);line-height:1.6}

/* Layout helpers */
.container{width:min(1180px,92%);margin:0 auto}
.section{padding:64px 0}
.section.alt{background:#fafafa}
h1,h2,h3{line-height:1.2;margin:0 0 12px}
.muted{color:var(--muted)} .small{font-size:.9rem}

/* Navbar */
.navbar{position:sticky;top:0;z-index:50;background:#fff;backdrop-filter:saturate(180%) blur(6px);border-bottom:1px solid var(--border)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:10px 0}
.brand .logo{font-weight:800;font-size:1.25rem;letter-spacing:.2px}
.nav-links{display:flex;gap:18px}
.nav-links a{color:var(--fg);text-decoration:none;padding:8px 10px;border-radius:10px}
.nav-links a:hover{background:#f3f4f6}
.hamburger{display:none;background:none;border:0;padding:6px;cursor:pointer}
.hamburger span{display:block;width:24px;height:2px;background:var(--fg);margin:5px 0;border-radius:1px}
.mobile-menu{display:none;flex-direction:column;padding:10px;border-top:1px solid var(--border)}
.mobile-menu a{padding:10px;border-radius:8px;text-decoration:none;color:var(--fg)}
.mobile-menu a:hover{background:#f3f4f6}

/* Hero */
.hero{position:relative;isolation:isolate}
.hero-bg{position:absolute;inset:0;z-index:-1;overflow:hidden}
.hero-bg img{width:100%;height:100%;object-fit:cover;filter:brightness(.82)}
.hero .hero-content{padding:96px 0 120px;color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.35)}
.hero h1{font-size:clamp(28px,4.5vw,48px);margin-bottom:12px}
.btn{display:inline-block;padding:12px 18px;border-radius:999px;text-decoration:none;border:1px solid #ffffffa6;margin-right:8px}
.btn-primary{background:#fff;color:#111}
.btn-ghost{background:transparent;color:#fff}

/* Grid */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.image-card img,.image-wide img{width:100%;height:auto;display:block;border-radius:16px;box-shadow:0 4px 20px rgba(0,0,0,.1)}

/* Price grid */
.price-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:20px}
.card{background:var(--card);border:1px solid var(--border);padding:16px;border-radius:16px;text-align:center}
.card h3{margin:0 0 4px}

/* Forms */
.form label{display:block;margin:10px 0}
.form input,.form select,.form textarea{width:100%;padding:10px;border-radius:10px;border:1px solid var(--border);background:#fff}
.form button{margin-top: 6px;
  background: #111827;   /* tmavá šedá / skoro černá */
  color: #fff;           /* bílý text */
  padding: 12px 18px;
  border: none;
  border-radius: 8px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s ease;}
.hidden{display:none}

/* Footer */
.footer{border-top:1px solid var(--border);padding:22px 0;background:#fff}
.footer-grid{display:flex;align-items:center;justify-content:space-between}
.footer a{margin-left:14px;text-decoration:none;color:var(--fg)}

/* Responsive */
@media (max-width: 980px){
  .price-grid{grid-template-columns:repeat(3,1fr)}
  .grid-2{grid-template-columns:1fr}
}
@media (max-width: 640px){
  .nav-links{display:none}
  .hamburger{display:block}
  .price-grid{grid-template-columns:1fr 1fr}
  .footer-grid{flex-direction:column;gap:8px}
}


/* Logo v navigaci */
.navbar .logo {
  max-height: 60px;
  height: auto;
  width: auto;
  display: block;
}

/* Kalkulačka */
.calc-form label {
  font-weight: 600; /* tučné */
  display: block;
  margin: 12px 0;
}

.btn-black {
  background: #000;
  color: #fff;
  padding: 12px 18px;
  border: none;
  border-radius: 8px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s ease;
}
.btn-black:hover {
  background: #222;
}
