/*
Theme Name: Ceckopomaha
Theme URI: https://ceckopomaha.cz
Author: ChatGPT
Description: Kompletní hotová WordPress šablona (bez builderů) s grafikou – infuzní terapie vitaminem C.
Version: 2.0.9
License: GNU General Public License v2 or later
Text Domain: ceckopomaha
*/

:root{
  --green:#4b7f2a;
  --green-2:#2f6f3a;
  --orange:#f08a00;
  --text:#1f2933;
  --muted:#5b6770;
  --soft:#f3faf5;
  --border:#e6edf0;
  --shadow: 0 10px 30px rgba(16,24,40,.08);
  --radius: 18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:'Inter', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:var(--text);
  line-height:1.65;
  background:#fff url('assets/img/bg-soft.png') no-repeat center top / cover;
}
img{max-width:100%;height:auto}
a{color:var(--green-2);text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:1120px;margin:0 auto;padding:0 20px}
.section{position:relative;padding:64px 0}
.section.soft{background:var(--soft)}
.kicker{color:var(--orange);font-weight:600;letter-spacing:.02em;margin:0 0 10px}
.h1{font-size:46px;line-height:1.1;margin:0 0 12px;color:var(--green)}
.h2{font-size:34px;line-height:1.15;margin:0 0 18px;color:var(--green)}
.h3{font-size:20px;line-height:1.25;margin:0 0 10px}
.p{margin:0 0 12px;color:var(--muted)}
.lead{font-size:18px;color:var(--muted);max-width:60ch}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:12px 18px;border-radius:12px;border:1px solid transparent;
  background:var(--orange);color:#fff;font-weight:600;cursor:pointer;
  box-shadow:0 10px 20px rgba(240,138,0,.18);
}
.btn:hover{filter:brightness(.98);text-decoration:none}
.btn.secondary{background:var(--green);box-shadow:0 10px 20px rgba(75,127,42,.18)}

.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.78);
  backdrop-filter:saturate(1.4) blur(10px);
  border-bottom:1px solid rgba(230,237,240,.9);
}
.header-inner{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:14px 0;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:12px}
.brand img{height:54px;width:auto}
.top-contact{display:flex;gap:18px;flex-wrap:wrap;align-items:center}
.top-contact a{font-weight:600;color:var(--text)}
.top-contact a small{display:block;font-weight:500;color:var(--muted);font-size:12px;margin-top:2px}
.nav{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.nav a{font-weight:600;color:var(--text);padding:8px 10px;border-radius:10px}
.nav a:hover{background:rgba(75,127,42,.08);text-decoration:none}
.nav .cta{background:rgba(240,138,0,.12);color:var(--orange)}
.nav .cta:hover{background:rgba(240,138,0,.16)}

.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:center}
.hero-art img{width:100%;max-width:560px;margin-left:auto;display:block;filter:drop-shadow(0 18px 30px rgba(16,24,40,.12))}
.hero-wave{position:absolute;left:0;right:0;bottom:-1px;height:90px;background:url('assets/svg/wave-top.svg') no-repeat center/100% 100%}

.about-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:28px;align-items:start}
.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}
.about-photo{overflow:hidden}
.about-photo .ph{aspect-ratio:4/3;background:linear-gradient(135deg, rgba(75,127,42,.10), rgba(240,138,0,.08));display:flex;align-items:center;justify-content:center;padding:18px}
.about-photo .ph p{margin:0;color:var(--muted);text-align:center;max-width:34ch}
.about-photo .ph strong{color:var(--text)}
.badges{display:grid;gap:10px;margin-top:14px}
.badge{display:flex;gap:10px;align-items:flex-start}
.badge .dot{width:22px;height:22px;border-radius:999px;background:rgba(75,127,42,.12);display:flex;align-items:center;justify-content:center;flex:0 0 auto;margin-top:2px}
.badge .dot svg{width:14px;height:14px}

.benefits-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:18px}
.benefit{padding:18px;display:flex;gap:14px;align-items:flex-start}
.icon-ring{width:46px;height:46px;border-radius:999px;border:2px solid rgba(75,127,42,.22);display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.9);flex:0 0 auto}
.icon-ring svg{width:22px;height:22px}
.benefit p{margin:0;color:var(--muted)}

.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:stretch;margin-top:16px}
.booking-card{padding:22px}
.map-ph{border-radius:var(--radius);overflow:hidden;min-height:220px;background:linear-gradient(135deg, rgba(75,127,42,.10), rgba(240,138,0,.08));display:flex;align-items:center;justify-content:center;padding:18px}
.map-ph p{margin:0;color:var(--muted);text-align:center}

.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start;margin-top:10px}
.contact-card{padding:22px}

.footer{background:linear-gradient(180deg, rgba(75,127,42,.95), rgba(47,111,58,.98));color:#fff;padding:26px 0}
.footer p{margin:0;color:rgba(255,255,255,.88)}
.footer .tiny{margin-top:6px;font-size:13px;color:rgba(255,255,255,.78)}

.decor-orange{position:absolute;left:-30px;bottom:-40px;width:160px;opacity:.92;pointer-events:none;filter:drop-shadow(0 18px 28px rgba(16,24,40,.10))}
.section.soft .decor-orange{left:auto;right:-30px;bottom:-30px;width:140px;opacity:.9}
.wave-bottom{position:absolute;left:0;right:0;top:-1px;height:90px;background:url('assets/svg/wave-bottom.svg') no-repeat center/100% 100%}

@media (max-width: 920px){
  .hero-grid,.about-grid,.benefits-grid,.booking-grid,.contact-grid{grid-template-columns:1fr}
  .h1{font-size:38px}
  .h2{font-size:30px}
  .hero-art img{max-width:520px;margin:16px auto 0}
}


/* v2 header improvements */
.brand.brand-text{
  display:flex;flex-direction:column;gap:2px;
  font-weight:800;letter-spacing:.02em;
}
.brand.brand-text a{color:var(--green);font-size:20px;text-decoration:none}
.brand-sub{font-size:12px;color:var(--muted);font-weight:600}

.top-contact a{
  display:flex;flex-direction:column;
  padding:10px 12px;border-radius:14px;
  background:rgba(255,255,255,.9);
  border:1px solid rgba(230,237,240,.9);
  box-shadow: 0 10px 22px rgba(16,24,40,.06);
  min-width: 170px;
}
.top-contact a:hover{background:#fff;text-decoration:none}

/* hero art blend */
.hero-art{
  padding:12px;
  border-radius: 24px;
  background: radial-gradient(circle at 20% 20%, rgba(240,138,0,.10), transparent 55%),
              radial-gradient(circle at 80% 30%, rgba(75,127,42,.12), transparent 60%);
}

/* v2.0.3 hero logo fix */
.hero-art img{background:transparent;}

/* v2.0.4 map fix (Mapy.com blocks iframes) */
.map-block{background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}


/* v2.0.7 hero banner sizing + safe crop */
.hero-banner{
  position:relative;
  width:100%;
  height:420px;               /* zmenšení sekce */
  overflow:hidden;
  border-bottom: 1px solid rgba(230,237,240,.9);
}
.hero-banner img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;           /* bezpečný ořez */
  object-position:right center; /* priorita grafiky vpravo */
}
@media (max-width: 768px){
  .hero-banner{ height:300px; }
  .hero-banner img{ object-position:center center; }
}
