/* Progressive responsive layer. Desktop rules intentionally remain in base.css. */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.menu-toggle { display: none; }
.menu-backdrop {
  position: fixed;
  inset: 0;
  z-index: 5050;
  visibility: hidden;
  opacity: 0;
  background: rgba(8, 8, 10, .68);
  backdrop-filter: blur(5px);
  transition: opacity 320ms ease, visibility 320ms ease;
}
.menu-backdrop.is-visible { visibility: visible; opacity: 1; }
#header .navigation .offcanvas-only { display: none; }

.lightbox {
  position: fixed;
  inset: 0;
  z-index: 5000;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(0, 0, 0, .9);
}
.lightbox[hidden] { display: none; }
.lightbox__figure { max-width: min(1200px, 92vw); margin: 0; text-align: center; }
.lightbox__image { display: block; max-width: 100%; max-height: 86vh; margin: auto; }
.lightbox__caption { min-height: 1.5em; padding-top: 10px; color: #fff; }
.lightbox__close,
.lightbox__previous,
.lightbox__next {
  position: absolute;
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  color: #fff;
  background: rgba(224, 31, 50, .9);
  cursor: pointer;
  font: 30px/1 Arial, sans-serif;
}
.lightbox__close { top: 20px; right: 20px; }
.lightbox__previous { top: 50%; left: 20px; transform: translateY(-50%); }
.lightbox__next { top: 50%; right: 20px; transform: translateY(-50%); }

body.search-open { overflow: hidden; }
.search-dialog {
  position: fixed;
  inset: 0;
  z-index: 110000;
  box-sizing: border-box;
  overflow-y: auto;
  padding: clamp(24px, 7vh, 72px) 20px;
  background: rgba(8, 8, 10, .8);
  backdrop-filter: blur(8px);
}
.search-dialog[hidden] { display: none; }
.search-dialog__panel {
  position: relative;
  box-sizing: border-box;
  width: min(760px, 100%);
  max-height: calc(100vh - 48px);
  max-height: calc(100dvh - 48px);
  overflow-y: auto;
  margin: auto;
  padding: 30px;
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 16px;
  background: #f7f7f8;
  box-shadow: 0 28px 100px rgba(0, 0, 0, .55);
}
.search-dialog__brand {
  margin: 0 52px 24px 0;
  color: #202023;
  font-size: 25px;
  font-weight: 800;
  letter-spacing: -.7px;
}
.search-dialog__brand strong { color: #e01f32; }
.search-dialog__brand span { display: block; margin-top: 3px; color: #77777d; font-size: 11px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase; }
.search-dialog__close {
  position: absolute;
  top: 22px;
  right: 22px;
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 50%;
  color: #fff;
  background: #e01f32;
  box-shadow: 0 7px 20px rgba(224, 31, 50, .3);
  cursor: pointer;
  font: 28px/1 Arial, sans-serif;
}
.search-dialog__field { position: relative; display: block; }
.search-dialog__input {
  box-sizing: border-box;
  width: 100%;
  height: 58px;
  padding: 0 58px 0 18px;
  border: 2px solid #dedee2;
  border-radius: 10px;
  outline: 0;
  color: #202023;
  background: #fff;
  font: 600 17px/1.3 'Open Sans', Arial, sans-serif;
  box-shadow: 0 7px 22px rgba(0, 0, 0, .06);
  transition: border-color 180ms ease, box-shadow 180ms ease;
}
.search-dialog__input:focus { border-color: #e01f32; box-shadow: 0 0 0 4px rgba(224, 31, 50, .1), 0 9px 28px rgba(0, 0, 0, .08); }
.search-dialog__icon { position: absolute; top: 50%; right: 20px; transform: translateY(-54%); color: #e01f32; font-size: 30px; font-weight: 700; pointer-events: none; }
.search-dialog__status { min-height: 20px; padding: 13px 2px 8px; color: #707076; font-size: 13px; }
.search-results { margin: 0; padding: 0; list-style: none; }
.search-results li + li { margin-top: 7px; }
.search-results a {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 3px 16px;
  padding: 14px 46px 14px 16px;
  border: 1px solid #e2e2e5;
  border-radius: 10px;
  color: #2b2b2e;
  background: #fff;
  text-decoration: none;
  box-shadow: 0 3px 12px rgba(0, 0, 0, .035);
  transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}
.search-results a::after { content: '›'; position: absolute; top: 50%; right: 17px; transform: translateY(-52%); color: #e01f32; font-size: 27px; }
.search-results a:hover,
.search-results a.is-active { transform: translateX(4px); border-color: #e01f32; box-shadow: 0 7px 20px rgba(224, 31, 50, .1); }
.search-results__title { overflow: hidden; font-size: 16px; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }
.search-results__path { align-self: center; color: #99999f; font-size: 11px; }
.search-results__excerpt { grid-column: 1 / -1; margin: 0; padding: 0; color: #66666c; font-size: 13px; line-height: 1.45; }
.search-results mark { padding: 0 2px; border-radius: 2px; color: inherit; background: #f7dc50; }
.search-dialog__hint { margin-top: 18px; color: #89898e; font-size: 11px; text-align: center; }
.search-dialog__hint kbd { display: inline-block; min-width: 17px; margin: 0 2px; padding: 2px 4px; border: 1px solid #d4d4d7; border-bottom-width: 2px; border-radius: 4px; color: #59595e; background: #fff; font: inherit; }

.thank-you-card {
  margin: 8px 0 24px;
  padding: 34px 36px;
  border: 1px solid #e2e2e2;
  border-top: 5px solid #e01f32;
  border-radius: 12px;
  background: linear-gradient(145deg, #fff 0%, #fafafa 100%);
  box-shadow: 0 14px 38px rgba(0, 0, 0, .08);
  text-align: center;
}
.thank-you-card__icon { display: grid; place-items: center; width: 72px; height: 72px; margin: 0 auto 18px; border: 6px solid #fff5c1; border-radius: 50%; color: #fff; background: #e01f32; box-shadow: 0 8px 25px rgba(224, 31, 50, .24); font: 800 36px/1 Arial, sans-serif; }
.thank-you-card__eyebrow { margin: 0 0 6px; color: #e01f32; font-size: 12px; font-weight: 800; letter-spacing: 1px; text-transform: uppercase; }
.thank-you-card h2 { margin: 0; color: #252529; font-size: 29px; line-height: 1.25; }
.thank-you-card__lead { max-width: 620px; margin: 14px auto 25px; color: #606066; font-size: 15px; line-height: 1.7; }
.thank-you-card__steps { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; text-align: left; }
.thank-you-card__steps > div { display: flex; gap: 12px; padding: 16px; border: 1px solid #e5e5e7; border-radius: 9px; background: #fff; }
.thank-you-card__steps span { flex: 0 0 auto; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; color: #28282b; background: #f7d93b; font-weight: 800; }
.thank-you-card__steps p { margin: 0; color: #28282b; line-height: 1.4; }
.thank-you-card__steps small { display: block; margin-top: 4px; color: #77777d; font-size: 12px; line-height: 1.5; }
.thank-you-card__note { margin: 19px 0 0; color: #77777d; font-size: 12px; }
.thank-you-card__actions { display: flex; justify-content: center; gap: 10px; margin-top: 20px; }
.thank-you-card__actions a { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; box-sizing: border-box; padding: 0 20px; border-radius: 7px; font-weight: 700; text-decoration: none; transition: transform 180ms ease, box-shadow 180ms ease; }
.thank-you-card__actions a:hover { transform: translateY(-2px); }
.thank-you-card__primary { color: #fff !important; background: linear-gradient(135deg, #e01f32, #bc0108); box-shadow: 0 8px 22px rgba(188, 1, 8, .22); }
.thank-you-card__secondary { border: 1px solid #d9d9dc; color: #303034 !important; background: #fff; }
.thank-you-card__secondary i { margin-right: 7px; color: #e01f32; }

@media (max-width: 980px) {
  html { width: 100%; height: auto; min-height: 100%; overflow-x: clip; overflow-y: visible; }
  body { width: 100%; height: auto; min-width: 0; min-height: 100vh; overflow-x: clip; overflow-y: visible; background-image: none; }
  body.menu-open { overflow: hidden; touch-action: none; }
  body.menu-open #header-outer { z-index: 100000; }
  #wrapper,
  #wrapper-inner,
  .max_layout { box-sizing: border-box; width: 100%; min-width: 0; }
  #wrapper { height: auto; min-height: 100vh; }
  body > #wrapper > #wrapper-inner { padding-bottom: 0; }
  .full_page { box-sizing: border-box; width: auto; min-width: 0; margin-right: 20px; margin-left: 20px; }
  img { max-width: 100%; height: auto; }

  #header-outer { height: 160px; background-position: 50% top; background-size: auto 190px; }
  #header .logo { padding: 18px 0 0; }
  #header .logo img { width: min(300px, 60vw); }
  #header .fb { top: 18px; right: 62px; }
  #header form { position: absolute; top: 72px; right: 0; width: min(350px, 100%); padding: 0; }
  #header form input { box-sizing: border-box; width: 100%; padding-right: 46px; }

  .menu-toggle {
    position: absolute;
    top: 18px;
    right: 0;
    display: block;
    width: 44px;
    height: 36px;
    padding: 8px 9px;
    border-radius: 5px;
    background: #e01f32;
    cursor: pointer;
    z-index: 5200;
    box-shadow: 0 8px 24px rgba(224, 31, 50, .28);
    transition: transform 240ms ease, background-color 240ms ease, box-shadow 240ms ease;
  }
  .menu-toggle:hover { transform: translateY(-2px); box-shadow: 0 12px 30px rgba(224, 31, 50, .42); }
  .menu-toggle > span:not(.sr-only) { display: block; height: 2px; margin: 4px 0; background: #fff; transform-origin: center; transition: transform 260ms ease, opacity 180ms ease; }
  body.menu-open .menu-toggle { position: fixed; top: 24px; right: 24px; background: #f7d93b; box-shadow: 0 10px 34px rgba(0, 0, 0, .35); }
  body.menu-open .menu-toggle > span:not(.sr-only) { background: #171719; }
  body.menu-open .menu-toggle > span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
  body.menu-open .menu-toggle > span:nth-child(2) { opacity: 0; }
  body.menu-open .menu-toggle > span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
  #header .navigation {
    position: fixed;
    z-index: 5100;
    top: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    gap: 7px;
    box-sizing: border-box;
    width: min(88vw, 390px);
    height: 100vh;
    height: 100dvh;
    padding: 104px 28px 30px;
    overflow-y: auto;
    visibility: hidden;
    opacity: 0;
    transform: translate3d(105%, 0, 0);
    border-left: 1px solid rgba(255, 255, 255, .09);
    border-radius: 0;
    background: radial-gradient(circle at 95% 2%, rgba(224, 31, 50, .42), transparent 34%), linear-gradient(145deg, #252529 0%, #141416 56%, #09090a 100%);
    box-shadow: -30px 0 80px rgba(0, 0, 0, .42);
    text-align: left;
    transition: transform 420ms cubic-bezier(.22, 1, .36, 1), opacity 260ms ease, visibility 420ms;
  }
  #header .navigation::after { content: ''; position: absolute; top: 0; left: 0; width: 7px; height: 100%; background: linear-gradient(180deg, #f7d93b 0 25%, #e01f32 25% 72%, #bc0108 72%); }
  #header .navigation.is-open { visibility: visible; opacity: 1; transform: translate3d(0, 0, 0); }
  #header .navigation > li { display: block; }
  #header .navigation > li:not(.offcanvas-only) { opacity: 0; transform: translateX(32px); transition: opacity 260ms ease, transform 360ms cubic-bezier(.22, 1, .36, 1); }
  #header .navigation.is-open > li { opacity: 1; transform: translateX(0); }
  #header .navigation.is-open > li:nth-child(2) { transition-delay: 80ms; }
  #header .navigation.is-open > li:nth-child(3) { transition-delay: 120ms; }
  #header .navigation.is-open > li:nth-child(4) { transition-delay: 160ms; }
  #header .navigation.is-open > li:nth-child(5) { transition-delay: 200ms; }
  #header .navigation.is-open > li:nth-child(6) { transition-delay: 240ms; }
  #header .navigation.is-open > li:nth-child(7) { transition-delay: 280ms; }
  #header .navigation > li > a { display: flex; align-items: center; min-height: 48px; padding: 0 18px; border: 1px solid rgba(255, 255, 255, .08); border-radius: 9px; color: #f4f4f5; background: rgba(255, 255, 255, .035); font-size: 18px; font-weight: 600; text-align: left; transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease, transform 180ms ease; }
  #header .navigation > li > a::after { content: '›'; margin-left: auto; color: #f7d93b; font-size: 25px; font-weight: 300; }
  #header .navigation > li > a:hover { transform: translateX(5px); border-color: rgba(247, 217, 59, .45); color: #fff; background: rgba(255, 255, 255, .075); }
  #header .navigation > li > a.active { border-color: #f7d93b; color: #111; background: #f7d93b; box-shadow: 0 8px 24px rgba(247, 217, 59, .18); }
  #header .navigation > li > a.active::after { color: #e01f32; }
  #header .navigation .offcanvas-only { display: block; }
  #header .navigation .offcanvas-heading { position: absolute; top: 25px; left: 35px; color: #fff; font-size: 27px; font-weight: 800; letter-spacing: -.7px; }
  #header .navigation .offcanvas-heading small { display: block; margin-top: 3px; color: #aaa; font-size: 11px; font-weight: 600; letter-spacing: 1.4px; text-transform: uppercase; }
  #header .navigation .offcanvas-heading strong { color: #f7d93b; }
  #header .navigation .offcanvas-contact { margin-top: auto; padding-top: 18px; }
  #header .navigation .offcanvas-contact a { min-height: 64px; border: 0; color: #fff; background: linear-gradient(135deg, #e01f32, #bc0108); box-shadow: 0 12px 28px rgba(188, 1, 8, .28); }
  #header .navigation .offcanvas-contact a::after { content: '→'; color: #fff; }
  #header .navigation .offcanvas-contact span { display: block; }
  #header .navigation .offcanvas-contact small { display: block; margin-top: 2px; color: rgba(255, 255, 255, .72); font-size: 11px; font-weight: 400; }

  #homeslider-outer { position: relative; height: 380px; margin-top: -45px; overflow: hidden; isolation: isolate; }
  #homeslider-outer .slider,
  #homeslider-outer .slides { position: relative; height: 100%; }
  #homeslider,
  #homeslider .bx-viewport,
  .slides li,
  .slides li .slide-img { height: 380px !important; }
  .slides > li,
  .slides li .slide-img { position: relative; overflow: hidden; }
  .slides li .slide-img { background-position: 58% 50%; background-size: cover; }
  .slides li .text-desc { position: absolute; inset: 0; width: auto; height: auto; }
  #homeslider { height: 100% !important; }
  .slide-content { top: 68px; left: 0; box-sizing: border-box; width: min(500px, 67vw); padding-left: 2vw; }
  .slide-content h1 { font-size: clamp(25px, 5vw, 37px); }
  .slide-content h2 { font-size: clamp(18px, 3.4vw, 25px); }
  .slide-content h2 { line-height: 1.2; }

  body.index #content { margin-top: 25px; }
  .home-left,
  .home-right { float: none; width: auto; }
  #homelinker { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
  #homelinker .box,
  #homelinker .box-1,
  #homelinker .box-4 { box-sizing: border-box; width: auto; margin: 0; padding: 0 8px; background: none; }
  .index-content { clear: both; padding-top: 15px; }
  .home-right { display: grid; grid-template-columns: 1fr 212px; gap: 20px; align-items: start; margin-top: 20px; }
  .home-right > img { width: 212px; }

  #homeclients .jcarousel { overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scrollbar-width: thin; }
  #homeclients .jcarousel ul { position: static; display: flex; width: max-content; transform: none !important; }
  #homeclients .jcarousel li { display: grid; float: none; place-items: center; scroll-snap-align: start; }
  #homeclients .jcarousel-control-prev,
  #homeclients .jcarousel-control-next { display: none; }

  #content:not(.index) { display: flex; flex-direction: column; }
  .content-main { order: 1; float: none; box-sizing: border-box; width: 100%; }
  .content-sidebar { order: 2; float: none; box-sizing: border-box; width: 100%; }
  .content-main-body { box-sizing: border-box; min-width: 0; padding-right: 20px; overflow-wrap: anywhere; }
  .content-main-body .content-header-title { width: calc(100% + 2px); background-size: 100% 130px; }
  .content-main-bottom { background-size: 100% 12px; }
  .content-main-body > p > img,
  .content-main-body > h2 > img { margin: 15px; }
  .content-sidebar { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(220px, 1fr) 212px; gap: 20px; align-items: start; }
  .content-sidebar > img { width: 212px; }
  .sidebar-menu { padding-bottom: 0; }

  #footer { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; padding: 60px 0 35px; }
  #footer .menu-block,
  #footer .menu-block-last { float: none; width: auto; margin: 0; }
  #bottom .bottom-left,
  #bottom .bottom-right { width: 50%; }
}

@media (max-width: 700px) {
  .full_page { margin-right: 15px; margin-left: 15px; }
  #header-outer { height: 166px; }
  #header .logo img { width: min(265px, 64vw); }
  #header form { top: 77px; }
  #header .navigation { top: 0; }
  .search-dialog { padding: 12px; }
  .search-dialog__panel { max-height: calc(100vh - 24px); max-height: calc(100dvh - 24px); padding: 22px 16px 18px; border-radius: 13px; }
  .search-dialog__brand { margin-bottom: 18px; font-size: 22px; }
  .search-dialog__close { top: 14px; right: 14px; }
  .search-dialog__input { height: 54px; padding-left: 15px; font-size: 16px; }
  .search-results a { display: block; padding: 13px 38px 13px 13px; }
  .search-results__title,
  .search-results__path { display: block; }
  .search-results__path { margin-top: 2px; }
  .search-results__excerpt { margin-top: 6px; }
  .search-dialog__hint { display: none; }
  .thank-you-card { margin-top: 0; padding: 26px 17px; }
  .thank-you-card__icon { width: 62px; height: 62px; font-size: 31px; }
  .thank-you-card h2 { font-size: 24px; }
  .thank-you-card__steps { grid-template-columns: 1fr; }
  .thank-you-card__actions { flex-direction: column; }
  .thank-you-card__actions a { width: 100%; }

  #homeslider-outer { height: 335px; margin-top: -35px; }
  #homeslider,
  #homeslider .bx-viewport,
  .slides li,
  .slides li .slide-img { height: 335px !important; }
  .slides li .slide-img { background-position: 62% 50%; }
  .slide-content { top: 54px; width: 67vw; }
  .slide-content h1 { padding-left: 0; }
  .slide-content h2 { padding-left: 0; }
  .slide-content p img[alt="Malíř a nátěrač"] { width: 210px; }
  .slide-content p img[alt=""] { width: 185px; }
  .slide-content p:last-child { display: none; }

  #homelinker { grid-template-columns: repeat(2, 1fr); }
  #homelinker .box { height: 180px; }
  .index-content img[alt="Radek Tomeček"] { max-width: 42%; padding-right: 22px !important; padding-bottom: 30px !important; }
  .home-right { grid-template-columns: 1fr; }
  .home-right > img { display: none; }

  #content { width: auto; min-width: 0; }
  .content-main-body { width: 100%; min-width: 0; padding-top: 72px; padding-right: clamp(16px, 5vw, 24px); padding-left: clamp(16px, 5vw, 24px); }
  .content-main-body .content-header-title h1 { left: 25px; font-size: 23px; }
  .breadcrumb ul { width: auto; }
  .content-main-body > p { text-align: left; }
  .content-main-body > p > img,
  .content-main-body > h2 > img { float: none !important; display: block; margin: 15px auto !important; }
  .content-sidebar { grid-template-columns: 1fr; }
  .content-sidebar > img { display: none; }
  .content-sidebar .box-contact { max-width: 360px; }
  .gallery-thumbnails { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .gallery-thumbnails .thumbnail { float: none; box-sizing: border-box; width: 100%; height: auto; margin: 0; }
  .gallery-thumbnails .thumbnail img { display: block; width: 100%; }

  form.style-1 table,
  form.style-1 tbody,
  form.style-1 tr,
  form.style-1 td { display: block; width: 100%; }
  form.style-1 td { box-sizing: border-box; padding: 0 !important; }
  form.style-1 input,
  form.style-1 textarea { box-sizing: border-box; max-width: 100%; }

  #footer { grid-template-columns: repeat(2, 1fr); }
  #bottom-outer { padding: 0; background: linear-gradient(145deg, #1d1d20, #0d0d0f); }
  #bottom { display: flex; flex-wrap: wrap; gap: 12px; box-sizing: border-box; height: auto; min-height: 55px; padding-top: 18px; padding-bottom: 18px; overflow: visible; line-height: 1.4; }
  #bottom p { box-sizing: border-box; height: auto; min-height: 0; padding: 0; line-height: 1.4; }
  #bottom .bottom-left,
  #bottom .bottom-right { float: none; width: 100%; text-align: left; }
  #bottom .bottom-left { color: #8d8d93; font-size: 12px; }
  #bottom .bottom-right {
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr) auto;
    gap: 11px;
    align-items: center;
    padding: 11px 12px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 10px;
    color: #9b9ba2;
    background: rgba(255, 255, 255, .045);
    box-shadow: inset 0 1px rgba(255, 255, 255, .035), 0 8px 24px rgba(0, 0, 0, .16);
    font-size: 11px;
    letter-spacing: .25px;
    text-transform: uppercase;
  }
  #bottom .bottom-right::before { content: '✦'; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 9px; color: #1b1b1e; background: #f7d93b; font-size: 17px; }
  #bottom .bottom-right a { padding: 7px 10px; border: 1px solid rgba(247, 217, 59, .28); border-radius: 7px; color: #f7d93b; background: rgba(247, 217, 59, .07); font-size: 12px; letter-spacing: 0; text-decoration: none; text-transform: none; white-space: nowrap; }
  #bottom .bottom-right a:hover { border-color: #f7d93b; color: #161618; background: #f7d93b; }
  .lightbox__previous { left: 8px; }
  .lightbox__next { right: 8px; }
}

@media (max-width: 620px) {
  #header-outer { height: 195px; }
  #header .logo img { width: min(240px, calc(100vw - 118px)); }
  #header form { top: 112px; left: 0; right: 0; width: 100%; }
  #homeslider-outer { margin-top: -20px; }
}

@media (max-width: 420px) {
  .full_page { margin-right: 12px; margin-left: 12px; }
  #header .logo img { width: 220px; }
  #header .fb { right: 54px; }
  #header .navigation { width: min(94vw, 360px); padding-right: 20px; padding-left: 27px; }
  body.menu-open .menu-toggle { top: 22px; right: 18px; }
  .slide-content { width: 75vw; }
  #footer { grid-template-columns: 1fr; }
  .gallery-thumbnails { grid-template-columns: 1fr; }
  #bottom { gap: 14px; padding-top: 16px; padding-bottom: 16px; }
  #bottom .bottom-left { text-align: center; }
  #bottom .bottom-right { grid-template-columns: 36px minmax(0, 1fr); }
  #bottom .bottom-right::before { grid-row: 1 / span 2; }
  #bottom .bottom-right a { grid-column: 2; justify-self: start; }
}

@media (max-width: 320px) {
  #header .logo img { width: 180px; }
  #header .fb { display: none; }
  #header .navigation .offcanvas-heading { left: 30px; font-size: 24px; }
  #header .navigation > li > a { padding-right: 14px; padding-left: 14px; font-size: 17px; }
  #homeslider-outer { height: 390px; }
  #homeslider,
  #homeslider .bx-viewport,
  .slides li,
  .slides li .slide-img { height: 390px !important; }
  .slides li .slide-img { background-position: 65% top; }
  .slide-content { top: 92px; left: 10px; width: calc(100% - 20px); padding: 14px 10px; border-radius: 8px; background: rgba(255, 255, 255, .9); box-shadow: 0 10px 30px rgba(0, 0, 0, .12); text-align: center; }
  .slide-content h1 { font-size: 24px; }
  .slide-content h2 { font-size: 18px; }
  .slide-content p { padding: 5px 0; }
  .slide-content p img[alt="Malíř a nátěrač"] { width: 190px; }
  .slide-content p img[alt=""] { width: 170px; }
  #homelinker { grid-template-columns: 1fr; gap: 9px; }
  #homelinker .box,
  #homelinker .box-1,
  #homelinker .box-4 { display: grid; grid-template-columns: 72px minmax(0, 1fr); align-items: center; min-height: 88px; height: auto; padding: 10px 13px; border: 1px solid #ececee; border-radius: 9px; background: #fff; box-shadow: 0 4px 14px rgba(0, 0, 0, .045); text-align: left; }
  #homelinker .box img { width: 64px; }
  #homelinker .box h2 { padding: 0 0 0 8px; font-size: 16px; line-height: 1.3; }
  .index-content img[alt="Radek Tomeček"] { float: none !important; display: block; max-width: 150px; margin: 0 auto; padding: 0 0 18px !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* Vexe form layout */
.vexe-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.vexe-form-grid .control-group--wide{grid-column:1/-1}
.vexe-form .form-actions{text-align:right;margin-top:10px}
.vexe-form .errorlist{margin-top:5px}
@media(max-width:700px){.vexe-form-grid{grid-template-columns:1fr}.vexe-form-grid .control-group{grid-column:1}}
