@font-face { font-family: "Figtree"; src: url("/public/fonts/Figtree-Regular.ttf") format("truetype"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "Figtree"; src: url("/public/fonts/Figtree-Medium.ttf") format("truetype"); font-weight: 500; font-style: normal; font-display: swap; }
@font-face { font-family: "Figtree"; src: url("/public/fonts/Figtree-SemiBold.ttf") format("truetype"); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: "Figtree"; src: url("/public/fonts/Figtree-Bold.ttf") format("truetype"); font-weight: 700; font-style: normal; font-display: swap; }

:root {
  color-scheme: light;
  background: #fff;
  font-family: Figtree, Arial, sans-serif;
}

@media (max-width: 700px) {
  .homepage-page .storage-card:first-child h3 {
    background: #6ca6e7;
  }
}

* { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; background: #fff; }
body { overflow-x: hidden; }

.site-header {
  height: 112px;
  padding: 0 4.9%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  background: #fff;
}
.site-header > a { flex: 0 0 auto; }
.site-logo { width: 138px; height: auto; display: block; }
.site-nav { display: flex; align-items: center; gap: clamp(1.2rem, 2.2vw, 3rem); }
.site-nav a { color: #6680aa; font-size: 13px; text-decoration: none; white-space: nowrap; }
.site-nav a[href="/rezervace"] { font-size: 14px; font-weight: 700; letter-spacing: -.05px; }
.site-nav a:hover, .site-nav a:focus-visible { color: #00b995; }
.site-actions { flex: 0 0 auto; display: flex; align-items: center; gap: 12px; }
.site-login {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 20px;
  border: 1px solid #7ba2e3;
  border-radius: 999px;
  color: #7ba2e3;
  text-decoration: none;
}
.site-login svg { width: 16px; height: 16px; stroke: currentColor; }
.site-menu-toggle { display: none; }

.motion-hero {
  position: relative;
  height: min(calc(56.25vw - 112px), 968px);
  min-height: 580px;
  overflow: hidden;
  color: #fff;
  background: #29cbbb;
}
.motion-hero.hero-media-loading,
.how-hero-bg.hero-media-loading,
.location-hero-bg.hero-media-loading { visibility: hidden; }
.faq-hero.hero-media-loading::before,
.faq-hero.hero-media-loading::after { visibility: hidden; }
.hero-slide, .hero-wash { position: absolute; inset: 0; }
.hero-slide {
  background-size: cover;
  background-position: center;
  opacity: 0;
  transform: scale(1) translate3d(0, 0, 0);
  transition: opacity 1.15s ease;
}
.hero-slide.is-active {
  opacity: 1;
  animation: hero-zoom-pan 9s linear both;
}
.hero-slide.is-leaving {
  opacity: 0;
  animation: none;
  transform: scale(1.1) translate3d(.21%, -5.55%, 0);
  transition: opacity .7s ease-in-out;
}
.motion-hero.is-paused .hero-slide,
.motion-hero.is-paused .hero-tagline {
  animation-play-state: paused !important;
}
.hero-wash {
  background: radial-gradient(ellipse 195.96% 110.08% at 104.16% 99.97%, #00e9b7 0%, #7ba2e3 100%);
  mix-blend-mode: color;
  opacity: .7;
  z-index: 1;
}
.hero-copy {
  position: relative;
  z-index: 2;
  width: min(1140px, calc(100% - 48px));
  margin-inline: auto;
  height: 100%;
  padding-top: 0;
  text-shadow: 0 2px 14px rgba(28, 99, 111, .12);
  --hero-font: clamp(34px, 3.385vw, 65px);
}
.hero-copy h1 {
  position: absolute;
  top: 255.5px;
  left: 0;
  margin: 0;
  max-width: 790px;
  font-size: var(--hero-font);
  line-height: 1.2;
  letter-spacing: 1.05px;
}
.hero-problem {
  position: absolute;
  top: 516px;
  left: 0;
  margin: 0;
  margin-left: -1.269em;
  width: calc(100% + 1.269em);
  max-width: 1200px;
  height: 2.46em;
  font-size: calc(var(--hero-font) * .95385);
  font-weight: 700;
  line-height: 1.5;
}
.space-mark {
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -.567em;
  width: .756em;
  height: 1.134em;
  will-change: transform;
}
.space-mark i {
  position: absolute;
  width: .378em;
  height: .378em;
  background: #00e9b7;
}
.space-mark i:nth-child(1) { left: 0; top: 0; }
.space-mark i:nth-child(2) { right: 0; top: .378em; }
.space-mark i:nth-child(3) { left: 0; bottom: 0; }
.problem-copy {
  display: block;
  position: absolute;
  left: 1.269em;
  top: 0;
  margin-left: 0;
  width: max-content;
  max-width: none;
  letter-spacing: -.2px;
  transform: none;
  will-change: clip-path;
}
.problem-line { display: block; white-space: nowrap; }
.problem-line-secondary { font-size: .86154em; line-height: 1.5; margin-top: -.34em; }
.hero-tagline.is-out { animation: tagline-fade-out .38s ease forwards; }
.hero-tagline.is-in { animation: tagline-reveal 2.38s .18s linear both; }
.hero-tagline {
  display: inline-block;
  position: absolute;
  top: 695px;
  left: 0;
  margin: 0;
  padding-bottom: 10px;
  font-size: calc(var(--hero-font) * .69231);
  line-height: 1.5;
  font-weight: 600;
  clip-path: inset(0 100% 0 0);
}

/* Hero restored verbatim from the approved spab-713 draft. */
.site-header { height: 92px; }
.motion-hero { height: min(56.25vw, 1080px); min-height: 580px; }
.hero-copy {
  width: min(810px, 80vw);
  margin-left: 20.5%;
  margin-right: 0;
  height: auto;
  padding-top: clamp(145px, 12vw, 235px);
  --hero-font: clamp(34px, 3.385vw, 65px);
}
.hero-copy h1 {
  position: static;
  margin: 0 0 clamp(48px, 5vw, 94px);
  max-width: 750px;
  font-size: var(--hero-font);
  line-height: 1.2;
  letter-spacing: -.025em;
}
.hero-problem {
  position: relative;
  top: auto;
  left: auto;
  margin: 0 0 0 -1.269em;
  width: calc(100% + 1.269em);
  max-width: 1100px;
  height: 2.46em;
  font-size: var(--hero-font);
  line-height: 1.5;
}
.problem-copy {
  left: 1.269em;
  top: 50%;
  width: max-content;
  max-width: calc(100% - 1.269em);
  transform: translateY(-50%);
  letter-spacing: normal;
}
.hero-tagline {
  position: relative;
  top: auto;
  left: auto;
  margin: 36px 0 0;
  padding-bottom: 10px;
}
.section-shell { width: min(1440px, calc(100% - 48px)); margin-inline: auto; }
.space-symbol { position: relative; display: block; flex: 0 0 52px; width: 52px; height: 78px; }
.space-symbol i { position: absolute; width: 26px; height: 26px; background: #00e9b7; }
.space-symbol i:nth-child(1) { left: 0; top: 0; }.space-symbol i:nth-child(2) { right: 0; top: 26px; }.space-symbol i:nth-child(3) { left: 0; bottom: 0; }
.storage { min-height: 1190px; padding-top: 144px; position: relative; }
.storage::after, .final-cta::before { content: ""; position: absolute; width: 138px; height: 138px; background: #f7f8f8; right: 7%; top: 46%; box-shadow: 260px 0 #f7f8f8; z-index: -1; }
.section-title { display: flex; align-items: flex-start; gap: 98px; }
.section-title h2 { margin: 0; color: #00d7ae; font-size: 48px; line-height: 1.5; letter-spacing: .078px; }
.storage-grid { margin: 48px 0 0 150px; display: grid; grid-template-columns: repeat(3, 350px); gap: 55px 50px; }
.storage-card { min-height: 400px; background: #fff; box-shadow: 0 4px 24px rgb(44 77 87 / 18%); color: #9ba1a4; font-size: 23px; }
.storage-card h3 { margin: 0; padding: 46px 33px 22px; color: #fff; background: #48b9db; font-size: 31px; line-height: 1.5; }
.storage-card:nth-child(2) h3 { background: #36c5ca; }.storage-card:nth-child(3) h3 { background: #16d6b7; }.storage-card:nth-child(4) h3 { background: #6ca6e7; }.storage-card:nth-child(5) h3 { background: #39c4c8; }
.storage-card ul { list-style: none; margin: 25px 33px; padding: 0; line-height: 1.35; }.storage-card li::before { content: "■"; color: #8bb5ed; margin-right: 8px; }.storage-card p { margin: 30px 33px 24px; line-height: 1.18; }
.space-cta { min-height: 844px; padding-top: 285px; color: #fff; background: linear-gradient(110deg, #0dd8b6, #70a4e6); }
.space-cta h2, .final-cta h2 { margin: 0 0 50px 150px; font-size: 65px; line-height: 1.5; letter-spacing: 0; }
.space-cta a, .final-cta a { display: inline-block; margin-left: 152px; padding: 15px 30px; border: 2px solid currentColor; border-radius: 999px; color: inherit; text-decoration: none; font-size: 17px; }
.care { min-height: 755px; padding-top: 0; }
.care-card { width: 1167px; height: 258px; margin: -55px 0 115px 150px; padding: 0 93px; display: flex; gap: 83px; align-items: center; background: #fff; box-shadow: 0 4px 28px rgb(44 77 87 / 18%); position: relative; }
.care-symbol { width: 83px; height: 83px; flex: 0 0 83px; display: grid; grid-template-columns: repeat(2, 28px); grid-template-rows: repeat(2, 28px); gap: 27px; align-content: center; justify-content: center; }.care-symbol i { background: #00e2b7; }.care-card h2 { margin: 0; color: #00d9b1; font-size: 44px; line-height: 1.5; }.care-card p { margin: -7px 0 0; color: #a6a9aa; font-size: 33px; line-height: 1.5; }
.care-features { width: 1160px; margin-inline: auto; display: grid; grid-template-columns: repeat(6,1fr); text-align: center; color: #a4a8aa; }.care-features div { display: grid; grid-template-rows: 81px auto; align-items: end; justify-items: center; gap: 23px; }.care-features img { display: block; max-width: 96px; max-height: 81px; }.care-features span { font-size: 25px; line-height: 1.5; font-weight: 500; }
.compare { width: 1140px; margin: 110px auto 0; display: grid; grid-template-columns: 497px 1fr 497px; align-items: center; }.compare article { width: 497px; height: 312px; background: #fff; box-shadow: 0 4px 24px rgb(44 77 87 / 18%); }.compare h3 { height: 98px; margin: 0; padding: 25px 60px; background: #a7aaa9; color: #fff; font-size: 42px; line-height: 1.5; }.compare article:last-child { grid-column: 3; }.compare article:last-child h3 { background: #00dcb2; }.compare ul { margin: 52px 60px; padding: 0; list-style: none; color: #969b9d; font-size: 32px; line-height: 1.28; }.compare li::before { content: "■"; margin-right: 18px; color: #a7aaa9; font-size: 17px; vertical-align: 5px; }.compare article:last-child li::before { color: #00dcb2; }.compare > span { grid-column: 2; grid-row: 1; justify-self: center; display: grid; place-items: center; width: 78px; height: 78px; border: 3px solid #fff; border-radius: 50%; color: #fff; background: #56b9d4; font-size: 42px; }
.compare { width: 1164px; margin: 291px 0 0 150px; grid-template-columns: 497px 170px 497px; }.compare > span { width: 79px; height: 79px; border: 0; background: none; }.compare > span img { display: block; width: 79px; height: 79px; }
.compare-arrow-mobile { display: none !important; }
.benefits { min-height: 1090px; padding-top: 280px; color: #fff; background: linear-gradient(110deg, #6ea5e6, #0ed9b5); }
.benefit-claim { margin-left: 150px; position: relative; }.benefit-claim h2 { margin: 0; font-size: 40px; line-height: 1.22; }.plus { display: block; width: 52px; height: 26px; margin: 0 0 75px -100px; background: #00e9b7; position: relative; }.plus::after { content:""; position:absolute; width:26px; height:78px; left:13px; top:-26px; background:#00e9b7; }
.benefit-grid { width: 1164px; margin: 115.6px 0 0 150px; display: grid; grid-template-columns: repeat(3, 362.85px); column-gap: 37.73px; row-gap: 35.47px; }.benefit-grid article { height: 362.85px; padding: 42px 40px; background: #fff; box-shadow: 0 4px 22px rgb(44 77 87 / 16%); color: #a1a5a7; }.benefit-grid img { display: block; width: 118px; height: 118px; object-fit: contain; object-position: left center; }.benefit-grid p { margin-top: 30px; font-size: 29px; line-height: 1.2; font-weight: 600; }
.final-cta { min-height: 630px; padding-top: 200px; position: relative; color: #a1a6a8; }.final-cta h2 { margin-left: 150px; }.final-cta a { margin-left: 150px; color: #fff; background: #00ddb5; border-color: #00ddb5; }
.site-footer { min-height: 577px; padding: 107px 0 45px; border-top: 16px solid #00e3b8; color: #fff; background: linear-gradient(110deg, #25c6c7, #719fe0); }.footer-grid, .footer-bottom { max-width: 1140px; }.footer-grid { display: grid; grid-template-columns: 1fr 1fr 1.2fr; gap: 90px; }.site-footer h3 { margin: 0 0 27px; font-size: 22px; line-height: 1.5; }.site-footer p, .site-footer a { color: inherit; font-size: 22px; line-height: 1.5; text-decoration: none; }.footer-grid > div:nth-child(2) p { margin: 0; }.footer-bottom { margin-top: 54px; font-size: 20px; }.footer-bottom nav { margin-bottom: 38px; }.footer-bottom p { margin: 0 0 6px; font-size: 16px; }
.site-footer .footer-email { display: inline-flex; min-width: 207px; height: 35px; padding: 0 18px; align-items: center; justify-content: center; border: 2px solid #fff; border-radius: 999px; font-size: 18px; line-height: 27px; }
.footer-bottom .footer-credit { margin: 0 0 8px; }
.social-placeholder { cursor: default; }

@media (min-width: 701px) {
  .site-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    height: 143px;
    padding: 0;
    box-shadow: 0 18px 24.73px rgba(82, 105, 113, .12);
  }
  .site-logo { position: absolute; left: 44.12px; top: 43.6px; width: 217.99px; height: 55.71px; }
  .site-nav {
    position: absolute;
    left: auto;
    right: 250px;
    top: 61.8px;
    gap: 48px;
    height: 24px;
  }
  .site-nav a { color: #7ba2e3; font-family: Figtree, Arial, sans-serif; font-size: 18px; line-height: 27px; font-weight: 400; }
  .site-nav a[href="/rezervace"] { font-size: 27px; line-height: 32px; font-weight: 700; }
  .site-nav a.is-active { margin: -5.08px -19.57px -4.17px; padding: 5.08px 19.57px 4.17px; border-radius: 999px; color: #fff; background: #7821a5; }
  .site-login {
    position: static;
    width: 158.29px;
    height: 33.25px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8.4px;
  }
  .site-actions {
    position: absolute;
    right: 44.12px;
    top: 54.88px;
  }
  .site-login svg { width: 18px; height: 18px; flex: 0 0 18px; stroke: currentColor; stroke-width: 1.45; stroke-linecap: round; stroke-linejoin: round; }
  .motion-hero { height: 937px; min-height: 0; }
  .hero-slide,
  .hero-wash { top: -143px; bottom: auto; height: 1080px; }
  .hero-copy {
    width: 1200px;
    height: 937px;
    margin-left: 387.67px;
    padding: 0;
    --hero-font: 62px;
  }
  .hero-copy h1 {
    position: absolute;
    top: 224.505px;
    left: 0;
    width: 790px;
    max-width: 790px;
    margin: 0;
    font-size: 65px;
    line-height: 78px;
    letter-spacing: 0;
  }
  .hero-problem {
    position: absolute;
    top: 485.24px;
    left: 0;
    width: 1100px;
    max-width: 1100px;
    height: 93px;
    margin: 0;
    font-size: 62px;
    line-height: 93px;
    letter-spacing: -.682px;
  }
  .problem-copy {
    left: 0;
    top: 0;
    width: max-content;
    max-width: none;
    transform: none;
    letter-spacing: -.682px;
  }
  .space-mark {
    left: -82.48px;
    top: 2.53px;
    width: 49.12px;
    height: 73.69px;
    margin: 0;
  }
  .space-mark i { width: 24.56px; height: 24.56px; }
  .space-mark i:nth-child(2) { top: 24.56px; }
  .hero-tagline {
    position: absolute;
    top: 663.96px;
    left: 0;
    margin: 0;
    padding: 0;
    font-size: 45px;
    line-height: 67.5px;
    font-weight: 700;
    letter-spacing: -.495px;
  }
  .storage {
    height: 1210.5px;
    min-height: 0;
    overflow: visible;
  }
  .storage .section-title,
  .storage-grid { position: relative; z-index: 2; }
  .storage .space-symbol {
    flex-basis: 71.23px;
    width: 71.23px;
    height: 106.86px;
    transform: translateY(-23.11px);
  }
  .storage .space-symbol i { width: 35.62px; height: 35.62px; }
  .storage .space-symbol i:nth-child(2) { top: 35.62px; }
  .storage .section-title { gap: 78.61px; }
  .storage .section-title h2 { width: 663px; letter-spacing: -.528px; white-space: nowrap; }
  .storage-grid {
    margin: 138.21px 0 0 149.82px;
    grid-template-columns: repeat(3, 362.85px);
    column-gap: 37.73px;
    row-gap: 35.74px;
  }
  .storage-card {
    position: relative;
    width: 362.85px;
    min-height: 0;
    height: 418.93px;
    box-shadow: 0 0 40px #cecece;
  }
  .storage-card h3 {
    height: 108.05px;
    padding: 32.91px 33.46px 28.64px;
    background-image: radial-gradient(ellipse 66% 112% at 106% -3%, #00e9b7 0%, #7ba2e3 100%);
    background-size: 1164px 108.05px;
    background-repeat: no-repeat;
    letter-spacing: -.341px;
  }
  .storage-card:nth-child(1) h3,
  .storage-card:nth-child(4) h3 { background-position: 0 0; }
  .storage-card:nth-child(2) h3,
  .storage-card:nth-child(5) h3 { background-position: -400.58px 0; }
  .storage-card:nth-child(3) h3 { background-position: -801.15px 0; }
  .storage-card ul { margin-left: 34.42px; letter-spacing: -.253px; }
  .storage-card li::before {
    display: inline-block;
    width: 16.61px;
    height: 16.61px;
    margin-right: 7.43px;
    background: #8bb5ed;
    content: "";
    vertical-align: -1px;
  }
  .storage-card p {
    position: absolute;
    top: 322.63px;
    left: 32.61px;
    margin: 0;
    letter-spacing: -.253px;
  }
  .storage::after {
    left: 1122.68px;
    right: auto;
    top: 656px;
    width: 127.43px;
    height: 127.43px;
    box-shadow: 254.85px 0 #f7f8f8, 0 254.85px #f7f8f8, 254.85px 254.85px #f7f8f8;
    z-index: 3;
    mix-blend-mode: multiply;
    pointer-events: none;
  }
  .space-cta { position: relative; z-index: 1; }
  .space-cta {
    height: 897.02px;
    min-height: 0;
    padding-top: 340.8px;
    background: radial-gradient(ellipse 184.14% 116.26% at 104.67% 99.97%, #00e9b7 0%, #7ba2e3 100%);
  }
  .space-cta h2 {
    width: 947px;
    margin: 0 0 60.37px 147.67px;
    font-size: 65px;
    line-height: 97.5px;
    font-weight: 700;
    letter-spacing: -.715px;
  }
  .space-cta a {
    width: 415.64px;
    height: 79.49px;
    margin-left: 150.74px;
    padding: 0;
    display: grid;
    place-items: center;
    border-width: 1.86px;
    font-size: 30px;
    line-height: 45px;
    font-weight: 500;
    letter-spacing: -.33px;
  }
  .care {
    position: relative;
    z-index: 4;
  }
  .care-card {
    margin-top: -52.38px;
    z-index: 5;
    box-shadow: 0 0 50.62px #cecece;
  }
  .care-features { transform: translateY(55px); }
  .compare { margin-top: 243px; }
  .compare li::before {
    display: inline-block;
    width: 16.61px;
    height: 16.61px;
    margin-right: 16.8px;
    background: #9fa3a5;
    content: "";
    vertical-align: 2px;
  }
  .compare article:last-child li::before { background: #00e9b7; }
  .benefits {
    position: relative;
    z-index: 1;
    padding-top: 273.11px;
    background: none;
  }
  .benefits::before {
    position: absolute;
    z-index: -1;
    top: -264.76px;
    left: 0;
    width: 100%;
    height: 1057.01px;
    background: radial-gradient(ellipse 195.96% 110.08% at 104.75% -2.7%, #00e9b7 0%, #7ba2e3 100%);
    content: "";
  }
  .benefit-claim { margin-left: 149.74px; }
  .benefit-claim h2 {
    margin: 0;
    font-size: 55px;
    line-height: 82.5px;
    letter-spacing: -.605px;
    transform: translateY(-113px);
  }
  .benefit-grid { margin-top: 115.36px; }
  .plus {
    position: absolute;
    top: -131.66px;
    left: -101.03px;
    width: 39.25px;
    height: 39.25px;
    margin: 0;
    background: #00e9b7;
  }
  .plus::before,
  .plus::after {
    position: absolute;
    width: 39.25px;
    height: 39.25px;
    background: #00e9b7;
    content: "";
  }
  .plus::before { top: 39.25px; left: 39.25px; }
  .plus::after { top: 78.5px; left: 0; }
  .final-cta {
    height: 603.12px;
    min-height: 0;
    padding-top: 123.51px;
  }
  .final-cta h2 {
    width: 947px;
    margin: 0 0 73.15px 155.17px;
    font-size: 65px;
    line-height: 97.5px;
    letter-spacing: -.715px;
  }
  .final-cta a {
    width: 415.64px;
    height: 79.49px;
    margin-left: 158.24px;
    padding: 0;
    display: grid;
    place-items: center;
    border-width: 1.86px;
    font-size: 30px;
    line-height: 45px;
    font-weight: 500;
    letter-spacing: -.33px;
  }
  .site-footer {
    height: 577px;
    min-height: 0;
    padding-top: 107px;
    border-top-width: 16.27px;
  }
  .footer-grid {
    width: 1164px;
    max-width: none;
    margin-left: 389.82px;
    grid-template-columns: 289.1px 397.59px 1fr;
    gap: 90px;
  }
  .footer-social h3 { margin-bottom: 35.91px; }
  .footer-social p { margin: 0 0 16.45px; }
  .footer-social p a { display: flex; align-items: center; gap: 19.23px; }
  .footer-social img { display: block; width: 49.68px; height: 49.68px; object-fit: contain; }
}
@keyframes hero-zoom-pan {
  from { transform: scale(1) translate3d(0, 0, 0); }
  to { transform: scale(1.1) translate3d(.21%, -5.55%, 0); }
}
@keyframes tagline-reveal {
  0% { clip-path: inset(0 100% 0 0); opacity: 1; }
  20% { clip-path: inset(0 67% 0 0); opacity: 1; }
  55% { clip-path: inset(0 25% 0 0); opacity: 1; }
  100% { clip-path: inset(0 0 0 0); opacity: 1; }
}
@keyframes tagline-fade-out { from { clip-path: inset(0 0 0 0); opacity: 1; } to { clip-path: inset(0 0 0 0); opacity: 0; } }

.figma-page {
  position: relative;
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  overflow: hidden;
  background: #fff;
}

.figma-content > img {
  display: block;
  width: calc(var(--native-width, 1920) / 1920 * 100%);
  max-width: none;
  height: auto;
  margin-left: calc(var(--offset-x, 0) / 1920 * -100%);
  user-select: none;
}

.figma-content { position: relative; overflow: hidden; }

.homepage-page,
.native-page { position: relative; width: 1920px; margin: 0 auto; background: #fff; overflow: clip; }
.native-canvas { position: relative; width: 1920px; overflow: hidden; background: #fff; }
.native-text,
.native-shape,
.native-image { position: absolute; display: block; }
.native-text { z-index: 3; white-space: pre-wrap; font-family: Figtree, Arial, sans-serif; }
.location-page .native-canvas > h1.native-text { margin: 0; }
.native-text-targeted-fix { margin: 0; }
.native-shape { z-index: 1; }
.native-image { z-index: 2; object-fit: cover; max-width: none; }
.reservation-target-page .native-shape[style*="width:362.849"] { box-shadow: 0 0 40px #cecece; }
.reservation-target-page .native-shape[style*="width:1164px"] {
  -webkit-mask-image: linear-gradient(90deg, #000 0 362.85px, transparent 362.85px 400.58px, #000 400.58px 763.43px, transparent 763.43px 801.15px, #000 801.15px 1164px);
  mask-image: linear-gradient(90deg, #000 0 362.85px, transparent 362.85px 400.58px, #000 400.58px 763.43px, transparent 763.43px 801.15px, #000 801.15px 1164px);
}
.reservation-target-page > .site-footer { min-height: 563px; height: 563px; }
.reservation-size-links { position: absolute; z-index: 10; inset: 0; pointer-events: none; }
.reservation-size-links > a { position: absolute; top: 333.34px; width: 362.85px; height: 362.85px; pointer-events: auto; }
.reservation-size-links > a:nth-child(1) { left: 400.19px; }
.reservation-size-links > a:nth-child(2) { left: 800.76px; }
.reservation-size-links > a:nth-child(3) { left: 1201.34px; }
.reservation-size-links > a:focus-visible { outline: 5px solid #7821a5; outline-offset: 4px; }
.reservation-size-links .reservation-tile-action:nth-child(1) { left: 400.19px; }
.reservation-size-links .reservation-tile-action:nth-child(2) { left: 800.76px; }
.reservation-size-links .reservation-tile-action:nth-child(3) { left: 1201.34px; }
.reservation-size-links.is-preview .reservation-tile-action { position: absolute; top: 333.34px; width: 362.85px; height: 362.85px; pointer-events: auto; }
.reservation-size-links.is-preview .is-available { border: 0; border-radius: 0; background: transparent; cursor: pointer; transition: background .2s ease, box-shadow .2s ease; }
.reservation-size-links.is-preview .is-available:hover,
.reservation-size-links.is-preview .is-available:focus-visible { background: rgba(255, 255, 255, .10); box-shadow: inset 0 0 0 5px rgba(255, 255, 255, .9), 0 10px 26px rgba(45, 76, 88, .22); outline: none; }
.reservation-size-links.is-preview .is-unavailable { display: grid; place-items: center; padding: 34px; color: #687276; background: rgba(238, 241, 242, .94); text-align: center; }
.reservation-size-links.is-preview .is-unavailable strong { display: block; font-size: 25px; line-height: 1.25; }
.reservation-size-links.is-preview .is-unavailable p { margin: 20px 0 14px; font-size: 17px; line-height: 1.4; }
.reservation-size-links.is-preview .is-unavailable a { position: static; width: auto; height: auto; display: inline-block; padding: 11px 22px; border: 2px solid #7ba2e3; border-radius: 999px; color: #7ba2e3; background: #fff; font-size: 17px; line-height: 1.2; font-weight: 600; text-decoration: none; pointer-events: auto; }
.reservation-opening-banner {
  position: absolute;
  z-index: 12;
  left: 400px;
  top: 733px;
  width: 1164px;
  min-height: 171px;
  padding: 36px 40px 36px 48px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 40px;
  align-items: center;
  color: #fff;
  background: linear-gradient(110deg, #ef684f 0%, #ff8f5f 100%);
  box-shadow: none;
}
.reservation-opening-banner h2 { margin: 0; color: rgb(255, 255, 255); -webkit-text-fill-color: rgb(255, 255, 255); font-size: 45px; line-height: 1.08; font-weight: 700; text-transform: uppercase; text-shadow: none; opacity: 1; }
.reservation-opening-banner p { margin: 12px 0 0; color: rgb(255, 255, 255); -webkit-text-fill-color: rgb(255, 255, 255); font-size: 27px; line-height: 1.25; font-weight: 600; text-shadow: none; opacity: 1; }
.reservation-form-trigger { width: 270px; height: 75px; display: grid; place-items: center; border: 5px solid #fff; border-radius: 999px; color: #cf573f; background: #fff; font: 700 24px/1 Figtree, sans-serif; white-space: nowrap; cursor: pointer; box-shadow: none; }
.reservation-form-trigger:hover,
.reservation-form-trigger:focus-visible { color: #a93e2b; transform: translateY(-2px); outline: none; }
.reservation-modal[hidden],
.reservation-form-content[hidden],
.reservation-form-success[hidden],
.reservation-form-error[hidden] { display: none !important; }
.reservation-modal { position: absolute; z-index: 50; inset: 0; display: grid; place-items: start center; padding-top: 120px; background: rgba(30, 43, 48, .68); }
.reservation-modal-panel { position: relative; width: 760px; max-height: 780px; overflow-y: auto; padding: 54px 62px; color: #687276; background: #fff; box-shadow: 0 24px 60px rgba(30, 43, 48, .3); }
.reservation-modal-close { position: absolute; right: 24px; top: 18px; width: 44px; height: 44px; border: 0; color: #7ba2e3; background: transparent; font: 400 38px/1 Figtree, sans-serif; cursor: pointer; }
.reservation-modal h2 { margin: 0; color: #00cfaa; font-size: 40px; line-height: 1.25; }
.reservation-modal-panel > div > p { margin: 12px 0 30px; font-size: 19px; line-height: 1.45; }
.reservation-interest-form { display: grid; gap: 20px; }
.reservation-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.reservation-interest-form label { display: grid; gap: 7px; font-size: 17px; font-weight: 600; }
.reservation-interest-form input,
.reservation-interest-form select,
.reservation-interest-form textarea { width: 100%; border: 1px solid #cbd3d6; border-radius: 3px; padding: 12px 14px; color: #586064; background: #fff; font: 400 17px/1.4 Figtree, sans-serif; }
.reservation-interest-form input,
.reservation-interest-form select { height: 50px; }
.reservation-interest-form textarea { resize: vertical; }
.reservation-interest-form input:focus,
.reservation-interest-form select:focus,
.reservation-interest-form textarea:focus { border-color: #7ba2e3; outline: 2px solid rgba(123, 162, 227, .18); }
.reservation-honeypot { position: absolute; left: -9999px; }
.reservation-interest-form .reservation-consent { grid-template-columns: 22px 1fr; align-items: start; gap: 10px; font-size: 14px; font-weight: 400; }
.reservation-interest-form .reservation-consent input { width: 18px; height: 18px; padding: 0; }
.reservation-form-submit,
.reservation-form-success button { justify-self: start; min-width: 220px; height: 58px; padding: 0 28px; border: 2px solid #7ba2e3; border-radius: 999px; color: #7ba2e3; background: #fff; font: 600 18px/1 Figtree, sans-serif; cursor: pointer; }
.reservation-form-submit:disabled { opacity: .6; cursor: wait; }
.reservation-form-error { margin: 0; color: #b33a2c; font-size: 15px; }
.reservation-form-success { padding: 80px 0; text-align: center; }
.reservation-form-success button { margin-top: 28px; }
.login-page { min-height: 760px; padding: 150px 0; background: linear-gradient(110deg, #7ba2e3, #00e9b7); }
.login-panel { width: 620px; margin: 0 auto; padding: 62px; background: #fff; box-shadow: 0 0 40px #6996a966; color: #9fa3a5; }
.login-panel h1 { margin: 0 0 12px; color: #00d9b1; font-size: 52px; line-height: 1.25; }
.login-panel p { margin: 0 0 38px; font-size: 22px; }
.login-panel form { display: grid; gap: 24px; }
.login-panel label { display: grid; gap: 8px; font-size: 18px; font-weight: 600; }
.login-panel input { height: 54px; padding: 0 16px; border: 1px solid #cdd8e8; font: inherit; }
.login-panel button { height: 58px; border: 0; border-radius: 999px; background: #00d9b1; color: #fff; font: 500 21px/1.5 Figtree, sans-serif; }
.login-panel > a { display: inline-block; margin-top: 26px; color: #6680aa; }
.faq-hero { position: relative; height: 937px; overflow: hidden; color: #fff; background: #29cbbb; }
.faq-hero::after { position: absolute; z-index: 0; left: -180px; right: -180px; top: 0; bottom: 0; transform: translateX(165px); background: url('/public/faq-hero.webp') center/cover no-repeat; content: ""; }
.faq-hero::before,
.how-hero-bg::after,
.location-hero-bg::after { position: absolute; inset: 0; background: radial-gradient(ellipse 195.96% 110.08% at 104.16% 99.97%, #00e9b7 0%, #7ba2e3 100%); mix-blend-mode: color; opacity: .7; content: ""; }
.faq-hero::before { z-index: 1; }
.faq-hero > div { position: relative; z-index: 2; width: 1200px; height: 100%; margin: 0 auto; }
.faq-hero h1 { position: absolute; top: 321.12px; left: 0; margin: 0; font-size: 65px; line-height: 78px; font-weight: 700; letter-spacing: -.715px; }
.faq-hero-mark { position: absolute; left: 1075px; top: 620px; width: 117.75px; height: 117.75px; }
.faq-hero-mark i { position: absolute; width: 39.25px; height: 39.25px; background: #00e9b7; }
.faq-hero-mark i:nth-child(1) { left: 0; top: 0; }.faq-hero-mark i:nth-child(2) { left: 39.25px; top: 39.25px; }.faq-hero-mark i:nth-child(3) { left: 78.5px; top: 0; }
.faq-list { width: 1335px; margin: 210px auto 300px; scroll-margin-top: 64px; }
.faq-list-title { margin-bottom: 70px; display: flex; align-items: center; gap: 55px; }
.faq-list-title h2 { margin: 0; color: #00e9b7; font-size: 48px; line-height: 72px; font-weight: 700; letter-spacing: -.528px; }
.faq-list-mark { position: relative; width: 71.24px; height: 106.86px; flex: 0 0 71.24px; }
.faq-list-mark i { position: absolute; width: 35.62px; height: 35.62px; background: #00e9b7; }
.faq-list-mark i:nth-child(1) { left: 0; top: 0; }
.faq-list-mark i:nth-child(2) { left: 35.62px; top: 35.62px; }
.faq-list-mark i:nth-child(3) { left: 0; top: 71.24px; }
.faq-item { margin-bottom: 40px; background: #fff; box-shadow: 0 0 36.3px #cecece; }
.faq-question { width: 100%; height: 121.86px; padding: 0 44px; border: 0; display: flex; align-items: center; justify-content: space-between; gap: 24px; color: #fff; background: linear-gradient(110deg, #7ba2e3 0%, #00e9b7 100%); font: 700 40px/60px Figtree, sans-serif; letter-spacing: -.44px; text-align: left; cursor: pointer; }
.faq-toggle-mark { position: relative; width: 34.17px; height: 22.78px; flex: 0 0 34.17px; }
.faq-toggle-mark img { position: absolute; inset: 0; display: block; width: 34.17px; height: 22.78px; }
.faq-mark-open { opacity: 0; }.faq-mark-closed { opacity: 1; }
.faq-item.is-open .faq-mark-open { opacity: 1; }.faq-item.is-open .faq-mark-closed { opacity: 0; }
.faq-answer { padding: 35px 44px; color: #9fa3a5; font-size: 33px; line-height: 39.6px; font-weight: 500; letter-spacing: -.363px; }
.faq-answer[hidden] { display: none; }
.faq-answer p { margin: 0; }.faq-answer p + p { margin-top: 28px; }.faq-answer ul { margin: 0; padding: 0; list-style: none; }.faq-answer li { position: relative; padding-left: 32px; }.faq-answer li::before { position: absolute; left: 0; top: 11.5px; width: 16.61px; height: 16.61px; background: #7ba2e3; content: ""; }
.faq-insurance-amount { white-space: nowrap; }
.faq-answer ol { margin: 0; padding-left: 1.25em; }.faq-answer ol li { padding-left: 0; }.faq-answer ol li::before { content: none; }

.contact-page { position: relative; width: 1920px; height: 1356.7px; background: #fff; }
.contact-page h1 { position: absolute; left: 434.48px; top: 242.54px; margin: 0; color: #00e9b7; font-size: 48px; line-height: 72px; font-weight: 700; letter-spacing: -.528px; }
.contact-title-mark { position: absolute; left: 290px; top: 223px; width: 72px; height: 111px; }
.contact-title-mark i { position: absolute; width: 36px; height: 36px; background: #00e9b7; }
.contact-title-mark i:nth-child(1) { left: 0; top: 0; }.contact-title-mark i:nth-child(2) { left: 36px; top: 37px; }.contact-title-mark i:nth-child(3) { left: 0; top: 74px; }
.contact-block { position: absolute; left: 0; width: 900px; }
.contact-block h2 { position: absolute; left: 445.15px; top: 0; margin: 0; color: #7ba2e3; font-size: 37px; line-height: 55.5px; font-weight: 700; letter-spacing: -.407px; }
.contact-bullet { position: absolute; left: 331px; top: 14px; width: 27.7px; height: 27.7px; background: #7ba2e3; }
.contact-block p { position: absolute; left: 449.68px; top: 80.91px; margin: 0; color: #9fa3a5; font-size: 28px; line-height: 36px; font-weight: 500; letter-spacing: -.308px; }
.contact-block a { color: inherit; text-decoration: none; }
.contact-email { top: 434.28px; height: 133px; }
.contact-email-link { position: absolute; left: 447.53px; top: 82.7px; width: 305.65px; height: 49.62px; padding-left: 32.59px; display: flex; align-items: center; border: 2px solid #7ba2e3; border-radius: 999px; color: #7ba2e3 !important; background: #fff; font: 500 28px/42px Figtree, sans-serif; letter-spacing: -.308px; text-align: left; cursor: pointer; }
.contact-phone { top: 685.19px; }.contact-phone p { left: 445.15px; top: 75.05px; line-height: 42px; }
.contact-support { top: 685.22px; }.contact-support p { top: 80.91px; line-height: 36px; }
.contact-address { top: 1183.82px; }.contact-address p { top: 80.91px; line-height: 36px; }
.contact-social { top: 953.15px; }
.contact-social p { left: 447.53px; top: 82.37px; display: grid; gap: 16.45px; }
.contact-social p a { height: 49.68px; display: flex; align-items: center; gap: 18.04px; font-size: 22px; line-height: 33px; letter-spacing: -.242px; }
.contact-social img { width: 49.68px; height: 49.68px; object-fit: contain; filter: brightness(0) saturate(100%) invert(73%) sepia(4%) saturate(220%) hue-rotate(151deg) brightness(89%) contrast(86%); }

.semantic-legal-page { background: #fff; }
.legal-document {
  width: min(1180px, calc(100% - 48px));
  margin: 0 auto;
  padding: 210px 0 140px;
  color: #9fa3a5;
  font-size: 28px;
  line-height: 33.6px;
}
.legal-document h1 {
  margin: 0 0 32px;
  color: #00e9b7;
  font-size: 65px;
  line-height: 97.5px;
  letter-spacing: -.715px;
}
.legal-document h2 {
  margin: 74px 0 24px;
  color: #7ba2e3;
  font-size: 37px;
  line-height: 55.5px;
  letter-spacing: -.407px;
}
.legal-document h3 {
  margin: 42px 0 14px;
  color: #7ba2e3;
  font-size: 28px;
  line-height: 42px;
}
.legal-document p { margin: 0 0 28px; }
.legal-document strong { color: #7ba2e3; font-weight: 700; }
.legal-numbered {
  margin: 0 0 28px;
  padding: 0;
  list-style: none;
}
.legal-numbered li {
  position: relative;
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}
.legal-vseobecne-obchodni-podminky .legal-document strong { color: inherit; }
.legal-blue,
.legal-vseobecne-obchodni-podminky .legal-document strong.legal-blue { color: #7ba2e3; }
.legal-email { color: inherit; text-decoration: none; }
.phone-link { color: inherit; text-decoration: none; }
.phone-link:hover,
.phone-link:focus-visible { text-decoration: underline; }
.legal-email:hover,
.legal-email:focus-visible { text-decoration: underline; }
.legal-numbered p { margin: 0; }
.legal-numbered .legal-continuation {
  grid-column: 2;
  margin-top: 28px;
}
.legal-number {
  color: #7ba2e3;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.legal-table-wrap {
  width: 100%;
  margin: 38px 0 58px;
  overflow-x: auto;
  border: 1px solid #dbe4e7;
  border-radius: 6px;
}
.legal-document table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  color: #7f888c;
  font-size: 26px;
  line-height: 33.6px;
}
.legal-document th,
.legal-document td {
  padding: 15px 16px;
  border-right: 1px solid #dbe4e7;
  border-bottom: 1px solid #dbe4e7;
  text-align: left;
  vertical-align: top;
}
.legal-document th { color: #fff; background: #7ba2e3; font-weight: 700; }
.legal-document tr:last-child td { border-bottom: 0; }
.legal-document th:last-child,
.legal-document td:last-child { border-right: 0; }
.legal-podminky-skladovani .legal-table-wrap {
  border-color: transparent;
}
.legal-podminky-skladovani .legal-document table {
  background: #f4f9fb;
  color: #9fa3a5;
}
.legal-podminky-skladovani .legal-document th {
  border-color: transparent;
  background: #00e9b7;
  color: #fff;
}
.legal-podminky-skladovani .legal-document td {
  border-color: transparent;
  color: #9fa3a5;
}
.legal-podminky-skladovani .legal-document tbody tr:nth-child(odd) td {
  background: #e9eeef;
}
.legal-podminky-skladovani .legal-document tbody tr:nth-child(even) td {
  background: #f4f9fb;
}
.legal-podminky-skladovani .legal-document tbody tr td[colspan] {
  background: #fff;
  color: #00e9b7;
}
.legal-podminky-skladovani .storage-square {
  position: relative;
  padding-left: 42px;
}
.legal-podminky-skladovani .storage-square::before {
  content: "";
  position: absolute;
  left: 0;
  top: .36em;
  width: 20px;
  height: 20px;
}
.legal-podminky-skladovani .storage-square-grey::before {
  background: #9fa3a5;
}
.legal-podminky-skladovani .storage-square-blue::before {
  background: #7ba2e3;
}
.legal-podminky-skladovani .storage-overview-yes::before,
.legal-podminky-skladovani .storage-overview-no::before {
  display: inline-grid;
  place-items: center;
  width: 26px;
  height: 26px;
  margin-right: 18px;
  background: #fff;
  font-size: 20px;
  line-height: 1;
  vertical-align: -2px;
}
.legal-podminky-skladovani .storage-overview-yes::before {
  content: "✓";
  color: #00e9b7;
}
.legal-podminky-skladovani .storage-overview-no::before {
  content: "×";
  color: #ff7043;
}
.legal-cookies .legal-table-wrap {
  border-color: transparent;
  border-radius: 0;
}
.legal-cookies .legal-document table {
  background: #f4f9fb;
  color: #9fa3a5;
}
.legal-cookies .legal-document th {
  border-color: transparent;
  background: #00e9b7;
  color: #fff;
  font-weight: 700;
}
.legal-cookies .legal-document td {
  border-color: transparent;
  color: #9fa3a5;
  font-weight: 400;
}
.legal-cookies .legal-document tbody tr:nth-child(odd) td {
  background: #f4f9fb;
}
.legal-cookies .legal-document tbody tr:nth-child(even) td {
  background: #e9eeef;
}
.legal-cookies .cookies-item-title {
  position: relative;
  margin-bottom: 0;
  padding-left: 42px;
  color: #7ba2e3;
  font-weight: 700;
}
.legal-cookies .cookies-item-title::before {
  content: "";
  position: absolute;
  left: 0;
  top: .36em;
  width: 20px;
  height: 20px;
  background: #7ba2e3;
}
.legal-cookies .cookies-item-title strong {
  color: #7ba2e3;
}
.legal-cookies .cookies-item-title span {
  color: #9fa3a5;
  font-weight: 400;
}
.legal-cookies .cookies-item-description {
  padding-left: 42px;
}
.legal-cookies .cookies-green {
  color: #00e9b7;
  font-weight: 700;
}
.legal-ochrana-osobnich-udaju .legal-table-wrap {
  border-color: transparent;
  border-radius: 0;
}
.legal-ochrana-osobnich-udaju .legal-document table {
  background: #f4f9fb;
  color: #9fa3a5;
}
.legal-ochrana-osobnich-udaju .legal-document th {
  border-color: transparent;
  background: #00e9b7;
  color: #fff;
}
.legal-ochrana-osobnich-udaju .legal-document td {
  border-color: transparent;
  color: #9fa3a5;
}
.legal-ochrana-osobnich-udaju .legal-document tbody tr:nth-child(odd) td {
  background: #f4f9fb;
}
.legal-ochrana-osobnich-udaju .legal-document tbody tr:nth-child(even) td {
  background: #e9eeef;
}
.legal-ochrana-osobnich-udaju .privacy-bullet {
  position: relative;
  margin-bottom: 0;
  padding-left: 42px;
  font-weight: 700;
}
.legal-ochrana-osobnich-udaju .privacy-bullet::before,
.legal-ochrana-osobnich-udaju .privacy-protection-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .36em;
  width: 20px;
  height: 20px;
  background: #7ba2e3;
}
.legal-ochrana-osobnich-udaju .privacy-protection-list {
  margin: 0 0 28px;
  padding: 0;
  list-style: none;
  color: #7ba2e3;
  font-weight: 700;
}
.legal-ochrana-osobnich-udaju .privacy-protection-list li {
  position: relative;
  padding-left: 42px;
}
.legal-ochrana-osobnich-udaju .privacy-right-title {
  margin-bottom: 0;
  color: #7ba2e3;
  font-weight: 700;
}
.legal-ochrana-osobnich-udaju .privacy-administrator-details span,
.legal-ochrana-osobnich-udaju .privacy-contact-details span {
  color: #7ba2e3;
  font-weight: 400;
}
.legal-vseobecne-obchodni-podminky .legal-document {
  min-height: 0;
  padding-top: 64px;
  padding-bottom: 104px;
  font-size: 18px;
  line-height: 28px;
}
.legal-vseobecne-obchodni-podminky .legal-document h1 {
  font-size: 48px;
  line-height: 1.2;
}
.legal-vseobecne-obchodni-podminky .legal-document h2 {
  font-size: 30px;
  line-height: 1.3;
}
.legal-vseobecne-obchodni-podminky .legal-document h3 {
  font-size: 22px;
  line-height: 1.35;
}
.legal-vseobecne-obchodni-podminky .legal-flow-block {
  width: calc(100% - var(--figma-indent));
  margin-left: var(--figma-indent);
}
.legal-vseobecne-obchodni-podminky .legal-flow-block > :first-child,
.legal-vseobecne-obchodni-podminky .legal-flow-block > :first-child > :first-child {
  margin-top: 0;
}
.legal-vseobecne-obchodni-podminky .legal-flow-block > :last-child { margin-bottom: 0; }
.legal-vseobecne-obchodni-podminky .legal-numbered {
  margin: 0;
}
.legal-vseobecne-obchodni-podminky .legal-numbered li {
  grid-template-columns: var(--legal-number-column, 68px) minmax(0, 1fr);
  column-gap: 8px;
}
.legal-vseobecne-obchodni-podminky .legal-numbered p { padding-top: 0; }
.legal-podminky-skladovani .legal-document {
  min-height: 0;
  padding-top: 64px;
  padding-bottom: 104px;
  font-size: 18px;
  line-height: 28px;
}
.legal-podminky-skladovani .legal-document h1 {
  margin-bottom: 28px;
  font-size: 48px;
  line-height: 1.2;
}
.legal-podminky-skladovani .legal-document h2 {
  margin: 52px 0 18px;
  font-size: 30px;
  line-height: 1.3;
}
.legal-podminky-skladovani .legal-document h3 {
  margin: 30px 0 14px;
  font-size: 22px;
  line-height: 1.35;
}
.legal-podminky-skladovani .legal-document p {
  margin-bottom: 14px;
}
.legal-podminky-skladovani .legal-document table {
  font-size: 18px;
  line-height: 28px;
}
.legal-podminky-skladovani .legal-document th,
.legal-podminky-skladovani .legal-document td {
  padding: 12px 14px;
}
.legal-cookies .legal-document {
  min-height: 0;
  padding-top: 64px;
  padding-bottom: 104px;
  font-size: 18px;
  line-height: 28px;
}
.legal-cookies .legal-document h1 {
  margin-bottom: 28px;
  font-size: 48px;
  line-height: 1.2;
}
.legal-cookies .cookies-page-settings {
  min-width: 220px;
  min-height: 50px;
  margin: 0 0 12px;
  padding: 0 28px;
  border: 2px solid #7ba2e3;
  border-radius: 999px;
  background: #7ba2e3;
  color: #fff;
  font: 700 16px/1 Figtree, sans-serif;
  cursor: pointer;
}
.legal-cookies .cookies-page-settings:focus-visible {
  outline: 3px solid #00e9b7;
  outline-offset: 3px;
}
.legal-cookies .legal-document h2 {
  margin: 52px 0 18px;
  font-size: 30px;
  line-height: 1.3;
}
.legal-cookies .legal-document h3 {
  margin: 30px 0 14px;
  font-size: 22px;
  line-height: 1.35;
}
.legal-cookies .legal-document p {
  margin-bottom: 14px;
}
.legal-cookies .legal-document table {
  font-size: 18px;
  line-height: 28px;
}
.legal-cookies .legal-document th,
.legal-cookies .legal-document td {
  padding: 12px 14px;
}
.legal-ochrana-osobnich-udaju .legal-document {
  min-height: 0;
  padding-top: 64px;
  padding-bottom: 104px;
  font-size: 18px;
  line-height: 28px;
}
.legal-ochrana-osobnich-udaju .legal-document h1 {
  margin-bottom: 28px;
  font-size: 48px;
  line-height: 1.2;
}
.legal-ochrana-osobnich-udaju .legal-document h2 {
  margin: 52px 0 18px;
  font-size: 30px;
  line-height: 1.3;
}
.legal-ochrana-osobnich-udaju .legal-document h3 {
  margin: 30px 0 14px;
  font-size: 22px;
  line-height: 1.35;
}
.legal-ochrana-osobnich-udaju .legal-document p {
  margin-bottom: 14px;
}
.legal-ochrana-osobnich-udaju .legal-document table {
  font-size: 18px;
  line-height: 28px;
}
.legal-ochrana-osobnich-udaju .legal-document th,
.legal-ochrana-osobnich-udaju .legal-document td {
  padding: 12px 14px;
}

@media (max-width: 1920px) {
  .homepage-page,
  .native-page {
    width: 1920px;
    margin: 0;
    zoom: var(--desktop-scale);
  }
  .semantic-legal-page > .site-header,
  .semantic-legal-page > .site-footer {
    width: 1920px;
    zoom: var(--desktop-scale);
  }
}

.how-hero-bg { position: absolute; z-index: 0; left: 0; top: 0; width: 1920px; height: 937px; background: url('/public/hero/jak-to-funguje.webp') calc(50% + 70px) calc(50% - 24px)/112% auto no-repeat; }
.how-card-shape { box-shadow: 0 0 36.3px rgba(74, 91, 97, .2); }
.how-card-shape[style*="top:2857.42px"] { height: 789.26px !important; }
.how-card-bar { z-index: 2; background: linear-gradient(90deg, #7ba2e3 0%, #00e9b7 100%) !important; }
.how-card-bar[style*="top:1422.09px"], .how-card-bar[style*="top:2079.43px"] { display: none; }
.how-split-header { z-index: 2; }
.how-split-header[style*="left:389.82px"] { background: linear-gradient(90deg, #7ba2e3 0%, #48c0d1 100%) !important; }
.how-split-header[style*="left:1001.33px"] { background: linear-gradient(90deg, #48c0d1 0%, #00e9b7 100%) !important; }
.how-section-mark { position: absolute; z-index: 4; left: 239.67px; width: 71.24px; height: 106.86px; }
.how-section-mark i { position: absolute; width: 35.62px; height: 35.62px; background: #00e9b7; }
.how-section-mark i:nth-child(1) { left: 0; top: 0; }.how-section-mark i:nth-child(2) { left: 35.62px; top: 35.62px; }.how-section-mark i:nth-child(3) { left: 0; top: 71.24px; }
.how-list-bullet { position: absolute; z-index: 4; left: 400px; width: 27.7px; height: 27.7px; background: #7ba2e3; }
.how-step-circle { position: absolute; z-index: 4; width: 58px; height: 58px; display: grid; place-items: center; border: 2px solid #fff; border-radius: 50%; color: #fff; font: 500 28px/1 Figtree, sans-serif; font-style: normal; }
.how-outline { position: absolute; z-index: 5; display: grid; place-items: center; border: 2px solid currentColor; border-radius: 999px; text-decoration: none; font: 500 24px/1.5 Figtree, sans-serif; }
.how-fit { left: 437px; top: 1906px; width: 461px; height: 59px; color: #7ba2e3; font-size: 23px; }
.how-main-cta { left: 389px; top: 8985px; width: 365px; height: 61px; color: #fff; }
.how-faq-link { left: 390.74px; top: 9827.54px; width: 268.61px; height: 79.49px; color: #00e9b7; }
.how-want-link { left: 687px; top: 9827.54px; width: 268.61px; height: 79.49px; color: #7ba2e3; }

.location-map { position: absolute; z-index: 2; left: 0; top: 2469.74px; width: 1920px; height: 1080px; overflow: hidden; background: #eef2f3; }
.location-hero-bg { position: absolute; z-index: 0; left: -80px; top: 0; width: 2080px; height: 937px; transform: translateX(60px); background: url('/public/figma-nodes/2-8420.webp') center/cover no-repeat; }
.location-section-mark { position: absolute; z-index: 4; left: 239.67px; width: 71.24px; height: 106.86px; }
.location-section-mark i { position: absolute; width: 35.62px; height: 35.62px; background: #00e9b7; }
.location-section-mark i:nth-child(1) { left: 0; top: 0; }.location-section-mark i:nth-child(2) { left: 35.62px; top: 35.62px; }.location-section-mark i:nth-child(3) { left: 0; top: 71.24px; }
.location-feature-icon, .location-transport-icon { position: absolute; z-index: 5; display: block; object-fit: contain; }
.feature-garage { left: 422.63px; top: 1780.36px; width: 102.21px; height: 80.14px; }.feature-parking { left: 824.99px; top: 1784.2px; width: 96.57px; height: 96.56px; }.feature-access { left: 1223.19px; top: 1779.01px; width: 101.85px; height: 101.84px; }
.transport-bus { left: 425.73px; top: 4202.24px; width: 143.95px; height: 73.19px; }.transport-car { left: 1036.96px; top: 4224.48px; width: 126.51px; height: 51.33px; }
.location-card-shape { box-shadow: 0 0 36.3px rgba(74, 91, 97, .2); }
.location-card-bar { display: none; }
.location-split-header { z-index: 2; }
.location-split-header[style*="left:389.82px"] { background: linear-gradient(90deg, #7ba2e3, #55b8d3) !important; }
.location-split-header[style*="left:790.4px"] { background: linear-gradient(90deg, #55b8d3, #2ecbc4) !important; }
.location-split-header[style*="left:1190.97px"] { background: linear-gradient(90deg, #2ecbc4, #00e9b7) !important; }
.location-split-header[style*="left:992.49px"], .location-split-header[style*="left:992.39px"] { background: linear-gradient(90deg, #43c0cf, #00e9b7) !important; }
#spacebox-map { width: 100%; height: 100%; }
.map-error { margin: 0; padding-top: 500px; color: #365ea0; font: 500 24px/1.5 Figtree, sans-serif; text-align: center; }
.location-route { position: absolute; z-index: 3; left: 66px; top: 42px; width: 620px; min-height: 0; padding: 30px 35px 30px 96px; display: block; background: #fff; box-shadow: 0 7px 22px rgba(67, 87, 97, .18); color: #586064; font-family: Figtree, sans-serif; }
.route-modes { position: absolute; left: 96px; right: 35px; top: 18px; height: 50px; display: flex; align-items: center; gap: 12px; }
.route-modes button { width: 46px; height: 46px; padding: 0; display: grid; place-items: center; border: 0; border-radius: 50%; color: #7b858a; background: transparent; cursor: pointer; }
.route-modes button:hover, .route-modes button:focus-visible { color: #365ea0; background: #edf1f6; outline: none; }
.route-modes button.is-active { color: #176b85; background: #b1f6e7; }
.route-modes svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.location-route label, .route-destination { position: relative; height: 65px; display: flex; align-items: center; border: 1.5px solid #aab4b8; border-radius: 4px; }
.location-route label { margin-bottom: 15px; }
.location-route label i, .route-destination i { position: absolute; left: -62px; width: 18px; height: 18px; border: 3px solid #7ba2e3; border-radius: 50%; }
.route-destination i { border-color: #7821a5; }.route-destination i::after { position: absolute; left: 4px; top: 4px; width: 4px; height: 4px; border-radius: 50%; background: #7821a5; content: ""; }
.location-route input { width: 100%; height: 100%; padding: 0 18px; border: 0; outline: 0; color: #586064; font: 500 21px/1.4 Figtree, sans-serif; }
.route-destination { padding: 0 64px 0 18px; border: 2px solid #7ba2e3; color: #586064; font-size: 21px; }
.route-destination button { position: absolute; right: 0; top: 0; width: 58px; height: 61px; display: grid; place-items: center; border: 0; color: #176b85; background: transparent; cursor: pointer; }
.route-destination button svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
.route-submit { min-width: 238px; height: 54px; margin-top: 20px; padding: 0 26px; border: 0; border-radius: 999px; background: #7ba2e3; color: #fff; cursor: pointer; font: 700 19px/1 Figtree, sans-serif; }
.route-submit:hover, .route-submit:focus-visible { background: #365ea0; outline: none; }
.location-gallery { position: absolute; z-index: 5; left: 389.67px; top: 4849.95px; width: 1053.84px; height: 755px; overflow: hidden; }
.location-gallery-viewport { width: 1053.84px; height: 592.78px; overflow: hidden; }
.location-gallery-track { width: max-content; height: 592.78px; display: flex; gap: 42.21px; transform: translateX(calc(-1 * var(--gallery-offset, 0px))); transition: transform .55s cubic-bezier(.22,.61,.36,1); }
.location-gallery-track img { width: 1053.84px; height: 592.78px; display: block; object-fit: cover; flex: 0 0 1053.84px; }
.location-gallery-controls { position: absolute; left: 0; top: 634px; width: 1053.84px; display: grid; grid-template-columns: 62.38px 1fr 62.38px; align-items: center; gap: 55px; }
.location-gallery-controls button { width: 62.38px; height: 62.38px; border: 0; border-radius: 50%; background-color: transparent; background-position: center; background-repeat: no-repeat; background-size: 100% 100%; cursor: pointer; }
.location-gallery-controls .gallery-prev { background-image: url('/public/icons/gallery-arrow-left.svg'); }
.location-gallery-controls .gallery-next { background-image: url('/public/icons/gallery-arrow-right.svg'); }
.gallery-progress { position: relative; height: 9px; overflow: hidden; background: #dce1e3; }
.gallery-progress i { position: absolute; left: 0; top: 0; width: 25%; height: 100%; background: #00e9b7; transition: transform .55s cubic-bezier(.22,.61,.36,1); }
.location-gallery[data-index="1"] .gallery-progress i { transform: translateX(100%); }.location-gallery[data-index="2"] .gallery-progress i { transform: translateX(200%); }.location-gallery[data-index="3"] .gallery-progress i { transform: translateX(300%); }
.location-outline { position: absolute; z-index: 5; width: 268.61px; height: 79.49px; display: grid; place-items: center; border: 2px solid currentColor; border-radius: 999px; text-decoration: none; font: 500 30px/45px Figtree, sans-serif; }
.location-faq-link { left: 390.74px; top: 8283.38px; color: #00e9b7; }.location-want-link { left: 687px; top: 8283.38px; color: #7ba2e3; }
#kalkulator-velikosti { scroll-margin-top: 120px; }
.storage-calculator { position: absolute; z-index: 6; left: 0; top: 6029.71px; width: 1920px; height: 1811.78px; padding: 125px 378px 80px; background: #eef2f3; color: #9fa3a5; }
.calculator-tabs { display: flex; flex-wrap: wrap; gap: 18px 20px; margin-bottom: 56px; }
.calculator-tabs button { min-width: 190px; height: 58px; padding: 0 28px; display: flex; align-items: center; justify-content: center; gap: 18px; border: 0; border-radius: 999px; background: #fff; color: #9fa3a5; font: 700 22px/1 Figtree,sans-serif; cursor: pointer; box-shadow: 0 7px 18px rgba(73,91,98,.18); }
.calculator-tabs button:has(span:not(:empty)) { justify-content: space-between; }
.calculator-tabs button.is-active { color: #fff; background: #00e9b7; }.calculator-tabs span { font-weight: 500; }
.calculator-items { display: grid; grid-template-columns: repeat(4,273.58px); gap: 24px 23.22px; min-height: 850px; align-content: start; }
.calculator-items article { height: 270px; padding: 24px 28px 20px; background: #fff; box-shadow: 0 5px 17px rgba(73,91,98,.12); }
.calculator-items img { width: 84px; height: 84px; display: block; object-fit: contain; object-position: left center; }
.calculator-items img.is-wide-icon { width: 89px; }
.calculator-items h3 { margin: 10px 0 0; color: #9fa3a5; font-size: 23px; line-height: 29px; }
.calculator-items p { margin: 0 0 12px; font-size: 16px; line-height: 24px; }
.calculator-items .item-counter { display: grid; grid-template-columns: 36px 42px 36px; align-items: center; }
.calculator-items article button { width: 32px; height: 32px; padding: 0; border: 1px solid #d8dfe2; color: #7ba2e3; background: #fff; font: 700 26px/28px Figtree,sans-serif; cursor: pointer; }
.calculator-items article strong { text-align: center; font-size: 22px; color: #9fa3a5; }
.calculator-result { min-height: 330px; margin-top: 58px; padding: 45px 55px; display: grid; grid-template-columns: 260px 1fr 270px; gap: 50px; background: #fff; box-shadow: 0 7px 24px rgba(73,91,98,.13); }
.calculator-result small { display: block; margin-bottom: 27px; font-size: 17px; }.calculator-result strong { display: block; color: #00e9b7; font-size: 48px; line-height: 60px; }.calculator-result .result-price { display: block; margin-top: 6px; font-size: 19px; }
.storage-calculator.has-multiple-boxes .result-size { font-size: 35px; line-height: 44px; }
.calculator-summary { padding-top: 72px; }.calculator-summary b { font-size: 19px; }.calculator-summary p { margin: 12px 0 0; font-size: 18px; line-height: 28px; }
.result-box { font-size: 42px !important; }.result-box em { margin-left: 10px; font-size: 20px; font-style: normal; }
.calculator-result a { width: 210px; height: 52px; margin-top: 42px; display: grid; place-items: center; border: 2px solid #00e9b7; border-radius: 999px; color: #00e9b7; text-decoration: none; font-size: 18px; font-weight: 700; }
.bike-hook-control { margin-top: 18px; padding: 14px 16px; border-left: 4px solid #7ba2e3; background: #f4f9fb; }
.bike-hook-control[hidden] { display: none; }
.bike-hook-control > span { display: block; margin-bottom: 9px; color: #7ba2e3; font-size: 17px; font-weight: 700; }
.bike-hook-control > div { display: grid; grid-template-columns: 30px 86px 30px; align-items: center; }
.bike-hook-control button { width: 28px; height: 28px; padding: 0; border: 1px solid #d8dfe2; color: #7ba2e3; background: #fff; font: 700 21px/1 Figtree,sans-serif; cursor: pointer; }
.bike-hook-control button:disabled { opacity: .35; cursor: default; }
.bike-hook-control strong { color: #9fa3a5; font-size: 18px; line-height: 28px; text-align: center; }
.bike-hook-control small { margin: 7px 0 0; color: #9fa3a5; font-size: 14px; line-height: 19px; }
.result-fit-note { margin-top: 14px; color: #7ba2e3; font-size: 15px; line-height: 20px; }
.mobile-native-content { display: none; }

.hotspot {
  position: absolute;
  z-index: 2;
  display: block;
  border-radius: 999px;
  color: transparent;
  font-size: 0;
  outline-offset: 3px;
}

.hotspot:focus-visible { outline: 3px solid #7821a5; }
.nav-space { left: 0.8%; top: 0.25%; width: 15%; height: 1.2%; }
.nav-location { left: 43.5%; top: 0.15%; width: 12%; height: 1.25%; }
.nav-how { left: 55.5%; top: 0.15%; width: 9%; height: 1.25%; }
.nav-book { left: 64.5%; top: 0.15%; width: 9%; height: 1.25%; }
.nav-faq { left: 73.5%; top: 0.15%; width: 9%; height: 1.25%; }
.nav-contact { left: 82%; top: 0.15%; width: 7%; height: 1.25%; }
.nav-login { left: 89%; top: 0.15%; width: 10%; height: 1.25%; }

.footer-cookies { left: 66%; bottom: 1.2%; width: 8%; height: 1.2%; }
.footer-privacy { left: 48%; bottom: 1.2%; width: 18%; height: 1.2%; }
.footer-terms { left: 7%; bottom: 1.2%; width: 17%; height: 1.2%; }
.footer-storage { left: 24%; bottom: 1.2%; width: 14%; height: 1.2%; }
.footer-faq { left: 38%; bottom: 1.2%; width: 10%; height: 1.2%; }

.checkout-back { left: 15%; bottom: 17%; width: 13%; height: 6%; }
.checkout-next { right: 15%; bottom: 17%; width: 15%; height: 6%; }
.checkout-home { left: 2%; top: 1%; width: 14%; height: 6%; }

.vop-stack .figma-content > img { width: 100%; margin: 0; }

.not-found {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 2rem;
  text-align: center;
  color: #586064;
}
.not-found a { color: #00a986; }

@media (max-width: 700px) {
  .how-page,
  .location-page {
    width: 100%;
    margin: 0;
    zoom: 1;
  }
  .how-page .native-canvas,
  .location-page .native-canvas { display: none; }
  .mobile-native-content {
    display: block;
    width: 100%;
    color: #586064;
    background: #fff;
  }
  .mobile-native-hero {
    min-height: 500px;
    padding: 260px 24px 54px;
    color: #fff;
    background-position: center;
    background-size: cover;
  }
  .mobile-how-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    min-height: 580px;
    padding: 200px 24px 54px;
    display: flex;
    flex-direction: column;
    background: #35c3c7;
  }
  .mobile-how-hero::before {
    position: absolute;
    z-index: 0;
    inset: 0;
    display: block;
    background-image:
      radial-gradient(ellipse 195.96% 110.08% at 104.16% 99.97%, rgb(0 233 183 / 70%) 0%, rgb(123 162 227 / 70%) 100%),
      url("/public/hero/jak-to-funguje.webp");
    background-position: center, 32% center;
    background-repeat: no-repeat;
    background-size: cover;
    background-blend-mode: color;
    filter: none;
    content: "";
  }
  .mobile-how-hero > * {
    position: relative;
    z-index: 1;
  }
  .mobile-location-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: #35c3c7;
  }
  .mobile-location-hero {
    min-height: 610px;
    padding-top: 200px;
    background-position: center;
  }
  .mobile-location-hero::before {
    display: none;
  }
  .mobile-location-hero::after {
    position: absolute;
    z-index: 0;
    inset: 0;
    display: block;
    background-image: url("/public/hero/lokalita-doubravka-mobile-outpaint-v6.webp");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    filter: saturate(.6);
    transform: scale(1.21);
    content: "";
  }
  .mobile-location-hero > * {
    position: relative;
    z-index: 2;
  }
  .mobile-location-label,
  .mobile-eyebrow {
    display: block;
    color: #00e9b7;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
  }
  .mobile-location-label { margin-bottom: 16px; color: #fff; }
  .mobile-location-hero h1 { max-width: 345px; font-size: 39px; }
  .mobile-location-hero > a {
    min-height: 50px;
    margin-top: 28px;
    padding: 12px 22px;
    display: inline-flex;
    align-items: center;
    border: 2px solid #fff;
    border-radius: 999px;
    color: #fff;
    text-decoration: none;
    font-size: 17px;
    font-weight: 700;
  }
  .mobile-native-hero h1 {
    margin: 0 0 18px;
    max-width: 340px;
    color: #fff;
    font-size: 42px;
    line-height: 1.08;
  }
  .mobile-native-hero p {
    margin: 0;
    max-width: 330px;
    font-size: 19px;
    line-height: 1.45;
  }
  .mobile-native-hero.mobile-location-hero h1,
  .mobile-native-hero.mobile-location-hero p,
  .mobile-native-hero.mobile-how-hero h1,
  .mobile-native-hero.mobile-how-hero p {
    max-width: 345px;
    font-size: 30px;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: -.025em;
    text-shadow: 0 2px 12px rgb(18 42 57 / 32%);
  }
  .mobile-native-hero.mobile-how-hero h1,
  .mobile-native-hero.mobile-how-hero p {
    letter-spacing: -.33px;
  }
  .mobile-native-hero.mobile-location-hero h1,
  .mobile-native-hero.mobile-how-hero h1 {
    margin-bottom: 27px;
  }
  .mobile-content-section { padding: 72px 24px; }
  .mobile-content-section .mobile-eyebrow { margin: 0 0 14px; }
  .mobile-content-section h2,
  .mobile-native-cta h2 {
    margin: 0 0 30px;
    color: #586064;
    font-size: 32px;
    line-height: 1.15;
  }
  .mobile-content-section p { font-size: 18px; line-height: 1.55; }
  .mobile-tint { background: #eef2f3; }
  .mobile-feature-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
  }
  .mobile-feature-grid span {
    min-height: 116px;
    padding: 20px 16px;
    display: flex;
    align-items: flex-end;
    color: #586064;
    background: #fff;
    box-shadow: 0 7px 22px rgb(67 87 97 / 13%);
    font-size: 17px;
    font-weight: 700;
    line-height: 1.25;
  }
  .mobile-location-intro > p:not(.mobile-eyebrow) {
    margin: -10px 0 34px;
  }
  .mobile-location-page .mobile-content-section { padding: 74px 22px; }
  .mobile-location-page .mobile-location-intro {
    padding-top: 82px;
    padding-bottom: 0;
  }
  .mobile-section-heading {
    position: relative;
    margin: 0 0 38px;
    padding-left: 58px;
  }
  .mobile-section-heading h2 {
    margin: 0;
    padding-top: 14px;
    color: #00e9b7;
    font-size: 31px;
    line-height: 1.14;
    letter-spacing: -.4px;
  }
  .mobile-section-mark {
    position: absolute;
    left: 0;
    top: 3px;
    width: 39px;
    height: 58px;
  }
  .mobile-section-mark i {
    position: absolute;
    width: 19.5px;
    height: 19.5px;
    background: #00e9b7;
  }
  .mobile-section-mark i:nth-child(1) { left: 0; top: 0; }
  .mobile-section-mark i:nth-child(2) { left: 19.5px; top: 19.5px; }
  .mobile-section-mark i:nth-child(3) { left: 0; top: 39px; }
  .mobile-location-intro h3 {
    margin: 0 0 8px 58px;
    color: #8e9598;
    font-size: 25px;
    line-height: 1.2;
  }
  .mobile-location-page .mobile-location-address {
    margin: 0 0 34px !important;
    padding-left: 58px;
    color: #8e9598;
    font-size: 19px;
    line-height: 1.45;
  }
  .mobile-location-feature-cards { display: grid; gap: 18px; }
  .mobile-location-feature-cards article,
  .mobile-route-cards article {
    position: relative;
    min-height: 260px;
    padding: 82px 24px 24px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 8px 28px rgb(73 91 98 / 18%);
  }
  .mobile-location-feature-cards header,
  .mobile-route-cards header {
    position: absolute;
    inset: 0 0 auto;
    min-height: 66px;
    padding: 15px 24px;
    display: flex;
    align-items: center;
    color: #fff;
    background: linear-gradient(90deg, #7ba2e3, #00e9b7);
    font-size: 25px;
    font-weight: 700;
    line-height: 1.05;
  }
  .mobile-location-feature-cards img {
    width: 82px;
    height: 76px;
    margin: 6px 0 16px;
    display: block;
    object-fit: contain;
    object-position: left center;
  }
  .mobile-location-feature-cards p,
  .mobile-route-cards p {
    margin: 0;
    color: #8e9598;
    font-size: 17px;
    line-height: 1.45;
  }
  .mobile-location-map-section {
    padding-right: 0 !important;
    padding-left: 0 !important;
    background: #fff;
  }
  .mobile-location-map-section .mobile-section-heading { margin-right: 22px; margin-bottom: 35px; margin-left: 22px; }
  .mobile-location-map-frame {
    width: 100%;
    height: 520px;
    overflow: hidden;
    background: #eef2f3;
  }
  .mobile-location-map-frame iframe { width: 100%; height: 100%; border: 0; }
  .mobile-location-route-form {
    position: relative;
    z-index: 2;
    margin: -118px 18px 0;
    padding: 22px;
    background: #fff;
    box-shadow: 0 8px 30px rgb(50 69 77 / 22%);
  }
  .mobile-location-route-form label,
  .mobile-location-route-form label span { display: block; }
  .mobile-location-route-form label span,
  .mobile-location-route-form p span {
    margin-bottom: 6px;
    display: block;
    color: #7ba2e3;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
  }
  .mobile-location-route-form input {
    width: 100%;
    height: 50px;
    padding: 0 14px;
    border: 1px solid #abb6ba;
    color: #586064;
    font: 500 16px/1.3 Figtree, sans-serif;
  }
  .mobile-location-route-form p {
    margin: 12px 0 18px;
    padding: 12px 14px;
    border: 2px solid #7ba2e3;
    font-size: 16px;
  }
  .mobile-location-route-form button {
    min-height: 48px;
    padding: 0 22px;
    border: 0;
    border-radius: 999px;
    color: #fff;
    background: #7ba2e3;
    font: 700 16px/1 Figtree, sans-serif;
  }
  .mobile-location-intro .mobile-feature-grid span {
    min-height: 132px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    background: linear-gradient(145deg, #f7fbfb, #fff);
  }
  .mobile-location-intro .mobile-feature-grid b {
    margin-bottom: 7px;
    color: #00b991;
    font-size: 21px;
  }
  .mobile-location-route h2 { margin-bottom: 10px; }
  .mobile-location-route .mobile-section-heading { margin-bottom: 42px; }
  .mobile-location-address { margin: 0 0 32px; color: #7a8286; }
  .mobile-route-cards { display: grid; gap: 18px; margin-bottom: 0; }
  .mobile-route-cards article {
    min-height: 250px;
    padding-top: 88px;
    display: block;
  }
  .mobile-route-cards img { width: 100px; height: 62px; margin: 6px 0 18px; object-fit: contain; object-position: left center; }
  .mobile-location-slider { overflow: hidden; }
  .mobile-location-gallery .mobile-section-heading { margin-bottom: 35px; }
  .mobile-location-slider-viewport { width: 100%; overflow: hidden; }
  .mobile-location-slider-track {
    display: flex;
    transition: transform .5s cubic-bezier(.22,.61,.36,1);
  }
  .mobile-location-slide {
    width: 100%;
    aspect-ratio: 4 / 3;
    display: block;
    flex: 0 0 100%;
    object-fit: cover;
  }
  .mobile-location-slider-controls {
    margin-top: 24px;
    display: grid;
    grid-template-columns: 48px 1fr 48px;
    gap: 18px;
    align-items: center;
  }
  .mobile-location-slider-controls button {
    width: 48px;
    height: 48px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent center/100% 100% no-repeat;
  }
  .mobile-location-slider-prev { background-image: url("/public/icons/gallery-arrow-left.svg") !important; }
  .mobile-location-slider-next { background-image: url("/public/icons/gallery-arrow-right.svg") !important; }
  .mobile-location-slider-progress { height: 7px; overflow: hidden; background: #dce1e3; }
  .mobile-location-slider-progress i {
    width: 25%;
    height: 100%;
    display: block;
    background: #00e9b7;
    transition: transform .5s cubic-bezier(.22,.61,.36,1);
  }
  .mobile-steps {
    position: relative;
    margin: 0 0 36px;
    padding: 0;
    list-style: none;
    counter-reset: mobile-step;
  }
  .mobile-how-page .mobile-steps::before {
    position: absolute;
    left: 23px;
    top: 42px;
    bottom: 54px;
    width: 2px;
    background: #dfe7e9;
    content: "";
  }
  .mobile-steps li {
    position: relative;
    min-height: 94px;
    padding: 5px 0 31px 72px;
    counter-increment: mobile-step;
  }
  .mobile-steps li::before {
    position: absolute;
    left: 0;
    top: 0;
    width: 50px;
    height: 50px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    background: #7ba2e3;
    content: counter(mobile-step);
    font-size: 21px;
    font-weight: 700;
  }
  .mobile-steps b,
  .mobile-steps strong,
  .mobile-steps span { display: block; }
  .mobile-steps b { margin-bottom: 5px; font-size: 20px; }
  .mobile-steps strong {
    margin: 14px 0 7px;
    color: #687176;
    font-size: 18px;
    line-height: 1.35;
  }
  .mobile-steps span { font-size: 17px; line-height: 1.4; }
  .mobile-steps .mobile-pill {
    margin-top: 22px;
    font-size: 15px;
  }
  .mobile-how-page .mobile-section-heading {
    margin-bottom: 44px;
  }
  .mobile-how-page .mobile-section-heading h2 {
    max-width: 285px;
  }
  .mobile-how-steps-section {
    padding: 60px 22px 44px;
  }
  .mobile-how-process-heading h2 {
    padding-top: 18px;
    font-size: 25px;
  }
  .mobile-how-process-heading h2 span {
    white-space: nowrap;
  }
  .mobile-how-step-cards {
    display: grid;
    gap: 28px;
  }
  .mobile-how-step-cards article {
    overflow: hidden;
    background: #fff;
    box-shadow: 0 9px 30px rgb(74 91 97 / 16%);
  }
  .mobile-how-step-cards header {
    min-height: 82px;
    padding: 18px 22px;
    display: flex;
    align-items: center;
    gap: 18px;
    color: #fff;
    background: linear-gradient(90deg, #7ba2e3 0%, #00e9b7 100%);
  }
  .mobile-how-step-cards article:nth-child(odd) header {
    background: linear-gradient(90deg, #7ba2e3 0%, #48c0d1 100%);
  }
  .mobile-how-step-cards article:nth-child(even) header {
    background: linear-gradient(90deg, #48c0d1 0%, #00e9b7 100%);
  }
  .mobile-how-step-cards header i {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: grid;
    place-items: center;
    border: 2px solid #fff;
    border-radius: 50%;
    font-size: 20px;
    font-style: normal;
  }
  .mobile-how-step-cards header h3 {
    margin: 0;
    font-size: 23px;
    line-height: 1.2;
    letter-spacing: -.25px;
  }
  .mobile-how-step-cards article > div {
    padding: 27px 24px 32px;
  }
  .mobile-how-step-cards strong {
    display: block;
    margin-bottom: 15px;
    color: #687176;
    font-size: 19px;
    line-height: 1.35;
    letter-spacing: -.21px;
  }
  .mobile-how-step-cards p {
    margin: 0 0 18px;
    color: #7b8387;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: -.18px;
  }
  .mobile-how-step-cards p:last-child { margin-bottom: 0; }
  .mobile-how-step-cards .mobile-pill {
    margin-top: 7px;
    color: #00dcb0;
    border-color: #00e9b7;
    font-size: 15px;
  }
  .mobile-how-security {
    padding: 44px 22px;
    background: #fff;
  }
  .mobile-how-app-card {
    overflow: hidden;
    padding: 0 26px 28px;
    background: #fff;
    box-shadow: 0 9px 30px rgb(74 91 97 / 16%);
  }
  .mobile-how-app-card h2 {
    margin: 0 -26px 34px;
    padding: 34px 26px 36px;
    color: #fff;
    background: linear-gradient(90deg, #7ba2e3 0%, #00e9b7 100%);
    font-size: 29px;
    line-height: 1.16;
    letter-spacing: -.32px;
  }
  .mobile-how-security > h3 {
    margin: -10px 0 34px 58px;
    color: #7b8387;
    font-size: 20px;
    line-height: 1.4;
  }
  .mobile-how-copy {
    margin-left: 0;
  }
  .mobile-how-copy p {
    margin: 0 0 24px;
    color: #7b8387;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: -.19px;
  }
  .mobile-how-security .mobile-feature-grid {
    gap: 16px;
  }
  .mobile-how-security .mobile-feature-grid span {
    position: relative;
    min-height: 142px;
    padding: 52px 18px 19px;
    align-items: flex-end;
    overflow: hidden;
    color: #687176;
    font-size: 18px;
    line-height: 1.25;
  }
  .mobile-how-security .mobile-feature-grid span::before {
    position: absolute;
    left: 18px;
    top: 20px;
    width: 24px;
    height: 24px;
    border: 2px solid #7ba2e3;
    border-radius: 50%;
    content: "";
  }
  .mobile-how-security .mobile-feature-grid span::after {
    position: absolute;
    left: 26px;
    top: 26px;
    width: 8px;
    height: 5px;
    border-left: 2px solid #00b991;
    border-bottom: 2px solid #00b991;
    transform: rotate(-45deg);
    content: "";
  }
  .mobile-how-included {
    padding: 44px 22px;
  }
  .mobile-how-detail-list {
    margin-left: 58px;
  }
  .mobile-how-detail-list article {
    padding: 24px 0;
  }
  .mobile-how-detail-list article:first-child { padding-top: 0; }
  .mobile-how-detail-list article:last-child { border-bottom: 0; }
  .mobile-how-detail-list h3 {
    position: relative;
    margin: 0 0 9px;
    color: #7ba2e3;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: -.22px;
  }
  .mobile-how-detail-list h3::before {
    position: absolute;
    left: -30px;
    top: 5px;
    width: 13px;
    height: 13px;
    background: #7ba2e3;
    content: "";
  }
  .mobile-how-detail-list p {
    margin: 0;
    color: #7b8387;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: -.18px;
  }
  .mobile-how-use-cases {
    padding: 44px 22px 96px;
    background: #fff;
  }
  .mobile-how-use-cases .mobile-section-heading h2 span {
    white-space: nowrap;
  }
  .mobile-how-use-cases .mobile-section-heading h2 {
    font-size: 29px;
    white-space: nowrap;
  }
  .mobile-how-intro {
    margin: -12px 0 42px 58px;
    color: #7b8387;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: -.19px;
  }
  .mobile-how-included .mobile-check-list {
    margin-left: 58px;
  }
  .mobile-how-included .mobile-check-list li {
    padding: 18px 0 18px 34px;
    font-size: 17px;
  }
  .mobile-how-included .mobile-check-list li::before {
    left: 2px;
    top: 20px;
    color: #7ba2e3;
  }
  .mobile-native-cta.mobile-how-cta {
    padding: 86px 22px 94px;
    background: radial-gradient(ellipse 190% 115% at 105% 0%, #00e9b7 0%, #7ba2e3 100%);
  }
  .mobile-native-cta.mobile-how-cta h2 {
    margin-bottom: 18px;
    font-size: 36px;
    line-height: 1.12;
    letter-spacing: -.4px;
  }
  .mobile-native-cta.mobile-how-cta p {
    max-width: 310px;
    margin: 0 0 28px;
    font-size: 17px;
  }
  .mobile-native-cta.mobile-how-cta > div {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
  }
  .mobile-native-cta.mobile-how-cta a {
    margin: 0;
    border-color: #fff;
    font-weight: 500;
    letter-spacing: -.19px;
  }
  .mobile-native-cta.mobile-how-cta a:first-child {
    color: #6c9bd9;
    background: #fff;
  }
  .mobile-native-cta.mobile-how-question {
    padding: 76px 22px 86px;
    color: #687176;
    background: #fff;
  }
  .mobile-native-cta.mobile-how-question h2 {
    color: #00e9b7;
    letter-spacing: -.35px;
  }
  .mobile-native-cta.mobile-how-question > div {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
  }
  .mobile-native-cta.mobile-how-question a {
    margin: 0;
    color: #7ba2e3;
    border-color: #7ba2e3;
    font-weight: 500;
    letter-spacing: -.19px;
  }
  .mobile-native-cta.mobile-how-question a:first-child {
    color: #00dcb0;
    border-color: #00e9b7;
  }
  .mobile-pill,
  .mobile-native-cta a {
    min-height: 50px;
    padding: 12px 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #00dcae;
    border-radius: 999px;
    color: #00a986;
    text-decoration: none;
    font-size: 17px;
    font-weight: 700;
  }
  .mobile-check-list { margin: 0; padding: 0; list-style: none; }
  .mobile-check-list li {
    position: relative;
    padding: 15px 0 15px 38px;
    border-bottom: 1px solid #dfe7e9;
    font-size: 18px;
    line-height: 1.4;
  }
  .mobile-check-list li::before {
    position: absolute;
    left: 4px;
    top: 18px;
    color: #00b991;
    content: "✓";
    font-weight: 800;
  }
  .mobile-photo-grid {
    margin: 0 -24px;
    padding: 0 24px 16px;
    display: flex;
    gap: 12px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }
  .mobile-photo-grid::-webkit-scrollbar { display: none; }
  .mobile-photo-grid img {
    width: min(78vw, 320px);
    aspect-ratio: 4 / 3;
    display: block;
    flex: 0 0 min(78vw, 320px);
    object-fit: cover;
    scroll-snap-align: start;
  }
  .mobile-native-cta {
    padding: 72px 24px 84px;
    color: #fff;
    background: #59616a;
  }
  .mobile-native-cta h2 { color: #fff; }
  .mobile-native-cta .mobile-eyebrow { margin-bottom: 14px; }
  .mobile-native-cta p { font-size: 17px; line-height: 1.45; }
  .mobile-native-cta a { margin: 8px 8px 0 0; color: #fff; }
  .mobile-location-questions {
    padding: 86px 22px 96px;
    color: #586064;
    background: #fff;
  }
  .mobile-location-questions h2 {
    margin-bottom: 34px;
    color: #00e9b7;
    font-size: 38px;
    line-height: 1.15;
  }
  .mobile-location-questions > div { display: flex; flex-wrap: wrap; gap: 14px; }
  .mobile-location-questions a {
    min-height: 52px;
    margin: 0;
    padding: 11px 22px;
    color: #00e9b7;
    border-color: #00e9b7;
    background: #fff;
  }
  .mobile-location-questions a:last-child {
    color: #6f98d8;
    border-color: #7ba2e3;
  }

  .location-page .mobile-native-content > .storage-calculator {
    position: relative;
    left: auto;
    top: auto;
    width: 100%;
    height: auto;
    padding: 72px 20px;
  }
  .location-page .mobile-native-content > .storage-calculator::before {
    display: none;
  }
  .location-page .mobile-native-content > .storage-calculator .mobile-calculator-heading { margin-bottom: 24px; }
  #mobilni-kalkulator-velikosti { scroll-margin-top: 124px; }
  .location-page .mobile-native-content > .storage-calculator .mobile-calculator-heading h2 { font-size: 30px; }
  .mobile-calculator-intro { margin: 0 0 32px 58px; color: #8e9598; font-size: 18px; line-height: 1.48; font-weight: 700; }
  .location-page .mobile-native-content > .storage-calculator .calculator-tabs {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin: 0 0 32px;
    padding: 4px 0;
    overflow: visible;
  }
  .location-page .mobile-native-content > .storage-calculator .calculator-tabs button {
    min-width: 0;
    width: 100%;
    height: 44px;
    padding: 0 7px;
    gap: 4px;
    font-size: 12px;
    white-space: nowrap;
  }
  .location-page .mobile-native-content > .storage-calculator .calculator-items {
    min-height: 0;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }
  .location-page .mobile-native-content > .storage-calculator .calculator-items article {
    height: 224px;
    padding: 18px 15px;
  }
  .location-page .mobile-native-content > .storage-calculator .calculator-items img { width: 62px; height: 62px; }
  .location-page .mobile-native-content > .storage-calculator .calculator-items h3 { font-size: 17px; line-height: 1.2; }
  .location-page .mobile-native-content > .storage-calculator .calculator-items p { font-size: 13px; }
  .location-page .mobile-native-content > .storage-calculator .calculator-result {
    min-height: 0;
    margin-top: 24px;
    padding: 28px 22px;
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .location-page .mobile-native-content > .storage-calculator .calculator-summary { padding-top: 0; }
  .location-page .mobile-native-content > .storage-calculator .calculator-result strong { font-size: 38px; line-height: 1.2; }
  .location-page .mobile-native-content > .storage-calculator .calculator-result a {
    margin-top: 20px;
    font-weight: 700;
  }

  .legal-vseobecne-obchodni-podminky .legal-document { padding-top: 36px; }
  .legal-podminky-skladovani .legal-document { padding-top: 36px; }
  .legal-ochrana-osobnich-udaju .legal-document { padding-top: 36px; }
  .legal-cookies .legal-document { padding-top: 36px; }
  .legal-vseobecne-obchodni-podminky .legal-flow-block {
    width: calc(100% - var(--figma-indent));
    margin-left: var(--figma-indent);
  }
  .legal-vseobecne-obchodni-podminky .legal-numbered li {
    grid-template-columns: min(var(--legal-number-column, 58px), 84px) minmax(0, 1fr);
  }
  .legal-podminky-skladovani .storage-category-table,
  .legal-podminky-skladovani .storage-overview-table {
    width: 100%;
    overflow: hidden;
    border-radius: 0;
  }
  .legal-podminky-skladovani .storage-category-table table,
  .legal-podminky-skladovani .storage-overview-table table {
    display: table;
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
  }
  .legal-podminky-skladovani .storage-category-table thead,
  .legal-podminky-skladovani .storage-overview-table thead {
    display: table-header-group;
  }
  .legal-podminky-skladovani .storage-category-table tbody,
  .legal-podminky-skladovani .storage-overview-table tbody {
    display: table-row-group;
  }
  .legal-podminky-skladovani .storage-category-table tr,
  .legal-podminky-skladovani .storage-overview-table tr {
    display: table-row;
    border-bottom: 0;
  }
  .legal-podminky-skladovani .storage-category-table th,
  .legal-podminky-skladovani .storage-category-table td,
  .legal-podminky-skladovani .storage-overview-table th,
  .legal-podminky-skladovani .storage-overview-table td {
    display: table-cell;
    width: auto;
    padding: 12px 10px;
    font-size: 14px;
    line-height: 1.35;
    vertical-align: top;
    overflow-wrap: anywhere;
  }
  .legal-podminky-skladovani .storage-category-table th:first-child,
  .legal-podminky-skladovani .storage-category-table td:first-child {
    width: 38%;
  }
  .legal-podminky-skladovani .storage-category-table th:last-child,
  .legal-podminky-skladovani .storage-category-table td:last-child {
    width: 62%;
  }
  .legal-podminky-skladovani .storage-overview-table th,
  .legal-podminky-skladovani .storage-overview-table td {
    width: 50%;
  }
  .legal-podminky-skladovani .storage-overview-yes::before,
  .legal-podminky-skladovani .storage-overview-no::before {
    width: 22px;
    height: 22px;
    margin: 0 8px 5px 0;
    font-size: 17px;
  }
  .homepage-page { width: 100%; margin: 0; zoom: 1; }
  .native-page:not(.how-page):not(.location-page):not(.faq-native-page) {
    width: 1920px;
    margin: 0;
    zoom: var(--desktop-scale);
  }
  .figma-page { width: 100vw; }
  .hotspot { min-height: 18px; }
  .site-header { position: sticky; top: 0; z-index: 1000; height: 68px; padding: 0 18px; gap: 12px; }
  .site-logo { width: 105px; }
  .site-nav {
    position: absolute;
    left: 0;
    right: 0;
    top: 68px;
    display: grid;
    gap: 0;
    padding: 10px 18px 18px;
    border-top: 1px solid #edf1f3;
    background: #fff;
    box-shadow: 0 18px 35px rgb(42 70 82 / 14%);
    visibility: hidden;
    opacity: 0;
    transform: translateY(-8px);
    pointer-events: none;
    transition: opacity .2s ease, transform .2s ease, visibility .2s;
  }
  .site-header.menu-open .site-nav {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
  }
  .site-nav a {
    padding: 13px 8px;
    border-bottom: 1px solid #edf1f3;
    color: #7ba2e3;
    font-size: 17px;
  }
  .site-nav a[href="/rezervace"] {
    font-size: 20.4px;
    line-height: 1.2;
    font-weight: 700;
  }
  .site-nav a:last-child { border-bottom: 0; }
  .site-actions { margin-left: auto; gap: 8px; }
  .site-login { width: auto; height: auto; padding: 7px 11px; display: flex; align-items: center; gap: 6px; font-size: 18px !important; }
  .site-login svg { width: 16px; height: 16px; flex: 0 0 16px; stroke: currentColor; stroke-width: 1.45; }
  .site-login span { white-space: nowrap; }
  .site-menu-toggle {
    width: 38px;
    height: 38px;
    padding: 9px;
    display: grid;
    align-content: center;
    gap: 4px;
    border: 1px solid #b8cae8;
    border-radius: 50%;
    background: #fff;
    cursor: pointer;
  }
  .site-menu-toggle i {
    display: block;
    width: 18px;
    height: 2px;
    border-radius: 999px;
    background: #6680aa;
    transition: transform .2s ease, opacity .2s ease;
  }
  .site-header.menu-open .site-menu-toggle i:nth-child(1) { transform: translateY(6px) rotate(45deg); }
  .site-header.menu-open .site-menu-toggle i:nth-child(2) { opacity: 0; }
  .site-header.menu-open .site-menu-toggle i:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
  .motion-hero { height: 78vh; min-height: 560px; }
  .hero-slide {
    background-color: #29cbbb;
    background-size: auto 94%;
    background-repeat: no-repeat;
  }
  .hero-slide:nth-child(1) {
    background-image: url("/public/hero/hromady-mobile-sofa-tone.webp") !important;
    background-position: center;
    background-size: cover;
    filter: contrast(.82) brightness(.93) saturate(1.35) blur(.25px);
  }
  .hero-slide:nth-child(2) {
    background-position: 60% center;
    background-size: auto 100%;
  }
  .hero-slide:nth-child(3) {
    background-image: url("/public/hero/chaos-mobile-livingroom-v3-tone.webp") !important;
    background-position: center;
    background-size: cover;
  }
  .hero-slide:nth-child(4) {
    background-image: url("/public/hero/tiha-mobile-desktop-tone.png") !important;
    background-position: center;
    background-size: cover;
  }
  .hero-slide:nth-child(5) {
    background-image: url("/public/hero/lyze-mobile-chair-tone.webp") !important;
    background-position: center;
    background-size: cover;
    filter: contrast(.82) brightness(.93) saturate(1.2) blur(.25px);
  }
  .hero-slide:nth-child(6) {
    background-image: url("/public/hero/kocarek-mobile-desktop-tone.webp") !important;
    background-position: center;
    background-size: cover;
    filter: contrast(.82) brightness(.94) saturate(1.08) blur(.25px);
  }
  .hero-slide:nth-child(7) {
    background-image: url("/public/hero/kufry-mobile-bed-v2-tone.webp") !important;
    background-position: center;
    background-size: cover;
    filter: contrast(.74) brightness(.93) saturate(1.35) blur(.25px);
  }
  .hero-slide:nth-child(8) {
    background-position: 54% center;
    background-size: auto 100%;
  }
  .hero-slide:nth-child(9) {
    background-image: url("/public/hero/kolo-mobile-hall-tone.webp") !important;
    background-position: center;
    background-size: cover;
    filter: contrast(.7) brightness(.93) saturate(1.35) blur(.25px);
  }
  .hero-copy {
    width: auto;
    margin: 0;
    padding: 120px 28px 0;
    --hero-font: 30px;
    --hero-text-indent: calc(var(--hero-font) * 1.2104);
  }
  .hero-copy h1 {
    position: static;
    margin-left: var(--hero-text-indent);
    margin-bottom: 70px;
  }
  .hero-problem {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    margin-left: 0;
    font-size: calc(var(--hero-font) * .95385);
    line-height: 1.22;
  }
  .problem-copy {
    /* Keep the first line level with the mark's middle square, even when
       the animated heading continues onto a second line. */
    transform: translateY(-.61em);
  }
  .problem-copy.problem-copy-wide {
    max-width: calc(100% - .2em);
  }
  .problem-line-secondary {
    margin-top: 0;
    font-size: 1em;
    line-height: inherit;
  }
  .hero-tagline {
    position: relative;
    top: auto;
    left: auto;
    margin: 64px 0 0 var(--hero-text-indent);
  }
  .problem-line { white-space: normal; }
  .storage { padding-top: 80px; }.section-title { gap: 22px; }.space-symbol { transform: scale(.55); transform-origin: top left; margin-right: -20px; }.section-title h2 { font-size: 25px; }.storage-grid { margin: 55px 0; grid-template-columns: 1fr; }.storage-card { min-height: 0; }.storage-card h3 { padding: 24px 28px; font-size: 20px; }.storage-card ul, .storage-card p { font-size: 17px; }.space-cta { min-height: 420px; padding-top: 140px; }.space-cta h2, .final-cta h2 { margin-left: 0; font-size: 30px; }.space-cta a, .final-cta a { margin-left: 0; }.care-card { width: 100%; height: auto; margin: -55px 0 70px; padding: 35px 25px; gap: 20px; }.care-symbol { transform: scale(.7); margin-inline: -10px; }.care-card h2 { font-size: 22px; }.care-card p { font-size: 16px; }.care-features { width: 100%; grid-template-columns: repeat(2,1fr); gap: 35px 10px; }.compare { width: 100%; margin: 110px 0 0; display: flex; flex-direction: column; }.compare article { width: 100%; height: auto; min-height: 205px; }.compare h3 { height: auto; padding: 18px 40px; font-size: 24px; }.compare ul { margin: 30px 40px; font-size: 17px; }.compare > span { color: #fff; border-color: #56b9d4; transform: rotate(90deg); }.benefits { padding-top: 150px; }.benefit-claim { margin-left: 0; }.benefit-claim h2 { font-size: 30px; }.benefit-grid { width: 100%; margin: 90px 0 0; grid-template-columns: 1fr; }.footer-grid { grid-template-columns: 1fr; gap: 35px; }
  .legal-document {
    width: min(100% - 32px, 680px);
    padding: 56px 0 80px;
    font-size: 17px;
    line-height: 1.55;
    overflow-wrap: anywhere;
  }
  .legal-vseobecne-obchodni-podminky .legal-document,
  .legal-podminky-skladovani .legal-document,
  .legal-cookies .legal-document,
  .legal-ochrana-osobnich-udaju .legal-document { min-height: 0; }
  .legal-document h1 { font-size: 36px; line-height: 1.15; }
  .legal-document h2 { margin-top: 48px; font-size: 28px; line-height: 1.3; }
  .legal-document h3 { margin-top: 30px; font-size: 22px; line-height: 1.35; }
  .legal-numbered li { grid-template-columns: 58px minmax(0, 1fr); gap: 8px; }
  .legal-table-wrap { overflow-x: visible; }
  .legal-document table,
  .legal-document thead,
  .legal-document tbody,
  .legal-document tr,
  .legal-document th,
  .legal-document td { display: block; width: 100%; }
  .legal-document tr { border-bottom: 1px solid #dbe4e7; }
  .legal-document th,
  .legal-document td { border-right: 0; font-size: 17px; line-height: 1.5; }
}

@media (max-width: 700px) {
  .semantic-legal-page > .site-header,
  .semantic-legal-page > .site-footer {
    width: 100%;
    zoom: 1;
  }

  .native-page.how-page,
  .native-page.location-page {
    width: 100%;
    margin: 0;
    zoom: 1;
  }
  .native-page.faq-native-page,
  .contact-native-page,
  .login-native-page {
    width: 100% !important;
    margin: 0;
    zoom: 1 !important;
  }
  .native-page.reservation-target-page {
    width: 100% !important;
    margin: 0;
    zoom: 1 !important;
  }
  .reservation-target-page .native-canvas {
    height: 0 !important;
    overflow: visible;
  }
  .reservation-target-page .native-canvas > *:not(.reservation-modal) {
    display: none !important;
  }
  .mobile-reservation-page {
    display: block;
    background: #fff;
  }
  .mobile-reservation-main {
    padding: 68px 20px 88px;
  }
  .mobile-reservation-heading {
    display: grid;
    grid-template-columns: 39px 1fr;
    gap: 18px;
    align-items: start;
    margin-bottom: 42px;
  }
  .mobile-reservation-heading .mobile-section-mark {
    position: relative;
    left: auto;
    top: auto;
    width: 32px;
    height: 48px;
  }
  .mobile-reservation-heading .mobile-section-mark i {
    width: 16px;
    height: 16px;
  }
  .mobile-reservation-heading .mobile-section-mark i:nth-child(2) {
    left: 16px;
    top: 16px;
  }
  .mobile-reservation-heading .mobile-section-mark i:nth-child(3) {
    left: 0;
    top: 32px;
  }
  .mobile-reservation-heading h1 {
    grid-column: 2;
    margin: 0;
    padding-top: 7px;
    color: #00d9b1;
    font-size: 30px;
    line-height: 1.16;
    font-weight: 700;
    letter-spacing: -.025em;
  }
  .mobile-reservation-cards {
    display: grid;
    gap: 18px;
  }
  .mobile-reservation-card {
    width: 100%;
    height: auto;
    min-height: 264px;
    padding: 24px 24px 22px;
    border: 0;
    border-radius: 0;
    display: grid;
    grid-template-rows: 1fr auto auto;
    color: #fff;
    text-align: left;
    box-shadow: 0 9px 26px rgb(52 76 84 / 20%);
    cursor: default;
  }
  .mobile-reservation-card.size-s { background: linear-gradient(120deg, #76a1e1, #58b9d0); }
  .mobile-reservation-card.size-m { background: linear-gradient(120deg, #58b9d0, #31cbbb); }
  .mobile-reservation-card.size-l { background: linear-gradient(120deg, #31cbbb, #00ddb0); }
  .mobile-reservation-card > strong {
    place-self: center;
    font-size: 112px;
    line-height: .9;
    font-weight: 700;
    letter-spacing: -.04em;
  }
  .mobile-reservation-card > div,
  .mobile-reservation-card > p {
    margin: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 156px;
    align-items: baseline;
    column-gap: 28px;
  }
  .mobile-reservation-card > div { font-size: 27px; }
  .mobile-reservation-card > div span { font-weight: 400; }
  .mobile-reservation-card > div b {
    font-size: 24px;
  }
  .mobile-reservation-card > div b,
  .mobile-reservation-card > p b {
    width: 156px;
    display: flex;
    justify-content: flex-end;
    align-items: baseline;
    gap: 5px;
  }
  .mobile-reservation-card > div b em,
  .mobile-reservation-card > div b i,
  .mobile-reservation-card > p b em,
  .mobile-reservation-card > p b i {
    font-style: normal;
  }
  .mobile-reservation-card > p {
    margin-top: 10px;
    font-size: 18px;
  }
  .mobile-reservation-card > p b em {
    white-space: nowrap;
  }
  .mobile-reservation-card > p span { font-weight: 400; }
  .mobile-reservation-card > p b { font-weight: 700; }
  .mobile-reservation-opening {
    margin-top: 32px;
    padding: 30px 24px;
    color: #fff;
    background: linear-gradient(110deg, #ef684f, #ff8f5f);
  }
  .mobile-reservation-opening h2 {
    width: calc(100% + 24px);
    margin: 0 -24px 0 0;
    font-size: clamp(18px, 5.65vw, 23.8px);
    line-height: 1.08;
    text-transform: uppercase;
    white-space: nowrap;
  }
  .mobile-reservation-opening h2 span {
    display: inline;
  }
  .mobile-reservation-opening p {
    margin: 12px 0 24px;
    font-size: 19px;
    line-height: 1.35;
    font-weight: 600;
  }
  .mobile-reservation-opening button {
    width: auto;
    height: 46px;
    min-height: 46px;
    padding: 0 18px;
    border: 0;
    border-radius: 999px;
    color: #cf573f;
    background: #fff;
    font: 700 16px/1 Figtree, sans-serif;
  }
  .reservation-target-page > .site-footer {
    min-height: 0;
    height: auto;
  }
  .reservation-modal {
    position: fixed;
    z-index: 2000;
    inset: 0;
    padding: 18px;
    place-items: center;
    overflow-y: auto;
  }
  .reservation-modal-panel {
    width: 100%;
    max-height: calc(100dvh - 36px);
    padding: 44px 22px 28px;
  }
  .reservation-modal h2 { font-size: 30px; }
  .reservation-modal-panel > div > p { font-size: 16px; }
  .reservation-form-grid { grid-template-columns: 1fr; }
  .reservation-interest-form label { font-size: 16px; }
  .reservation-form-submit { width: 100%; }

  .section-shell { width: calc(100% - 40px); }

  .storage {
    min-height: 0;
    padding: 78px 0 88px;
  }
  .storage::after { display: none; }
  .storage .section-title { gap: 18px; align-items: flex-start; }
  .storage .section-title h2 {
    padding-top: 5px;
    font-size: 27px;
    line-height: 1.22;
  }
  .storage-grid {
    margin: 46px 0 0;
    grid-template-columns: 1fr;
    gap: 22px;
  }
  .storage-card {
    min-height: 0;
    padding-bottom: 22px;
    box-shadow: 0 8px 28px rgb(44 77 87 / 14%);
  }
  .storage-card h3 {
    padding: 22px 24px;
    font-size: 23px;
    line-height: 1.25;
  }
  .storage-card ul,
  .storage-card p {
    margin-inline: 24px;
    font-size: 17px;
  }

  .space-cta {
    min-height: 390px;
    padding: 104px 0 70px;
  }
  .space-cta h2,
  .final-cta h2 {
    margin: 0 0 34px;
    font-size: 36px;
    line-height: 1.18;
  }
  .space-cta a,
  .final-cta a {
    margin: 0;
    padding: 13px 22px;
    font-size: 17px;
  }

  .care {
    min-height: 0;
    padding-bottom: 92px;
  }
  .care-card {
    width: 100%;
    margin: -42px 0 66px;
    padding: 28px 22px;
    gap: 16px;
  }
  .care-card h2 { font-size: 23px; line-height: 1.2; }
  .care-card p { margin-top: 6px; font-size: 16px; }
  .care-features {
    width: 100%;
    grid-template-columns: repeat(2, 1fr);
    gap: 34px 12px;
  }
  .care-features div { grid-template-rows: 62px auto; gap: 12px; }
  .care-features img { max-width: 68px; max-height: 58px; }
  .care-features span { font-size: 16px; line-height: 1.25; }
  .compare { margin-top: 72px; gap: 14px; }
  .compare article { min-height: 0; }
  .compare h3 { padding: 17px 24px; font-size: 24px; }
  .compare ul { margin: 24px; font-size: 18px; }
  .compare > span {
    width: 58px;
    height: 58px;
    align-self: center;
    border: 0;
    border-radius: 50%;
    background: #00e9b7;
  }
  .compare > span img { width: 58px; height: 58px; }
  .compare-arrow-desktop { display: none !important; }
  .compare-arrow-mobile { display: block !important; }

  .benefits {
    min-height: 0;
    padding: 92px 20px;
  }
  .benefit-claim { margin: 0; padding-left: 36px; }
  .benefit-claim h2 {
    padding-top: 7px;
    font-size: 31px;
    line-height: 1.25;
  }
  .plus {
    position: absolute;
    left: 0;
    top: 8px;
    width: 12px;
    height: 12px;
    margin: 0;
    background: #00e9b7;
  }
  .plus::before,
  .plus::after {
    position: absolute;
    width: 12px;
    height: 12px;
    background: #00e9b7;
    content: "";
  }
  .plus::before { top: 12px; left: 12px; }
  .plus::after { top: 24px; left: 0; }
  .benefit-grid {
    width: 100%;
    margin: 54px 0 0;
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .benefit-grid article {
    height: auto;
    min-height: 210px;
    padding: 28px;
  }
  .benefit-grid img { width: 76px; height: 76px; }
  .benefit-grid p { margin: 22px 0 0; font-size: 22px; line-height: 1.25; }

  .final-cta {
    min-height: 0;
    padding: 88px 0;
  }

  .site-footer {
    min-height: 0;
    height: auto;
    padding: 62px 0 34px;
    border-top-width: 10px;
  }
  .footer-grid,
  .footer-bottom { width: calc(100% - 40px); max-width: none; }
  .footer-grid { grid-template-columns: 1fr; gap: 34px; }
  .site-footer h3 { margin-bottom: 12px; font-size: 17px; }
  .site-footer p,
  .site-footer a { font-size: 17px; line-height: 1.45; }
  .footer-social p { display: grid; gap: 12px; }
  .footer-social p a { display: flex; align-items: center; gap: 12px; }
  .footer-social img { width: 34px; height: 34px; }
  .footer-bottom { margin-top: 42px; }
  .footer-bottom nav { margin-bottom: 24px; line-height: 1.8; }
  .footer-bottom p { font-size: 13px; line-height: 1.45; }

  .semantic-legal-page > .site-footer {
    padding: 54px 24px 30px;
    border-top-width: 8px;
  }
  .semantic-legal-page > .site-footer .footer-grid,
  .semantic-legal-page > .site-footer .footer-bottom {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
  .semantic-legal-page > .site-footer .footer-grid {
    gap: 38px;
  }
  .semantic-legal-page > .site-footer h3 {
    margin-bottom: 16px;
    font-size: 19px;
    line-height: 1.5;
  }
  .semantic-legal-page > .site-footer p,
  .semantic-legal-page > .site-footer a {
    font-size: 18px;
    line-height: 1.5;
  }
  .semantic-legal-page > .site-footer .footer-email {
    min-width: 207px;
    height: 39px;
    padding: 0 18px;
    font-size: 18px;
  }
  .semantic-legal-page > .site-footer .footer-social h3 {
    margin-bottom: 20px;
  }
  .semantic-legal-page > .site-footer .footer-social p {
    margin: 0 0 14px;
  }
  .semantic-legal-page > .site-footer .footer-social p a {
    gap: 14px;
  }
  .semantic-legal-page > .site-footer .footer-social img {
    width: 42px;
    height: 42px;
  }
  .semantic-legal-page > .site-footer .footer-bottom {
    margin-top: 52px;
  }
  .semantic-legal-page > .site-footer .footer-bottom nav {
    margin-bottom: 28px;
    font-size: 16px;
    line-height: 1.9;
  }
  .semantic-legal-page > .site-footer .footer-bottom p {
    margin-bottom: 7px;
    font-size: 13px;
    line-height: 1.5;
  }

  .faq-hero { height: 520px; }
  .faq-hero::after {
    left: -80px;
    right: -80px;
    transform: none;
    background-position: 40% center;
  }
  .faq-hero > div { width: 100%; padding: 0 24px; }
  .faq-hero h1 {
    position: absolute;
    left: 24px;
    right: 24px;
    top: 200px;
    max-width: 345px;
    font-size: 30px;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: -.025em;
    text-shadow: 0 2px 12px rgb(18 42 57 / 32%);
  }
  .faq-hero h1 span {
    display: block;
  }
  .faq-hero h1 br {
    display: none;
  }
  .faq-hero-mark {
    left: 24px;
    right: auto;
    top: 334px;
    width: 66px;
    height: 66px;
  }
  .faq-hero-mark i { width: 22px; height: 22px; }
  .faq-hero-mark i:nth-child(2) { left: 22px; top: 22px; }
  .faq-hero-mark i:nth-child(3) { left: 44px; top: 0; }
  .faq-list {
    width: calc(100% - 32px);
    margin: 82px auto 110px;
    scroll-margin-top: 92px;
  }
  .faq-list-title { margin-bottom: 38px; gap: 20px; }
  .faq-list-title h2 { font-size: 32px; line-height: 1.2; }
  .faq-list-mark {
    width: 42px;
    height: 63px;
    flex-basis: 42px;
  }
  .faq-list-mark i { width: 21px; height: 21px; }
  .faq-list-mark i:nth-child(2) { left: 21px; top: 21px; }
  .faq-list-mark i:nth-child(3) { top: 42px; }
  .faq-item { margin-bottom: 18px; box-shadow: 0 7px 24px rgb(62 84 92 / 14%); }
  .faq-question {
    min-height: 76px;
    height: auto;
    padding: 17px 18px;
    gap: 16px;
    font-size: 20px;
    line-height: 1.25;
  }
  .faq-toggle-mark { width: 26px; height: 18px; flex-basis: 26px; }
  .faq-toggle-mark img { width: 26px; height: 18px; }
  .faq-answer { padding: 18px 20px; font-size: 17px; line-height: 1.55; }
  .faq-answer li { padding-left: 24px; }
  .faq-answer li::before { top: 8px; width: 12px; height: 12px; }

  .contact-page {
    width: 100%;
    height: auto;
    min-height: 0;
    padding: 82px 22px 96px;
  }
  .contact-page h1 {
    position: static;
    margin: 0 0 68px 58px;
    padding-top: 12px;
    font-size: 31px;
    line-height: 1.14;
    letter-spacing: -.4px;
  }
  .contact-title-mark {
    left: 22px;
    top: 85px;
    width: 39px;
    height: 58px;
  }
  .contact-title-mark i { width: 19.5px; height: 19.5px; }
  .contact-title-mark i:nth-child(2) { left: 19.5px; top: 19.5px; }
  .contact-title-mark i:nth-child(3) { top: 39px; }
  .contact-block {
    position: relative;
    left: auto;
    top: auto;
    width: 100%;
    height: auto;
    min-height: 0;
    margin-top: 52px;
    padding-left: 36px;
  }
  .contact-block:first-of-type { margin-top: 0; }
  .contact-block h2 {
    position: static;
    margin: 0 0 18px;
    font-size: 26px;
    line-height: 1.25;
  }
  .contact-bullet {
    left: 0;
    top: 8px;
    width: 15px;
    height: 15px;
  }
  .contact-block p,
  .contact-email-link {
    position: static;
    margin: 0;
    font-size: 19px;
    line-height: 1.5;
  }
  .contact-email-link {
    width: 100%;
    max-width: 310px;
    height: 52px;
    padding: 0 22px;
    justify-content: center;
    font-weight: 600;
  }
  .contact-support p { color: #9fa3a5; }
  .contact-support p a {
    display: inline-block;
    margin-top: 5px;
    color: #7ba2e3;
    font-size: 22px;
    font-weight: 700;
  }
  .contact-social p { gap: 12px; }
  .contact-social p a {
    min-height: 46px;
    gap: 14px;
    color: #9fa3a5;
    font-size: 18px;
  }
  .contact-social img { width: 42px; height: 42px; }

  .login-page {
    min-height: 0;
    padding: 72px 20px 96px;
  }
  .login-panel {
    width: 100%;
    max-width: 430px;
    padding: 38px 24px 34px;
  }
  .login-panel h1 {
    margin-bottom: 14px;
    font-size: 38px;
    line-height: 1.15;
    letter-spacing: -.4px;
  }
  .login-panel p {
    margin-bottom: 30px;
    font-size: 18px;
    line-height: 1.45;
  }
  .login-panel form { gap: 22px; }
  .login-panel label {
    gap: 9px;
    font-size: 18px;
  }
  .login-panel input {
    width: 100%;
    height: 56px;
    padding: 0 15px;
    font-size: 18px;
  }
  .login-panel button {
    height: 60px;
    font-size: 21px;
    font-weight: 600;
  }
  .login-panel > a {
    margin-top: 25px;
    font-size: 16px;
    line-height: 1.4;
  }

  .legal-vseobecne-obchodni-podminky .legal-document h1,
  .legal-podminky-skladovani .legal-document h1,
  .legal-cookies .legal-document h1,
  .legal-ochrana-osobnich-udaju .legal-document h1 {
    font-size: 34px;
    line-height: 1.15;
  }
  .legal-vseobecne-obchodni-podminky .legal-document h2,
  .legal-podminky-skladovani .legal-document h2,
  .legal-cookies .legal-document h2,
  .legal-ochrana-osobnich-udaju .legal-document h2 {
    margin-top: 44px;
    font-size: 26px;
  }
  .legal-cookies .cookies-page-settings {
    width: 100%;
    min-height: 52px;
    margin-bottom: 8px;
    font-size: 17px;
  }
  .legal-vseobecne-obchodni-podminky .legal-document h3,
  .legal-podminky-skladovani .legal-document h3,
  .legal-cookies .legal-document h3,
  .legal-ochrana-osobnich-udaju .legal-document h3 {
    font-size: 21px;
  }
  .legal-ochrana-osobnich-udaju .privacy-processing-table,
  .legal-ochrana-osobnich-udaju .privacy-recipients-table {
    overflow: visible;
    border: 0;
  }
  .legal-ochrana-osobnich-udaju .privacy-processing-table table,
  .legal-ochrana-osobnich-udaju .privacy-recipients-table table {
    display: block;
    width: 100%;
    background: transparent;
  }
  .legal-ochrana-osobnich-udaju .privacy-processing-table thead,
  .legal-ochrana-osobnich-udaju .privacy-recipients-table thead {
    display: none;
  }
  .legal-ochrana-osobnich-udaju .privacy-processing-table tbody,
  .legal-ochrana-osobnich-udaju .privacy-recipients-table tbody {
    display: grid;
    gap: 14px;
  }
  .legal-ochrana-osobnich-udaju .privacy-processing-table tr,
  .legal-ochrana-osobnich-udaju .privacy-recipients-table tr {
    display: block;
    overflow: hidden;
    border: 0;
    background: #f4f9fb;
  }
  .legal-ochrana-osobnich-udaju .privacy-processing-table tbody tr:nth-child(even),
  .legal-ochrana-osobnich-udaju .privacy-recipients-table tbody tr:nth-child(even) {
    background: #e9eeef;
  }
  .legal-ochrana-osobnich-udaju .privacy-processing-table td,
  .legal-ochrana-osobnich-udaju .privacy-recipients-table td {
    width: 100%;
    padding: 10px 14px;
    display: grid;
    grid-template-columns: 108px minmax(0, 1fr);
    gap: 12px;
    border: 0;
    color: #7b8387;
    background: transparent !important;
    font-size: 16px;
    line-height: 1.45;
  }
  .legal-ochrana-osobnich-udaju .privacy-processing-table td:first-child,
  .legal-ochrana-osobnich-udaju .privacy-recipients-table td:first-child {
    padding-top: 15px;
  }
  .legal-ochrana-osobnich-udaju .privacy-processing-table td:last-child,
  .legal-ochrana-osobnich-udaju .privacy-recipients-table td:last-child {
    padding-bottom: 15px;
  }
  .legal-ochrana-osobnich-udaju .privacy-processing-table td::before,
  .legal-ochrana-osobnich-udaju .privacy-recipients-table td::before {
    color: #7ba2e3;
    font-weight: 700;
  }
  .legal-ochrana-osobnich-udaju .privacy-processing-table td:nth-child(1)::before { content: "Účel"; }
  .legal-ochrana-osobnich-udaju .privacy-processing-table td:nth-child(2)::before { content: "Právní základ"; }
  .legal-ochrana-osobnich-udaju .privacy-processing-table td:nth-child(3)::before { content: "Uchovávání"; }
  .legal-ochrana-osobnich-udaju .privacy-recipients-table td:nth-child(1)::before { content: "Poskytovatel"; }
  .legal-ochrana-osobnich-udaju .privacy-recipients-table td:nth-child(2)::before { content: "Země"; }
  .legal-ochrana-osobnich-udaju .privacy-recipients-table td:nth-child(3)::before { content: "Účel"; }
  .legal-cookies .cookies-item-title strong + span {
    margin-left: .3em;
  }
  .legal-cookies .cookies-mobile-table {
    overflow: visible;
    border: 0;
  }
  .legal-cookies .cookies-table-2,
  .legal-cookies .cookies-table-3 {
    margin-bottom: 14px;
  }
  .legal-cookies .cookies-mobile-table table {
    display: block;
    width: 100%;
    background: transparent;
  }
  .legal-cookies .cookies-mobile-table thead {
    display: none;
  }
  .legal-cookies .cookies-mobile-table tbody {
    display: grid;
    gap: 14px;
  }
  .legal-cookies .cookies-mobile-table tr {
    display: block;
    overflow: hidden;
    border: 0;
    background: #f4f9fb;
  }
  .legal-cookies .cookies-mobile-table tbody tr:nth-child(even) {
    background: #e9eeef;
  }
  .legal-cookies .cookies-mobile-table td {
    width: 100%;
    padding: 10px 14px;
    display: grid;
    grid-template-columns: 102px minmax(0, 1fr);
    gap: 12px;
    border: 0;
    color: #7b8387;
    background: transparent !important;
    font-size: 16px;
    line-height: 1.45;
  }
  .legal-cookies .cookies-mobile-table td:first-child { padding-top: 15px; }
  .legal-cookies .cookies-mobile-table td:last-child { padding-bottom: 15px; }
  .legal-cookies .cookies-mobile-table td::before {
    color: #7ba2e3;
    font-weight: 700;
  }
  .legal-cookies .cookies-mobile-table td:nth-child(1)::before { content: "Název"; }
  .legal-cookies .cookies-mobile-table td:nth-child(2)::before { content: "Platnost"; }
  .legal-cookies .cookies-mobile-table td:nth-child(3)::before { content: "Funkce"; }
  .legal-cookies .cookies-mobile-table td:nth-child(4)::before { content: "Provozovatel"; }
}

@media (min-width: 701px) and (max-width: 1919px) {
  .motion-hero { height: 937px; }
}

@media (prefers-reduced-motion: reduce) {
  .hero-slide { transition: opacity .01s linear; transform: none !important; }
  .hero-slide.is-active, .hero-tagline { animation-duration: .01s !important; }
}

@media (min-width: 1921px) {
  body { background: #eef2f3; }
  .figma-page { box-shadow: 0 0 50px rgb(37 72 85 / 10%); }
}
.email-copy-notice {
  position: fixed;
  z-index: 10000;
  left: 50%;
  bottom: 28px;
  max-width: min(520px, calc(100vw - 32px));
  padding: 14px 20px;
  border-radius: 10px;
  background: #17231d;
  color: #fff;
  font-size: 16px;
  line-height: 1.45;
  text-align: center;
  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.22);
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, 14px);
  transition: opacity 180ms ease, transform 180ms ease;
}

.email-copy-notice.is-visible {
  opacity: 1;
  transform: translate(-50%, 0);
}

.footer-bottom .cookie-settings-trigger {
  padding: 0;
  border: 0;
  color: inherit;
  background: transparent;
  font: inherit;
  text-decoration: underline;
  cursor: pointer;
}

.cookie-banner {
  position: fixed;
  z-index: 12000;
  right: 0;
  bottom: 0;
  left: 0;
  padding: clamp(20px, 2.2vw, 37px) max(6vw, calc((100vw - 1280px) / 2));
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(18px, 1.8vw, 26px);
  border: 0;
  background: #00d9b8;
  color: #fff;
  box-shadow: 0 -10px 36px rgb(24 72 77 / 10%);
  font-family: Figtree, sans-serif;
}
.cookie-banner[hidden], .cookie-modal[hidden] { display: none !important; }
.cookie-eyebrow {
  display: block;
  margin-bottom: 8px;
  color: #365ea0;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .12em;
}
.cookie-banner h2, .cookie-modal h2 {
  margin: 0 0 10px;
  color: #294c5d;
  font-size: clamp(27px, 2.4vw, 40px);
  line-height: 1.04;
}
.cookie-banner h2 {
  margin-bottom: 7px;
  color: #fff;
  font-size: clamp(19px, 1.67vw, 30px);
  font-weight: 500;
  line-height: 1;
}
.cookie-banner p {
  max-width: 1120px;
  margin: 0;
  color: #fff;
  font-size: clamp(16px, 1.51vw, 25px);
  font-weight: 600;
  line-height: 1.42;
}
.cookie-banner-actions {
  display: flex;
  align-items: center;
  gap: 18px;
}
.cookie-banner-actions button, .cookie-modal-actions button, .cookie-map-placeholder button {
  min-height: 48px;
  padding: 0 22px;
  border: 2px solid #365ea0;
  border-radius: 999px;
  background: #365ea0;
  color: #fff;
  font: 700 15px/1 Figtree, sans-serif;
  cursor: pointer;
}
.cookie-banner-actions button {
  min-width: 230px;
  min-height: 62px;
  padding: 0 34px;
  border: 3px solid #fff;
  background: #fff;
  color: #7ba2e3;
  font-size: 18px;
}
.cookie-banner-actions .cookie-reject-all {
  background: #fff;
  color: #7ba2e3;
}
.cookie-banner-actions .cookie-open-settings {
  min-width: 250px;
  margin-left: auto;
  min-height: 62px;
  border: 3px solid #fff;
  background: transparent;
  color: #fff;
  text-decoration: none;
}
@media (min-width: 701px) {
  .cookie-banner {
    padding-right: 20.191vw;
    padding-left: 20.191vw;
  }
  .cookie-banner-actions {
    gap: 11px;
  }
  .cookie-banner-actions button {
    min-width: 137px;
    min-height: 38px;
    padding-right: 20px;
    padding-left: 20px;
    border-width: 2px;
    font-size: 11px;
  }
  .cookie-banner-actions .cookie-open-settings {
    min-width: 149px;
    min-height: 38px;
    margin-left: auto;
    border-width: 2px;
  }
}
.cookie-modal {
  position: fixed;
  z-index: 13000;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 22px;
  font-family: Figtree, sans-serif;
}
.cookie-modal-backdrop { position: absolute; inset: 0; background: rgb(24 41 49 / 68%); }
.cookie-modal-panel {
  position: relative;
  width: min(620px, 100%);
  max-height: calc(100vh - 44px);
  overflow: auto;
  padding: 38px;
  background: #fff;
  box-shadow: 0 25px 80px rgb(0 0 0 / 28%);
}
.cookie-modal-panel,
.cookie-modal .cookie-eyebrow,
.cookie-modal h2,
.cookie-modal-intro,
.cookie-choice strong,
.cookie-choice small {
  color: #7ba2e3;
}
.cookie-modal-close {
  position: absolute;
  top: 18px;
  right: 20px;
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 50%;
  background: #eef2f3;
  color: #7ba2e3;
  font-size: 30px;
  line-height: 1;
  cursor: pointer;
}
.cookie-modal-intro { margin: 0 0 24px; color: #657076; font-size: 16px; }
.cookie-choice {
  min-height: 92px;
  padding: 18px 72px 18px 18px;
  position: relative;
  display: flex;
  align-items: center;
  border-top: 1px solid #dfe7e9;
  cursor: pointer;
}
.cookie-choice span, .cookie-choice strong, .cookie-choice small { display: block; }
.cookie-choice strong { margin-bottom: 4px; color: #294c5d; font-size: 18px; }
.cookie-choice small { color: #657076; font-size: 14px; line-height: 1.4; }
.cookie-choice input { position: absolute; opacity: 0; }
.cookie-choice i {
  position: absolute;
  right: 18px;
  width: 46px;
  height: 26px;
  border-radius: 99px;
  background: #aab5b9;
  transition: background 160ms ease;
}
.cookie-choice i::after {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #fff;
  content: "";
  transition: transform 160ms ease;
}
.cookie-choice input:checked + i { background: #00b995; }
.cookie-choice input:checked + i::after { transform: translateX(20px); }
.cookie-choice input:focus-visible + i { outline: 3px solid #7ba2e3; outline-offset: 3px; }
.cookie-choice-disabled { cursor: default; }
.cookie-modal-actions { margin-top: 24px; display: flex; gap: 10px; }
.cookie-modal-actions button,
.cookie-modal-actions .cookie-modal-accept-all {
  border-color: #7ba2e3;
  background: #fff;
  color: #7ba2e3;
}
.cookie-modal .cookie-eyebrow,
.cookie-modal h2,
.cookie-modal-intro,
.cookie-choice strong,
.cookie-choice small {
  color: #7ba2e3;
}
.cookie-modal-open { overflow: hidden; }

.cookie-map-placeholder {
  width: 100%;
  height: 100%;
  padding: 28px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: linear-gradient(145deg, #edf3f4, #e1ebed);
  color: #294c5d;
  text-align: center;
  font-family: Figtree, sans-serif;
}
.cookie-map-placeholder > span { margin-bottom: 12px; color: #00b995; font-size: 52px; }
.cookie-map-placeholder strong { font-size: 24px; }
.cookie-map-placeholder p { max-width: 420px; margin: 8px 0 20px; color: #657076; font-size: 16px; }
.cookie-map-placeholder button { background: #00b995; border-color: #00b995; }

@media (max-width: 700px) {
  .cookie-banner {
    padding: 21px 20px 17px;
    display: block;
  }
  .cookie-banner h2 { margin-bottom: 7px; font-size: 19px; }
  .cookie-banner p { font-size: 14px; line-height: 1.4; }
  .cookie-banner-actions {
    margin-top: 18px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .cookie-banner-actions button,
  .cookie-banner-actions .cookie-open-settings {
    width: 100%;
    min-width: 0;
    min-height: 54px;
    margin-left: 0;
    font-size: 16px;
  }
  .cookie-modal { padding: 10px; align-items: end; }
  .cookie-modal-panel { max-height: calc(100vh - 20px); padding: 30px 18px 22px; }
  .cookie-modal h2 { padding-right: 36px; font-size: 28px; }
  .cookie-choice { padding-right: 62px; padding-left: 8px; }
  .cookie-choice i { right: 8px; }
  .cookie-modal-actions { display: grid; }
  .cookie-map-placeholder { padding: 20px; }
  .cookie-map-placeholder strong { font-size: 20px; }
}
