/* Cestovatel.cz — společná hlavička a patička webu.
   Jeden soubor pro ručně udržované stránky (web.css) i pro generované
   (clanek.css). Dokud byla definovaná zvlášť v obou, titulka měla
   rozbalovací „Destinace“ a hledání, kdežto článek jen holý řádek odkazů —
   a patička se v rubrikách lámala do dvou řádků, protože měla jiná čísla
   (5×178+4×30 = 1010 px se do 1008 px nevejde) než titulka. */


/* Šířka obsahu. Patří sem, ne do web.css: hlavička je obalená
   v .container a generované stránky web.css nenačítají — bez tohohle
   pravidla se jim hlavička roztáhla přes celou šířku, zatímco titulka
   ji měla vycentrovanou na 1120 px. */
.container{max-width:1120px;margin:0 auto}
.px{padding-left:var(--edge);padding-right:var(--edge)}

.logo{font-family:var(--fh);font-weight:800;font-size:20px;letter-spacing:-.02em;color:var(--ink)}
.logo .tld{color:var(--orange)}
/* ---------------------------------------------------------- hlavička */
.site-header{position:sticky;top:0;z-index:40;background:#fff;border-bottom:1px solid var(--line)}
.site-header__in{display:flex;align-items:center;gap:18px;padding:12px var(--edge)}
/* nowrap: se šesti rubrikami a hledáním se nav při ~1100 px lámal
   do druhého řádku a hlavička vypadala rozsypaně. */
.site-nav{display:flex;align-items:center;gap:15px;flex-wrap:nowrap;font-size:14.5px;font-weight:500;white-space:nowrap}
.site-nav a,.site-nav button{color:var(--ink)}
.site-nav a:hover,.site-nav button:hover{color:var(--orange)}
.site-nav button{font:inherit;font-weight:500;background:none;border:0;padding:0;cursor:pointer}
.site-search{display:flex;align-items:center;gap:8px;margin-left:auto;flex:0 1 auto;min-width:0;background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:7px 13px}
.site-search__icon{width:14px;height:14px;border:2px solid var(--faint);border-radius:50%;position:relative;flex:none}
.site-search__icon::after{content:"";position:absolute;right:-5px;bottom:-4px;width:7px;height:2px;background:var(--faint);transform:rotate(45deg)}
.site-search input{font:inherit;font-size:14px;border:0;background:none;outline:none;width:min(18vw,190px);min-width:0;color:var(--ink)}
.burger{display:none;flex-direction:column;gap:4px;background:none;border:0;padding:6px;cursor:pointer}
.burger span{display:block;width:20px;height:2px;background:var(--ink);border-radius:2px}

/* rozbalovací megamenu */
.megamenu{display:none;border-top:1px solid var(--line);background:#fff}
.megamenu.is-open{display:block}
.megamenu__grid{max-width:1120px;margin:0 auto;padding:22px var(--edge);display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:22px}
.megamenu__col{display:flex;flex-direction:column;gap:6px;font-size:14px}
.megamenu__col a{color:var(--ink)}
.megamenu__col a:hover{color:var(--orange)}
.megamenu__col .is-top{font-weight:600}
.megamenu__col .eyebrow{margin-bottom:6px}
.megamenu__bar{border-top:1px solid var(--line);padding:12px var(--edge);text-align:center;font-weight:600;font-size:14px}

/* mobilní menu */
.mobile-menu{display:none;position:fixed;inset:0;z-index:60;background:#fff;padding:16px var(--edge);overflow:auto}
.mobile-menu.is-open{display:block}
.mobile-menu__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.mobile-menu__close{font-size:26px;line-height:1;background:none;border:0;cursor:pointer;color:var(--ink)}
.mobile-menu nav{display:flex;flex-direction:column;gap:12px;font-size:17px}
.mobile-menu nav a{color:var(--ink)}
.mobile-menu summary{font-weight:600;cursor:pointer}
.mobile-menu__group{display:flex;flex-direction:column;gap:8px;padding:12px 0 4px;font-size:15px}

@media (max-width:1120px){
  .site-search{display:none}
}
@media (max-width:820px){
  .site-nav,.megamenu{display:none}
  .burger{display:flex;margin-left:auto}
}

/* ---------------------------------------------------------- patička */
.site-footer{margin-top:46px;background:var(--sea);color:#fff}
.site-footer__in{max-width:1120px;margin:0 auto;padding:34px var(--edge)}
.site-footer__cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:24px}
.site-footer__col{display:flex;flex-direction:column;gap:7px;font-size:14px}
.site-footer__col b{font-family:var(--fh);font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#ffb38a;margin-bottom:3px}
.site-footer a{color:rgba(255,255,255,.86)}
.site-footer a:hover{color:#fff}
.site-footer .logo{color:#fff}
.site-footer__bottom{display:flex;gap:14px;flex-wrap:wrap;align-items:center;justify-content:space-between;margin-top:28px;padding-top:18px;border-top:1px solid rgba(255,255,255,.18);font-size:13px;color:rgba(255,255,255,.7)}
.site-footer__legal{display:flex;gap:14px}
.site-footer__cols{grid-template-columns:repeat(auto-fit,minmax(158px,1fr))}
