
:root{
  --brand:#38BDF8;
  --brand-500:#0EA5E9;
  --brand-50:#E8F6FF;
  --dark:#0b1220;
  --text:#1f2a37;
  --muted:#6b7280;
  --bg:#ffffff;
  --shadow:0 10px 25px rgba(0,0,0,.07);
  --radius:16px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--text);background:var(--bg);font-family:'Manrope', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;line-height:1.6}
img{max-width:100%;display:block}
.container{width:min(1120px,92%);margin-inline:auto}
.section{padding:0px 0}
h1,h2,h3{font-family:'Manrope', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;margin:0 0 16px;line-height:1.2;color:#0b1220}
h1{font-size:clamp(32px,6vw,52px)}
h2{font-size:clamp(24px,4vw,36px)}
h3{font-size:clamp(18px,2.6vw,24px)}
p{margin:0 0 12px}
.lead{font-size:1.125rem;color:#374151;text-align:center;}
.button{display:inline-flex;align-items:center;gap:.5rem;border:none;cursor:pointer;text-decoration:none;background:linear-gradient(135deg,var(--brand),var(--brand-500));color:white;padding:14px 22px;border-radius:999px;box-shadow:var(--shadow);font-weight:700}
.button.outline{background:transparent;border:2px solid #ffffff;color:#ffffff}
.button:hover{transform:translateY(-1px)}
.badge{display:inline-block;padding:6px 10px;background:var(--brand-50);border-radius:999px;color:#0369A1;font-weight:600}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid #eef2f7}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0}
.nav .logo{display:flex;align-items:center;gap:10px}
.nav .logo img{height:38px}
.nav-menu{list-style:none;display:flex;gap:20px;margin:0;padding:0;align-items:center}
.nav-menu a{color:#0f172a;text-decoration:none;font-weight:600}
.nav-menu a:hover{color:var(--brand-500)}
.nav-toggle{display:none;background:none;border:none}
.hero{position:relative}

.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,6,23,.55),rgba(2,6,23,.35))}
.hero-inner{position:absolute;inset:0;display:grid;place-items:center;text-align:center;color:white;padding:0 16px}
.hero-inner .content{max-width:840px}
.hero-inner p{color:#e5e7eb}

.about{background:#fff;position:relative;padding-bottom:0}
.about .top{padding-bottom:32px}
.wave{width:100%;display:block;margin-top:32px}
.process .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:24px}
.step{background:#fff;border:1px solid #eef2f7;border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}
.step .num{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--brand-50);color:#0369A1;font-weight:800;margin-bottom:12px}
.step h3{margin-bottom:8px}
.why{background:linear-gradient(180deg,#fff,#f8fdff)}
.why .grid{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:center}
.checklist{display:grid;gap:10px;margin-top:10px;}
.checklist li{list-style:none;position:relative;padding-left:34px;}
.checklist li::before{content:'';position:absolute;left:0;top:6px;width:22px;height:22px;border-radius:6px;background:linear-gradient(135deg,var(--brand),var(--brand-500));mask:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"><path fill=\"white\" d=\"M9 16.2l-3.5-3.5L4 14.2 9 19l12-12-1.4-1.4z\"/></svg>') center/14px no-repeat}
.faq .items{display:grid;gap:12px;margin-top:12px}
.faq .item{border:1px solid #e5e7eb;border-radius:12px;background:#fff;overflow:hidden}
.faq .item button{width:100%;text-align:left;padding:18px 18px;background:#fff;border:none;font:inherit;font-weight:700;display:flex;justify-content:space-between;align-items:center;cursor:pointer}
.faq .item[aria-expanded="true"] .answer{max-height:500px;padding:0 18px 18px}
.faq .answer{max-height:0;overflow:hidden;transition:max-height .35s ease, padding .35s ease;color:#334155}
.calc .wrapper{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:start}
.card{background:#fff;border:1px solid #eef2f7;border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-grid .full{grid-column:1/-1}
label{font-weight:700;font-size:.95rem;display:block;margin-bottom:6px}
input,textarea,select{width:100%;padding:12px 14px;border:1px solid #e5e7eb;border-radius:12px;font:inherit;background:#fff}
input:focus,textarea:focus,select:focus{outline:2px solid var(--brand-50);border-color:var(--brand-500)}
.helper{font-size:.9rem;color:var(--muted)}
.quote{display:flex;align-items:center;justify-content:space-between;gap:10px}
.quote .sum{font-size:1.6rem;font-weight:800;color:#0b1220}
.small{font-size:.85rem;color:var(--muted)}
.notice{background:var(--brand-50);padding:12px 14px;border-radius:12px;color:#0369A1}
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:24px;background:#0ea5e9;color:white;padding:12px 16px;border-radius:10px;box-shadow:var(--shadow);display:none;z-index:60}
.site-footer{background:#0b1220;color:#CBD5E1;padding-top:0 rem}
.site-footer .cols{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:28px}
.site-footer a{color:#e2e8f0;text-decoration:none}
.site-footer .bottom{border-top:1px solid #1f2937;padding:16px 0;margin-top:18px;color:#94a3b8;font-size:.9rem}



@media (max-width:980px){
  .process .grid{grid-template-columns:repeat(2,1fr)}
  .why .grid,.calc .wrapper{grid-template-columns:1fr}
  .nav-menu{display:none;position:absolute;top:64px;left:0;right:0;background:white;padding:16px 5%;border-bottom:1px solid #eef2f7}
  .nav-menu.open{display:grid;gap:12px}
  .nav-toggle{display:block}
}
@media (max-width:560px){
  .form-grid{grid-template-columns:1fr}
}

.site-footer h3 {
  color: #ffffff !important; /* čistě bílé, přebije brand */
}

.hero-single 

.hero-banner 

.hero-clean {
  position: relative;
  height: 80vh;
  min-height: 520px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #fff;
  overflow: hidden;
}
.hero-clean .hero-bg {
  position: absolute;
  inset: 0;
  background: url('../img/slider1.jpg') center/cover no-repeat;
}
.hero-clean::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(2,6,23,0.55), rgba(2,6,23,0.35));
}
.hero-clean .hero-content {
  position: relative;
  z-index: 1;
  max-width: 800px;
  padding: 0 16px;
}
.hero-clean h1 {font-size: clamp(36px,6vw,56px); margin-bottom: 18px;}
.hero-clean p {color: #e5e7eb; margin-bottom: 24px;}

/* === HERO CLEAN (fresh minimal, no JS) === */
.hero-clean{
  position:relative;
  height:72vh; min-height:520px; overflow:hidden;
  display:grid; place-items:center; text-align:center; color:white;
}
.hero-clean__bg{
  position:absolute; inset:0;
  background-image: url('../img/slider1.jpg');
  background-size: cover; background-position:center;
  filter: none;
}
.hero-clean::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(2,6,23,.55), rgba(2,6,23,.35));
}
.hero-clean__inner{ position:relative; z-index:1; padding:0 16px; }
.hero-clean .lead{ color:#e5e7eb }

/* === Growvia-inspired headings underline === */
.hd{
  position:relative;
}
.hd::after{
  content:""; display:block; width:96px; height:4px;
  margin:14px auto 0; border-radius:999px;
  background:linear-gradient(90deg, var(--brand), var(--brand-500));
}

/* === Cookie banner === */
.cookie-banner{ position:fixed; left:0; right:0; bottom:0; z-index:9999; background:rgba(15,23,42,.9); color:#e5e7eb; padding:14px; display:none; }
.cookie-banner[hidden]{ display:none !important; }
.cookie-inner{ max-width:1120px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.cookie-copy p{ margin:.3rem 0 .6rem; color:#cbd5e1; }
.cookie-link{ color:#7dd3fc; text-decoration:underline; }
.cookie-actions{ display:flex; gap:10px; flex-wrap:wrap; }
.cookie-btn{ padding:10px 16px; }
@media (max-width:760px){
  .cookie-inner{ flex-direction:column; align-items:flex-start; }
}

/* === Mobile nav spacing improvements === */
@media (max-width: 980px){
  .nav-menu.open a{ padding:.6rem .2rem; }
}

/* === Hero Growvia style === */
.hero{position:relative; min-height:90vh; display:flex; align-items:center; text-align:center; color:#fff;}
.hero-bg{position:absolute; inset:0; background:url('../img/slider1.jpg') center/cover no-repeat;}
.hero-overlay{position:absolute; inset:0; background:linear-gradient(180deg,rgba(2,6,23,.6),rgba(2,6,23,.4));}
.hero-inner{position:relative; z-index:1; max-width:860px; margin:0 auto; padding:0 1rem;}
.hero-title{font-size:2.6rem; font-weight:700; margin-bottom:1rem;}
.hero-sub{font-size:1.25rem; margin-bottom:2rem; color:#e5e7eb;}
.hero-cta{display:flex; justify-content:center; gap:16px; flex-wrap:wrap;}

/* Sticky header */
.site-header.sticky{position:sticky; top:0; z-index:1000; background:rgba(255,255,255,0.9); backdrop-filter:saturate(180%) blur(10px); box-shadow:0 2px 6px rgba(0,0,0,.06);}

/* Heading underline */
.hd{text-align:center; position:relative; margin-bottom:2rem;}
.hd::after{content:""; display:block; width:96px; height:4px; margin:14px auto 0; border-radius:999px; background:linear-gradient(90deg,var(--brand), var(--brand-500));}

/* Why us icons */
.why-item{display:flex; align-items:flex-start; gap:10px; margin:12px 0;}
.why-item svg{flex-shrink:0; width:24px; height:24px; color:var(--brand);}

/* Cookie banner already styled previously */

/* Mobile nav CTA */
.nav-list .btn-nav{display:block; margin-top:1rem;}
.lang-switcher{display:inline-block; margin-left:10px; font-weight:700}
.lang-switcher a{margin:0 4px; font-weight:500;}

/* === HERO (Growvia style) === */
.hero.section{position:relative; padding:0}
.hero .hero-media{position:absolute; inset:0; overflow:hidden}
.hero .hero-media img{width:100%; height:100%; object-fit:cover; transform:scale(1.02)}
.hero .hero-overlay{position:absolute; inset:0; background:linear-gradient(180deg, rgba(2,6,23,.55), rgba(2,6,23,.35))}
.hero .hero-inner{position:relative; z-index:1; display:grid; place-items:center; min-height:82vh; text-align:center; color:white; padding:80px 0}
.hero .hero-title{max-width:880px; margin:0 auto 14px; color:#FFFFFF;}
.hero .hero-title span{color:#e0f2fe}
.hero .hero-sub{max-width:880px; margin:0 auto 18px; color:#e5e7eb}
.hero .hero-ctas{display:flex; gap:12px; justify-content:center; flex-wrap:wrap}

@media (max-width: 760px){
  .hero .hero-inner{min-height:560px; padding:60px 0}
}

/* Sticky header shadow */
.site-header.sticky-shadow{box-shadow:0 8px 24px rgba(0,0,0,.08)}

/* === Mobile menu (Growvia-like) === */
.nav-menu a.active{color:var(--brand-500)}
.nav-cta-desktop{display:inline-flex}
.nav-cta-mobile{display:none}
.lang-switcher{display:inline-block; margin-left:10px; font-weight:700}

@media (max-width:980px){
  .nav-cta-desktop{display:none}
  .nav-cta-mobile{display:block; margin-top:8px}
  .lang-switcher{display:inline-block; margin-left:10px; font-weight:700}
  .nav-menu.open a{ padding:.7rem .2rem }
}

/* Why icons */
.why-icons{display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:10px}
.why-item{display:flex; gap:12px; align-items:flex-start; background:#fff; border:1px solid #eef2f7; border-radius:12px; padding:14px; box-shadow:var(--shadow)}
.why-item .iwrap{font-size:24px; width:36px; height:36px; display:grid; place-items:center; background:var(--brand-50); border-radius:10px; color:#0369A1;}

@media (max-width:680px){ .why-icons{grid-template-columns:1fr} }

/* Center headings with underline centered */
.hd{ text-align:center }
.hd::after{ margin-left:auto; margin-right:auto }

/* Icon badge for process steps */
.badge-icon{
  width:56px; height:56px; border-radius:16px;
  display:grid; place-items:center;
  background:linear-gradient(135deg, var(--brand), var(--brand-500));
  color:white; font-size:28px; box-shadow:var(--shadow); margin-bottom:12px;
}
.process .step{ display:flex; flex-direction:column; gap:6px }

/* Centered single form for Nezávazná nabídka */
.form-center{ display:grid; place-items:center }
.form-card{ width:100%; max-width:720px; margin-inline:auto }
.options{ display:flex; gap:16px; justify-content:center; flex-wrap:wrap; margin:0 0 10px; border:none; padding:0 }
.options legend {
    width: 100%;
    text-align: center;
    font-weight: 800;
    margin-bottom: 8px;
    padding-bottom: 1rem;
    padding-top: 1rem;
}
.options label{ display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border:1px solid #e5e7eb; border-radius:999px; background:#fff }
.options input[type="checkbox"]{ accent-color: var(--brand-500) }
.req{ color:#ef4444 }


