@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap");

/* Oceterie landing page for Shoptet - loaded only on homepage */
html.oceterie-landing-active,
html.oceterie-landing-active body { margin: 0 !important; padding: 0 !important; width: 100%; background: #1A100B; }
html.oceterie-landing-active body > .overall-wrapper,
html.oceterie-landing-active body > #header,
html.oceterie-landing-active body > header:not(.site-header),
html.oceterie-landing-active body > #footer,
html.oceterie-landing-active body > footer:not(.site-footer) { display: none !important; }
#oceterie-landing { position: relative; width: 100%; overflow: clip; }
:root {
  --ink: #1A100B;
  --ink-soft: #1A100B;
  --paper: #f1eadf;
  --paper-light: #f8f4ee;
  --white: #fffdf9;
  --copper: #d9573f;
  --copper-dark: #a83929;
  --orange: #e45c43;
  --gold: #d9a56c;
  --muted: #918a81;
  --line-dark: rgba(26,16,11, .16);
  --line-light: rgba(255, 253, 249, .18);
  --wrap: min(1380px, calc(min(100vw, 430px) - 96px));
  --radius: 3px;
}

.oceterie-landing .product-image,
.oceterie-landing .product-card-set .product-image,
.oceterie-landing .product-card-featured .product-image,
.oceterie-landing .product-card:not(.product-card-featured) .product-image {
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

.oceterie-landing .product-image img,
.oceterie-landing .product-card:nth-child(n) .product-image img,
.oceterie-landing .product-card:first-child .product-image img {
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
  max-height: none;
  margin: 0;
  object-fit: contain;
  object-position: center;
  transform: none;
}

.oceterie-landing .process-visual,
.oceterie-landing .customers-image,
.oceterie-landing .story-image {
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  background: transparent !important;
}

.oceterie-landing .process-visual img,
.oceterie-landing .customers-image img,
.oceterie-landing .story-image img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  object-position: center;
}

@media (max-width: 0px) {
  .oceterie-landing .hero {
    display: grid;
    grid-template-columns: minmax(360px, 40%) minmax(0, 60%);
    grid-template-rows: auto auto;
    min-height: 0;
    height: auto;
    overflow: visible;
    background: #1A100B;
  }

  .oceterie-landing .hero-media {
    position: relative;
    inset: auto;
    grid-column: 2;
    grid-row: 1;
    width: 100%;
    height: auto;
    background: transparent;
  }

  .oceterie-landing .hero-media img {
    position: relative;
    inset: auto;
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
    object-position: center;
    animation: none;
    transform: none;
  }

  .oceterie-landing .hero-shade { display: none; }

  .oceterie-landing .hero-content {
    grid-column: 1;
    grid-row: 1;
    width: min(100% - 56px, 580px);
    height: auto;
    margin-inline: auto;
    padding: clamp(130px, min(10vw, 43px), 185px) 0 80px;
    justify-content: center;
  }

  .oceterie-landing .hero-content .eyebrow,
  .oceterie-landing .hero-content h1,
  .oceterie-landing .hero-lead,
  .oceterie-landing .hero-actions {
    max-width: 100%;
  }

  .oceterie-landing .hero-content h1 {
    font-size: clamp(3rem, min(4.35vw, 18.705px), 5.8rem);
  }

  .oceterie-landing .hero-note { display: none; }

  .oceterie-landing .hero-proof {
    position: relative;
    left: auto;
    bottom: auto;
    grid-column: 1 / -1;
    grid-row: 2;
    width: var(--wrap);
    margin: 24px auto 30px;
    transform: none;
  }
}

/* === V58 final: celé fotografie bez ořezu a text mimo osoby === */
.oceterie-landing .product-image,
.oceterie-landing .product-card-set .product-image,
.oceterie-landing .product-card-featured .product-image,
.oceterie-landing .product-card:not(.product-card-featured) .product-image {
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}
.oceterie-landing .product-image img,
.oceterie-landing .product-card:nth-child(n) .product-image img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
}
.oceterie-landing .process-visual,
.oceterie-landing .customers-image,
.oceterie-landing .story-image {
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  background: transparent !important;
}
.oceterie-landing .process-visual img,
.oceterie-landing .customers-image img,
.oceterie-landing .story-image img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
}
@media (max-width: 0px) {
  .oceterie-landing .hero {
    display: grid !important;
    grid-template-columns: minmax(360px, 40%) minmax(0, 60%);
    grid-template-rows: auto auto;
    min-height: 0 !important;
    height: auto !important;
    overflow: visible !important;
  }
  .oceterie-landing .hero-media {
    position: relative !important;
    inset: auto !important;
    grid-column: 2;
    grid-row: 1;
    width: 100% !important;
    height: auto !important;
    background: transparent !important;
  }
  .oceterie-landing .hero-media img {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
    object-position: center !important;
    animation: none !important;
    transform: none !important;
  }
  .oceterie-landing .hero-shade,
  .oceterie-landing .hero-note { display: none !important; }
  .oceterie-landing .hero-content {
    grid-column: 1;
    grid-row: 1;
    width: min(100% - 56px, 580px) !important;
    height: auto !important;
    margin-inline: auto !important;
    padding: clamp(130px, min(10vw, 43px), 185px) 0 80px !important;
    justify-content: center !important;
  }
  .oceterie-landing .hero-content .eyebrow,
  .oceterie-landing .hero-content h1,
  .oceterie-landing .hero-lead,
  .oceterie-landing .hero-actions { max-width: 100% !important; }
  .oceterie-landing .hero-content h1 { font-size: clamp(3rem, min(4.35vw, 18.705px), 5.8rem) !important; }
  .oceterie-landing .hero-proof {
    position: relative !important;
    left: auto !important;
    bottom: auto !important;
    grid-column: 1 / -1;
    grid-row: 2;
    width: var(--wrap) !important;
    margin: 24px auto 30px !important;
    transform: none !important;
  }
}
@media (min-width: 0px) {
  .oceterie-landing .hero {
    display: flex !important;
    min-height: 0 !important;
    height: auto !important;
    flex-direction: column;
    overflow: visible !important;
  }
  .oceterie-landing .hero-media {
    position: relative !important;
    inset: auto !important;
    order: 1;
    width: 100% !important;
    height: auto !important;
    background: transparent !important;
  }
  .oceterie-landing .hero-media img {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
    object-position: center !important;
    animation: none !important;
    transform: none !important;
  }
  .oceterie-landing .hero-shade,
  .oceterie-landing .hero-note { display: none !important; }
  .oceterie-landing .hero-content {
    order: 2;
    width: var(--wrap) !important;
    height: auto !important;
    margin-inline: auto !important;
    padding: 52px 0 58px !important;
  }
  .oceterie-landing .hero-content .eyebrow,
  .oceterie-landing .hero-content h1,
  .oceterie-landing .hero-lead,
  .oceterie-landing .hero-actions {
    width: 100% !important;
    max-width: 100% !important;
  }
  .oceterie-landing .hero-proof {
    position: relative !important;
    left: auto !important;
    bottom: auto !important;
    order: 3;
    width: var(--wrap) !important;
    margin: 0 auto 20px !important;
    transform: none !important;
  }
  .oceterie-landing .product-card-set {
    display: flex !important;
    flex-direction: column;
  }
}

@media (min-width: 0px) {
  .oceterie-landing .hero {
    display: flex;
    min-height: 0;
    height: auto;
    flex-direction: column;
    overflow: visible;
    background: #1A100B;
  }

  .oceterie-landing .hero-media {
    position: relative;
    inset: auto;
    order: 1;
    width: 100%;
    height: auto;
    background: transparent;
  }

  .oceterie-landing .hero-media img {
    position: relative;
    inset: auto;
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
    object-position: center;
    animation: none;
    transform: none;
  }

  .oceterie-landing .hero-shade { display: none; }

  .oceterie-landing .hero-content {
    order: 2;
    width: var(--wrap);
    height: auto;
    margin-inline: auto;
    padding: 52px 0 58px;
  }

  .oceterie-landing .hero-content .eyebrow,
  .oceterie-landing .hero-content h1,
  .oceterie-landing .hero-lead,
  .oceterie-landing .hero-actions {
    width: 100%;
    max-width: 100%;
  }

  .oceterie-landing .hero-note { display: none; }

  .oceterie-landing .hero-proof {
    position: relative;
    left: auto;
    bottom: auto;
    order: 3;
    width: var(--wrap);
    margin: 0 auto 20px;
    transform: none;
  }

  .oceterie-landing .product-card-set {
    display: flex;
    flex-direction: column;
  }
}

*, *::before, *::after { box-sizing: border-box; }

html {
  scroll-behavior: smooth;
  scroll-padding-top: 82px;
}

body {
  margin: 0;
  background: var(--ink);
  color: var(--white);
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  letter-spacing: .006em;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body.menu-open { overflow: hidden; }

img { display: block; max-width: 100%; }
a { color: inherit; }
button, input { font: inherit; }

h1, h2, h3, p { margin-top: 0; }

h1, h2, h3 {
  margin-bottom: 0;
  line-height: 1.01;
}

h1 { font-size: clamp(3.4rem, min(7.4vw, 31.82px), 8.75rem); font-weight: 800; letter-spacing: -.018em; }
h2 { font-size: clamp(2.7rem, min(5.5vw, 23.65px), 6.6rem); font-weight: 740; letter-spacing: -.012em; }
h3 { font-size: clamp(1.25rem, min(1.6vw, 6.88px), 2rem); font-weight: 650; letter-spacing: -.004em; }

.wrap { width: var(--wrap); margin-inline: auto; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

.skip-link {
  position: fixed;
  top: 12px;
  left: 12px;
  z-index: 999;
  padding: 10px 16px;
  background: var(--white);
  color: var(--ink);
  transform: translateY(-150%);
  transition: transform .2s;
}

.skip-link:focus { transform: none; }

.eyebrow {
  margin-bottom: 24px;
  color: var(--gold);
  font-size: .73rem;
  font-weight: 700;
  letter-spacing: .2em;
  line-height: 1.3;
  text-transform: uppercase;
}

.eyebrow-dark { color: var(--copper-dark); }

.site-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 100;
  color: var(--white);
  border-bottom: 1px solid transparent;
  transition: background-color .35s ease, border-color .35s ease, color .35s ease, transform .35s ease;
}

.site-header.is-scrolled {
  background: rgba(9, 8, 7, .9);
  border-color: rgba(255,255,255,.1);
  backdrop-filter: blur(18px);
}

.header-inner {
  width: var(--wrap);
  height: 82px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 32px;
}

.brand {
  width: max-content;
  color: inherit;
  text-decoration: none;
  font-weight: 820;
  letter-spacing: -.025em;
  line-height: 1;
}

.brand-word { font-size: 1.65rem; }
.brand-mark { margin-left: 2px; font-size: .58rem; vertical-align: top; }

.main-nav {
  display: flex;
  align-items: center;
  gap: clamp(20px, min(2.4vw, 10.32px), 42px);
}

.main-nav-label {
  color: var(--copper);
  font-size: .66rem;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}

#velkoobchod-produkt { scroll-margin-top: 110px; }

.main-nav a {
  position: relative;
  color: inherit;
  font-size: .72rem;
  font-weight: 650;
  letter-spacing: .08em;
  text-decoration: none;
  text-transform: uppercase;
}

.main-nav a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: -7px;
  height: 1px;
  background: currentColor;
  transition: right .25s ease;
}

.main-nav a:hover::after,
.main-nav a:focus-visible::after { right: 0; }

.header-cta {
  justify-self: end;
  padding: 11px 22px;
  border: 1px solid currentColor;
  color: inherit;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-decoration: none;
  text-transform: uppercase;
  transition: background .25s, color .25s;
}

.header-cta:hover { background: var(--white); color: var(--ink); }
.menu-toggle { display: none; }

.hero {
  position: relative;
  min-height: 900px;
  height: 100svh;
  overflow: hidden;
  isolation: isolate;
}

.hero-media,
.hero-media img,
.hero-shade { position: absolute; inset: 0; width: 100%; height: 100%; }

.hero-media { z-index: -3; }

.hero-media img {
  object-fit: cover;
  object-position: 58% 48%;
  animation: heroScale 1.6s cubic-bezier(.2,.7,.1,1) both;
}

.hero-shade {
  z-index: -2;
  background:
    linear-gradient(90deg, rgba(26,16,11,.92) 0%, rgba(26,16,11,.68) 38%, rgba(26,16,11,.05) 72%),
    linear-gradient(0deg, rgba(26,16,11,.62) 0%, transparent 42%);
}

.hero-content {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding-top: 94px;
}

.hero-content h1 {
  max-width: 1120px;
  color: var(--white);
  opacity: 0;
  transform: translateY(35px);
  animation: introUp .9s .18s cubic-bezier(.2,.7,.1,1) forwards;
}

.hero-content .eyebrow {
  opacity: 0;
  transform: translateY(20px);
  animation: introUp .7s .05s ease forwards;
}

.hero-lead {
  max-width: 650px;
  margin: 38px 0 0;
  color: rgba(255,253,249,.78);
  font-size: clamp(1rem, min(1.3vw, 5.59px), 1.28rem);
  line-height: 1.65;
  opacity: 0;
  transform: translateY(20px);
  animation: introUp .8s .35s ease forwards;
}

.hero-actions {
  display: flex;
  align-items: center;
  gap: 32px;
  margin-top: 42px;
  opacity: 0;
  animation: introUp .8s .5s ease forwards;
}

.button {
  display: inline-flex;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 15px 27px;
  border: 1px solid transparent;
  color: inherit;
  font-size: .72rem;
  font-weight: 750;
  letter-spacing: .1em;
  line-height: 1.2;
  text-decoration: none;
  text-transform: uppercase;
  transition: background .25s ease, color .25s ease, border-color .25s ease, transform .25s ease;
}

.button:hover { transform: translateY(-2px); }
.button-primary { background: var(--copper); color: var(--white); }
.button-primary:hover { background: #e66750; }
.button-outline-dark { border-color: var(--ink); color: var(--ink); }
.button-outline-dark:hover { background: var(--ink); color: var(--white); }

.text-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 8px 0;
  border-bottom: 1px solid rgba(255,253,249,.42);
  color: var(--white);
  font-size: .74rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-decoration: none;
  text-transform: uppercase;
  transition: border-color .25s, color .25s;
}

.icon-arrow {
  --oc-arrow-size: 1.08rem;
  position: relative;
  display: inline-block;
  width: var(--oc-arrow-size);
  height: var(--oc-arrow-size);
  flex: 0 0 auto;
  color: currentColor;
}

.icon-arrow::before,
.icon-arrow::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  display: block;
  transform-origin: center;
}

.icon-arrow::before {
  width: 78%;
  height: 2.2px;
  margin-left: calc(-78% / 2);
  margin-top: -1.1px;
  background: currentColor;
  border-radius: 999px;
}

.icon-arrow::after {
  width: 44%;
  height: 44%;
  margin-left: calc(-44% / 2);
  margin-top: calc(-44% / 2);
  border-top: 2.2px solid currentColor;
  border-right: 2.2px solid currentColor;
  box-sizing: border-box;
}

.icon-arrow-up-right::before { transform: rotate(-45deg); }
.icon-arrow-up-right::after { transform: translate(22%, -88%) rotate(0deg); }

.icon-arrow-down-right::before { transform: rotate(45deg); }
.icon-arrow-down-right::after { transform: translate(22%, -10%) rotate(90deg); }

.icon-arrow-up::before {
  width: 78%;
  margin-left: calc(-78% / 2);
  transform: rotate(-90deg);
}
.icon-arrow-up::after { transform: translate(-2%, -92%) rotate(-45deg); }

.text-link .icon-arrow {
  --oc-arrow-size: 1.05rem;
  transition: transform .25s;
}

.text-link:hover { border-color: var(--copper); color: var(--copper); }
.text-link:hover .icon-arrow { transform: translate(3px, -3px); }
.text-link-scroll:hover .icon-arrow { transform: translate(3px, 3px); }

.hero-note {
  position: absolute;
  right: 48px;
  bottom: 42px;
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: .67rem;
  font-weight: 650;
  letter-spacing: .12em;
  text-transform: uppercase;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
}

.hero-note-label { color: var(--gold); }

.proof-section {
  padding: 150px 0 120px;
  background: var(--paper);
  color: var(--ink);
}

.section-intro { max-width: 940px; }
.section-intro > p:last-child {
  max-width: 630px;
  margin: 40px 0 0 auto;
  color: #565048;
  font-size: clamp(1.05rem, min(1.55vw, 6.665px), 1.42rem);
}

.chef-grid {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr;
  gap: 1px;
  margin-top: 92px;
  background: var(--line-dark);
  border: 1px solid var(--line-dark);
}

.chef-card {
  min-height: 335px;
  padding: 38px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: var(--paper-light);
  transition: color .35s ease, background .35s ease;
}

.chef-card:hover,
.chef-card-featured { background: var(--ink); color: var(--white); }
.stars { color: var(--copper); font-size: .9rem; letter-spacing: .3em; }
.chef-card h3 { margin-bottom: 12px; font-size: clamp(1.45rem, min(2.2vw, 9.46px), 2.7rem); }
.chef-card p { margin: 0; color: var(--muted); font-size: .85rem; font-weight: 650; letter-spacing: .08em; text-transform: uppercase; }
.chef-award { padding-top: 24px; border-top: 1px solid currentColor; font-size: .67rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; opacity: .72; }

.advantages {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  margin-top: 78px;
  border-top: 1px solid var(--line-dark);
  border-bottom: 1px solid var(--line-dark);
}

.advantage {
  min-height: 175px;
  padding: 30px 24px 26px 0;
  display: grid;
  align-content: space-between;
  border-right: 1px solid var(--line-dark);
}

.advantage:not(:first-child) { padding-left: 25px; }
.advantage:last-child { border-right: 0; }
.advantage > span { color: var(--copper-dark); font-size: .65rem; font-weight: 750; letter-spacing: .1em; }
.advantage strong { display: block; align-self: end; font-size: clamp(.95rem, min(1.15vw, 4.945px), 1.15rem); }
.advantage small { display: block; color: #6e675f; font-size: .75rem; }

.process-section {
  min-height: 100svh;
  display: grid;
  grid-template-columns: 47% 53%;
  background: var(--ink-soft);
}

.process-visual { position: relative; min-height: 980px; overflow: hidden; }
.process-visual img { width: 100%; height: 100%; object-fit: cover; object-position: 54% center; }
.process-visual::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent 55%, rgba(21,18,15,.4)); }
.image-caption { position: absolute; z-index: 1; left: 30px; bottom: 28px; color: rgba(255,255,255,.72); font-size: .64rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; writing-mode: vertical-rl; transform: rotate(180deg); }

.process-content { display: flex; align-items: center; padding: 110px clamp(48px, min(6vw, 25.8px), 120px); }
.process-inner { width: min(100%, 720px); }
.process-lead { max-width: 620px; margin: 42px 0 50px; color: rgba(255,253,249,.63); font-size: clamp(1rem, min(1.3vw, 5.59px), 1.24rem); }

.process-list { padding: 0; margin: 0; list-style: none; border-top: 1px solid var(--line-light); }
.process-list li { display: grid; grid-template-columns: 48px 1fr; gap: 18px; padding: 25px 0; border-bottom: 1px solid var(--line-light); }
.process-number { color: var(--copper); font-size: .66rem; font-weight: 750; letter-spacing: .12em; }
.process-list h3 { margin-bottom: 8px; font-size: clamp(1.04rem, min(1.35vw, 5.805px), 1.3rem); font-weight: 640; letter-spacing: .002em; line-height: 1.35; }
.process-list p { margin: 0; color: rgba(255,253,249,.55); font-size: .84rem; line-height: 1.55; }

.products-section { padding: 150px 0; background: var(--paper-light); color: var(--ink); }
.products-heading { display: grid; grid-template-columns: 1.35fr .65fr; gap: 80px; align-items: end; }
.products-heading > p { max-width: 520px; margin: 0 0 8px; color: #5e574f; font-size: clamp(1rem, min(1.25vw, 5.375px), 1.18rem); }

.product-grid { display: grid; grid-template-columns: 1.2fr 1fr 1fr; gap: 22px; margin-top: 82px; }
.product-card { overflow: hidden; background: #e6ddd1; }
.product-card[data-product-hidden="temporary"] { display: none !important; }
.product-image { position: relative; display: block; height: 490px; overflow: hidden; background: #1A100B; }
.product-card-featured .product-image { height: 570px; }
.product-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.2,.7,.1,1); }
.product-image:hover img { transform: scale(1.035); }
.product-card:nth-child(1) .product-image img { object-position: 50% 60%; }
.product-card:nth-child(2) .product-image img { object-position: center; }
.product-card:nth-child(3) .product-image img { object-position: center 35%; }
.product-badge { position: absolute; top: 18px; left: 18px; padding: 9px 13px; background: var(--copper); color: var(--white); font-size: .61rem; font-weight: 750; letter-spacing: .11em; text-transform: uppercase; }

.product-body { min-height: 260px; padding: 30px; display: flex; flex-direction: column; }
.product-kicker { margin-bottom: 11px; color: var(--copper-dark); font-size: .62rem; font-weight: 750; letter-spacing: .13em; text-transform: uppercase; }
.product-body h3 { font-size: clamp(1.35rem, min(1.65vw, 7.095px), 2rem); line-height: 1.1; }
.product-description { margin: 18px 0 26px; color: #665e55; font-size: .84rem; line-height: 1.6; }
.product-bottom { margin-top: auto; display: flex; justify-content: space-between; align-items: flex-end; gap: 20px; }
.price { display: flex; align-items: baseline; gap: 10px; }
.price strong { font-size: 1.25rem; }
.price del { color: #81786e; font-size: .76rem; }
.round-link { width: 46px; height: 46px; display: grid; place-items: center; border: 1px solid var(--ink); border-radius: 50%; color: var(--ink); font-size: 1.1rem; text-decoration: none; transition: background .25s, color .25s, transform .25s; }
.round-link > .icon-arrow { --oc-arrow-size: 1.08rem; display: block; transform-origin: center; transition: transform .25s cubic-bezier(.2,.7,.1,1); }
.round-link:hover { background: var(--ink); color: var(--white); }
.round-link:hover > .icon-arrow { transform: rotate(45deg); }
.all-products { margin-top: 48px; text-align: center; }

.customers-section { min-height: 880px; display: grid; grid-template-columns: 52% 48%; background: #1A100B; }
.customers-copy { padding: 130px max(48px, calc((min(100vw, 430px) - min(1380px, calc(min(100vw, 430px) - 96px))) / 2)); padding-right: clamp(60px, min(8vw, 34.4px), 150px); display: flex; flex-direction: column; justify-content: center; }
.customers-copy h2 { max-width: 820px; }
.customers-lead { max-width: 650px; margin: 42px 0 0; color: rgba(255,253,249,.64); font-size: clamp(1rem, min(1.4vw, 6.02px), 1.3rem); }
.customer-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; margin: 64px 0 50px; background: var(--line-light); border: 1px solid var(--line-light); }
.customer-stats div { min-height: 150px; padding: 22px; display: flex; flex-direction: column; justify-content: space-between; background: #1A100B; }
.customer-stats strong { color: var(--copper); font-size: clamp(1.7rem, min(2.4vw, 10.32px), 3rem); line-height: 1; }
.customer-stats span { color: rgba(255,253,249,.58); font-size: .68rem; line-height: 1.45; text-transform: uppercase; letter-spacing: .08em; }
.customers-image { min-height: 880px; overflow: hidden; }
.customers-image img { width: 100%; height: 100%; object-fit: cover; object-position: center 22%; }

.story-section { display: grid; grid-template-columns: 48% 52%; min-height: 880px; background: var(--paper); color: var(--ink); }
.story-image { min-height: 880px; overflow: hidden; }
.story-image img { width: 100%; height: 100%; object-fit: cover; }
.story-copy { padding: 120px max(48px, calc((min(100vw, 430px) - min(1380px, calc(min(100vw, 430px) - 96px))) / 2)); padding-left: clamp(60px, min(8vw, 34.4px), 145px); display: flex; flex-direction: column; justify-content: center; align-items: flex-start; }
.story-copy h2 { margin-bottom: 42px; }
.story-copy > p:not(.eyebrow) { max-width: 720px; margin-bottom: 20px; color: #514b44; font-size: clamp(.92rem, min(1.02vw, 4.386px), 1.02rem); line-height: 1.72; }
.story-copy > .story-lead { margin-bottom: 28px; color: var(--ink); font-size: clamp(1.08rem, min(1.3vw, 5.59px), 1.3rem); font-weight: 650; line-height: 1.55; }
.story-copy > .story-final { margin-top: 8px; color: var(--ink); font-weight: 560; }
.story-copy .button { margin-top: 25px; }

.faq-section { padding: 150px 0; background: var(--ink-soft); }
.faq-layout { display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(70px, min(10vw, 43px), 170px); align-items: start; }
.faq-heading { position: sticky; top: 125px; }
.faq-heading h2 { font-size: clamp(2.7rem, min(4.2vw, 18.06px), 5.2rem); }
.faq-heading > p:last-child { margin-top: 40px; color: rgba(255,253,249,.58); }
.faq-heading a { text-decoration-color: var(--copper); text-underline-offset: 5px; }
.faq-list { border-top: 1px solid var(--line-light); }
.faq-list details { border-bottom: 1px solid var(--line-light); }
.faq-list summary { min-height: 95px; display: grid; grid-template-columns: 1fr 32px; gap: 24px; align-items: center; padding: 22px 0; cursor: pointer; color: var(--white); font-size: clamp(.95rem, min(1.2vw, 5.16px), 1.15rem); font-weight: 650; line-height: 1.4; list-style: none; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary span { width: 30px; height: 30px; display: grid; place-items: center; border: 1px solid var(--line-light); border-radius: 50%; color: var(--copper); font-size: 1.15rem; font-weight: 400; transition: transform .25s, background .25s; }
.faq-list details[open] summary span { transform: rotate(45deg); background: var(--copper); color: var(--white); border-color: var(--copper); }
.faq-list details > div { overflow: hidden; }
.faq-list details p { max-width: 690px; margin: 0; padding: 0 60px 32px 0; color: rgba(255,253,249,.58); font-size: .9rem; line-height: 1.8; }

.site-footer { padding-top: 95px; background: #1A100B; color: var(--white); }
.footer-top { display: grid; grid-template-columns: 1.6fr 1fr .9fr .75fr; gap: 60px; padding-bottom: 80px; }
.brand-footer .brand-word { font-size: clamp(2.5rem, min(4.5vw, 19.35px), 5.4rem); }
.brand-footer .brand-mark { font-size: .8rem; }
.footer-brand p { margin: 25px 0 0; color: rgba(255,253,249,.45); font-size: .8rem; }
.footer-column { display: flex; flex-direction: column; align-items: flex-start; }
.footer-column h2 { margin: 0 0 25px; color: var(--copper); font-size: .65rem; letter-spacing: .15em; line-height: 1.2; text-transform: uppercase; }
.footer-column p { margin: 0 0 18px; color: rgba(255,253,249,.5); font-size: .78rem; line-height: 1.8; }
.footer-column a { margin: 4px 0; color: rgba(255,253,249,.72); font-size: .77rem; text-decoration: none; transition: color .2s; }
.footer-column a:hover { color: var(--copper); }
.footer-bottom { min-height: 82px; display: flex; justify-content: space-between; align-items: center; gap: 30px; border-top: 1px solid var(--line-light); color: rgba(255,253,249,.38); font-size: .65rem; letter-spacing: .06em; text-transform: uppercase; }
.footer-bottom a { text-decoration: none; }
.footer-column a,
.footer-bottom a { display: inline-flex; align-items: center; gap: 10px; }
.icon-arrow-inline { --oc-arrow-size: 1rem; }

.reveal { opacity: 0; transform: translateY(35px); transition: opacity .9s cubic-bezier(.2,.7,.1,1), transform .9s cubic-bezier(.2,.7,.1,1); }
.reveal.is-visible { opacity: 1; transform: none; }

@keyframes heroScale { from { transform: scale(1.04); } to { transform: scale(1); } }
@keyframes introUp { to { opacity: 1; transform: none; } }

@media (min-width: 0px) {
  .main-nav-label { display: none; }
  :root { --wrap: min(100% - 56px, 1100px); }
  .header-inner { grid-template-columns: 1fr auto; }
  .main-nav { display: none; }
  .menu-toggle { display: grid; justify-self: end; width: 42px; height: 42px; padding: 11px 8px; border: 0; background: transparent; color: currentColor; cursor: pointer; }
  .menu-toggle span:not(.sr-only) { display: block; width: 25px; height: 1px; background: currentColor; transition: transform .25s; }
  .menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(5px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:nth-child(2) { transform: translateY(-5px) rotate(-45deg); }
  .header-cta { display: none; }
  .main-nav.is-open { position: fixed; inset: 82px 0 0; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 28px; padding: 45px 28px; background: rgba(9,8,7,.98); }
  .main-nav.is-open a { font-size: clamp(1.5rem, min(5vw, 21.5px), 3rem); letter-spacing: -.008em; text-transform: none; }
  .chef-grid { grid-template-columns: 1fr 1fr 1fr; }
  .advantages { grid-template-columns: repeat(3, 1fr); }
  .advantage:nth-child(3) { border-right: 0; }
  .advantage:nth-child(n+4) { border-top: 1px solid var(--line-dark); }
  .process-section { grid-template-columns: 42% 58%; }
  .process-content { padding: 85px 48px; }
  .product-grid { grid-template-columns: 1.15fr 1fr; }
  .product-card:last-child { grid-column: 2; }
  .product-card-featured { grid-row: span 2; }
  .product-card-featured .product-image { height: 760px; }
  .customers-section, .story-section { grid-template-columns: 1fr 1fr; }
  .customers-copy, .story-copy { padding: 90px 48px; }
  .customer-stats { grid-template-columns: 1fr; }
  .customer-stats div { min-height: 100px; }
  .footer-top { grid-template-columns: 1.4fr 1fr 1fr; }
  .footer-column:last-child { grid-column: 2; }
}

@media (min-width: 0px) {
  :root { --wrap: calc(min(100vw, 430px) - 40px); }
  h1 { font-size: clamp(3.1rem, min(12vw, 51.6px), 6.2rem); }
  h2 { font-size: clamp(2.55rem, min(10vw, 43px), 5rem); }
  .header-inner { height: 70px; }
  .main-nav.is-open { inset: 70px 0 0; }
  .hero { min-height: 780px; }
  .hero-content { justify-content: flex-end; padding: 110px 0 95px; }
  .hero-media img { object-position: 50% 34%; }
  .hero-shade { background: linear-gradient(0deg, rgba(26,16,11,.96) 0%, rgba(26,16,11,.42) 58%, rgba(26,16,11,.1) 100%); }
  .hero-lead { margin-top: 28px; }
  .hero-actions { margin-top: 34px; }
  .hero-note { display: none; }
  .proof-section, .products-section, .faq-section { padding: 100px 0; }
  .section-intro > p:last-child { margin-left: 0; }
  .chef-grid { grid-template-columns: 1fr; margin-top: 58px; }
  .chef-card { min-height: 260px; }
  .advantages { grid-template-columns: 1fr 1fr; }
  .advantage:nth-child(3) { border-right: 1px solid var(--line-dark); }
  .advantage:nth-child(even) { border-right: 0; }
  .advantage:nth-child(n+3) { border-top: 1px solid var(--line-dark); }
  .process-section { display: block; }
  .process-visual { min-height: 70svh; height: 740px; }
  .process-content { padding: 100px 20px; }
  .process-inner { width: min(100%, 700px); margin-inline: auto; }
  .products-heading { grid-template-columns: 1fr; gap: 35px; }
  .product-grid { grid-template-columns: 1fr; }
  .product-card-featured, .product-card:last-child { grid-column: auto; grid-row: auto; }
  .product-image, .product-card-featured .product-image { height: min(min(125vw, 537.5px), 690px); }
  .customers-section, .story-section { display: flex; flex-direction: column; }
  .customers-copy, .story-copy { padding: 100px 20px; }
  .customers-image, .story-image { min-height: 650px; height: 82svh; }
  .customers-image { order: -1; }
  .customer-stats { grid-template-columns: repeat(3, 1fr); }
  .customer-stats div { min-height: 145px; }
  .story-copy { order: -1; }
  .faq-layout { grid-template-columns: 1fr; gap: 65px; }
  .faq-heading { position: static; }
  .footer-top { grid-template-columns: 1fr 1fr; }
  .footer-brand { grid-column: 1 / -1; margin-bottom: 20px; }
  .footer-column:last-child { grid-column: auto; }
}

@media (min-width: 0px) {
  :root { --wrap: calc(min(100vw, 430px) - 30px); }
  .hero { min-height: 730px; }
  .hero-content { padding-bottom: 60px; }
  .hero-content h1 br { display: none; }
  .hero-lead { font-size: .92rem; line-height: 1.55; }
  .hero-actions { width: 100%; flex-direction: column; align-items: stretch; gap: 17px; }
  .hero-actions .text-link { align-self: flex-start; }
  .button { width: 100%; }
  .proof-section, .products-section, .faq-section { padding: 80px 0; }
  .advantages { grid-template-columns: 1fr; }
  .advantage, .advantage:not(:first-child) { min-height: 130px; padding: 22px 0; border-right: 0; border-top: 1px solid var(--line-dark); }
  .advantage:first-child { border-top: 0; }
  .process-visual { height: 620px; min-height: 0; }
  .process-content { padding: 80px 15px; }
  .process-list li { grid-template-columns: 38px 1fr; }
  .product-body { min-height: 245px; padding: 25px 22px; }
  .customers-copy, .story-copy { padding: 80px 15px; }
  .customers-image, .story-image { min-height: 560px; height: 74svh; }
  .customer-stats { grid-template-columns: 1fr; }
  .customer-stats div { min-height: 95px; }
  .faq-list summary { min-height: 84px; font-size: .88rem; }
  .faq-list details p { padding-right: 18px; }
  .site-footer { padding-top: 75px; }
  .footer-top { grid-template-columns: 1fr; gap: 45px; padding-bottom: 60px; }
  .footer-brand, .footer-column:last-child { grid-column: auto; }
  .footer-bottom { min-height: 110px; flex-direction: column; justify-content: center; align-items: flex-start; gap: 8px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }
  .reveal { opacity: 1; transform: none; }
}


/* Typografická úprava 2026-07: lepší čitelnost drobných textů a vzdušnější nadpisy */
h1, h2, h3,
.hero-title,
.section-title,
.product-body h3,
.chef-card h3,
.process-list h3,
.faq-heading h2 {
  letter-spacing: .025em;
}

/* Minimální velikosti drobného textu na desktopu */
.eyebrow,
.main-nav a,
.header-cta,
.hero-meta,
.scroll-cue,
.chef-award,
.advantage > span,
.advantage small,
.image-caption,
.process-number,
.process-list p,
.product-badge,
.product-kicker,
.product-description,
.price del,
.customer-stats span,
.footer-brand p,
.footer-column h2,
.footer-column p,
.footer-column a,
.footer-bottom {
  font-size: max(.80rem, 13px);
}

.chef-card p { font-size: max(.9rem, 14px); }
.faq-list details p { font-size: max(.96rem, 15px); }
.story-copy > p:not(.eyebrow) { font-size: clamp(1rem, min(1.08vw, 4.644px), 1.08rem); }

@media (min-width: 0px) {
  h1, h2, h3,
  .hero-title,
  .section-title,
  .product-body h3,
  .chef-card h3,
  .process-list h3,
  .faq-heading h2 {
    letter-spacing: .018em;
  }

  .hero-lead { font-size: 1rem; }
  .faq-list summary { font-size: 1rem; }
  .process-list p,
  .product-description,
  .footer-column p,
  .footer-column a,
  .footer-brand p { font-size: .92rem; }
}

/* Oprava barev nadpisů na světlém pozadí - vyšší priorita proti stylům Shoptetu */
.proof-section h1,
.proof-section h2,
.proof-section h3,
.products-section h1,
.products-section h2,
.products-section h3,
.story-section h1,
.story-section h2,
.story-section h3 {
  color: #8a6659 !important;
}

/* Nadpisy na tmavých kartách musí zůstat světlé */
.proof-section .chef-card-featured h3,
.proof-section .chef-card:hover h3 {
  color: var(--white) !important;
}


/* Oprava Shoptet 2026-07-17: světlé nadpisy na tmavém pozadí */
#oceterie-landing.oceterie-landing .intro-section :is(h1,h2,h3),
#oceterie-landing.oceterie-landing .process-section :is(h1,h2,h3),
#oceterie-landing.oceterie-landing .customers-section :is(h1,h2,h3),
#oceterie-landing.oceterie-landing .faq-section :is(h1,h2,h3),
#oceterie-landing.oceterie-landing .site-footer :is(h1,h2,h3),
#oceterie-landing.oceterie-landing .chef-card-featured :is(h1,h2,h3) {
  color: #fffdf9 !important;
  -webkit-text-fill-color: #fffdf9 !important;
}

/* Kompaktní prémiová verze 2026-07-17 - šéfkuchaři v úvodu, kratší vertikální rytmus */
.hero {
  min-height: 820px;
  height: min(100svh, 920px);
}
.hero-content {
  justify-content: flex-start;
  padding-top: clamp(150px, 18vh, 205px);
  padding-bottom: 230px;
}
.hero-content h1 { max-width: 980px; font-size: clamp(3.25rem, min(6.6vw, 28.38px), 7.8rem); }
.hero-lead { max-width: 620px; margin-top: 26px; line-height: 1.55; }
.hero-actions { margin-top: 30px; }
.hero-note { bottom: 188px; }

.hero-proof {
  position: absolute;
  z-index: 3;
  left: 50%;
  bottom: 24px;
  transform: translateX(-50%);
  display: grid;
  grid-template-columns: minmax(220px, .72fr) minmax(0, 2.28fr);
  min-height: 142px;
  border: 1px solid rgba(255,253,249,.2);
  background: rgba(9,8,7,.74);
  backdrop-filter: blur(18px);
  box-shadow: 0 20px 60px rgba(26,16,11,.2);
}
.hero-proof-heading {
  padding: 24px 28px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-right: 1px solid rgba(255,253,249,.16);
}
.hero-proof-kicker {
  margin-bottom: 11px;
  color: var(--gold);
  font-size: max(.76rem, 12px);
  font-weight: 750;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.hero-proof-heading p {
  margin: 0;
  color: rgba(255,253,249,.64);
  font-size: .79rem;
  line-height: 1.5;
}
.hero-chefs { display: grid; grid-template-columns: repeat(3, 1fr); }
.hero-chef {
  min-width: 0;
  padding: 21px 24px;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: 1fr auto;
  column-gap: 15px;
  align-items: center;
  border-right: 1px solid rgba(255,253,249,.13);
}
.hero-chef:last-child { border-right: 0; }
.hero-chef .stars { grid-row: 1 / 3; align-self: start; padding-top: 3px; font-size: .68rem; letter-spacing: .13em; }
.hero-chef strong { display: block; overflow: hidden; color: var(--white); font-size: clamp(.98rem, min(1.22vw, 5.246px), 1.28rem); line-height: 1.15; text-overflow: ellipsis; white-space: nowrap; }
.hero-chef small { display: block; margin-top: 5px; overflow: hidden; color: rgba(255,253,249,.48); font-size: max(.7rem, 12px); font-weight: 650; letter-spacing: .06em; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.hero-chef-award { align-self: end; margin-top: 13px; color: rgba(255,253,249,.6); font-size: max(.67rem, 11px); font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }

.hero-advantages { background: var(--paper); color: var(--ink); }
.hero-advantages .advantages { margin-top: 0; border-top: 0; }
.hero-advantages .advantage {
  min-height: 118px;
  padding-top: 22px;
  padding-bottom: 20px;
}
.hero-advantages .advantage strong { font-size: clamp(.9rem, min(1.05vw, 4.515px), 1.05rem); }

.process-section { min-height: 0; grid-template-columns: 43% 57%; }
.process-visual { min-height: 760px; }
.process-content { padding: 78px clamp(42px, min(5vw, 21.5px), 92px); }
.process-lead { margin: 28px 0 32px; }
.process-list li { padding: 18px 0; }
.process-list h3 { margin-bottom: 4px; }

.products-section { padding: 105px 0; }
.products-heading { gap: 60px; }
.product-grid { margin-top: 52px; gap: 18px; }
.product-image { height: 390px; }
.product-card-featured .product-image { height: 450px; }
.product-body { min-height: 220px; padding: 25px; }
.product-description { margin: 13px 0 20px; line-height: 1.48; }
.all-products { margin-top: 35px; }

.customers-section { min-height: 650px; grid-template-columns: 55% 45%; }
.customers-copy { padding-top: 88px; padding-bottom: 88px; padding-right: clamp(50px, min(6vw, 25.8px), 105px); }
.customers-lead { margin-top: 28px; }
.customer-stats { margin: 38px 0 34px; }
.customer-stats div { min-height: 105px; padding: 18px; }
.customers-image { min-height: 650px; }

.story-section { min-height: 700px; grid-template-columns: 43% 57%; }
.story-image { min-height: 700px; }
.story-copy { padding-top: 82px; padding-bottom: 82px; padding-left: clamp(50px, min(6vw, 25.8px), 105px); }
.story-copy h2 { margin-bottom: 27px; }
.story-copy > .story-lead { margin-bottom: 23px; }
.story-milestones { width: 100%; max-width: 760px; border-top: 1px solid var(--line-dark); }
.story-milestones article {
  display: grid;
  grid-template-columns: 40px 1fr;
  gap: 15px;
  padding: 16px 0;
  border-bottom: 1px solid var(--line-dark);
}
.story-milestones article > span { color: var(--copper-dark); font-size: max(.72rem, 12px); font-weight: 750; letter-spacing: .12em; }
.story-milestones h3 { margin: 0 0 4px; color: #8a6659 !important; font-size: clamp(1rem, min(1.2vw, 5.16px), 1.2rem); line-height: 1.3; }
.story-milestones p { margin: 0; color: #625b53; font-size: max(.84rem, 14px); line-height: 1.5; }
.story-copy > .story-final { margin: 21px 0 0; line-height: 1.58; }
.story-copy .button { margin-top: 20px; }

.faq-section { padding: 100px 0; }
.faq-layout { gap: clamp(55px, min(7vw, 30.1px), 115px); }
.faq-heading > p:last-child { margin-top: 28px; }
.faq-list summary { min-height: 76px; padding: 17px 0; }
.faq-list details p { padding-bottom: 24px; line-height: 1.65; }

.site-footer { padding-top: 68px; }
.footer-top { gap: 45px; padding-bottom: 56px; }
.footer-bottom { min-height: 68px; }

@media (min-width: 0px) {
  .hero { height: auto; min-height: 900px; }
  .hero-content { padding-bottom: 250px; }
  .hero-proof { grid-template-columns: 220px 1fr; }
  .hero-proof-heading { padding: 20px; }
  .hero-chef { padding: 18px; }
  .process-section { grid-template-columns: 40% 60%; }
  .product-card-featured .product-image { height: 620px; }
  .customers-section, .story-section { grid-template-columns: 1fr 1fr; }
  .customers-copy, .story-copy { padding: 75px 42px; }
}

@media (min-width: 0px) {
  .hero { min-height: 1080px; height: auto; }
  .hero-content { justify-content: flex-start; padding: 125px 0 520px; }
  .hero-content h1 { font-size: clamp(3rem, min(11vw, 47.3px), 5.8rem); }
  .hero-proof {
    bottom: 20px;
    grid-template-columns: 1fr;
    min-height: 0;
  }
  .hero-proof-heading { padding: 18px 20px; border-right: 0; border-bottom: 1px solid rgba(255,253,249,.16); }
  .hero-proof-heading p { max-width: 560px; }
  .hero-chefs { grid-template-columns: 1fr; }
  .hero-chef {
    min-height: 92px;
    grid-template-columns: auto 1fr auto;
    grid-template-rows: 1fr;
    border-right: 0;
    border-bottom: 1px solid rgba(255,253,249,.13);
  }
  .hero-chef:last-child { border-bottom: 0; }
  .hero-chef .stars { grid-row: auto; align-self: center; padding-top: 0; }
  .hero-chef-award { align-self: center; margin-top: 0; }
  .hero-advantages .advantages { grid-template-columns: repeat(3, 1fr); }
  .hero-advantages .advantage { min-height: 110px; }
  .process-visual { min-height: 520px; height: 66svh; }
  .process-content { padding: 75px 20px; }
  .products-section, .faq-section { padding: 80px 0; }
  .product-grid { margin-top: 42px; }
  .product-image, .product-card-featured .product-image { height: min(min(102vw, 438.6px), 600px); }
  .customers-copy, .story-copy { padding: 75px 20px; }
  .customers-image, .story-image { min-height: 500px; height: 65svh; }
  .story-copy { order: -1; }
  .story-section { min-height: 0; }
}

@media (min-width: 0px) {
  .hero { min-height: 1070px; }
  .hero-content { padding-top: 110px; padding-bottom: 520px; }
  .hero-proof { width: calc(min(100vw, 430px) - 24px); bottom: 12px; }
  .hero-proof-heading { padding: 15px 16px; }
  .hero-chef { min-height: 86px; padding: 14px 15px; grid-template-columns: 28px 1fr auto; column-gap: 10px; }
  .hero-chef strong { font-size: .95rem; }
  .hero-chef small { font-size: 11px; }
  .hero-chef-award { font-size: 10px; }
  .hero-advantages .advantages { grid-template-columns: 1fr 1fr; }
  .hero-advantages .advantage,
  .hero-advantages .advantage:not(:first-child) { min-height: 102px; padding: 18px 12px; border-right: 1px solid var(--line-dark); }
  .hero-advantages .advantage:nth-child(even) { border-right: 0; }
  .hero-advantages .advantage:nth-child(n+3) { border-top: 1px solid var(--line-dark); }
  .process-content { padding: 65px 15px; }
  .product-body { min-height: 210px; }
  .customers-copy, .story-copy { padding: 65px 15px; }
  .customers-image, .story-image { min-height: 460px; height: 58svh; }
  .faq-section { padding: 70px 0; }
  .site-footer { padding-top: 58px; }
}


/* Ještě kompaktnější mobilní skládání bez ztráty obsahu */
@media (min-width: 0px) {
  .hero-content h1 {
    width: 100%;
    max-width: 100%;
    font-size: clamp(2.25rem, min(10.5vw, 45.15px), 2.95rem);
    line-height: 1.08;
    overflow-wrap: normal;
    word-break: normal;
  }
  .hero-content h1 br { display: block; }

  .process-visual { min-height: 0; height: 400px; }
  .process-content { padding-top: 55px; padding-bottom: 55px; }
  .process-content h2 { font-size: clamp(2.45rem, min(10vw, 43px), 3.1rem); }
  .process-lead { margin: 22px 0 24px; }
  .process-list li { padding: 14px 0; }
  .process-list h3 { font-size: 1rem; }
  .process-list p { font-size: .82rem; line-height: 1.45; }
  .image-caption { display: none; }

  .products-section { padding: 65px 0; }
  .products-heading { gap: 24px; }
  .products-heading h2 { font-size: clamp(2.45rem, min(10vw, 43px), 3rem); }
  .product-grid { gap: 12px; margin-top: 30px; }
  .product-card,
  .product-card-featured {
    display: grid;
    grid-template-columns: 42% 58%;
    min-height: 230px;
  }
  .product-image,
  .product-card-featured .product-image {
    width: 100%;
    height: 100%;
    min-height: 230px;
  }
  .product-body { min-height: 230px; padding: 17px 15px; }
  .product-kicker { margin-bottom: 7px; font-size: 10px; line-height: 1.35; }
  .product-body h3 { font-size: 1.06rem; line-height: 1.16; }
  .product-description {
    display: -webkit-box;
    margin: 9px 0 12px;
    overflow: hidden;
    font-size: .78rem;
    line-height: 1.42;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }
  .product-badge { top: 10px; left: 10px; padding: 7px 9px; font-size: 9px; }
  .price { gap: 6px; }
  .price strong { font-size: 1rem; }
  .price del { font-size: .7rem; }
  .round-link { width: 36px; height: 36px; font-size: .95rem; }
  .all-products { margin-top: 26px; }

  .customers-copy { padding-top: 55px; padding-bottom: 55px; }
  .customers-copy h2 { font-size: clamp(2.45rem, min(10vw, 43px), 3rem); }
  .customers-lead { margin-top: 22px; }
  .customer-stats { grid-template-columns: repeat(3, 1fr); margin: 28px 0; }
  .customer-stats div { min-height: 108px; padding: 11px 9px; }
  .customer-stats strong { font-size: 1.3rem; }
  .customer-stats span { font-size: 10px; letter-spacing: .04em; }
  .customers-image { min-height: 0; height: 360px; }

  .story-image { display: none; }
  .story-copy { padding-top: 60px; padding-bottom: 60px; }
  .story-copy h2 { font-size: clamp(2.45rem, min(10vw, 43px), 3rem); margin-bottom: 22px; }
  .story-copy > .story-lead { margin-bottom: 18px; }
  .story-milestones article { padding: 13px 0; }
  .story-copy > .story-final { margin-top: 17px; font-size: .9rem; }

  .faq-section { padding: 62px 0; }
  .faq-layout { gap: 38px; }
  .faq-heading h2 { font-size: clamp(2.35rem, min(9.8vw, 42.14px), 2.9rem); }
  .faq-heading > p:last-child { margin-top: 22px; }
  .faq-list summary { min-height: 70px; padding: 14px 0; font-size: .92rem; }
  .faq-list details p { padding: 0 12px 20px 0; font-size: .88rem; line-height: 1.55; }

  .site-footer { padding-top: 48px; }
  .footer-top { grid-template-columns: 1fr 1fr; gap: 32px 22px; padding-bottom: 42px; }
  .footer-brand { grid-column: 1 / -1; margin-bottom: 0; }
  .footer-column:first-of-type { grid-column: 1 / -1; }
  .footer-column:last-child { grid-column: auto; }
  .footer-column h2 { margin-bottom: 15px; }
  .brand-footer .brand-word { font-size: 2.5rem; }
  .footer-bottom { min-height: 92px; }
}


/* Čitelná typografie v5 - 2026-07-17
   Všechny drobné texty mají vyšší minimum, lepší kontrast a klidnější rozestupy. */
.eyebrow,
.main-nav a,
.header-cta,
.button,
.text-link,
.hero-note,
.hero-proof-kicker,
.hero-chef small,
.hero-chef-award,
.advantage > span,
.advantage small,
.image-caption,
.process-number,
.product-badge,
.product-kicker,
.price del,
.customer-stats span,
.story-milestones article > span,
.footer-column h2,
.footer-bottom {
  font-size: 14px;
  letter-spacing: .085em;
  line-height: 1.45;
}

.hero-proof-heading p,
.process-list p,
.product-description,
.faq-list details p,
.story-milestones p,
.footer-brand p,
.footer-column p,
.footer-column a,
.faq-heading > p:last-child {
  font-size: clamp(15px, min(.94vw, 4.042px), 16px);
  line-height: 1.62;
}

.hero-proof-heading p,
.hero-chef small,
.hero-chef-award,
.customer-stats span,
.footer-brand p,
.footer-column p,
.footer-column a,
.footer-bottom {
  opacity: 1;
}

.hero-proof-heading p { color: rgba(255,253,249,.76); }
.hero-chef small { color: rgba(255,253,249,.68); }
.hero-chef-award { color: rgba(255,253,249,.74); }
.process-list p { color: rgba(255,253,249,.7); }
.customer-stats span { color: rgba(255,253,249,.72); }
.footer-brand p,
.footer-column p { color: rgba(255,253,249,.66); }
.footer-column a { color: rgba(255,253,249,.82); }
.footer-bottom { color: rgba(255,253,249,.58); }

.product-badge,
.product-kicker,
.hero-proof-kicker,
.footer-column h2 {
  font-weight: 760;
}

@media (min-width: 0px) {
  .hero-proof-heading p { max-width: 650px; }
  .hero-chef { min-height: 102px; }
  .hero-chef-award {
    max-width: 125px;
    text-align: right;
    line-height: 1.3;
  }
  .process-list p,
  .product-description,
  .faq-list details p,
  .story-milestones p,
  .footer-brand p,
  .footer-column p,
  .footer-column a,
  .faq-heading > p:last-child {
    font-size: 15px;
  }
}

/* === V80: prodejní karty začínají bez odstraněného titulního bloku === */
.oceterie-landing .products-section {
  padding-top: 0 !important;
}

/* === V36: živá dostupnost ze Shoptetu === */
.oceterie-landing .product-stock {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 22px;
  margin: 0 0 4px;
  color: #4d6851;
  font-size: 12px;
  font-weight: 680;
  letter-spacing: .035em;
  line-height: 1.4;
}
.oceterie-landing .product-stock::before {
  content: "";
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 50%;
  background: #628266;
}
.oceterie-landing .product-stock.is-loading,
.oceterie-landing .product-stock.is-unknown { color: #746a61; }
.oceterie-landing .product-stock.is-loading::before,
.oceterie-landing .product-stock.is-unknown::before { background: #a49a90; }
.oceterie-landing .product-stock.is-sold-out { color: #a43f31; }
.oceterie-landing .product-stock.is-sold-out::before { background: #b44834; }
.oceterie-landing .product-card.is-sold-out .product-image img { opacity: .62; }
.oceterie-landing .product-buy-button:disabled,
.oceterie-landing .product-buy-button:disabled:hover,
.oceterie-landing .product-buy-button:disabled:focus {
  cursor: not-allowed;
  border-color: #a49a90;
  background: #a49a90;
  color: #fffdf9;
}

@media (min-width: 0px) {
  .hero { min-height: 1140px; }
  .hero-content { padding-bottom: 575px; }
  .hero-proof-heading { padding: 17px 16px; }
  .hero-chef {
    min-height: 100px;
    padding: 15px;
    grid-template-columns: 28px minmax(0, 1fr) minmax(90px, auto);
  }
  .hero-chef strong { font-size: 1rem; }
  .hero-chef small {
    font-size: 14px;
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
  }
  .hero-chef-award { font-size: 14px; }

  .hero-advantages .advantage,
  .hero-advantages .advantage:not(:first-child) {
    min-height: 112px;
  }
  .hero-advantages .advantage > span,
  .hero-advantages .advantage small { font-size: 14px; }
  .hero-advantages .advantage strong { font-size: 1rem; }

  .process-list h3 { font-size: 1.05rem; }
  .process-list p { font-size: 15px; }
  .process-number { font-size: 14px; }

  .product-card,
  .product-card-featured,
  .product-image,
  .product-card-featured .product-image,
  .product-body {
    min-height: 250px;
  }
  .product-kicker { font-size: 14px; }
  .product-badge { font-size: 14px; padding: 8px 10px; }
  .product-description {
    font-size: 14.5px;
    line-height: 1.48;
  }
  .price del { font-size: 14px; }

  .customer-stats div { min-height: 116px; }
  .customer-stats span {
    font-size: 14px;
    line-height: 1.38;
  }

  .story-milestones article > span { font-size: 14px; }
  .story-milestones p { font-size: 14.5px; }
  .story-copy > .story-final { font-size: 15px; }

  .faq-list summary { font-size: 1rem; }
  .faq-list details p { font-size: 15px; }

  .footer-column h2 { font-size: 14px; }
  .footer-brand p,
  .footer-column p,
  .footer-column a { font-size: 15px; }
  .footer-bottom {
    font-size: 14px;
    line-height: 1.5;
  }
}

/* Mobilní CTA tlačítka v9 - šipky jsou na mobilu nahrazené kruhovým tlačítkem ve stylu FAQ. */
@media (hover: none) and (pointer: coarse) {
  .text-link .icon-arrow,
  .footer-column .icon-arrow-inline,
  .footer-bottom .icon-arrow-inline {
    width: 30px;
    height: 30px;
    display: inline-grid;
    place-items: center;
    border: 1px solid var(--line-light);
    border-radius: 50%;
    color: var(--copper);
    transform: none !important;
    animation: none !important;
  }

  .text-link .icon-arrow::before,
  .footer-column .icon-arrow-inline::before,
  .footer-bottom .icon-arrow-inline::before {
    content: "+";
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    background: none;
    border: 0;
    font-size: 1.05rem;
    font-weight: 400;
    line-height: 1;
    transform: none;
  }

  .text-link .icon-arrow::after,
  .footer-column .icon-arrow-inline::after,
  .footer-bottom .icon-arrow-inline::after {
    content: none;
    display: none;
  }

  .round-link {
    width: 30px;
    height: 30px;
    border: 1px solid var(--line-light);
    border-radius: 50%;
    color: var(--copper);
    background: transparent;
    transition: background .25s, color .25s, border-color .25s;
  }

  .products-section .round-link {
    border-color: rgba(168, 57, 41, .28);
    color: var(--copper-dark);
  }

  .round-link > .icon-arrow {
    display: none;
    animation: none !important;
  }

  .round-link::before {
    content: "+";
    font-size: 1.05rem;
    font-weight: 400;
    line-height: 1;
  }

  .text-link:active .icon-arrow,
  .footer-column a:active .icon-arrow-inline,
  .footer-bottom a:active .icon-arrow-inline,
  .round-link:active {
    background: var(--copper);
    border-color: var(--copper);
    color: var(--white);
  }
}

@media (prefers-reduced-motion: reduce) {
  .text-link .icon-arrow,
  .round-link > .icon-arrow { animation: none !important; }
}



/* v10 - posun úvodního textu na mobilu tak, aby nekryl oči a obličej modelky */
@media (min-width: 0px) {
  .hero-media img {
    object-position: 52% 22%;
  }

  .hero-content {
    justify-content: flex-start;
    padding-top: 300px;
    padding-bottom: 445px;
  }

  .hero-content .eyebrow,
  .hero-content h1,
  .hero-lead {
    max-width: min(min(68vw, 292.4px), 330px);
  }

  .hero-actions {
    width: min(min(68vw, 292.4px), 290px);
  }
}

@media (min-width: 0px) {
  .hero {
    min-height: 1160px;
  }

  .hero-content {
    padding-top: 332px;
    padding-bottom: 500px;
  }

  .hero-content .eyebrow,
  .hero-content h1,
  .hero-lead {
    max-width: min(min(72vw, 309.6px), 285px);
  }

  .hero-actions {
    width: min(min(72vw, 309.6px), 270px);
  }
}


/* v11 - čtyři michelinští kuchaři v úvodním seznamu */
.hero-chefs {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 0px) {
  .hero-chef {
    padding-inline: clamp(15px, min(1.45vw, 6.235px), 22px);
  }

  .hero-chef strong {
    font-size: clamp(.92rem, min(1.05vw, 4.515px), 1.18rem);
  }

  .hero-chef-award {
    font-size: max(.63rem, 10.5px);
    letter-spacing: .085em;
  }
}

@media (min-width: 0px) {
  .hero {
    min-height: 1180px;
  }

  .hero-content {
    padding-bottom: 620px;
  }
}

@media (min-width: 0px) {
  .hero {
    min-height: 1260px;
  }

  .hero-content {
    padding-bottom: 600px;
  }
}


/* v12 - stabilní mobilní rozložení seznamu michelinských kuchařů */
@media (min-width: 0px) {
  .hero-chefs {
    display: grid;
    grid-template-columns: 1fr;
  }

  .hero-chef {
    min-height: 0;
    padding: 16px 18px;
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    grid-template-rows: auto auto;
    column-gap: 13px;
    row-gap: 7px;
    align-items: start;
  }

  .hero-chef .stars {
    grid-column: 1;
    grid-row: 1 / 3;
    align-self: start;
    padding-top: 3px;
    font-size: 12px;
    line-height: 1.4;
    letter-spacing: .08em;
    white-space: nowrap;
  }

  .hero-chef > div {
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
  }

  .hero-chef strong {
    display: block;
    overflow: visible;
    font-size: 1rem;
    line-height: 1.25;
    text-overflow: clip;
    white-space: normal;
  }

  .hero-chef small {
    display: block;
    margin-top: 4px;
    overflow: visible;
    font-size: 13px;
    line-height: 1.35;
    letter-spacing: .055em;
    text-overflow: clip;
    white-space: normal;
  }

  .hero-chef-award {
    grid-column: 2;
    grid-row: 2;
    align-self: start;
    width: auto;
    max-width: none;
    margin: 0;
    padding-top: 7px;
    border-top: 1px solid rgba(255,253,249,.13);
    color: rgba(255,253,249,.76);
    font-size: 12px;
    line-height: 1.35;
    letter-spacing: .075em;
    text-align: left;
    white-space: normal;
  }
}

@media (min-width: 0px) {
  .hero {
    min-height: 1320px;
  }

  .hero-content {
    padding-bottom: 650px;
  }

  .hero-proof-heading {
    padding: 15px 17px;
  }

  .hero-chef {
    padding: 15px 17px;
    grid-template-columns: 32px minmax(0, 1fr);
    column-gap: 12px;
    row-gap: 6px;
  }

  .hero-chef strong {
    font-size: 1rem;
  }

  .hero-chef small {
    font-size: 13px;
  }

  .hero-chef-award {
    font-size: 12px;
  }
}


/* v13 - v mobilní verzi skrýt odkaz Zpět nahoru */
@media (min-width: 0px) {
  .footer-bottom a[href="#top"] {
    display: none !important;
  }

  .footer-bottom {
    min-height: 72px;
  }
}


/* v14 - přehledná tabulka zákaznických statistik na mobilu */
@media (min-width: 0px) {
  .customer-stats {
    grid-template-columns: 1fr;
    gap: 0;
    margin: 30px 0 32px;
    overflow: hidden;
    border: 1px solid var(--line-light);
    background: transparent;
  }

  .customer-stats div {
    min-height: 82px;
    display: grid;
    grid-template-columns: minmax(88px, .72fr) minmax(0, 1.28fr);
    align-items: center;
    gap: 18px;
    padding: 16px 18px;
    border-bottom: 1px solid var(--line-light);
    background: #1A100B;
  }

  .customer-stats div:last-child {
    border-bottom: 0;
  }

  .customer-stats strong {
    align-self: center;
    font-size: clamp(1.25rem, min(5.5vw, 23.65px), 1.55rem);
    line-height: 1.08;
    letter-spacing: -.015em;
    overflow-wrap: normal;
  }

  .customer-stats span {
    align-self: center;
    min-width: 0;
    color: rgba(255,253,249,.76);
    font-size: 14px;
    line-height: 1.4;
    letter-spacing: .055em;
    text-align: right;
    overflow-wrap: break-word;
  }
}

@media (max-width: 390px) {
  .customer-stats div {
    grid-template-columns: 82px minmax(0, 1fr);
    gap: 14px;
    padding-inline: 15px;
  }

  .customer-stats strong {
    font-size: 1.2rem;
  }

  .customer-stats span {
    font-size: 13.5px;
    letter-spacing: .045em;
  }
}


/* v15 - mobilní štítek „Nejvýhodnější“ se vždy vejde do fotografie */
@media (min-width: 0px) {
  .product-badge {
    top: 8px;
    left: 8px;
    max-width: calc(100% - 16px);
    padding: 7px 8px;
    font-size: 11px;
    font-weight: 760;
    letter-spacing: .045em;
    line-height: 1.15;
    white-space: nowrap;
    overflow: visible;
  }
}

/* v16 - sjednocení desktopových ikon, stabilní seznam šéfkuchařů a výrazné CTA v záhlaví */

/* Tlačítko Ochutnat v záhlaví vede do e-shopu a používá hlavní korálovou barvu značky. */
.header-cta {
  border-color: var(--copper);
  background: var(--copper);
  color: var(--white);
  box-shadow: 0 9px 28px rgba(217, 87, 63, .3);
}

.header-cta:hover,
.header-cta:focus-visible {
  border-color: var(--gold);
  background: var(--gold);
  color: var(--ink);
  box-shadow: 0 12px 32px rgba(217, 165, 108, .28);
  transform: translateY(-1px);
}

/* Desktop používá stejný bezpečný znak + v kruhu jako mobilní verze.
   Nevkládáme znak šipky, který některé telefony nebo fonty nahrazují. */
.icon-arrow {
  width: 30px;
  height: 30px;
  display: inline-grid;
  place-items: center;
  border: 1px solid currentColor;
  border-radius: 50%;
  transform: none !important;
  animation: none !important;
}

.icon-arrow::before {
  content: "+";
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  border: 0;
  background: none;
  font-size: 1.05rem;
  font-weight: 400;
  line-height: 1;
  transform: none;
}

.icon-arrow::after {
  content: none;
  display: none;
}

.text-link .icon-arrow,
.footer-column .icon-arrow-inline,
.footer-bottom .icon-arrow-inline {
  color: var(--copper);
}

.text-link:hover .icon-arrow,
.text-link-scroll:hover .icon-arrow {
  transform: none !important;
}

.round-link {
  width: 38px;
  height: 38px;
}

.round-link > .icon-arrow {
  display: none !important;
}

.round-link::before {
  content: "+";
  font-size: 1.1rem;
  font-weight: 400;
  line-height: 1;
}

/* Jména, restaurace i ocenění se mohou přirozeně zalomit a nikdy nepřetečou. */
.hero-chef > div,
.hero-chef strong,
.hero-chef small,
.hero-chef-award {
  min-width: 0;
  max-width: 100%;
}

.hero-chef strong,
.hero-chef small,
.hero-chef-award {
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
  overflow-wrap: break-word;
}

/* Zmenšený desktop a tablet na šířku: místo čtyř úzkých sloupců přehledné 2 × 2. */
@media (max-width: 0px) and (min-width: 0px) {
  .hero {
    min-height: 980px;
    height: auto;
  }

  .hero-content {
    min-height: 980px;
    padding-bottom: 245px;
  }

  .hero-proof {
    grid-template-columns: minmax(190px, .62fr) minmax(0, 1.38fr);
    min-height: 214px;
  }

  .hero-chefs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .hero-chef {
    min-height: 106px;
    padding: 16px 18px;
  }

  .hero-chef:nth-child(2) {
    border-right: 0;
  }

  .hero-chef:nth-child(-n + 2) {
    border-bottom: 1px solid rgba(255,253,249,.13);
  }

  .hero-chef strong {
    font-size: clamp(.96rem, min(1.45vw, 6.235px), 1.08rem);
    line-height: 1.22;
  }

  .hero-chef small {
    font-size: 12px;
    line-height: 1.3;
  }

  .hero-chef-award {
    margin-top: 8px;
    font-size: 10.5px;
    line-height: 1.3;
  }
}



/* v17 - nové úvodní a procesní fotografie při zachování původní struktury */
.hero-media img {
  object-position: 54% 50%;
}

.process-visual img {
  object-position: 50% 50%;
}

@media (min-width: 0px) {
  .hero-media img {
    object-position: 57% 50%;
  }
}


/* v18 - důležité odlišení je akcentováno až u druhé fotografie */
.process-lead strong {
  color: var(--gold);
  font-weight: 700;
}

/* ==========================================================
   VERZE 19 - čtyři aktuální výrobky a nové produktové fotografie
   ========================================================== */
.oceterie-landing .product-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
}
.oceterie-landing .product-card-featured {
  grid-column: 1 / -1;
  grid-row: auto;
  display: grid;
  grid-template-columns: minmax(0, 1.38fr) minmax(330px, .62fr);
}
.oceterie-landing .product-card-featured .product-image {
  height: 620px;
}
.oceterie-landing .product-card-featured .product-body {
  min-height: 620px;
  justify-content: center;
  padding: clamp(34px, min(4vw, 17.2px), 64px);
}
.oceterie-landing .product-card:not(.product-card-featured) .product-image {
  height: 560px;
}
.oceterie-landing .product-card:nth-child(1) .product-image img { object-position: center; }
.oceterie-landing .product-card:nth-child(2) .product-image img { object-position: center 45%; }
.oceterie-landing .product-card:nth-child(3) .product-image img { object-position: center 34%; }
.oceterie-landing .product-card:nth-child(4) .product-image img { object-position: center 38%; }
.oceterie-landing .product-card-featured .product-description {
  max-width: 520px;
  font-size: max(.91rem, 15px);
}

@media (min-width: 0px) {
  .oceterie-landing .product-grid { grid-template-columns: 1fr; }
  .oceterie-landing .product-card-featured {
    grid-column: auto;
    display: block;
  }
  .oceterie-landing .product-image,
  .oceterie-landing .product-card-featured .product-image,
  .oceterie-landing .product-card:not(.product-card-featured) .product-image {
    height: min(min(105vw, 451.5px), 760px);
  }
  .oceterie-landing .product-card-featured .product-body {
    min-height: 250px;
    justify-content: flex-start;
    padding: 28px;
  }
}

@media (min-width: 0px) {
  .oceterie-landing .product-card,
  .oceterie-landing .product-card-featured {
    display: grid;
    grid-template-columns: 42% 58%;
    min-height: 250px;
  }
  .oceterie-landing .product-image,
  .oceterie-landing .product-card-featured .product-image,
  .oceterie-landing .product-card:not(.product-card-featured) .product-image {
    width: 100%;
    height: 100%;
    min-height: 250px;
  }
  .oceterie-landing .product-card-featured .product-body,
  .oceterie-landing .product-body {
    min-height: 250px;
    justify-content: flex-start;
    padding: 17px 15px;
  }
  .oceterie-landing .product-card:nth-child(1) .product-image img { object-position: center; }
  .oceterie-landing .product-card:nth-child(2) .product-image img { object-position: 50% 38%; }
  .oceterie-landing .product-card:nth-child(3) .product-image img { object-position: 50% 28%; }
  .oceterie-landing .product-card:nth-child(4) .product-image img { object-position: 50% 32%; }
  .oceterie-landing .product-card-featured .product-description { font-size: .78rem; }
}


/* ==========================================================
   VERZE 20 - symetrická mřížka 2 × 2 a nová fotografie setu 2 + 1
   ========================================================== */
.oceterie-landing .product-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  align-items: stretch;
}
.oceterie-landing .product-card,
.oceterie-landing .product-card-set,
.oceterie-landing .product-card-featured {
  display: flex;
  flex-direction: column;
  grid-column: auto;
  grid-row: auto;
}
.oceterie-landing .product-image,
.oceterie-landing .product-card-set .product-image,
.oceterie-landing .product-card-featured .product-image,
.oceterie-landing .product-card:not(.product-card-featured) .product-image {
  height: clamp(420px, min(42vw, 180.6px), 620px);
}
.oceterie-landing .product-body,
.oceterie-landing .product-card-set .product-body,
.oceterie-landing .product-card-featured .product-body {
  min-height: 292px;
  padding: clamp(26px, min(2.6vw, 11.18px), 34px);
}
.oceterie-landing .product-card-set .product-description,
.oceterie-landing .product-card-featured .product-description {
  max-width: none;
  font-size: max(.88rem, 14px);
}
.oceterie-landing .product-card:nth-child(1) .product-image img,
.oceterie-landing .product-card:nth-child(2) .product-image img,
.oceterie-landing .product-card:nth-child(3) .product-image img,
.oceterie-landing .product-card:nth-child(4) .product-image img {
  object-position: center;
}

@media (min-width: 0px) {
  .oceterie-landing .product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
  }
  .oceterie-landing .product-image,
  .oceterie-landing .product-card-set .product-image,
  .oceterie-landing .product-card-featured .product-image,
  .oceterie-landing .product-card:not(.product-card-featured) .product-image {
    height: clamp(320px, min(48vw, 206.4px), 520px);
  }
  .oceterie-landing .product-body,
  .oceterie-landing .product-card-set .product-body,
  .oceterie-landing .product-card-featured .product-body {
    min-height: 270px;
    padding: 24px 22px;
  }
}

@media (min-width: 0px) {
  .oceterie-landing .product-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .oceterie-landing .product-card,
  .oceterie-landing .product-card-set,
  .oceterie-landing .product-card-featured {
    display: grid;
    grid-template-columns: 42% 58%;
    min-height: 250px;
  }
  .oceterie-landing .product-image,
  .oceterie-landing .product-card-set .product-image,
  .oceterie-landing .product-card-featured .product-image,
  .oceterie-landing .product-card:not(.product-card-featured) .product-image {
    width: 100%;
    height: 100%;
    min-height: 250px;
  }
  .oceterie-landing .product-body,
  .oceterie-landing .product-card-set .product-body,
  .oceterie-landing .product-card-featured .product-body {
    min-height: 250px;
    padding: 17px 15px;
  }
}

/* ==========================================================
   VERZE 21 - čistý předěl a výrobky po jednom bez ořezu
   ========================================================== */
.oceterie-landing .section-divider-light {
  position: relative;
  height: 58px;
  background: #fffdf9;
  overflow: hidden;
}
.oceterie-landing .section-divider-light::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(min(78vw, 335.4px), 1120px);
  height: 1px;
  transform: translate(-50%, -50%);
  background: linear-gradient(90deg, transparent, rgba(68, 55, 44, .22) 18%, rgba(68, 55, 44, .22) 82%, transparent);
}
.oceterie-landing .section-divider-light::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 9px;
  height: 9px;
  transform: translate(-50%, -50%) rotate(45deg);
  background: var(--copper);
  box-shadow: 0 0 0 11px #fffdf9;
}

.oceterie-landing .product-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
  align-items: stretch;
}
.oceterie-landing .product-card,
.oceterie-landing .product-card-set,
.oceterie-landing .product-card-featured {
  display: grid;
  grid-template-columns: minmax(360px, .98fr) minmax(0, 1.02fr);
  grid-column: auto;
  grid-row: auto;
  align-items: stretch;
  min-height: 0;
}
.oceterie-landing .product-image,
.oceterie-landing .product-card-set .product-image,
.oceterie-landing .product-card-featured .product-image,
.oceterie-landing .product-card:not(.product-card-featured) .product-image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: auto;
  min-height: 0;
  overflow: visible;
  background: #ded3c5;
}
.oceterie-landing .product-image img,
.oceterie-landing .product-card:nth-child(1) .product-image img,
.oceterie-landing .product-card:nth-child(2) .product-image img,
.oceterie-landing .product-card:nth-child(3) .product-image img,
.oceterie-landing .product-card:nth-child(4) .product-image img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  max-height: none;
  object-fit: contain;
  object-position: center;
  transform: none;
}
.oceterie-landing .product-image:hover img {
  transform: none;
}
.oceterie-landing .product-body,
.oceterie-landing .product-card-set .product-body,
.oceterie-landing .product-card-featured .product-body {
  min-height: 0;
  justify-content: center;
  padding: clamp(34px, min(4.2vw, 18.06px), 66px);
}
.oceterie-landing .product-card-set .product-description,
.oceterie-landing .product-card-featured .product-description {
  max-width: none;
  font-size: max(.88rem, 14px);
}

@media (min-width: 0px) {
  .oceterie-landing .product-card,
  .oceterie-landing .product-card-set,
  .oceterie-landing .product-card-featured {
    grid-template-columns: 1fr;
  }
  .oceterie-landing .product-body,
  .oceterie-landing .product-card-set .product-body,
  .oceterie-landing .product-card-featured .product-body {
    min-height: 0;
    padding: 30px 28px 34px;
  }
}

@media (min-width: 0px) {
  .oceterie-landing .section-divider-light { height: 42px; }
  .oceterie-landing .product-grid { gap: 18px; }
  .oceterie-landing .product-card,
  .oceterie-landing .product-card-set,
  .oceterie-landing .product-card-featured {
    display: grid;
    grid-template-columns: 1fr;
    min-height: 0;
  }
  .oceterie-landing .product-image,
  .oceterie-landing .product-card-set .product-image,
  .oceterie-landing .product-card-featured .product-image,
  .oceterie-landing .product-card:not(.product-card-featured) .product-image {
    width: 100%;
    height: auto;
    min-height: 0;
  }
  .oceterie-landing .product-body,
  .oceterie-landing .product-card-set .product-body,
  .oceterie-landing .product-card-featured .product-body {
    min-height: 0;
    padding: 24px 20px 28px;
  }
}

/* ==========================================================
   VERZE 22 - bez předělu, čitelná výrobní poznámka a menší celé fotografie
   ========================================================== */

/* Bílý dekorativní předěl je zrušený bez náhrady. */
.oceterie-landing .section-divider-light {
  display: none !important;
}

/* Poznámka „Vyrábíme v Česku od roku 2011“ je nad panelem kuchařů,
   vodorovná a díky vlastnímu pozadí čitelná. */
.oceterie-landing .hero-note {
  z-index: 4;
  right: max(24px, calc((min(100vw, 430px) - var(--wrap)) / 2));
  bottom: 184px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 9px;
  padding: 9px 13px;
  border: 1px solid rgba(255, 253, 249, .18);
  border-radius: 999px;
  background: rgba(9, 8, 7, .76);
  box-shadow: 0 10px 30px rgba(26,16,11, .18);
  backdrop-filter: blur(12px);
  color: rgba(255, 253, 249, .88);
  font-size: max(.68rem, 11px);
  letter-spacing: .11em;
  line-height: 1;
  writing-mode: horizontal-tb;
  transform: none;
  white-space: nowrap;
}

@media (max-width: 0px) and (min-width: 0px) {
  .oceterie-landing .hero-note {
    bottom: 252px;
  }
}

@media (min-width: 0px) {
  .oceterie-landing .hero-note {
    display: none;
  }
}

/* Větší mezera mezi dvěma řádky nadpisu „V Česku naprosto unikátní“. */
.oceterie-landing .process-inner #process-title {
  line-height: 1.16;
}

/* Produkty zůstávají po jednom. Obrázkový sloupec je užší a všechny
   fotografie se zobrazí celé v původním poměru stran bez ořezu. */
.oceterie-landing .product-grid {
  grid-template-columns: 1fr;
  gap: 26px;
}

.oceterie-landing .product-card,
.oceterie-landing .product-card-set,
.oceterie-landing .product-card-featured {
  grid-template-columns: minmax(280px, 410px) minmax(0, 1fr);
  max-width: 1180px;
  width: 100%;
  margin-inline: auto;
}

.oceterie-landing .product-image,
.oceterie-landing .product-card-set .product-image,
.oceterie-landing .product-card-featured .product-image,
.oceterie-landing .product-card:not(.product-card-featured) .product-image {
  box-sizing: border-box;
  min-height: 0;
  padding: clamp(18px, min(2.2vw, 9.46px), 30px);
  overflow: hidden;
}

.oceterie-landing .product-image img,
.oceterie-landing .product-card:nth-child(1) .product-image img,
.oceterie-landing .product-card:nth-child(2) .product-image img,
.oceterie-landing .product-card:nth-child(3) .product-image img,
.oceterie-landing .product-card:nth-child(4) .product-image img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 460px;
  object-fit: contain;
  object-position: center;
  transform: none !important;
}

.oceterie-landing .product-card:first-child .product-image img {
  max-height: 400px;
}

.oceterie-landing .product-body,
.oceterie-landing .product-card-set .product-body,
.oceterie-landing .product-card-featured .product-body {
  padding: clamp(30px, min(4vw, 17.2px), 56px);
}

@media (min-width: 0px) {
  .oceterie-landing .product-card,
  .oceterie-landing .product-card-set,
  .oceterie-landing .product-card-featured {
    grid-template-columns: 1fr;
    max-width: 680px;
  }

  .oceterie-landing .product-image img,
  .oceterie-landing .product-card:nth-child(1) .product-image img,
  .oceterie-landing .product-card:nth-child(2) .product-image img,
  .oceterie-landing .product-card:nth-child(3) .product-image img,
  .oceterie-landing .product-card:nth-child(4) .product-image img {
    max-height: 520px;
  }

  .oceterie-landing .product-card:first-child .product-image img {
    max-height: 460px;
  }
}

@media (min-width: 0px) {
  .oceterie-landing .product-grid {
    gap: 16px;
  }

  .oceterie-landing .product-image,
  .oceterie-landing .product-card-set .product-image,
  .oceterie-landing .product-card-featured .product-image,
  .oceterie-landing .product-card:not(.product-card-featured) .product-image {
    padding: 14px;
  }

  .oceterie-landing .product-image img,
  .oceterie-landing .product-card:nth-child(1) .product-image img,
  .oceterie-landing .product-card:nth-child(2) .product-image img,
  .oceterie-landing .product-card:nth-child(3) .product-image img,
  .oceterie-landing .product-card:nth-child(4) .product-image img {
    max-height: 390px;
  }

  .oceterie-landing .product-card:first-child .product-image img {
    max-height: 340px;
  }
}

/* ==========================================================
   VERZE 23 - upravený úvod prodejní sekce, posun hero textu,
   štítek mimo fotografii a textová tlačítka Koupit
   ========================================================== */

/* Úvodní text je na desktopu posunut níže, aby nepřekrýval lahvičku
   drženou šéfkuchařem. */
@media (max-width: 0px) {
  .oceterie-landing .hero-content {
    padding-top: clamp(245px, 26vh, 285px);
  }
}

/* Přehledné formátování doprovodného textu prodejní sekce. */
.oceterie-landing .products-heading {
  grid-template-columns: minmax(0, 1.28fr) minmax(330px, .72fr);
  align-items: end;
  column-gap: clamp(48px, min(7vw, 30.1px), 110px);
}

.oceterie-landing .products-heading > .products-intro {
  justify-self: end;
  align-self: end;
  box-sizing: border-box;
  width: 100%;
  max-width: 540px;
  margin: 0 0 7px;
  padding-left: clamp(24px, min(3.3vw, 14.19px), 50px);
  border-left: 1px solid rgba(78, 65, 53, .24);
  color: #5e574f;
  text-align: left;
}

.oceterie-landing .products-intro strong,
.oceterie-landing .products-intro span {
  display: block;
}

.oceterie-landing .products-intro strong {
  color: var(--ink);
  font-size: clamp(1.02rem, min(1.24vw, 5.332px), 1.2rem);
  font-weight: 680;
  line-height: 1.5;
  text-wrap: balance;
}

.oceterie-landing .products-intro span {
  margin-top: 12px;
  font-size: clamp(.94rem, min(1.05vw, 4.515px), 1.04rem);
  line-height: 1.72;
  text-wrap: pretty;
}

/* Štítek akce je v textové části karty, takže nezakrývá fotografii. */
.oceterie-landing .product-body > .product-badge {
  position: static;
  inset: auto;
  align-self: flex-start;
  margin: 0 0 18px;
  padding: 9px 14px;
  border-radius: 999px;
  background: var(--copper);
  color: var(--white);
  box-shadow: none;
  line-height: 1;
}

/* Výrazné a jednoznačné nákupní tlačítko nahrazuje kulatý znak. */
.oceterie-landing .product-buy-button {
  min-width: 118px;
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 25px;
  border: 1px solid var(--copper-dark);
  background: var(--copper);
  color: var(--white);
  font-size: .78rem;
  font-weight: 760;
  letter-spacing: .05em;
  line-height: 1;
  text-decoration: none;
  text-transform: none;
  transition: background .25s ease, border-color .25s ease, transform .25s ease;
}

.oceterie-landing .product-buy-button:hover,
.oceterie-landing .product-buy-button:focus-visible {
  border-color: var(--ink);
  background: var(--ink);
  color: var(--white);
  transform: translateY(-2px);
}

.oceterie-landing .product-bottom {
  align-items: center;
}

@media (min-width: 0px) {
  .oceterie-landing .products-heading {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .oceterie-landing .products-heading > .products-intro {
    justify-self: start;
    max-width: 680px;
    margin: 0;
    padding: 0;
    border-left: 0;
  }
}

@media (min-width: 0px) {
  .oceterie-landing .product-buy-button {
    min-width: 106px;
    min-height: 42px;
    padding-inline: 20px;
    font-size: .68rem;
  }
}

/* ==========================================================
   VERZE 26 - kompatibilita Chrome / Safari / Firefox / Edge
   a stabilní mobilní zobrazení pro iOS a Android
   ========================================================== */

/* Základní normalizace pro známé prohlížeče. */
.oceterie-landing,
.oceterie-landing * {
  box-sizing: border-box;
}

html,
body,
.oceterie-landing {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

.oceterie-landing {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-synthesis: none;
}

.oceterie-landing img {
  max-width: 100%;
  border-style: none;
  -webkit-user-drag: none;
}

.oceterie-landing button,
.oceterie-landing a,
.oceterie-landing summary {
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
}

.oceterie-landing button,
.oceterie-landing input,
.oceterie-landing select,
.oceterie-landing textarea {
  font: inherit;
}

/* Safari vyžaduje prefix pro rozmazané pozadí. */
.oceterie-landing .site-header,
.oceterie-landing .hero-proof,
.oceterie-landing .hero-note,
.oceterie-landing .main-nav.is-open {
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}

.oceterie-landing .hero-note {
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}

@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .oceterie-landing .site-header,
  .oceterie-landing .hero-proof,
  .oceterie-landing .hero-note,
  .oceterie-landing .main-nav.is-open {
    background: rgba(9, 8, 7, .96);
  }
}

/* Bezpečná výška viewportu: fallback pro starší Safari, moderní svh/dvh
   a JS proměnná pro mobilní adresní řádek. */
.oceterie-landing .hero {
  height: 100vh;
  height: calc(var(--oc-vh, 1vh) * 100);
}

@supports (height: 100svh) {
  .oceterie-landing .hero {
    height: 100svh;
  }
}

@supports (height: 100dvh) {
  .oceterie-landing .hero {
    height: 100dvh;
  }
}

/* Ochrana proti výřezům displeje na iPhonu. */
.oceterie-landing .header-inner,
.oceterie-landing .wrap,
.oceterie-landing .footer-top,
.oceterie-landing .footer-bottom {
  padding-left: env(safe-area-inset-left, 0px);
  padding-right: env(safe-area-inset-right, 0px);
}

.oceterie-landing .site-footer {
  padding-bottom: env(safe-area-inset-bottom, 0px);
}

/* Safari: stabilní vykreslení velkého hero obrázku a fixed headeru. */
.oc-browser-webkit .oceterie-landing .hero-media,
.oc-browser-webkit .oceterie-landing .hero-media img,
.oc-browser-webkit .oceterie-landing .site-header {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/* Firefox: čitelnější jemný scrollbar bez zásahu do layoutu. */
.oc-browser-firefox .oceterie-landing {
  scrollbar-width: thin;
  scrollbar-color: rgba(164, 93, 65, .7) transparent;
}

/* Chromium/Edge: zabrání subpixelovému rozmazání při transformacích. */
.oc-browser-chromium .oceterie-landing .product-image img,
.oc-browser-chromium .oceterie-landing .hero-media img {
  image-rendering: auto;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}

/* Vstupní animace nesmí skrýt obsah ve starším prohlížeči. */
@supports not (animation-name: none) {
  .oceterie-landing .reveal,
  .oceterie-landing .hero-content h1,
  .oceterie-landing .hero-content .eyebrow,
  .oceterie-landing .hero-lead,
  .oceterie-landing .hero-actions {
    opacity: 1 !important;
    transform: none !important;
  }
}

/* Tablet a mobil: hero panel není absolutně přichycený k vypočtené výšce.
   Díky tomu se jména kuchařů ani menu nemohou překrýt při změně adresního řádku. */
@media (min-width: 0px) {
  .oceterie-landing .site-header {
    padding-top: env(safe-area-inset-top, 0px);
  }

  .oceterie-landing .header-inner {
    min-height: 70px;
    height: 70px;
  }

  .oceterie-landing .hero {
    display: flex;
    flex-direction: column;
    height: auto !important;
    min-height: 0 !important;
    padding-bottom: 12px;
  }

  .oceterie-landing .hero-content {
    flex: 0 0 auto;
    width: var(--wrap);
    min-height: max(780px, calc(var(--oc-vh, 1vh) * 100));
    height: auto;
    padding-top: clamp(250px, 40vh, 350px);
    padding-bottom: 72px;
  }

  .oceterie-landing .hero-proof {
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    width: var(--wrap);
    margin: 0 auto;
    transform: none;
  }

  .oceterie-landing .main-nav.is-open {
    top: calc(70px + env(safe-area-inset-top, 0px));
    right: 0;
    bottom: 0;
    left: 0;
    inset: calc(70px + env(safe-area-inset-top, 0px)) 0 0;
    min-height: calc(var(--oc-viewport-height, 100vh) - 70px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    padding-bottom: calc(36px + env(safe-area-inset-bottom, 0px));
  }

  .oceterie-landing .menu-toggle,
  .oceterie-landing .main-nav.is-open a,
  .oceterie-landing .button,
  .oceterie-landing .product-buy-button,
  .oceterie-landing .faq-list summary {
    min-height: 44px;
  }

  .oceterie-landing .process-visual,
  .oceterie-landing .customers-image,
  .oceterie-landing .story-image {
    height: auto;
    min-height: 0;
    aspect-ratio: 4 / 5;
  }

  .oceterie-landing .process-visual img,
  .oceterie-landing .customers-image img,
  .oceterie-landing .story-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .oceterie-landing .product-card,
  .oceterie-landing .product-card-set,
  .oceterie-landing .product-card-featured {
    width: 100%;
    max-width: 680px;
    margin-right: auto;
    margin-left: auto;
  }

  .oceterie-landing .product-image,
  .oceterie-landing .product-card-set .product-image,
  .oceterie-landing .product-card-featured .product-image {
    height: auto !important;
  }

  .oceterie-landing .product-image img,
  .oceterie-landing .product-card:nth-child(1) .product-image img,
  .oceterie-landing .product-card:nth-child(2) .product-image img,
  .oceterie-landing .product-card:nth-child(3) .product-image img,
  .oceterie-landing .product-card:nth-child(4) .product-image img {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 500px;
    margin: 0 auto;
    object-fit: contain;
  }
}

@media (min-width: 0px) {
  .oceterie-landing .header-inner {
    min-height: 64px;
    height: 64px;
  }

  .oceterie-landing .brand-word {
    font-size: 1.42rem;
  }

  .oceterie-landing .main-nav.is-open {
    top: calc(64px + env(safe-area-inset-top, 0px));
    inset: calc(64px + env(safe-area-inset-top, 0px)) 0 0;
    min-height: calc(var(--oc-viewport-height, 100vh) - 64px);
    padding: 28px 20px calc(28px + env(safe-area-inset-bottom, 0px));
  }

  .oceterie-landing .hero-content {
    width: calc(min(100vw, 430px) - 30px);
    min-height: max(760px, calc(var(--oc-vh, 1vh) * 100));
    padding-top: clamp(290px, 47vh, 360px);
    padding-bottom: 58px;
  }

  .oceterie-landing .hero-content .eyebrow,
  .oceterie-landing .hero-content h1,
  .oceterie-landing .hero-lead {
    max-width: min(min(82vw, 352.6px), 330px);
  }

  .oceterie-landing .hero-actions {
    width: min(min(82vw, 352.6px), 330px);
  }

  .oceterie-landing .hero-proof {
    width: calc(min(100vw, 430px) - 24px);
  }

  .oceterie-landing .hero-proof-heading,
  .oceterie-landing .hero-chef {
    padding-right: 15px;
    padding-left: 15px;
  }

  .oceterie-landing .hero-chef {
    grid-template-columns: 30px minmax(0, 1fr);
  }

  .oceterie-landing .process-content,
  .oceterie-landing .customers-copy,
  .oceterie-landing .story-copy {
    padding-right: 15px;
    padding-left: 15px;
  }

  .oceterie-landing .products-heading > .products-intro {
    max-width: 100%;
  }

  .oceterie-landing .product-image,
  .oceterie-landing .product-card-set .product-image,
  .oceterie-landing .product-card-featured .product-image {
    padding: 12px;
  }

  .oceterie-landing .product-image img,
  .oceterie-landing .product-card:nth-child(1) .product-image img,
  .oceterie-landing .product-card:nth-child(2) .product-image img,
  .oceterie-landing .product-card:nth-child(3) .product-image img,
  .oceterie-landing .product-card:nth-child(4) .product-image img {
    max-height: 380px;
  }

  .oceterie-landing .product-card:first-child .product-image img {
    max-height: 330px;
  }

  .oceterie-landing .product-bottom {
    gap: 14px;
    flex-wrap: wrap;
  }

  .oceterie-landing .product-buy-button {
    min-width: 112px;
    min-height: 44px;
  }

  .oceterie-landing .faq-list summary {
    padding-right: 4px;
  }
}

/* Mobil na šířku: nezabírat celou obrazovku nadpisem a menu. */
@media (max-width: 900px) and (orientation: landscape) {
  .oceterie-landing .hero-content {
    min-height: 680px;
    padding-top: 180px;
  }

  .oceterie-landing .main-nav.is-open {
    justify-content: flex-start;
    padding-top: 24px;
  }

  .oceterie-landing .main-nav.is-open a {
    font-size: 1.35rem;
  }
}

/* Dotykové zařízení nemá používat efekty závislé na hoveru. */
@media (hover: none), (pointer: coarse) {
  .oceterie-landing .product-image img,
  .oceterie-landing .product-buy-button,
  .oceterie-landing .button,
  .oceterie-landing .round-link {
    transform: none !important;
  }
}

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

/* v26d - druhá fotografie je na mobilu totožná s desktopovou verzí */
@media (min-width: 0px) {
  .oceterie-landing .process-visual img {
    object-position: 50% 50% !important;
  }
}

/* ==========================================================
   VERZE 26f - nová úvodní fotografie + mobilní posun textu pod obličej
   ========================================================== */
@media (min-width: 0px) {
  .hero-media img {
    object-position: 51% 12%;
  }

  .hero-content {
    justify-content: flex-start;
    padding-top: 430px;
    padding-bottom: 445px;
  }

  .hero-content .eyebrow,
  .hero-content h1,
  .hero-lead {
    max-width: min(min(74vw, 318.2px), 335px);
  }

  .hero-actions {
    width: min(min(74vw, 318.2px), 300px);
  }
}

@media (min-width: 0px) {
  .hero {
    min-height: 1240px;
  }

  .hero-media img {
    object-position: 52% 10%;
  }

  .hero-content {
    padding-top: 500px;
    padding-bottom: 470px;
  }

  .hero-content .eyebrow,
  .hero-content h1,
  .hero-lead {
    max-width: min(min(76vw, 326.8px), 300px);
  }

  .hero-actions {
    width: min(min(76vw, 326.8px), 285px);
  }
}

/* ==========================================================
   VERZE 26g - mobilní hero: obličej muže musí být vidět
   ========================================================== */
@media (min-width: 0px) {
  .hero-media img {
    object-position: 50% 0%;
  }

  .hero-content {
    padding-top: 560px;
    padding-bottom: 430px;
  }

  .hero-content .eyebrow,
  .hero-content h1,
  .hero-lead {
    max-width: min(min(72vw, 309.6px), 320px);
  }

  .hero-actions {
    width: min(min(72vw, 309.6px), 290px);
  }
}

@media (min-width: 0px) {
  .hero {
    min-height: 1280px;
  }

  .hero-media img {
    object-position: 50% 0%;
  }

  .hero-content {
    padding-top: 650px;
    padding-bottom: 450px;
  }

  .hero-content .eyebrow,
  .hero-content h1,
  .hero-lead {
    max-width: min(min(74vw, 318.2px), 285px);
  }

  .hero-actions {
    width: min(min(74vw, 318.2px), 270px);
  }
}

/* ==========================================================
   VERZE 26h - desktop: celá úvodní fotografie bez ořezu
   ========================================================== */
@media (max-width: 0px) {
  .oceterie-landing .hero {
    background: #1A100B;
  }

  .oceterie-landing .hero-media {
    background: #1A100B;
  }

  .oceterie-landing .hero-media img {
    object-fit: contain;
    object-position: right center;
    animation: none;
    transform: none;
  }

  .oceterie-landing .hero-shade {
    background:
      linear-gradient(90deg, #1A100B 0%, rgba(26,16,11,.98) 35%, rgba(26,16,11,.70) 58%, rgba(26,16,11,.10) 78%, rgba(26,16,11,0) 100%),
      linear-gradient(0deg, rgba(26,16,11,.48) 0%, rgba(26,16,11,0) 45%);
  }

  .oceterie-landing .hero-content .eyebrow,
  .oceterie-landing .hero-content h1,
  .oceterie-landing .hero-lead {
    max-width: min(min(49vw, 210.7px), 720px);
  }

  .oceterie-landing .hero-actions {
    max-width: min(min(49vw, 210.7px), 720px);
  }
}

/* ==========================================================
   VERZE 26i - úvodní text a šéfkuchaři bez překrývání
   ========================================================== */
@media (max-width: 0px) {
  /* Obsah, výrobní poznámka a seznam kuchařů jsou v přirozeném toku.
     Rozložení proto funguje i v nižším nebo zmenšeném okně. */
  .oceterie-landing .hero {
    display: grid;
    grid-template-rows: minmax(720px, auto) auto auto;
    align-content: start;
    height: auto !important;
    min-height: 1020px;
    padding-bottom: 24px;
    overflow: hidden;
  }

  .oceterie-landing .hero-content {
    grid-row: 1;
    width: var(--wrap);
    height: auto;
    min-height: 720px;
    justify-content: center;
    padding-top: 130px;
    padding-bottom: 72px;
  }

  .oceterie-landing .hero-content h1 {
    max-width: min(min(48vw, 206.4px), 720px);
    font-size: clamp(3.15rem, min(5.35vw, 23.005px), 6.2rem);
    line-height: .99;
    text-wrap: balance;
  }

  .oceterie-landing .hero-lead {
    max-width: min(min(44vw, 189.2px), 590px);
    margin-top: 24px;
    font-size: clamp(.98rem, min(1.12vw, 4.816px), 1.16rem);
    line-height: 1.62;
    text-wrap: pretty;
  }

  .oceterie-landing .hero-actions {
    margin-top: 28px;
  }

  .oceterie-landing .hero-note {
    grid-row: 2;
    position: relative;
    right: auto;
    bottom: auto;
    width: var(--wrap);
    margin: 0 auto 16px;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    color: rgba(255,253,249,.78);
    writing-mode: horizontal-tb;
    transform: none;
  }

  .oceterie-landing .hero-note::before {
    content: "";
    width: 34px;
    height: 1px;
    flex: 0 0 auto;
    background: rgba(217,176,111,.72);
  }

  .oceterie-landing .hero-proof {
    grid-row: 3;
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    width: var(--wrap);
    min-height: 0;
    margin: 0 auto;
    transform: none;
    grid-template-columns: minmax(190px, 230px) minmax(0, 1fr);
    border-radius: 22px;
    overflow: hidden;
  }

  .oceterie-landing .hero-proof-heading {
    padding: 24px 25px;
  }

  .oceterie-landing .hero-proof-heading p {
    font-size: .78rem;
    line-height: 1.55;
  }

  .oceterie-landing .hero-chefs {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .oceterie-landing .hero-chef {
    min-width: 0;
    min-height: 154px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 8px;
    padding: 20px clamp(14px, min(1.55vw, 6.665px), 24px);
  }

  .oceterie-landing .hero-chef .stars {
    grid-row: auto;
    align-self: flex-start;
    padding-top: 0;
    font-size: .72rem;
    line-height: 1;
  }

  .oceterie-landing .hero-chef > div {
    width: 100%;
  }

  .oceterie-landing .hero-chef strong {
    display: block;
    font-size: clamp(.95rem, min(1.08vw, 4.644px), 1.14rem);
    line-height: 1.24;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .oceterie-landing .hero-chef small {
    display: block;
    margin-top: 5px;
    font-size: max(.68rem, 11px);
    line-height: 1.35;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .oceterie-landing .hero-chef-award {
    align-self: flex-start;
    margin-top: auto;
    font-size: max(.62rem, 10px);
    line-height: 1.4;
    letter-spacing: .075em;
    white-space: normal;
    overflow-wrap: anywhere;
  }
}

/* Menší desktop a tablet na šířku: nadpis tabulky nahoře a kuchaři 2 × 2. */
@media (max-width: 0px) and (min-width: 0px) {
  .oceterie-landing .hero {
    grid-template-rows: minmax(720px, auto) auto auto;
    min-height: 1160px;
  }

  .oceterie-landing .hero-content {
    min-height: 720px;
    padding-top: 135px;
    padding-bottom: 64px;
  }

  .oceterie-landing .hero-content h1 {
    max-width: min(min(54vw, 232.2px), 610px);
    font-size: clamp(3rem, min(6.1vw, 26.23px), 4.9rem);
  }

  .oceterie-landing .hero-lead {
    max-width: min(min(50vw, 215px), 530px);
  }

  .oceterie-landing .hero-proof {
    grid-template-columns: 1fr;
  }

  .oceterie-landing .hero-proof-heading {
    border-right: 0;
    border-bottom: 1px solid rgba(255,253,249,.16);
  }

  .oceterie-landing .hero-proof-heading p {
    max-width: 650px;
  }

  .oceterie-landing .hero-chefs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .oceterie-landing .hero-chef {
    min-height: 122px;
    padding: 18px 22px;
  }

  .oceterie-landing .hero-chef:nth-child(2) {
    border-right: 0;
  }

  .oceterie-landing .hero-chef:nth-child(-n + 2) {
    border-bottom: 1px solid rgba(255,253,249,.13);
  }
}

/* Mobilní tabulka: jasný odstup od textu a čitelné řádky. */
@media (min-width: 0px) {
  .oceterie-landing .hero-proof {
    margin-top: 18px;
    border-radius: 18px;
    overflow: hidden;
  }

  .oceterie-landing .hero-chef {
    row-gap: 4px;
  }

  .oceterie-landing .hero-chef strong,
  .oceterie-landing .hero-chef small,
  .oceterie-landing .hero-chef-award {
    white-space: normal;
    overflow-wrap: anywhere;
  }
}

/* ==========================================================
   VERZE 26j - bez kruhových znaků mimo FAQ + jednoduchý údaj o výrobě
   ========================================================== */
/* Všechny kruhové znaky se symbolem + jsou odstraněné.
   FAQ používá vlastní span v summary a zůstává beze změny. */
.oceterie-landing .icon-arrow,
.oceterie-landing .round-link {
  display: none !important;
}

.oceterie-landing .text-link,
.oceterie-landing .footer-column a,
.oceterie-landing .footer-bottom a {
  gap: 0;
}

/* Jednoduchý, jednořádkový údaj bez ozdobné čáry a bez dělení textu. */
.oceterie-landing .hero-note {
  display: block;
  color: rgba(255,253,249,.76);
  font-size: clamp(.72rem, min(.86vw, 3.698px), .82rem);
  font-weight: 650;
  letter-spacing: .08em;
  line-height: 1.4;
  text-transform: uppercase;
  white-space: nowrap;
}

.oceterie-landing .hero-note::before,
.oceterie-landing .hero-note::after {
  content: none !important;
  display: none !important;
}

.oceterie-landing .hero-note span,
.oceterie-landing .hero-note-label {
  display: inline;
  color: inherit;
}

@media (min-width: 0px) and (max-width: 0px) {
  .oceterie-landing .hero-note {
    white-space: normal;
  }
}

/* ==========================================================
   VERZE 26k - bez rámečku u textu „Vyrábíme v Česku od roku 2011“
   ========================================================== */
.oceterie-landing .hero-note {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

/* ==========================================================
   VERZE 26l - mobilní ukotvení textu „Vyrábíme v Česku od roku 2011"
   ========================================================== */
@media (min-width: 0px) {
  .oceterie-landing .hero {
    min-height: auto !important;
  }

  .oceterie-landing .hero-content {
    padding-bottom: 28px !important;
  }

  .oceterie-landing .hero-note {
    display: block !important;
    position: relative !important;
    z-index: 4;
    right: auto !important;
    left: auto !important;
    bottom: auto !important;
    width: var(--wrap);
    margin: 0 auto 14px !important;
    text-align: left;
    white-space: normal;
  }

  .oceterie-landing .hero-proof {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
    width: var(--wrap);
    margin: 0 auto 16px !important;
  }
}

@media (min-width: 0px) {
  .oceterie-landing .hero-content {
    padding-bottom: 24px !important;
  }

  .oceterie-landing .hero-note {
    margin-bottom: 12px !important;
    font-size: 12px;
    letter-spacing: .07em;
    line-height: 1.35;
  }

  .oceterie-landing .hero-proof {
    margin-bottom: 14px !important;
  }
}

/* ==========================================================
   VERZE 26m - oprava spodní lišty v zápatí
   ========================================================== */
.oceterie-landing .site-footer {
  background: #1A100B !important;
}

.oceterie-landing .footer-bottom {
  background: #1A100B !important;
  color: rgba(255,253,249,.62) !important;
  border-top: 1px solid rgba(255,253,249,.14) !important;
}

.oceterie-landing .footer-bottom a,
.oceterie-landing .footer-bottom span {
  color: rgba(255,253,249,.72) !important;
}

/* === V27: prodejní landing page a košík Shoptetu === */
.oceterie-landing .header-cart {
  display: inline-flex;
  min-width: 178px;
  height: 44px;
  padding: 0 16px;
  border: 1px solid rgba(255,255,255,.38);
  border-radius: 999px;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  color: #fff;
  background: rgba(26,16,11,.54);
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  backdrop-filter: blur(10px);
  transition: border-color .2s ease, background .2s ease;
}
.oceterie-landing .header-cart-total {
  white-space: nowrap;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .02em;
  text-transform: none;
}
.oceterie-landing .header-cart:hover,
.oceterie-landing .header-cart:focus-visible { border-color: var(--orange); background: rgba(26,16,11,.82); }
.oceterie-landing .header-cart strong {
  display: grid;
  min-width: 24px;
  height: 24px;
  padding: 0 5px;
  border-radius: 999px;
  place-items: center;
  background: var(--orange);
  color: #fff;
  font-size: .66rem;
}
.oceterie-landing .product-buy-button {
  appearance: none;
  -webkit-appearance: none;
  font-family: inherit;
  cursor: pointer;
}
.oceterie-landing .product-buy-button:disabled { cursor: wait; opacity: .65; }
.oceterie-landing .product-image { cursor: default; }
.oceterie-landing .product-image:hover img { transform: none; }

/* ==========================================================
   VERZE 92 - PRODUKTOVÝ DETAIL CITROCET
   ========================================================== */
.oceterie-citrocet {
  --citrocet-gold: #e7ad12;
  --citrocet-ink: #030909;
  --citrocet-paper: #f1eadf;
  --citrocet-line: rgba(231, 173, 18, .6);
  background: var(--citrocet-ink);
  color: #f8f3e9;
}

.oceterie-citrocet main { overflow: hidden; }
.oceterie-citrocet .site-header { background: rgba(3, 9, 9, .9); }
.oceterie-citrocet .main-nav a { color: #fff; }
.oceterie-citrocet .main-nav-label,
.oceterie-citrocet .citrocet-brandline,
.oceterie-citrocet .citrocet-section-number,
.oceterie-citrocet .citrocet-process-list > li > span,
.oceterie-citrocet .citrocet-process-list > li > div > p:first-child {
  color: var(--citrocet-gold);
}

.oceterie-citrocet .citrocet-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.03fr) minmax(360px, .97fr);
  min-height: 100svh;
  padding-top: 88px;
  background: var(--citrocet-ink);
}

.oceterie-citrocet .citrocet-hero-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(70px, min(9vw, 38.7px), 140px) clamp(28px, min(6vw, 25.8px), 96px);
}

.oceterie-citrocet .citrocet-brandline,
.oceterie-citrocet .citrocet-section-number {
  margin: 0 0 26px;
  font-size: .76rem;
  font-weight: 850;
  letter-spacing: .17em;
  line-height: 1.3;
  text-transform: uppercase;
}

.oceterie-citrocet .citrocet-hero h1 {
  max-width: 780px;
  margin: 0;
  color: #f7f2e9;
  font-size: clamp(4.4rem, min(8.3vw, 35.69px), 9.3rem);
  font-weight: 860;
  letter-spacing: -.07em;
  line-height: .78;
  text-transform: uppercase;
}

.oceterie-citrocet .citrocet-hero h1 span {
  display: block;
  margin-bottom: .16em;
}

.oceterie-citrocet .citrocet-hero h1 span::after {
  content: "";
  display: block;
  width: 72px;
  height: 3px;
  margin-top: 30px;
  background: var(--citrocet-gold);
}

.oceterie-citrocet .citrocet-hero-lead {
  max-width: 690px;
  margin: 36px 0 0;
  color: rgba(248, 243, 233, .82);
  font-size: clamp(1.02rem, min(1.35vw, 5.805px), 1.3rem);
  line-height: 1.75;
}

.oceterie-citrocet .citrocet-hero-media {
  position: relative;
  display: grid;
  min-height: 780px;
  padding: clamp(24px, min(4vw, 17.2px), 64px);
  overflow: hidden;
  background: var(--citrocet-gold);
  place-items: center;
}

.oceterie-citrocet .citrocet-hero-media::before {
  content: "";
  position: absolute;
  inset: 22px;
  border: 1px solid rgba(3, 9, 9, .34);
  pointer-events: none;
}

.oceterie-citrocet .citrocet-hero-media img {
  position: relative;
  z-index: 1;
  display: block;
  width: min(86%, 720px);
  height: auto;
  max-height: 74vh;
  object-fit: contain;
  filter: drop-shadow(0 28px 35px rgba(3, 9, 9, .28));
}

.oceterie-citrocet .citrocet-hero-media > p {
  position: absolute;
  right: 38px;
  bottom: 34px;
  left: 38px;
  z-index: 2;
  margin: 0;
  color: #090b08;
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .13em;
  text-align: center;
  text-transform: uppercase;
}

.oceterie-citrocet .citrocet-buy {
  display: grid;
  grid-template-columns: auto minmax(120px, 1fr) auto;
  align-items: center;
  gap: 22px;
  max-width: 760px;
  margin-top: 46px;
  padding-top: 28px;
  border-top: 1px solid var(--citrocet-line);
}

.oceterie-citrocet .citrocet-buy-price { display: flex; flex-direction: column; gap: 3px; }
.oceterie-citrocet .citrocet-buy-price strong { color: #fff; font-size: 1.75rem; line-height: 1; }
.oceterie-citrocet .citrocet-buy-price span { color: rgba(255,255,255,.58); font-size: .68rem; }
.oceterie-citrocet .citrocet-buy .product-stock { margin: 0; }
.oceterie-citrocet .citrocet-buy .product-buy-button {
  min-width: 190px;
  min-height: 54px;
  border-color: var(--citrocet-gold);
  background: var(--citrocet-gold);
  color: #080b09;
}

.oceterie-citrocet .citrocet-intro {
  padding: clamp(100px, min(12vw, 51.6px), 180px) 0;
  background: var(--citrocet-paper);
  color: #171410;
}

.oceterie-citrocet .citrocet-intro-grid {
  display: grid;
  grid-template-columns: minmax(150px, .35fr) minmax(0, 1fr);
  gap: clamp(34px, min(7vw, 30.1px), 120px);
  align-items: start;
}

.oceterie-citrocet .citrocet-intro h2,
.oceterie-citrocet .citrocet-section-heading h2,
.oceterie-citrocet .citrocet-story h2,
.oceterie-citrocet .citrocet-specs h2,
.oceterie-citrocet .citrocet-original h2 {
  margin: 0;
  font-size: clamp(3.5rem, min(7vw, 30.1px), 8.2rem);
  font-weight: 820;
  letter-spacing: -.06em;
  line-height: .88;
  text-transform: uppercase;
}

.oceterie-citrocet .citrocet-intro-grid > div > p:not(.citrocet-accent-copy) {
  max-width: 720px;
  margin: 44px 0 0;
  color: #514a42;
  font-size: clamp(1.12rem, min(1.7vw, 7.31px), 1.48rem);
  line-height: 1.7;
}

.oceterie-citrocet .citrocet-accent-copy {
  margin: 34px 0 0;
  color: #9f7200;
  font-size: clamp(1.35rem, min(2.3vw, 9.89px), 2.3rem);
  font-weight: 850;
  letter-spacing: .03em;
  text-transform: uppercase;
}

.oceterie-citrocet .citrocet-process {
  padding: clamp(96px, min(11vw, 47.3px), 170px) 0;
  background: #030909;
}

.oceterie-citrocet .citrocet-section-heading {
  display: grid;
  grid-template-columns: minmax(150px, .35fr) minmax(0, 1fr);
  gap: clamp(34px, min(7vw, 30.1px), 120px);
  align-items: start;
}

.oceterie-citrocet .citrocet-process-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: clamp(70px, min(8vw, 34.4px), 120px) 0 0;
  padding: 0;
  border: 1px solid var(--citrocet-line);
  list-style: none;
}

.oceterie-citrocet .citrocet-process-list li {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 22px;
  min-height: 360px;
  padding: clamp(28px, min(3.3vw, 14.19px), 52px);
  border-right: 1px solid var(--citrocet-line);
}

.oceterie-citrocet .citrocet-process-list li:last-child { border-right: 0; }
.oceterie-citrocet .citrocet-process-list > li > span { font-size: clamp(3.5rem, min(5vw, 21.5px), 6.3rem); font-weight: 850; letter-spacing: -.07em; line-height: .8; }
.oceterie-citrocet .citrocet-process-list > li > div > p:first-child { margin: 0 0 28px; font-size: .7rem; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.oceterie-citrocet .citrocet-process-list h3 { margin: 0 0 18px; color: #fff; font-size: clamp(1.35rem, min(2vw, 8.6px), 2.1rem); line-height: 1.05; }
.oceterie-citrocet .citrocet-process-list li div p:last-child { margin: 0; color: rgba(255,255,255,.68); font-size: .92rem; line-height: 1.7; }

.oceterie-citrocet .citrocet-story {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 760px;
  background: #0a0d0c;
}

.oceterie-citrocet .citrocet-story-air { background: #111611; }
.oceterie-citrocet .citrocet-story-media { position: relative; min-height: 620px; overflow: hidden; background: #111; }
.oceterie-citrocet .citrocet-story-media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.oceterie-citrocet .citrocet-story-wild .citrocet-story-media img { object-position: 48% center; }
.oceterie-citrocet .citrocet-story-air .citrocet-story-media img { width: 170%; max-width: none; object-position: 9% 75%; }
.oceterie-citrocet .citrocet-story-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(64px, min(8vw, 34.4px), 130px); }
.oceterie-citrocet .citrocet-story-copy h2 { color: #f8f3e9; font-size: clamp(3.4rem, min(6.2vw, 26.66px), 7.2rem); }
.oceterie-citrocet .citrocet-story-copy > p:not(.citrocet-section-number) { max-width: 620px; margin: 30px 0 0; color: rgba(255,255,255,.72); font-size: clamp(1rem, min(1.45vw, 6.235px), 1.24rem); line-height: 1.75; }
.oceterie-citrocet .citrocet-story-copy > p:not(.citrocet-section-number)::before { content: ""; display: block; width: 48px; height: 2px; margin-bottom: 22px; background: var(--citrocet-gold); }

.oceterie-citrocet .citrocet-beliefs { display: grid; grid-template-columns: 1fr 1fr; background: var(--citrocet-gold); color: #080b09; }
.oceterie-citrocet .citrocet-beliefs article { position: relative; min-height: 560px; padding: clamp(64px, min(8vw, 34.4px), 126px); border-right: 1px solid rgba(3,9,9,.32); }
.oceterie-citrocet .citrocet-beliefs article:last-child { border-right: 0; }
.oceterie-citrocet .citrocet-beliefs article > span { display: block; height: 42px; font-family: Georgia,serif; font-size: 6rem; line-height: .75; }
.oceterie-citrocet .citrocet-beliefs h2 { max-width: 650px; margin: 28px 0 0; font-size: clamp(3rem, min(5vw, 21.5px), 6rem); font-weight: 840; letter-spacing: -.055em; line-height: .9; text-transform: uppercase; }
.oceterie-citrocet .citrocet-beliefs p:not(.citrocet-bottle-mark) { max-width: 590px; margin: 32px 0 0; font-size: clamp(1rem, min(1.35vw, 5.805px), 1.2rem); line-height: 1.75; }
.oceterie-citrocet .citrocet-bottle-mark { margin: 0; color: #080b09; font-family: var(--font-display); font-size: 4.7rem; font-weight: 800; line-height: .8; letter-spacing: -.06em; }

.oceterie-citrocet .citrocet-specs { padding: clamp(100px, min(12vw, 51.6px), 180px) 0; background: var(--citrocet-paper); color: #171410; }
.oceterie-citrocet .citrocet-specs-grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(420px, .72fr); gap: clamp(50px, min(8vw, 34.4px), 130px); align-items: start; }
.oceterie-citrocet .citrocet-specs-grid > div:first-child > p:last-child { max-width: 650px; margin: 38px 0 0; color: #574f47; font-size: 1.08rem; line-height: 1.75; }
.oceterie-citrocet .citrocet-spec-card { padding: clamp(30px, min(4vw, 17.2px), 54px); border: 1px solid rgba(23,20,16,.2); background: rgba(255,255,255,.42); }
.oceterie-citrocet .citrocet-spec-card dl { margin: 0; }
.oceterie-citrocet .citrocet-spec-card dl > div,
.oceterie-citrocet .citrocet-spec-card > p { display: grid; grid-template-columns: 130px 1fr; gap: 22px; padding: 14px 0; border-bottom: 1px solid rgba(23,20,16,.13); }
.oceterie-citrocet .citrocet-spec-card dt,
.oceterie-citrocet .citrocet-spec-card > p strong { color: #766d63; font-size: .68rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.oceterie-citrocet .citrocet-spec-card dd,
.oceterie-citrocet .citrocet-spec-card > p span { margin: 0; font-size: .88rem; line-height: 1.5; }
.oceterie-citrocet .citrocet-spec-buy { display: flex; align-items: center; justify-content: space-between; gap: 22px; margin-top: 30px; }
.oceterie-citrocet .citrocet-spec-buy > div { display: flex; flex-direction: column; gap: 4px; }
.oceterie-citrocet .citrocet-spec-buy strong { font-size: 1.8rem; }
.oceterie-citrocet .citrocet-spec-buy span { color: #71685f; font-size: .7rem; }
.oceterie-citrocet .citrocet-back-buy { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; padding: 0 24px; background: #080b09; color: #fff; font-size: .72rem; font-weight: 850; letter-spacing: .1em; text-decoration: none; text-transform: uppercase; }

.oceterie-citrocet .citrocet-original { padding: clamp(90px, min(10vw, 43px), 150px) 0; background: #030909; }
.oceterie-citrocet .citrocet-original .citrocet-section-heading { margin-bottom: 70px; }
.oceterie-citrocet .citrocet-original figure { max-width: 866px; margin: 0 auto; }
.oceterie-citrocet .citrocet-original figure img { display: block; width: 100%; height: auto; border: 1px solid var(--citrocet-line); }
.oceterie-citrocet .citrocet-original figcaption { margin-top: 18px; color: rgba(255,255,255,.58); font-size: .76rem; line-height: 1.5; text-align: center; }

@media (min-width: 0px) {
  .oceterie-citrocet .citrocet-hero { grid-template-columns: 1fr; padding-top: 76px; }
  .oceterie-citrocet .citrocet-hero-media { min-height: 620px; }
  .oceterie-citrocet .citrocet-buy { grid-template-columns: auto 1fr; }
  .oceterie-citrocet .citrocet-buy .product-buy-button { grid-column: 1 / -1; width: 100%; }
  .oceterie-citrocet .citrocet-process-list { grid-template-columns: 1fr; }
  .oceterie-citrocet .citrocet-process-list li { min-height: 260px; border-right: 0; border-bottom: 1px solid var(--citrocet-line); }
  .oceterie-citrocet .citrocet-process-list li:last-child { border-bottom: 0; }
  .oceterie-citrocet .citrocet-story { grid-template-columns: 1fr; }
  .oceterie-citrocet .citrocet-story-air .citrocet-story-copy { order: 2; }
  .oceterie-citrocet .citrocet-story-air .citrocet-story-media { order: 1; }
  .oceterie-citrocet .citrocet-beliefs { grid-template-columns: 1fr; }
  .oceterie-citrocet .citrocet-beliefs article { min-height: 0; border-right: 0; border-bottom: 1px solid rgba(3,9,9,.32); }
  .oceterie-citrocet .citrocet-specs-grid { grid-template-columns: 1fr; }
}

@media (min-width: 0px) {
  .oceterie-citrocet .citrocet-hero-copy { padding: 64px 20px 54px; }
  .oceterie-citrocet .citrocet-hero h1 { font-size: clamp(3.55rem, min(17vw, 73.1px), 5.4rem); line-height: .82; }
  .oceterie-citrocet .citrocet-hero-media { min-height: 480px; padding: 34px 18px 64px; }
  .oceterie-citrocet .citrocet-hero-media::before { inset: 12px; }
  .oceterie-citrocet .citrocet-hero-media img { width: 96%; max-height: 420px; }
  .oceterie-citrocet .citrocet-hero-media > p { right: 24px; bottom: 22px; left: 24px; }
  .oceterie-citrocet .citrocet-buy { grid-template-columns: 1fr; gap: 15px; }
  .oceterie-citrocet .citrocet-intro-grid,
  .oceterie-citrocet .citrocet-section-heading { grid-template-columns: 1fr; gap: 12px; }
  .oceterie-citrocet .citrocet-intro h2,
  .oceterie-citrocet .citrocet-section-heading h2,
  .oceterie-citrocet .citrocet-story h2,
  .oceterie-citrocet .citrocet-specs h2,
  .oceterie-citrocet .citrocet-original h2 { font-size: clamp(3rem, min(15vw, 64.5px), 5rem); }
  .oceterie-citrocet .citrocet-process-list li { grid-template-columns: 1fr; gap: 30px; }
  .oceterie-citrocet .citrocet-story-media { min-height: 430px; }
  .oceterie-citrocet .citrocet-story-copy,
  .oceterie-citrocet .citrocet-beliefs article { padding: 68px 20px; }
  .oceterie-citrocet .citrocet-spec-card { padding: 26px 20px; }
  .oceterie-citrocet .citrocet-spec-card dl > div,
  .oceterie-citrocet .citrocet-spec-card > p { grid-template-columns: 1fr; gap: 5px; }
  .oceterie-citrocet .citrocet-spec-buy { align-items: stretch; flex-direction: column; }
  .oceterie-citrocet .citrocet-back-buy { width: 100%; }
  .oceterie-citrocet .citrocet-original .citrocet-section-heading { margin-bottom: 42px; }
}
.oceterie-landing .product-buy-button[data-cart-next="true"] {
  background: #1A100B;
  color: #fffdf9;
}
.oceterie-landing .cart-toast {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 10020;
  max-width: min(360px, calc(min(100vw, 430px) - 32px));
  padding: 16px 20px;
  border: 1px solid rgba(255,255,255,.18);
  background: #1A100B;
  color: #fff;
  box-shadow: 0 18px 50px rgba(26,16,11,.28);
  font-size: .82rem;
  font-weight: 700;
  opacity: 0;
  transform: translateY(18px);
  pointer-events: none;
  transition: opacity .25s ease, transform .25s ease;
}
.oceterie-landing .cart-toast.is-visible { opacity: 1; transform: translateY(0); }
@media (min-width: 0px) {
  .oceterie-landing .header-inner {
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 12px;
  }
  .oceterie-landing .header-cart {
    grid-column: 2;
    grid-row: 1;
    justify-self: end;
    margin: 0 !important;
  }
  .oceterie-landing .menu-toggle {
    grid-column: 3;
    grid-row: 1;
    margin: 0;
  }
}
@media (min-width: 0px) {
  .oceterie-landing .header-inner { gap: 8px; }
  .oceterie-landing .header-cart { min-width: 126px; height: 38px; margin: 0 !important; padding: 0 10px; gap: 7px; }
  .oceterie-landing .header-cart-label { display: none; }
  .oceterie-landing .header-cart-total { font-size: .68rem; }
  .oceterie-landing .header-cart strong { min-width: 21px; height: 21px; }
  .oceterie-landing .cart-toast { right: 16px; bottom: 16px; left: 16px; max-width: none; }
  .oceterie-landing .product-buy-button { min-height: 48px; }
}

/* Prodejní část musí zůstat viditelná i při zablokovaném nebo opožděném JavaScriptu. */
.oceterie-landing .products-heading.reveal,
.oceterie-landing .product-grid.reveal,
.oceterie-landing .all-products.reveal {
  opacity: 1 !important;
  transform: none !important;
}

/* === V27: výrazná chuťová teze === */
.oceterie-landing .taste-statement {
  position: relative;
  overflow: hidden;
  padding: clamp(96px, min(11vw, 47.3px), 180px) 0 clamp(88px, min(9vw, 38.7px), 150px);
  background-color: #e45c43 !important;
  background-image: none !important;
  color: #1A100B !important;
}
.oceterie-landing .taste-statement-inner { position: relative; }
.oceterie-landing .taste-kicker {
  margin: 0 0 clamp(24px, min(3vw, 12.9px), 44px);
  font-size: clamp(.72rem, min(1vw, 4.3px), .92rem);
  font-weight: 850;
  letter-spacing: .17em;
  line-height: 1.2;
  text-transform: uppercase;
  color: #1A100B !important;
}
.oceterie-landing .taste-statement h2 {
  max-width: 1260px;
  margin: 0;
  color: #1A100B !important;
  font-size: clamp(3.4rem, min(8.2vw, 35.26px), 9rem);
  font-weight: 420;
  letter-spacing: -.06em;
  line-height: .94;
}
.oceterie-landing .taste-statement blockquote {
  max-width: 660px;
  margin: clamp(54px, min(7vw, 30.1px), 100px) 0 0 auto;
  padding-top: 24px;
  border-top: 1px solid rgba(23,9,7,.42);
  color: #1A100B !important;
  font-size: clamp(1.15rem, min(2vw, 8.6px), 2rem);
  font-weight: 620;
  letter-spacing: -.025em;
  line-height: 1.35;
}
@media (min-width: 0px) {
  .oceterie-landing .taste-statement { padding: 80px 0 72px; }
  .oceterie-landing .taste-statement h2 { font-size: clamp(3.2rem, min(15vw, 64.5px), 5.5rem); line-height: .96; }
  .oceterie-landing .taste-statement h2 br { display: none; }
  .oceterie-landing .taste-statement blockquote { margin-top: 52px; font-size: 1.12rem; }
}

/* === V27: prodejní argumenty u produktů === */
.oceterie-landing .product-body { min-height: 500px; }
.oceterie-landing .product-description { margin-bottom: 18px; }
.oceterie-landing .product-highlights {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 20px 22px 16px;
  border: 0;
  background: var(--orange);
  list-style: none;
}
.oceterie-landing .product-highlights li {
  position: relative;
  margin: 0;
  padding-left: 17px;
  color: #1A100B;
  font-size: .76rem;
  line-height: 1.45;
}
.oceterie-landing .product-highlights li::before {
  content: "";
  position: absolute;
  top: .58em;
  left: 0;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #1A100B;
}
.oceterie-landing .product-use {
  margin: 0 0 24px;
  padding: 14px 22px 20px;
  border-top: 1px solid rgba(25,12,8,.2);
  background: var(--orange);
  color: #29130d;
  font-size: .75rem;
  line-height: 1.55;
}
.oceterie-landing .product-use strong { color: #1A100B; }
.oceterie-landing .product-specs {
  margin: 0 0 26px;
  padding: 22px;
  border: 1px solid rgba(33,28,24,.14);
  background: rgba(255,255,255,.3);
}
.oceterie-landing .product-specs h4 {
  margin: 0 0 16px;
  color: #1A100B;
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: .08em;
  line-height: 1.3;
  text-transform: uppercase;
}
.oceterie-landing .product-specs dl { margin: 0; }
.oceterie-landing .product-specs dl > div {
  display: grid;
  grid-template-columns: minmax(92px, .75fr) minmax(0, 1.6fr);
  gap: 12px;
  padding: 9px 0;
  border-top: 1px solid rgba(33,28,24,.12);
}
.oceterie-landing .product-specs dt,
.oceterie-landing .product-maker strong {
  color: #665d54;
  font-size: .67rem;
  font-weight: 800;
  letter-spacing: .06em;
  line-height: 1.45;
  text-transform: uppercase;
}
.oceterie-landing .product-specs dd,
.oceterie-landing .product-maker span,
.oceterie-landing .product-spec-note {
  margin: 0;
  color: #2b2520;
  font-size: .74rem;
  line-height: 1.5;
}
.oceterie-landing .product-spec-note {
  padding: 12px 0 0;
  border-top: 1px solid rgba(33,28,24,.12);
  font-weight: 700;
}
.oceterie-landing .product-maker {
  display: grid;
  grid-template-columns: minmax(92px, .75fr) minmax(0, 1.6fr);
  gap: 12px;
  margin: 14px 0 0;
  padding-top: 14px;
  border-top: 1px solid rgba(33,28,24,.28);
}
@media (min-width: 0px) {
  .oceterie-landing .product-body,
  .oceterie-landing .product-card-set .product-body,
  .oceterie-landing .product-card-featured .product-body { min-height: 520px; }
}
@media (min-width: 0px) {
  .oceterie-landing .product-card,
  .oceterie-landing .product-card-set,
  .oceterie-landing .product-card-featured { display: flex; min-height: 0; }
  .oceterie-landing .product-image,
  .oceterie-landing .product-card-set .product-image,
  .oceterie-landing .product-card-featured .product-image,
  .oceterie-landing .product-card:not(.product-card-featured) .product-image {
    width: 100%;
    height: min(min(112vw, 481.6px), 480px);
    min-height: 0;
  }
  .oceterie-landing .product-body,
  .oceterie-landing .product-card-set .product-body,
  .oceterie-landing .product-card-featured .product-body {
    min-height: 0;
    padding: 24px 20px;
  }
  .oceterie-landing .product-highlights li,
  .oceterie-landing .product-use { font-size: .8rem; }
  .oceterie-landing .product-specs { padding: 18px; }
  .oceterie-landing .product-specs dd,
  .oceterie-landing .product-maker span,
  .oceterie-landing .product-spec-note { font-size: .8rem; }
}

/* === V27: celoplošné rozbalovací menu === */
@media (min-width: 0px) {
  .oceterie-landing .main-nav.is-open {
    inset: 82px 0 0 !important;
    width: min(100vw, 430px);
    min-height: calc(var(--oc-viewport-height, 100vh) - 82px);
    padding: 42px 28px calc(42px + env(safe-area-inset-bottom, 0px));
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 28px;
    overflow-y: auto;
    overscroll-behavior: contain;
    background: #1A100B !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }
  .oceterie-landing .main-nav.is-open a {
    width: auto;
    min-height: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: #fffdf9 !important;
    font-size: clamp(1.5rem, min(5vw, 21.5px), 3rem);
    font-weight: 650;
    letter-spacing: 0;
    line-height: 1.16;
    text-transform: none;
  }
}
@media (min-width: 0px) {
  .oceterie-landing .main-nav.is-open {
    inset: 70px 0 0 !important;
    min-height: calc(var(--oc-viewport-height, 100vh) - 70px);
  }
}
@media (min-width: 0px) {
  .oceterie-landing .main-nav.is-open {
    inset: 64px 0 0 !important;
    min-height: calc(var(--oc-viewport-height, 100vh) - 64px);
    padding: 32px 20px calc(32px + env(safe-area-inset-bottom, 0px));
  }
  .oceterie-landing .main-nav.is-open a {
    font-size: clamp(1.5rem, min(8vw, 34.4px), 2.4rem);
  }
}

/* === V81: výrazné jednoklikové nákupní tlačítko === */
.oceterie-landing .product-buy-button,
.oceterie-landing .product-buy-button:hover,
.oceterie-landing .product-buy-button:focus,
.oceterie-landing .product-buy-button:focus-visible,
.oceterie-landing .product-buy-button:active {
  border-color: #e85d45 !important;
  background: #e85d45 !important;
  color: #fff !important;
}
.oceterie-landing .product-buy-button:hover,
.oceterie-landing .product-buy-button:focus-visible {
  border-color: #c94735 !important;
  background: #c94735 !important;
}
.oceterie-landing .product-buy-button[data-cart-next="true"],
.oceterie-landing .product-buy-button[data-cart-next="true"]:hover,
.oceterie-landing .product-buy-button[data-cart-next="true"]:focus-visible {
  border-color: rgba(26,16,11,.42) !important;
  background: transparent !important;
  color: #1A100B !important;
}

/* === V28: luxusní prodejní galerie === */
.oceterie-landing .products-section {
  padding: clamp(96px, min(10vw, 43px), 158px) 0;
  background: #eee8de;
}
.oceterie-landing .products-heading {
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
  gap: clamp(42px, min(7vw, 30.1px), 110px);
  align-items: end;
}
.oceterie-landing .products-heading h2 {
  max-width: 900px;
  font-size: clamp(3rem, min(5.8vw, 24.94px), 6.8rem);
  line-height: .96;
}
.oceterie-landing .products-intro {
  display: grid;
  gap: 14px;
  padding-top: 24px;
  border-top: 1px solid rgba(31, 26, 22, .24);
}
.oceterie-landing .products-intro strong {
  color: #1A100B;
  font-size: clamp(1.05rem, min(1.35vw, 5.805px), 1.3rem);
  font-weight: 650;
  line-height: 1.4;
}
.oceterie-landing .products-intro span { line-height: 1.65; }
.oceterie-landing .product-grid {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: clamp(18px, min(2vw, 8.6px), 30px);
  margin-top: clamp(54px, min(7vw, 30.1px), 94px);
}
.oceterie-landing .product-card,
.oceterie-landing .product-card-set,
.oceterie-landing .product-card-featured {
  grid-column: span 6;
  display: flex;
  min-width: 0;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid rgba(31, 26, 22, .12);
  background: #f8f4ed;
  box-shadow: 0 24px 70px rgba(46, 35, 26, .06);
}
.oceterie-landing .product-card-set {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(390px, .82fr);
}
.oceterie-landing .product-image,
.oceterie-landing .product-card-set .product-image,
.oceterie-landing .product-card-featured .product-image,
.oceterie-landing .product-card:not(.product-card-featured) .product-image {
  width: 100%;
  height: clamp(420px, min(38vw, 163.4px), 590px);
  min-height: 0;
  padding: clamp(14px, min(1.7vw, 7.31px), 26px);
  background: #1A100B;
}
.oceterie-landing .product-card-set .product-image { height: 100%; min-height: 740px; }
.oceterie-landing .product-image img,
.oceterie-landing .product-card:nth-child(n) .product-image img,
.oceterie-landing .product-card:first-child .product-image img {
  object-fit: contain;
  object-position: center;
}
.oceterie-landing .product-card-250 .product-image { background: #1A100B; }
.oceterie-landing .product-body,
.oceterie-landing .product-card-set .product-body,
.oceterie-landing .product-card-featured .product-body {
  min-height: 0;
  padding: clamp(28px, min(3.2vw, 13.76px), 48px);
}
.oceterie-landing .product-kicker {
  margin-bottom: 15px;
  color: #9a3d2d;
  font-size: 12px;
  letter-spacing: .12em;
}
.oceterie-landing .product-body h3 {
  max-width: 620px;
  margin-bottom: 0;
  font-size: clamp(1.75rem, min(2.3vw, 9.89px), 3rem);
  font-weight: 610;
  letter-spacing: -.025em;
  line-height: 1.06;
}
.oceterie-landing .product-description {
  max-width: 650px;
  margin: 24px 0;
  color: #5a524a;
  font-size: clamp(.94rem, min(1vw, 4.3px), 1.02rem);
  line-height: 1.7;
}
.oceterie-landing .product-highlights {
  gap: 0;
  margin: 0;
  padding: 0;
  border-top: 1px solid rgba(31, 26, 22, .14);
  background: transparent;
}
.oceterie-landing .product-highlights li {
  padding: 12px 0 12px 18px;
  border-bottom: 1px solid rgba(31, 26, 22, .1);
  color: #403932;
  font-size: .84rem;
  line-height: 1.5;
}
.oceterie-landing .product-highlights li::before { background: #b44834; }
.oceterie-landing .product-use {
  margin: 0;
  padding: 18px 0 22px;
  border: 0;
  background: transparent;
  color: #5f574f;
  font-size: .83rem;
  line-height: 1.6;
}
.oceterie-landing .product-specs {
  margin: 0 0 28px;
  padding: 20px 0 0;
  border: 0;
  border-top: 1px solid rgba(31, 26, 22, .18);
  background: transparent;
}
.oceterie-landing .product-specs h4 { margin-bottom: 12px; font-size: 11px; }
.oceterie-landing .product-specs dl > div { padding: 7px 0; }
.oceterie-landing .product-specs dt,
.oceterie-landing .product-maker strong { font-size: 11px; }
.oceterie-landing .product-specs dd,
.oceterie-landing .product-maker span,
.oceterie-landing .product-spec-note { font-size: 13px; }
.oceterie-landing .product-bottom {
  margin-top: auto;
  padding-top: 24px;
  border-top: 1px solid rgba(31, 26, 22, .18);
  align-items: center;
}
.oceterie-landing .price strong { font-size: clamp(1.25rem, min(1.6vw, 6.88px), 1.55rem); font-weight: 680; }
.oceterie-landing .product-buy-button {
  min-width: min(220px, 55%);
  min-height: 54px;
  border-radius: 0;
  font-size: 12px;
  letter-spacing: .09em;
}

@media (min-width: 0px) {
  .oceterie-landing .products-heading { grid-template-columns: 1fr; }
  .oceterie-landing .products-intro { max-width: 620px; }
  .oceterie-landing .product-card-set { grid-template-columns: 1fr; }
  .oceterie-landing .product-card-set .product-image { height: min(min(78vw, 335.4px), 680px); min-height: 0; }
}

@media (min-width: 0px) {
  .oceterie-landing .products-section { padding: 76px 0; }
  .oceterie-landing .products-heading h2 { font-size: clamp(2.7rem, min(12vw, 51.6px), 4.2rem); }
  .oceterie-landing .product-grid { grid-template-columns: 1fr; gap: 18px; }
  .oceterie-landing .product-card,
  .oceterie-landing .product-card-set,
  .oceterie-landing .product-card-featured { grid-column: 1; display: flex; }
  .oceterie-landing .product-image,
  .oceterie-landing .product-card-set .product-image,
  .oceterie-landing .product-card-featured .product-image,
  .oceterie-landing .product-card:not(.product-card-featured) .product-image {
    height: min(min(100vw, 430px), 520px);
    padding: 14px;
  }
  .oceterie-landing .product-body,
  .oceterie-landing .product-card-set .product-body,
  .oceterie-landing .product-card-featured .product-body { padding: 28px 22px; }
  .oceterie-landing .product-body h3 { font-size: clamp(1.65rem, min(7vw, 30.1px), 2.25rem); }
  .oceterie-landing .product-description { display: block; margin: 19px 0; overflow: visible; font-size: 15px; -webkit-line-clamp: unset; }
  .oceterie-landing .product-highlights li,
  .oceterie-landing .product-use { font-size: 14px; }
  .oceterie-landing .product-bottom { align-items: stretch; flex-direction: column; }
  .oceterie-landing .product-buy-button { width: 100%; min-width: 0; }
}

/* === V29: klidná nákupní tlačítka a jednotné odsazení karet === */
.oceterie-landing .product-body,
.oceterie-landing .product-card-set .product-body,
.oceterie-landing .product-card-featured .product-body {
  box-sizing: border-box;
  padding: clamp(30px, min(3vw, 12.9px), 44px);
  text-align: left;
}
.oceterie-landing .product-bottom {
  width: 100%;
  box-sizing: border-box;
  margin-top: auto;
  padding-top: 26px;
  gap: 22px;
}
.oceterie-landing .product-buy-button,
.oceterie-landing .product-buy-button:hover,
.oceterie-landing .product-buy-button:focus,
.oceterie-landing .product-buy-button:focus-visible,
.oceterie-landing .product-buy-button:active {
  min-width: 210px;
  min-height: 56px;
  padding: 0 26px;
  border: 1px solid #1A100B;
  border-radius: 0;
  background: #1A100B;
  color: #fffdf9;
  box-shadow: none;
  font-size: 12px;
  font-weight: 720;
  letter-spacing: .075em;
  line-height: 1.2;
  text-align: center;
  text-transform: none;
  transform: none !important;
  transition: none !important;
  animation: none !important;
}
.oceterie-landing .product-buy-button:hover,
.oceterie-landing .product-buy-button:focus-visible {
  border-color: #a83929;
  background: #a83929;
}
.oceterie-landing .product-buy-button[data-cart-next="true"],
.oceterie-landing .product-buy-button[data-cart-next="true"]:hover,
.oceterie-landing .product-buy-button[data-cart-next="true"]:focus-visible {
  border-color: #1A100B;
  background: transparent;
  color: #1A100B;
}
@media (min-width: 0px) {
  .oceterie-landing .product-body,
  .oceterie-landing .product-card-set .product-body,
  .oceterie-landing .product-card-featured .product-body { padding: 28px 24px; }
  .oceterie-landing .product-bottom {
    padding-top: 24px;
    gap: 18px;
    align-items: stretch;
  }
  .oceterie-landing .product-buy-button,
  .oceterie-landing .product-buy-button:hover,
  .oceterie-landing .product-buy-button:focus,
  .oceterie-landing .product-buy-button:focus-visible,
  .oceterie-landing .product-buy-button:active {
    width: 100%;
    min-width: 0;
    min-height: 54px;
  }
}

/* === V30: Václav v médiích === */
.oceterie-landing .press-section {
  padding: clamp(92px, min(10vw, 43px), 156px) 0;
  background: #1A100B;
  color: #fffdf9;
}
.oceterie-landing .press-heading {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(280px, .7fr);
  gap: clamp(44px, min(8vw, 34.4px), 130px);
  align-items: end;
  margin-bottom: clamp(48px, min(6vw, 25.8px), 84px);
}
.oceterie-landing .press-heading .eyebrow {
  grid-column: 1 / -1;
  margin-bottom: -18px;
  color: #df6048;
}
.oceterie-landing .press-heading h2 {
  max-width: 860px;
  margin: 0;
  color: #fffdf9 !important;
  -webkit-text-fill-color: #fffdf9 !important;
  font-size: clamp(3rem, min(5.7vw, 24.51px), 6.7rem);
  line-height: .96;
}
.oceterie-landing .press-heading > p:last-child {
  max-width: 520px;
  margin: 0 0 8px;
  color: rgba(255, 253, 249, .68);
  font-size: clamp(1rem, min(1.15vw, 4.945px), 1.14rem);
  line-height: 1.7;
}
/* V106 - fotografie zakladatele, celý záběr nad odkazy na rozhovory. */
.oceterie-landing .press-portrait {
  width: 100%;
  margin: 0 0 clamp(28px, min(5vw, 21.5px), 44px);
}
.oceterie-landing .press-portrait img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  border: 1px solid rgba(255, 253, 249, .18);
}
.oceterie-landing .press-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid rgba(255, 253, 249, .18);
  border-left: 1px solid rgba(255, 253, 249, .18);
}
.oceterie-landing .press-card {
  min-height: 270px;
  display: flex;
  flex-direction: column;
  padding: clamp(26px, min(3vw, 12.9px), 42px);
  border-right: 1px solid rgba(255, 253, 249, .18);
  border-bottom: 1px solid rgba(255, 253, 249, .18);
  color: #fffdf9;
  background: transparent;
  text-decoration: none;
}
.oceterie-landing .press-card-featured {
  grid-column: span 2;
  background: #df6048;
  color: #1A100B;
}
.oceterie-landing .press-source {
  color: #df6048;
  font-size: 12px;
  font-weight: 780;
  letter-spacing: .11em;
  line-height: 1.4;
  text-transform: uppercase;
}
.oceterie-landing .press-card-featured .press-source { color: #1A100B; }
.oceterie-landing .press-card h3 {
  max-width: 690px;
  margin: 26px 0 38px;
  color: inherit;
  font-size: clamp(1.35rem, min(2vw, 8.6px), 2.35rem);
  font-weight: 590;
  letter-spacing: -.02em;
  line-height: 1.12;
}
.oceterie-landing .press-card-featured h3 { font-size: clamp(1.8rem, min(3vw, 12.9px), 3.8rem); }
.oceterie-landing .press-action {
  margin-top: auto;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding-top: 18px;
  border-top: 1px solid currentColor;
  font-size: 13px;
  font-weight: 720;
  letter-spacing: .05em;
}
.oceterie-landing .press-card:hover,
.oceterie-landing .press-card:focus-visible {
  color: #1A100B;
  background: #fff8ee;
  outline: none;
}
.oceterie-landing .press-card-featured:hover,
.oceterie-landing .press-card-featured:focus-visible { background: #ef7058; }

@media (min-width: 0px) {
  .oceterie-landing .press-heading { grid-template-columns: 1fr; gap: 26px; }
  .oceterie-landing .press-heading .eyebrow { grid-column: 1; margin-bottom: 0; }
  .oceterie-landing .press-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .oceterie-landing .press-card-featured { grid-column: 1 / -1; }
}
@media (min-width: 0px) {
  .oceterie-landing .press-section { padding: 74px 0; }
  .oceterie-landing .press-heading h2 { font-size: clamp(2.7rem, min(12vw, 51.6px), 4rem); }
  .oceterie-landing .press-grid { grid-template-columns: 1fr; }
  .oceterie-landing .press-card,
  .oceterie-landing .press-card-featured {
    grid-column: 1;
    min-height: 220px;
    padding: 28px 24px;
  }
  .oceterie-landing .press-card h3,
  .oceterie-landing .press-card-featured h3 { font-size: clamp(1.45rem, min(7vw, 30.1px), 2.15rem); }
}

/* === V31: jednotkové ceny a sociální přesah === */
.oceterie-landing .product-social-impact {
  position: relative;
  margin: 0 0 24px;
  padding: 18px 18px 18px 46px;
  border: 1px solid rgba(180, 72, 52, .24);
  background: rgba(180, 72, 52, .055);
  color: #514941;
  font-size: .82rem;
  line-height: 1.58;
}
.oceterie-landing .product-social-impact::before {
  content: "♡";
  position: absolute;
  top: 17px;
  left: 18px;
  color: #b44834;
  font-size: 18px;
  line-height: 1;
}
.oceterie-landing .product-social-impact strong {
  color: #1A100B;
  font-weight: 680;
}
.oceterie-landing .price {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
}
.oceterie-landing .price-main {
  display: flex;
  align-items: baseline;
  gap: 10px;
}
.oceterie-landing .unit-price {
  color: #746a61;
  font-size: 11px;
  font-weight: 560;
  letter-spacing: .035em;
  line-height: 1.35;
}
@media (min-width: 0px) {
  .oceterie-landing .product-social-impact {
    margin-bottom: 22px;
    font-size: 13px;
  }
}

/* === V37: jednotný akcent a statická tlačítka === */
.oceterie-landing {
  --copper: #df6048;
  --copper-dark: #df6048;
  --orange: #df6048;
  --gold: #df6048;
  --oc-accent: #df6048;
}
.oceterie-landing button,
.oceterie-landing [role="button"],
.oceterie-landing .button,
.oceterie-landing .header-cart,
.oceterie-landing .menu-toggle,
.oceterie-landing .product-buy-button,
.oceterie-landing .faq-list summary,
.oceterie-landing .faq-list summary span,
.oceterie-landing .menu-toggle span {
  transition: none !important;
  animation: none !important;
}
.oceterie-landing button:hover,
.oceterie-landing button:focus,
.oceterie-landing button:active,
.oceterie-landing [role="button"]:hover,
.oceterie-landing [role="button"]:focus,
.oceterie-landing [role="button"]:active,
.oceterie-landing .button:hover,
.oceterie-landing .button:focus,
.oceterie-landing .button:active,
.oceterie-landing .header-cart:hover,
.oceterie-landing .header-cart:focus,
.oceterie-landing .header-cart:active,
.oceterie-landing .product-buy-button:hover,
.oceterie-landing .product-buy-button:focus,
.oceterie-landing .product-buy-button:active {
  transform: none !important;
  animation: none !important;
}
.oceterie-landing .button-primary,
.oceterie-landing .button-primary:hover,
.oceterie-landing .button-primary:focus,
.oceterie-landing .button-primary:active,
.oceterie-landing .product-badge,
.oceterie-landing .press-card-featured,
.oceterie-landing .press-card-featured:hover,
.oceterie-landing .press-card-featured:focus-visible,
.oceterie-landing .faq-list details[open] summary span {
  border-color: var(--oc-accent) !important;
  background: var(--oc-accent) !important;
}
.oceterie-landing .eyebrow,
.oceterie-landing .product-kicker,
.oceterie-landing .process-number,
.oceterie-landing .press-source,
.oceterie-landing .footer-column h2,
.oceterie-landing .product-social-impact::before,
.oceterie-landing .product-stock.is-sold-out {
  color: var(--oc-accent) !important;
}
.oceterie-landing .product-highlights li::before,
.oceterie-landing .product-stock.is-sold-out::before {
  background: var(--oc-accent) !important;
}

/* === V32: klidnější úvod mimo obličej modela === */
@media (max-width: 0px) {
  .oceterie-landing .hero-content {
    justify-content: flex-end;
    padding-top: 260px;
    padding-bottom: 86px;
  }
  .oceterie-landing .hero-content h1 {
    max-width: min(min(42vw, 180.6px), 620px);
    font-size: clamp(2.75rem, min(4.35vw, 18.705px), 5rem);
    line-height: 1.02;
  }
  .oceterie-landing .hero-lead,
  .oceterie-landing .hero-actions {
    max-width: min(min(40vw, 172px), 560px);
  }
}
@media (min-width: 0px) {
  .oceterie-landing .hero-content {
    min-height: 0;
    justify-content: flex-start;
    padding-top: clamp(330px, min(92vw, 395.6px), 460px) !important;
    padding-bottom: 30px !important;
  }
  .oceterie-landing .hero-content h1 {
    max-width: 100%;
    font-size: clamp(2.15rem, min(10.4vw, 44.72px), 3.25rem);
    line-height: 1.05;
  }
  .oceterie-landing .hero-lead {
    max-width: 36rem;
    margin-top: 18px;
    font-size: 14px;
    line-height: 1.55;
  }
  .oceterie-landing .hero-actions {
    margin-top: 22px;
  }
}

/* === V40 final: mobilní typografická korekce === */
@media (min-width: 0px) {
  .oceterie-landing h1,
  .oceterie-landing h2,
  .oceterie-landing h3 { hyphens: none; overflow-wrap: normal; text-wrap: balance; word-break: normal; }
  .oceterie-landing p,
  .oceterie-landing li,
  .oceterie-landing dd { hyphens: none; overflow-wrap: normal; text-wrap: pretty; word-break: normal; }
  .oceterie-landing .hero-content h1 { max-width: 340px; font-size: clamp(2.2rem, min(10.2vw, 43.86px), 2.75rem); line-height: 1.08; letter-spacing: -.035em; }
  .oceterie-landing .features-copy h2,
  .oceterie-landing .customers-copy h2,
  .oceterie-landing .story-copy h2,
  .oceterie-landing .faq-heading h2 { font-size: clamp(2.15rem, min(9.7vw, 41.71px), 2.55rem); line-height: 1.06; letter-spacing: -.028em; }
  .oceterie-landing .products-heading h2,
  .oceterie-landing .press-heading h2 { font-size: clamp(2.2rem, min(10vw, 43px), 2.7rem); line-height: 1.04; letter-spacing: -.03em; }
  .oceterie-landing .product-body h3 { font-size: clamp(1.5rem, min(6.5vw, 27.95px), 1.9rem); line-height: 1.14; letter-spacing: -.018em; }
  .oceterie-landing .press-card h3,
  .oceterie-landing .press-card-featured h3 { font-size: clamp(1.4rem, min(6.2vw, 26.66px), 1.8rem); line-height: 1.18; letter-spacing: -.018em; }
  .oceterie-landing .hero-lead,
  .oceterie-landing .products-intro,
  .oceterie-landing .product-description,
  .oceterie-landing .customers-lead,
  .oceterie-landing .story-lead,
  .oceterie-landing .story-final,
  .oceterie-landing .press-heading > p:last-child,
  .oceterie-landing .faq-heading > p { line-height: 1.65; }
}
@media (max-width: 380px) {
  .oceterie-landing .hero-content h1,
  .oceterie-landing .products-heading h2,
  .oceterie-landing .press-heading h2 { font-size: 2.15rem; }
  .oceterie-landing .features-copy h2,
  .oceterie-landing .customers-copy h2,
  .oceterie-landing .story-copy h2,
  .oceterie-landing .faq-heading h2 { font-size: 2.05rem; }
}

/* === V41: čitelný úvodní štítek na mobilní fotografii === */
@media (min-width: 0px) {
  .oceterie-landing .hero-content > .eyebrow {
    display: inline-block;
    width: fit-content;
    max-width: min(min(88vw, 378.4px), 320px);
    margin-bottom: 24px;
    padding: 10px 13px 9px;
    color: #fffdf9 !important;
    background: rgba(26,16,11, .82);
    border-left: 3px solid var(--oc-accent);
    font-size: .76rem;
    font-weight: 760;
    letter-spacing: .14em;
    line-height: 1.45;
    text-shadow: none;
    -webkit-backdrop-filter: blur(3px);
    backdrop-filter: blur(3px);
  }
}

/* === V58 EOF: fotografie v plném formátu === */
@media (max-width: 0px) {
  .oceterie-landing .hero { display: grid !important; grid-template-columns: minmax(360px, 40%) minmax(0, 60%) !important; grid-template-rows: auto auto !important; min-height: 0 !important; height: auto !important; overflow: visible !important; }
  .oceterie-landing .hero-media { position: relative !important; inset: auto !important; grid-column: 2 !important; grid-row: 1 !important; width: 100% !important; height: auto !important; background: transparent !important; }
  .oceterie-landing .hero-media img { position: relative !important; inset: auto !important; display: block !important; width: 100% !important; height: auto !important; object-fit: contain !important; object-position: center !important; animation: none !important; transform: none !important; }
  .oceterie-landing .hero-shade, .oceterie-landing .hero-note { display: none !important; }
  .oceterie-landing .hero-content { grid-column: 1 !important; grid-row: 1 !important; width: min(100% - 56px, 580px) !important; height: auto !important; margin-inline: auto !important; padding: clamp(130px, min(10vw, 43px), 185px) 0 80px !important; justify-content: center !important; }
  .oceterie-landing .hero-content .eyebrow, .oceterie-landing .hero-content h1, .oceterie-landing .hero-lead, .oceterie-landing .hero-actions { max-width: 100% !important; }
  .oceterie-landing .hero-content h1 { font-size: clamp(3rem, min(4.35vw, 18.705px), 5.8rem) !important; }
  .oceterie-landing .hero-proof { position: relative !important; left: auto !important; bottom: auto !important; grid-column: 1 / -1 !important; grid-row: 2 !important; width: var(--wrap) !important; margin: 24px auto 30px !important; transform: none !important; }
}
@media (min-width: 0px) {
  .oceterie-landing .hero { display: flex !important; min-height: 0 !important; height: auto !important; flex-direction: column !important; overflow: visible !important; }
  .oceterie-landing .hero-media { position: relative !important; inset: auto !important; order: 1 !important; width: 100% !important; height: auto !important; background: transparent !important; }
  .oceterie-landing .hero-media img { position: relative !important; inset: auto !important; display: block !important; width: 100% !important; height: auto !important; object-fit: contain !important; object-position: center !important; animation: none !important; transform: none !important; }
  .oceterie-landing .hero-shade, .oceterie-landing .hero-note { display: none !important; }
  .oceterie-landing .hero-content { order: 2 !important; width: var(--wrap) !important; height: auto !important; min-height: 0 !important; margin-inline: auto !important; padding: 52px 0 58px !important; }
  .oceterie-landing .hero-content .eyebrow, .oceterie-landing .hero-content h1, .oceterie-landing .hero-lead, .oceterie-landing .hero-actions { width: 100% !important; max-width: 100% !important; }
  .oceterie-landing .hero-proof { position: relative !important; left: auto !important; bottom: auto !important; order: 3 !important; width: var(--wrap) !important; margin: 0 auto 20px !important; transform: none !important; }
  .oceterie-landing .product-card-set { display: flex !important; flex-direction: column !important; }
}

/* V58: světlé pozadí produktových fotografií */
.oceterie-landing .product-image,
.oceterie-landing .product-card-set .product-image,
.oceterie-landing .product-card-featured .product-image,
.oceterie-landing .product-card:not(.product-card-featured) .product-image,
.oceterie-landing .product-card-250 .product-image {
  background: #f8f4ed !important;
}

/* === V69: popisek uvnitř fotografie + produkty vždy pod sebou === */
.oceterie-landing .process-visual {
  position: relative !important;
  align-self: start;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
}
.oceterie-landing .process-visual img {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
}
.oceterie-landing .process-visual .image-caption {
  position: absolute !important;
  z-index: 2 !important;
  right: auto !important;
  bottom: clamp(14px, min(2vw, 8.6px), 28px) !important;
  left: clamp(14px, min(2vw, 8.6px), 28px) !important;
  display: block !important;
  width: fit-content !important;
  max-width: calc(100% - 28px) !important;
  padding: 9px 12px !important;
  color: #fffdf9 !important;
  background: rgba(26,16,11, .78) !important;
  font-size: clamp(.58rem, min(1vw, 4.3px), .7rem) !important;
  line-height: 1.35 !important;
  writing-mode: horizontal-tb !important;
  transform: none !important;
}
.oceterie-landing .product-grid {
  grid-template-columns: minmax(0, 1fr) !important;
}
.oceterie-landing .product-card,
.oceterie-landing .product-card-set,
.oceterie-landing .product-card-featured {
  grid-column: 1 / -1 !important;
  display: flex !important;
  width: 100% !important;
  max-width: none !important;
  flex-direction: column !important;
}
.oceterie-landing .product-card-set .product-image {
  height: auto !important;
  min-height: 0 !important;
}

/* === V75: homepage široká 650 px na desktopu === */
@media (max-width: 0px) {
  html.oceterie-landing-active body {
    overflow-x: hidden;
  }
  .oceterie-landing {
    width: 650px !important;
    max-width: calc(min(100vw, 430px) - 40px) !important;
    margin-inline: auto !important;
    --wrap: calc(100% - 40px);
  }
  .oceterie-landing .site-header {
    right: 0 !important;
    left: 0 !important;
    width: min(100vw, 430px) !important;
    background: #1A100B !important;
    transform: none !important;
  }
  .oceterie-landing .header-inner {
    width: 650px !important;
    max-width: calc(min(100vw, 430px) - 40px) !important;
    height: 70px !important;
    grid-template-columns: 1fr auto auto !important;
    gap: 14px !important;
  }
  .oceterie-landing .main-nav { display: none !important; }
  .oceterie-landing .menu-toggle {
    display: grid !important;
    justify-self: end;
    width: 42px;
    height: 42px;
    padding: 11px 8px;
    border: 0;
    background: transparent;
    color: currentColor;
    cursor: pointer;
  }
  .oceterie-landing .menu-toggle span:not(.sr-only) {
    display: block;
    width: 25px;
    height: 1px;
    background: currentColor;
  }
  .oceterie-landing .main-nav.is-open {
    position: fixed !important;
    inset: 70px auto 0 50% !important;
    display: flex !important;
    width: min(650px, calc(min(100vw, 430px) - 40px)) !important;
    transform: translateX(-50%) !important;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 28px;
    padding: 45px 28px;
    background: rgba(26,16,11,.98);
  }
  .oceterie-landing .hero {
    display: flex !important;
    min-height: 0 !important;
    height: auto !important;
    flex-direction: column !important;
    overflow: visible !important;
  }
  .oceterie-landing .hero-media {
    position: relative !important;
    inset: auto !important;
    order: 1 !important;
    width: 100% !important;
    height: auto !important;
  }
  .oceterie-landing .hero-media img {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
    transform: none !important;
  }
  .oceterie-landing .hero-content {
    order: 2 !important;
    width: var(--wrap) !important;
    min-height: 0 !important;
    margin-inline: auto !important;
    padding: 52px 0 58px !important;
    justify-content: flex-start !important;
  }
  .oceterie-landing .hero-content h1 {
    max-width: 100% !important;
    font-size: clamp(2.7rem, min(4.3vw, 18.49px), 4.8rem) !important;
  }
  .oceterie-landing .hero-lead,
  .oceterie-landing .hero-actions { max-width: 100% !important; }
  .oceterie-landing .hero-proof {
    position: relative !important;
    inset: auto !important;
    order: 3 !important;
    width: var(--wrap) !important;
    margin: 0 auto 20px !important;
    grid-template-columns: 1fr !important;
    transform: none !important;
  }
  .oceterie-landing .hero-proof-heading {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(255,253,249,.16);
  }
  .oceterie-landing .hero-chefs { grid-template-columns: 1fr !important; }
  .oceterie-landing .hero-chef {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(255,253,249,.13);
  }
  .oceterie-landing .process-section,
  .oceterie-landing .customers-section,
  .oceterie-landing .story-section {
    display: flex !important;
    min-height: 0 !important;
    flex-direction: column !important;
  }
  .oceterie-landing .process-content,
  .oceterie-landing .customers-copy,
  .oceterie-landing .story-copy {
    padding: 72px 20px !important;
  }
  .oceterie-landing .customers-image { order: -1 !important; }
  .oceterie-landing .story-copy { order: -1 !important; }
  .oceterie-landing .customer-stats { grid-template-columns: 1fr !important; }
  .oceterie-landing .products-heading,
  .oceterie-landing .press-heading,
  .oceterie-landing .faq-layout,
  .oceterie-landing .press-grid,
  .oceterie-landing .footer-top {
    grid-template-columns: 1fr !important;
  }
  .oceterie-landing .faq-heading { position: static !important; }
  .oceterie-landing .press-card,
  .oceterie-landing .press-card-featured,
  .oceterie-landing .footer-brand,
  .oceterie-landing .footer-column {
    grid-column: 1 !important;
  }
}

/* === V76: nepřekročit šířku hlavního sloupce 650 px === */
.oceterie-landing {
  width: min(100%, 650px) !important;
  max-width: 650px !important;
  margin-inline: auto !important;
}

/* === V77: čitelné rozbalovací menu přes celý sloupec === */
.oceterie-landing .main-nav.is-open {
  right: auto !important;
  left: 50% !important;
  width: min(650px, min(100vw, 430px)) !important;
  max-width: 650px !important;
  transform: translateX(-50%) !important;
  background: #000 !important;
  color: #fff !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
.oceterie-landing .main-nav.is-open a {
  color: #fff !important;
}

/* === V79: černá vrstva menu po celé výšce obrazovky === */
.oceterie-landing .main-nav.is-open {
  position: fixed !important;
  top: 70px !important;
  right: auto !important;
  bottom: 0 !important;
  left: 50% !important;
  width: min(650px, min(100vw, 430px)) !important;
  height: calc(100vh - 70px) !important;
  height: calc(100dvh - 70px) !important;
  min-height: calc(100vh - 70px) !important;
  max-height: none !important;
  transform: translateX(-50%) !important;
  overflow-y: auto !important;
  background: #000 !important;
  background-color: #000 !important;
  background-image: none !important;
  opacity: 1 !important;
  z-index: 1001 !important;
}
@media (min-width: 0px) {
  .oceterie-landing .main-nav.is-open {
    top: 64px !important;
    height: calc(100vh - 64px) !important;
    height: calc(100dvh - 64px) !important;
    min-height: calc(100vh - 64px) !important;
  }
}

/* === V93: proklik na detail Citrocetu === */
.oceterie-landing .product-detail-image-link {
  position: relative;
  color: inherit;
  cursor: pointer !important;
  text-decoration: none;
}
.oceterie-landing .product-detail-image-link::after {
  content: none;
  position: absolute;
  right: 16px;
  bottom: 16px;
  padding: 10px 13px;
  background: rgba(26,16,11,.88);
  color: #fffdf9;
  font-size: 11px;
  font-weight: 720;
  letter-spacing: .08em;
  line-height: 1;
}
.oceterie-landing .product-detail-image-link:focus-visible {
  outline: 3px solid #df6048;
  outline-offset: -3px;
}
.oceterie-landing .product-actions {
  display: flex;
  align-items: stretch;
  gap: 10px;
}
.oceterie-landing .product-detail-button {
  display: inline-flex;
  min-height: 56px;
  align-items: center;
  justify-content: center;
  padding: 0 20px;
  border: 1px solid #1A100B;
  background: transparent;
  color: #1A100B;
  font-size: 12px;
  font-weight: 720;
  letter-spacing: .075em;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
}
.oceterie-landing .product-detail-button:hover,
.oceterie-landing .product-detail-button:focus-visible {
  border-color: #df6048;
  background: #df6048;
  color: #fffdf9;
}
@media (min-width: 0px) {
  /* Na mobilu je detail dostupný z celé fotografie a tlačítka u košíku. */
  .oceterie-landing .product-detail-image-link::after {
    content: none;
    display: none;
  }
  .oceterie-landing .product-actions {
    width: 100%;
    flex-direction: column;
  }
  .oceterie-landing .product-detail-button { width: 100%; }
}

/* === V94: typografie a sazba detailu Citrocetu v 650px sloupci === */
.oceterie-citrocet .citrocet-hero,
.oceterie-citrocet .citrocet-story,
.oceterie-citrocet .citrocet-beliefs,
.oceterie-citrocet .citrocet-specs-grid,
.oceterie-citrocet .citrocet-process-list {
  grid-template-columns: minmax(0, 1fr);
}
.oceterie-citrocet .citrocet-hero {
  min-height: 0;
}
.oceterie-citrocet .citrocet-hero-copy,
.oceterie-citrocet .citrocet-hero-media,
.oceterie-citrocet .citrocet-story-copy,
.oceterie-citrocet .citrocet-story-media {
  min-width: 0;
}
.oceterie-citrocet .citrocet-hero-copy {
  padding: clamp(78px, min(10vw, 43px), 120px) clamp(24px, min(7.4vw, 31.82px), 48px) clamp(64px, min(8vw, 34.4px), 90px);
}
.oceterie-citrocet .citrocet-hero h1 {
  max-width: 100%;
  font-size: clamp(3.2rem, min(10vw, 43px), 4.8rem);
  letter-spacing: -.035em;
  line-height: 1.16;
}
.oceterie-citrocet .citrocet-hero h1 span {
  margin-bottom: .28em;
}
.oceterie-citrocet .citrocet-intro-grid,
.oceterie-citrocet .citrocet-section-heading {
  grid-template-columns: minmax(0, 1fr);
  gap: 18px;
}
.oceterie-citrocet .citrocet-intro h2,
.oceterie-citrocet .citrocet-section-heading h2,
.oceterie-citrocet .citrocet-specs h2,
.oceterie-citrocet .citrocet-original h2 {
  font-size: clamp(3rem, min(10.5vw, 45.15px), 5rem);
  letter-spacing: -.035em;
  line-height: 1.12;
}
.oceterie-citrocet .citrocet-process-list li {
  min-height: 0;
  border-right: 0;
  border-bottom: 1px solid var(--citrocet-line);
}
.oceterie-citrocet .citrocet-process-list li:last-child {
  border-bottom: 0;
}
.oceterie-citrocet .citrocet-story-air .citrocet-story-media { order: 1; }
.oceterie-citrocet .citrocet-story-air .citrocet-story-copy { order: 2; }
.oceterie-citrocet .citrocet-story-copy {
  padding: clamp(68px, min(9vw, 38.7px), 90px) clamp(24px, min(7.4vw, 31.82px), 48px);
}
.oceterie-citrocet .citrocet-story-copy h2 {
  max-width: 100%;
  font-size: clamp(2.7rem, min(8.4vw, 36.12px), 3.5rem);
  letter-spacing: -.03em;
  line-height: 1.14;
}
.oceterie-citrocet .citrocet-beliefs article {
  min-height: 0;
  padding: clamp(68px, min(9vw, 38.7px), 90px) clamp(24px, min(7.4vw, 31.82px), 48px);
  border-right: 0;
  border-bottom: 1px solid rgba(3,9,9,.32);
}
.oceterie-citrocet .citrocet-beliefs article:last-child { border-bottom: 0; }
.oceterie-citrocet .citrocet-beliefs h2 {
  font-size: clamp(2.8rem, min(9vw, 38.7px), 4.25rem);
  letter-spacing: -.03em;
  line-height: 1.12;
}
@media (min-width: 0px) {
  .oceterie-citrocet .citrocet-hero h1 {
    font-size: clamp(2.35rem, min(12vw, 51.6px), 2.9rem);
    line-height: 1.16;
  }
  .oceterie-citrocet .citrocet-intro h2,
  .oceterie-citrocet .citrocet-section-heading h2,
  .oceterie-citrocet .citrocet-specs h2,
  .oceterie-citrocet .citrocet-original h2 {
    font-size: clamp(2.75rem, min(13vw, 55.9px), 4rem);
    line-height: 1.12;
  }
  .oceterie-citrocet .citrocet-story-copy h2 {
    font-size: clamp(1.7rem, min(8.5vw, 36.55px), 2.25rem);
    line-height: 1.14;
  }
  .oceterie-citrocet .citrocet-beliefs h2 {
    font-size: clamp(2.5rem, min(12vw, 51.6px), 3.6rem);
    line-height: 1.12;
  }
}

/* === Produktový detail Saba - V102: fotografie bez vynucených ořezů === */
.oceterie-saba {
  --citrocet-gold: #e5a600;
  --citrocet-paper: #eee7dc;
  --citrocet-line: rgba(229, 166, 0, .62);
}
.oceterie-saba .saba-hero h1 {
  font-size: clamp(2.9rem, min(8.9vw, 38.27px), 4.25rem);
  line-height: 1.14;
}
.oceterie-saba .saba-hero h1 span {
  font-size: 1.24em;
}
.oceterie-saba .citrocet-intro h2 {
  font-size: clamp(2.75rem, min(9vw, 38.7px), 4.25rem);
  line-height: 1.13;
}
.oceterie-saba .citrocet-specs h2 {
  font-size: clamp(2.2rem, min(8.6vw, 36.98px), 3.55rem);
  line-height: 1.15;
}
.oceterie-saba .citrocet-hero-media {
  min-height: 0;
  gap: 24px;
  padding: clamp(28px, min(5vw, 21.5px), 48px);
}
.oceterie-saba .citrocet-hero-media img {
  width: 100%;
  height: auto;
  max-height: none;
  object-fit: contain;
}
.oceterie-saba .citrocet-hero-media > p {
  position: relative;
  inset: auto;
  margin: 0;
}
.oceterie-saba .citrocet-story-media {
  height: auto;
  min-height: 0;
}
.oceterie-saba .citrocet-story-media img {
  width: 100%;
  height: auto;
  max-width: 100%;
  max-height: none;
  object-fit: contain;
  object-position: center;
}
.oceterie-saba .saba-clean-list,
.oceterie-saba .saba-use-list {
  margin: 32px 0 0;
  padding-left: 1.25rem;
  font-size: clamp(1rem, min(1.35vw, 5.805px), 1.2rem);
  line-height: 1.7;
}
.oceterie-saba .saba-clean-list li,
.oceterie-saba .saba-use-list li {
  padding-left: .25rem;
}
.oceterie-saba .saba-clean-list li + li,
.oceterie-saba .saba-use-list li + li {
  margin-top: .42rem;
}
.oceterie-saba .saba-clean-list li::marker {
  color: #080b09;
}
.oceterie-saba .saba-uses {
  background: #11100d;
}
.oceterie-saba .saba-use-list {
  color: rgba(255,255,255,.76);
}
.oceterie-saba .saba-use-list li::marker {
  color: var(--citrocet-gold);
}
@media (min-width: 0px) {
  .oceterie-saba .saba-hero h1 {
    font-size: clamp(2.18rem, min(10.8vw, 46.44px), 2.65rem);
    line-height: 1.16;
  }
  .oceterie-saba .citrocet-intro h2 {
    font-size: clamp(2.25rem, min(10.8vw, 46.44px), 3rem);
    line-height: 1.14;
  }
  .oceterie-saba .citrocet-specs h2 {
    font-size: clamp(2rem, min(8.6vw, 36.98px), 2.45rem);
    line-height: 1.16;
  }
  .oceterie-saba .saba-clean-list,
  .oceterie-saba .saba-use-list {
    font-size: 1rem;
    line-height: 1.65;
  }
}

/* === V96: HTML grafiky detailu Citrocetu === */
.oceterie-citrocet .citrocet-story-air .citrocet-story-copy { order: 1; }
.oceterie-citrocet .citrocet-air-graphic {
  position: relative;
  display: flex;
  min-height: 470px;
  flex-direction: column;
  justify-content: space-between;
  gap: 48px;
  box-sizing: border-box;
  padding: clamp(34px, min(6vw, 25.8px), 64px);
  overflow: hidden;
  border-top: 1px solid var(--citrocet-line);
  background:
    linear-gradient(135deg, rgba(231,173,18,.12), transparent 42%),
    #0d1715;
  color: #f8f3e9;
}
.oceterie-citrocet .citrocet-air-graphic::after {
  content: "";
  position: absolute;
  right: -100px;
  bottom: -120px;
  width: 300px;
  height: 300px;
  border: 1px solid rgba(231,173,18,.28);
  border-radius: 50%;
  pointer-events: none;
}
.oceterie-citrocet .citrocet-air-graphic-top,
.oceterie-citrocet .citrocet-air-flow,
.oceterie-citrocet .citrocet-air-graphic-foot { position: relative; z-index: 1; }
.oceterie-citrocet .citrocet-air-graphic-top {
  display: flex;
  align-items: center;
  gap: 24px;
}
.oceterie-citrocet .citrocet-air-orbit {
  display: grid;
  width: 94px;
  height: 94px;
  flex: 0 0 94px;
  place-items: center;
  border: 1px solid var(--citrocet-gold);
  border-radius: 50%;
  color: var(--citrocet-gold);
  font-size: 1.8rem;
  font-weight: 800;
  letter-spacing: -.04em;
}
.oceterie-citrocet .citrocet-graphic-label {
  margin: 0;
  color: #fff;
  font-size: clamp(1.35rem, min(2.6vw, 11.18px), 2rem);
  font-weight: 780;
  letter-spacing: -.02em;
  line-height: 1.1;
}
.oceterie-citrocet .citrocet-graphic-caption {
  margin: 9px 0 0;
  color: rgba(248,243,233,.62);
  font-size: .76rem;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.oceterie-citrocet .citrocet-air-flow {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.oceterie-citrocet .citrocet-air-flow-item {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 10px;
  padding: 0 clamp(16px, min(3vw, 12.9px), 30px);
  border-left: 1px solid rgba(231,173,18,.46);
}
.oceterie-citrocet .citrocet-air-flow-item:first-child { padding-left: 0; border-left: 0; }
.oceterie-citrocet .citrocet-air-flow-item span {
  color: var(--citrocet-gold);
  font-size: .7rem;
  font-weight: 850;
  letter-spacing: .14em;
}
.oceterie-citrocet .citrocet-air-flow-item strong {
  color: #fff;
  font-size: 1.35rem;
  letter-spacing: -.02em;
}
.oceterie-citrocet .citrocet-air-flow-item small {
  color: rgba(248,243,233,.66);
  font-size: .86rem;
  line-height: 1.55;
}
.oceterie-citrocet .citrocet-air-graphic-foot {
  margin: 0;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,.14);
  color: var(--citrocet-gold);
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.oceterie-citrocet .citrocet-visual-summary {
  padding: clamp(90px, min(10vw, 43px), 150px) 0;
  background: #030909;
  color: #f8f3e9;
}
.oceterie-citrocet .citrocet-visual-heading {
  max-width: 690px;
}
.oceterie-citrocet .citrocet-visual-heading h2 {
  margin: 0;
  font-size: clamp(2.8rem, min(8.5vw, 36.55px), 5.2rem);
  font-weight: 820;
  letter-spacing: -.055em;
  line-height: 1.04;
  text-transform: uppercase;
}
.oceterie-citrocet .citrocet-visual-heading > p:last-child {
  max-width: 580px;
  margin: 28px 0 0;
  color: rgba(248,243,233,.66);
  font-size: 1.05rem;
  line-height: 1.65;
}
.oceterie-citrocet .citrocet-visual-flow {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 64px 0 0;
  padding: 0;
  border: 1px solid var(--citrocet-line);
  list-style: none;
}
.oceterie-citrocet .citrocet-visual-flow li {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 20px;
  min-width: 0;
  min-height: 190px;
  padding: clamp(24px, min(4vw, 17.2px), 40px);
  border-right: 1px solid rgba(231,173,18,.38);
  border-bottom: 1px solid rgba(231,173,18,.38);
}
.oceterie-citrocet .citrocet-visual-flow li:nth-child(2n) { border-right: 0; }
.oceterie-citrocet .citrocet-visual-flow li:nth-last-child(-n+2) { border-bottom: 0; }
.oceterie-citrocet .citrocet-visual-flow li > span {
  color: var(--citrocet-gold);
  font-size: 2.25rem;
  font-weight: 850;
  letter-spacing: -.06em;
  line-height: .9;
}
.oceterie-citrocet .citrocet-visual-flow h3 {
  margin: 0;
  color: #fff;
  font-size: 1.25rem;
  letter-spacing: -.02em;
}
.oceterie-citrocet .citrocet-visual-flow p {
  margin: 14px 0 0;
  color: rgba(248,243,233,.62);
  font-size: .9rem;
  line-height: 1.6;
}
.oceterie-citrocet .citrocet-visual-result {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 24px;
  margin-top: 28px;
  padding: 24px 28px;
  border: 1px solid rgba(231,173,18,.38);
  background: rgba(231,173,18,.08);
}
.oceterie-citrocet .citrocet-visual-result span {
  color: var(--citrocet-gold);
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.oceterie-citrocet .citrocet-visual-result strong {
  color: #fff;
  font-size: 1rem;
  line-height: 1.45;
  text-align: right;
}
@media (min-width: 0px) {
  .oceterie-citrocet .citrocet-air-graphic { min-height: 0; }
  .oceterie-citrocet .citrocet-air-flow { grid-template-columns: 1fr; gap: 22px; }
  .oceterie-citrocet .citrocet-air-flow-item,
  .oceterie-citrocet .citrocet-air-flow-item:first-child {
    padding: 0 0 20px;
    border-top: 1px solid rgba(231,173,18,.38);
    border-left: 0;
  }
  .oceterie-citrocet .citrocet-air-flow-item:last-child { padding-bottom: 0; border-bottom: 0; }
  .oceterie-citrocet .citrocet-visual-flow { grid-template-columns: 1fr; }
  .oceterie-citrocet .citrocet-visual-flow li,
  .oceterie-citrocet .citrocet-visual-flow li:nth-child(2n),
  .oceterie-citrocet .citrocet-visual-flow li:nth-last-child(-n+2) {
    min-height: 0;
    border-right: 0;
    border-bottom: 1px solid rgba(231,173,18,.38);
  }
  .oceterie-citrocet .citrocet-visual-flow li:last-child { border-bottom: 0; }
  .oceterie-citrocet .citrocet-visual-result { align-items: flex-start; flex-direction: column; gap: 12px; }
  .oceterie-citrocet .citrocet-visual-result strong { text-align: left; }
}

/* === V98: produktový detail Balsamica a čitelné pokračování do košíku === */
.oceterie-balsamico {
  --citrocet-gold: #d9a21b;
  --citrocet-line: rgba(217, 162, 27, .62);
}
.oceterie-balsamico .balsamico-hero h1 {
  font-size: clamp(3rem, min(9.2vw, 39.56px), 4.6rem);
  line-height: 1.13;
}
.oceterie-balsamico .balsamico-hero-media {
  background: linear-gradient(145deg, #d6a11f 0%, #a86c12 100%);
}
.oceterie-balsamico .balsamico-product-pair {
  position: relative;
  z-index: 1;
  display: grid;
  width: min(92%, 760px);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(12px, min(3vw, 12.9px), 34px);
  align-items: center;
}
.oceterie-balsamico .balsamico-product-pair img {
  width: 100%;
  max-height: 66vh;
  object-fit: contain;
  filter: drop-shadow(0 24px 34px rgba(3, 9, 9, .3));
}
.oceterie-balsamico .balsamico-buy-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 42px;
}
.oceterie-balsamico .balsamico-buy-option {
  display: grid;
  min-width: 0;
  gap: 15px;
  padding: 24px;
  border: 1px solid var(--citrocet-line);
  background: rgba(255, 255, 255, .045);
}
.oceterie-balsamico .balsamico-buy-option > p:first-child {
  margin: 0;
  color: var(--citrocet-gold);
  font-size: .7rem;
  font-weight: 850;
  letter-spacing: .11em;
  line-height: 1.4;
  text-transform: uppercase;
}
.oceterie-balsamico .balsamico-buy-option .price-main strong { color: #fff; font-size: 1.55rem; }
.oceterie-balsamico .balsamico-buy-option .price-main del { color: rgba(255,255,255,.5); }
.oceterie-balsamico .balsamico-buy-option .unit-price { color: rgba(255,255,255,.62); }
.oceterie-balsamico .balsamico-buy-option .product-stock { margin: 0; color: rgba(255,255,255,.74); }
.oceterie-balsamico .balsamico-buy-option .product-buy-button { width: 100%; min-width: 0; }

.oceterie-balsamico .balsamico-craft {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  min-height: 720px;
  background: #0b0e0d;
}
.oceterie-balsamico .balsamico-craft-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  min-width: 0;
}
.oceterie-balsamico .balsamico-craft-grid figure {
  position: relative;
  min-width: 0;
  min-height: 620px;
  margin: 0;
  overflow: hidden;
  border-right: 1px solid var(--citrocet-line);
}
.oceterie-balsamico .balsamico-craft-grid figure:last-child { border-right: 0; }
.oceterie-balsamico .balsamico-craft-grid img { display: block; width: 100%; height: 100%; object-fit: cover; }
.oceterie-balsamico .balsamico-craft-grid figcaption {
  position: absolute;
  right: 18px;
  bottom: 18px;
  left: 18px;
  padding: 12px 14px;
  background: rgba(3,9,9,.82);
  color: #fff;
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .1em;
  line-height: 1.4;
  text-transform: uppercase;
}
.oceterie-balsamico .balsamico-craft-copy {
  display: flex;
  order: -1;
  flex-direction: column;
  justify-content: center;
  padding: clamp(64px, min(8vw, 34.4px), 120px);
}
.oceterie-balsamico .balsamico-craft-copy h2 {
  margin: 0;
  color: #f8f3e9;
  font-size: clamp(3rem, min(6vw, 25.8px), 4rem);
  font-weight: 830;
  letter-spacing: -.05em;
  line-height: 1.02;
  text-transform: uppercase;
}
.oceterie-balsamico .balsamico-craft-copy > p:last-child {
  max-width: 600px;
  margin: 34px 0 0;
  color: rgba(255,255,255,.72);
  font-size: clamp(1rem, min(1.35vw, 5.805px), 1.2rem);
  line-height: 1.75;
}
.oceterie-balsamico .balsamico-clean-list {
  margin: 32px 0 0;
  padding-left: 1.25rem;
  font-size: clamp(1rem, min(1.35vw, 5.805px), 1.2rem);
  line-height: 1.7;
}
.oceterie-balsamico .balsamico-clean-list li + li { margin-top: .45rem; }
.oceterie-balsamico .balsamico-clean-list li::marker { color: #080b09; }
.oceterie-balsamico .balsamico-fire .citrocet-story-copy h2 {
  font-size: clamp(2rem, min(7vw, 30.1px), 2.85rem);
  overflow-wrap: anywhere;
}
.oceterie-balsamico .balsamico-original figure { max-width: 861px; }

@media (max-width: 0px) {
  .oceterie-balsamico .balsamico-process-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .oceterie-balsamico .balsamico-process-list li { border-right: 1px solid var(--citrocet-line); border-bottom: 1px solid var(--citrocet-line); }
  .oceterie-balsamico .balsamico-process-list li:nth-child(2n) { border-right: 0; }
  .oceterie-balsamico .balsamico-process-list li:nth-last-child(-n+2) { border-bottom: 0; }
}
@media (min-width: 0px) {
  .oceterie-balsamico .balsamico-craft { grid-template-columns: 1fr; }
  .oceterie-balsamico .balsamico-craft-copy { order: -1; }
}
@media (min-width: 0px) {
  .oceterie-balsamico .balsamico-hero h1 { font-size: clamp(2.35rem, min(11.5vw, 49.45px), 3rem); line-height: 1.16; }
  .oceterie-balsamico .balsamico-buy-grid { grid-template-columns: 1fr; }
  .oceterie-balsamico .balsamico-product-pair { width: 100%; grid-template-columns: 1fr; }
  .oceterie-balsamico .balsamico-product-pair img:last-child { display: none; }
  .oceterie-balsamico .balsamico-craft-grid { grid-template-columns: 1fr; }
  .oceterie-balsamico .balsamico-craft-grid figure { min-height: 460px; border-right: 0; border-bottom: 1px solid var(--citrocet-line); }
  .oceterie-balsamico .balsamico-craft-grid figure:last-child { border-bottom: 0; }
  .oceterie-balsamico .balsamico-craft-copy { padding: 68px 20px; }
  .oceterie-balsamico .balsamico-craft-copy h2 { font-size: clamp(2.55rem, min(13vw, 55.9px), 3.8rem); line-height: 1.06; }
  .oceterie-balsamico .balsamico-fire .citrocet-story-copy h2 {
    font-size: clamp(1.5rem, min(7.6vw, 32.68px), 2rem);
    overflow-wrap: anywhere;
  }
}

/* Stav po vložení produktu zůstává kontrastní na světlém i tmavém podkladu. */
.oceterie-landing .product-buy-button[data-cart-next="true"],
.oceterie-landing .product-buy-button[data-cart-next="true"]:hover,
.oceterie-landing .product-buy-button[data-cart-next="true"]:focus,
.oceterie-landing .product-buy-button[data-cart-next="true"]:focus-visible {
  border-color: #fffdf9 !important;
  background: #fffdf9 !important;
  color: #1A100B !important;
  box-shadow: inset 0 0 0 1px rgba(26,16,11,.34) !important;
}

/* === V99: Balsamico podle infografiky „Kapka, která dokončí jídlo“ === */
.oceterie-balsamico .citrocet-hero-lead strong {
  display: block;
  margin-bottom: 10px;
  color: var(--citrocet-gold);
  font-size: .78em;
  font-weight: 850;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.oceterie-balsamico .balsamico-process-list {
  grid-template-columns: minmax(0, 1fr) !important;
}
.oceterie-balsamico .balsamico-process-list li,
.oceterie-balsamico .balsamico-process-list li:nth-child(2n),
.oceterie-balsamico .balsamico-process-list li:nth-last-child(-n+2) {
  border-right: 0;
  border-bottom: 1px solid var(--citrocet-line);
}
.oceterie-balsamico .balsamico-process-list li:last-child { border-bottom: 0; }

.oceterie-balsamico .balsamico-caprese {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  background: #0b0f0e;
  color: #f8f3e9;
}
.oceterie-balsamico .balsamico-caprese-copy {
  padding: clamp(72px, min(9vw, 38.7px), 110px) clamp(24px, min(7.4vw, 31.82px), 48px);
}
.oceterie-balsamico .balsamico-caprese-copy h2,
.oceterie-balsamico .balsamico-uses h2,
.oceterie-balsamico .balsamico-dose h2 {
  margin: 0;
  color: inherit;
  font-size: clamp(2.8rem, min(8.4vw, 36.12px), 4rem);
  font-weight: 830;
  letter-spacing: -.045em;
  line-height: 1.08;
  text-transform: uppercase;
}
.oceterie-balsamico .balsamico-caprese-copy > p:last-child {
  max-width: 560px;
  margin: 32px 0 0;
  color: rgba(255,255,255,.72);
  font-size: clamp(1rem, min(1.35vw, 5.805px), 1.18rem);
  line-height: 1.75;
}
.oceterie-balsamico .balsamico-caprese-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0 22px;
  padding: clamp(44px, min(8vw, 34.4px), 90px) clamp(24px, min(7.4vw, 31.82px), 48px);
  background: var(--citrocet-gold);
  color: #080b09;
}
.oceterie-balsamico .balsamico-caprese-card > span,
.oceterie-balsamico .balsamico-caprese-card > strong {
  padding: 18px 0;
  border-bottom: 1px solid rgba(8,11,9,.25);
}
.oceterie-balsamico .balsamico-caprese-card > span {
  font-size: .7rem;
  font-weight: 850;
  letter-spacing: .12em;
}
.oceterie-balsamico .balsamico-caprese-card > strong {
  font-size: clamp(1rem, min(2vw, 8.6px), 1.22rem);
  line-height: 1.4;
}
.oceterie-balsamico .balsamico-caprese-card > p {
  grid-column: 1 / -1;
  margin: 34px 0 0;
  font-size: clamp(1.45rem, min(3.5vw, 15.05px), 2.1rem);
  font-weight: 820;
  letter-spacing: -.03em;
  line-height: 1.15;
  text-transform: uppercase;
}

.oceterie-balsamico .balsamico-uses {
  padding: clamp(90px, min(11vw, 47.3px), 150px) 0;
  background: #030909;
  color: #f8f3e9;
}
.oceterie-balsamico .balsamico-use-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 64px 0 0;
  padding: 0;
  border: 1px solid var(--citrocet-line);
  list-style: none;
}
.oceterie-balsamico .balsamico-use-grid li {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 20px;
  align-items: center;
  min-height: 132px;
  padding: 28px;
  border-right: 1px solid rgba(217,162,27,.42);
  border-bottom: 1px solid rgba(217,162,27,.42);
}
.oceterie-balsamico .balsamico-use-grid li:nth-child(2n) { border-right: 0; }
.oceterie-balsamico .balsamico-use-grid li:nth-last-child(-n+2) { border-bottom: 0; }
.oceterie-balsamico .balsamico-use-grid span { color: var(--citrocet-gold); font-size: .72rem; font-weight: 850; letter-spacing: .12em; }
.oceterie-balsamico .balsamico-use-grid strong { color: #fff; font-size: 1rem; line-height: 1.45; }

.oceterie-balsamico .balsamico-dose {
  display: grid;
  grid-template-columns: minmax(180px, .42fr) minmax(0, 1fr);
  gap: clamp(34px, min(6vw, 25.8px), 72px);
  align-items: center;
  padding: clamp(70px, min(9vw, 38.7px), 110px) clamp(24px, min(7.4vw, 31.82px), 48px);
  background: var(--citrocet-gold);
  color: #080b09;
}
.oceterie-balsamico .balsamico-dose-number {
  display: flex;
  min-height: 190px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(8,11,9,.36);
}
.oceterie-balsamico .balsamico-dose-number strong { font-size: clamp(4rem, min(9vw, 38.7px), 6.4rem); letter-spacing: -.08em; line-height: .8; }
.oceterie-balsamico .balsamico-dose-number span { margin-top: 16px; font-size: .72rem; font-weight: 850; letter-spacing: .15em; text-transform: uppercase; }
.oceterie-balsamico .balsamico-dose .citrocet-section-number { color: #080b09; }
.oceterie-balsamico .balsamico-dose p:last-child { max-width: 390px; margin: 26px 0 0; font-size: 1.08rem; line-height: 1.65; }
.oceterie-balsamico .balsamico-origin .citrocet-story-copy h2 { font-size: clamp(2.35rem, min(7.4vw, 31.82px), 3.7rem); overflow-wrap: anywhere; }
.oceterie-balsamico .balsamico-finale h2 { font-size: clamp(2.6rem, min(8.4vw, 36.12px), 4rem); overflow-wrap: anywhere; }

@media (min-width: 0px) {
  .oceterie-balsamico .citrocet-intro h2,
  .oceterie-balsamico .balsamico-original h2 {
    font-size: clamp(2.45rem, min(11vw, 47.3px), 3rem);
    overflow-wrap: anywhere;
  }
  .oceterie-balsamico .balsamico-caprese-copy h2,
  .oceterie-balsamico .balsamico-uses h2,
  .oceterie-balsamico .balsamico-dose h2 { font-size: clamp(2.3rem, min(11.5vw, 49.45px), 3rem); }
  .oceterie-balsamico .balsamico-use-grid { grid-template-columns: 1fr; }
  .oceterie-balsamico .balsamico-use-grid li,
  .oceterie-balsamico .balsamico-use-grid li:nth-child(2n),
  .oceterie-balsamico .balsamico-use-grid li:nth-last-child(-n+2) {
    min-height: 0;
    border-right: 0;
    border-bottom: 1px solid rgba(217,162,27,.42);
  }
  .oceterie-balsamico .balsamico-use-grid li:last-child { border-bottom: 0; }
  .oceterie-balsamico .balsamico-dose { grid-template-columns: 1fr; }
  .oceterie-balsamico .balsamico-origin .citrocet-story-copy h2,
  .oceterie-balsamico .balsamico-finale h2 { font-size: clamp(2rem, min(10vw, 43px), 2.65rem); }
}

/* V109 - přístupné zvětšení fotografií, bez zásahu do produktových prokliků. */
.oceterie-landing .oc-photo-zoomable { cursor: zoom-in; }
.oceterie-landing .oc-photo-zoomable:focus-visible { outline: 3px solid #df6048; outline-offset: 4px; }
.oceterie-landing .process-visual::after,
.oceterie-landing .customers-image::after,
.oceterie-landing .story-image::after,
.oceterie-landing .image-caption { pointer-events: none; }
html.oc-gallery-open,
html.oc-gallery-open body { overflow: hidden !important; }
#oc-photo-gallery {
  position: fixed;
  inset: 0;
  box-sizing: border-box;
  width: min(1100px, calc(min(100vw, 430px) - 24px));
  max-width: calc(min(100vw, 430px) - 24px);
  max-height: calc(100vh - 24px);
  max-height: calc(100dvh - 24px);
  margin: auto;
  padding: 18px;
  overflow: auto;
  border: 1px solid rgba(255,253,249,.25);
  border-radius: 0;
  background: #15120f;
  color: #fffdf9;
  box-shadow: 0 16px 80px rgba(0,0,0,.55);
}
#oc-photo-gallery:not([open]) { display: none !important; }
#oc-photo-gallery[open] { display: flex; flex-direction: column; gap: 14px; }
#oc-photo-gallery::backdrop { background: rgba(0,0,0,.88); }
#oc-photo-gallery .oc-gallery-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
#oc-photo-gallery h2 {
  margin: 0;
  font-size: 18px;
  line-height: 1.4;
  letter-spacing: 0;
  color: #fffdf9 !important;
  -webkit-text-fill-color: #fffdf9 !important;
}
#oc-photo-gallery button,
#oc-photo-gallery a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  min-width: 44px;
  min-height: 44px;
  padding: 8px 14px;
  border: 1px solid rgba(255,253,249,.45);
  border-radius: 0;
  background: #fffdf9;
  color: #15120f !important;
  -webkit-text-fill-color: #15120f !important;
  font: 600 14px/1.4 Montserrat, sans-serif;
  text-decoration: none;
  cursor: pointer;
}
#oc-photo-gallery button:focus-visible,
#oc-photo-gallery a:focus-visible { outline: 3px solid #df6048; outline-offset: 3px; }
#oc-photo-gallery button:disabled { opacity: .4; cursor: default; }
#oc-photo-gallery .oc-gallery-figure { margin: 0; min-width: 0; }
#oc-photo-gallery .oc-gallery-stage { display: flex; min-height: 100px; justify-content: center; align-items: center; }
#oc-photo-gallery .oc-gallery-image {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: calc(100vh - 225px);
  max-height: calc(100dvh - 225px);
  margin: 0 auto;
  object-fit: contain;
  object-position: center;
}
#oc-photo-gallery [hidden] { display: none !important; }
#oc-photo-gallery .oc-gallery-logo { min-width: 160px; filter: brightness(0) invert(1); }
#oc-photo-gallery .oc-gallery-caption,
#oc-photo-gallery .oc-gallery-status { margin: 12px 0 0; color: #fffdf9; font-size: 14px; line-height: 1.6; text-align: center; }
#oc-photo-gallery .oc-gallery-controls { display: flex; align-items: center; justify-content: center; gap: 12px; flex-wrap: wrap; }
#oc-photo-gallery .oc-gallery-count { min-width: 64px; color: #fffdf9; text-align: center; font-size: 14px; }
#oc-photo-gallery .oc-gallery-original { margin-left: auto; background: transparent; color: #fffdf9 !important; -webkit-text-fill-color: #fffdf9 !important; }
@media (min-width: 0px) {
  #oc-photo-gallery { padding: 12px; }
  #oc-photo-gallery .oc-gallery-original { flex-basis: 100%; margin-left: 0; }
  #oc-photo-gallery .oc-gallery-image { max-height: calc(100vh - 280px); max-height: calc(100dvh - 280px); }
}

/* V109 - osm skutečných fotografií ruční práce, dvě řady po čtyřech. */
.oceterie-landing .handcraft-section {
  padding: 64px 0;
  background: var(--ink-soft);
  color: #fffdf9;
}
.oceterie-landing .handcraft-section h2 {
  margin: 0 0 32px;
  color: #fffdf9;
  -webkit-text-fill-color: #fffdf9;
  font-size: clamp(2.2rem, min(7.4vw, 31.82px), 3.7rem);
  line-height: 1.08;
  letter-spacing: -.04em;
}
.oceterie-landing .handcraft-mosaic {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
  width: 100%;
}
.oceterie-landing .handcraft-mosaic > img {
  display: block;
  width: 100%;
  height: auto;
  min-width: 0;
  aspect-ratio: 1;
  object-fit: cover;
  object-position: center;
}
.oceterie-landing .handcraft-mosaic > img:nth-child(1) { object-position: 50% 60%; }
.oceterie-landing .handcraft-mosaic > img:nth-child(2) { object-position: 50% 78%; }
.oceterie-landing .handcraft-mosaic > img:nth-child(4) { object-position: 40% 50%; }
.oceterie-landing .handcraft-mosaic > img:nth-child(7) { object-position: 45% 50%; }
.oceterie-landing .handcraft-mosaic > img:nth-child(8) { object-position: 50% 55%; }
@media (min-width: 0px) {
  .oceterie-landing .handcraft-section { padding: 48px 0; }
  .oceterie-landing .handcraft-section h2 { margin-bottom: 24px; }
  .oceterie-landing .handcraft-mosaic { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* V107 - malé ilustrační fotografie u čtyř kroků výroby, bez ořezu. */
.oceterie-landing .process-list-illustrated > li {
  grid-template-columns: 28px minmax(0, 1fr) 104px;
  grid-template-areas: "number copy photo";
  gap: 16px;
  align-items: start;
}
.oceterie-landing .process-list-illustrated .process-number {
  grid-area: number;
}
.oceterie-landing .process-list-illustrated > li > div {
  grid-area: copy;
  min-width: 0;
}
.oceterie-landing .process-list-illustrated .process-step-photo {
  grid-area: photo;
  display: block;
  width: 104px;
  height: 104px;
  max-width: 100%;
  margin: 0;
  object-fit: contain;
  object-position: center;
  background: rgba(255, 253, 249, .035);
  border: 1px solid var(--line-light);
}
@media (min-width: 0px) {
  .oceterie-landing .process-list-illustrated > li {
    grid-template-columns: 80px minmax(0, 1fr);
    grid-template-rows: auto 1fr;
    grid-template-areas: "number copy" "photo copy";
    gap: 10px 16px;
  }
  .oceterie-landing .process-list-illustrated .process-step-photo {
    width: 80px;
    height: 80px;
  }
}

/* V104 - originální loga restaurací v bílé variantě, bez změny proporcí. */
.oceterie-landing .hero-chefs.hero-chefs-with-logos {
  grid-template-columns: minmax(0, 1fr) !important;
}
.oceterie-landing .hero-chefs-with-logos .hero-chef {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr) 36px;
  grid-template-rows: auto auto;
  grid-template-areas: "logo identity stars" "logo award award";
  min-height: 136px;
  padding: 24px;
  gap: 10px 24px;
  align-content: center;
  align-items: center;
  border-right: 0;
  border-bottom: 1px solid rgba(255,253,249,.13);
}
.oceterie-landing .hero-chefs-with-logos .hero-chef:last-child {
  border-bottom: 0;
}
.oceterie-landing .hero-chefs-with-logos .hero-restaurant-logo {
  grid-area: logo;
  display: block;
  width: 112px;
  height: 88px;
  max-width: 100%;
  margin: 0;
  object-fit: contain;
  object-position: center;
  filter: brightness(0) invert(1);
}
.oceterie-landing .hero-chefs-with-logos .hero-chef > div {
  grid-area: identity;
  width: 100%;
  min-width: 0;
}
.oceterie-landing .hero-chefs-with-logos .hero-chef .stars {
  grid-area: stars;
  align-self: start;
  justify-self: end;
  padding-top: 2px;
  line-height: 1.4;
  white-space: nowrap;
}
.oceterie-landing .hero-chefs-with-logos .hero-chef-award {
  grid-area: award;
  align-self: start;
  margin: 0;
  padding: 0;
  border: 0;
  line-height: 1.5;
}
@media (min-width: 0px) {
  .oceterie-landing .hero-chefs-with-logos .hero-chef {
    grid-template-columns: 88px minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    grid-template-areas: "logo identity" "logo stars" "logo award";
    min-height: 142px;
    padding: 20px 16px;
    gap: 6px 16px;
  }
  .oceterie-landing .hero-chefs-with-logos .hero-restaurant-logo {
    width: 88px;
    height: 76px;
  }
  .oceterie-landing .hero-chefs-with-logos .hero-chef .stars {
    justify-self: start;
    padding: 0;
  }
}

/* === V114: textový úvod, michelinské rozety a kompaktní nabídka balsamica === */
@media (max-width: 0px) {
  .oceterie-landing .menu-toggle {
    display: inline-flex !important;
    width: auto !important;
    min-width: 86px;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    padding: 8px 7px !important;
  }
  .oceterie-landing .menu-toggle-label {
    display: inline-block !important;
    width: auto !important;
    height: auto !important;
    background: transparent !important;
    color: #fffdf9;
    font-size: 11px;
    font-weight: 750;
    letter-spacing: .14em;
  }
  .oceterie-landing .menu-toggle-lines {
    display: grid !important;
    width: 25px;
    height: auto !important;
    gap: 8px;
    background: transparent !important;
  }
  .oceterie-landing .menu-toggle-lines i {
    display: block;
    width: 25px;
    height: 1px;
    background: currentColor;
  }
  .oceterie-landing .hero {
    display: grid !important;
    grid-template-columns: minmax(0, 1.45fr) minmax(180px, .55fr) !important;
    grid-template-rows: auto auto !important;
    align-items: center;
    gap: 0 28px;
    padding-top: 70px;
  }
  .oceterie-landing .hero-content {
    grid-column: 1 !important;
    grid-row: 1 !important;
    order: initial !important;
    width: 100% !important;
    padding: 78px 0 70px 28px !important;
  }
  .oceterie-landing .hero-content h1 {
    font-size: clamp(3rem, min(5.1vw, 21.93px), 4.45rem) !important;
  }
  .oceterie-landing .hero-media {
    grid-column: 2 !important;
    grid-row: 1 !important;
    order: initial !important;
    width: min(100%, 230px) !important;
    margin-right: 28px;
    justify-self: end;
    overflow: hidden;
    border-radius: 0;
    box-shadow: 0 18px 48px rgba(0,0,0,.3);
  }
  .oceterie-landing .hero-media img {
    width: 100% !important;
    aspect-ratio: 1;
    object-fit: cover !important;
    object-position: 50% 0 !important;
  }
  .oceterie-landing .hero-proof {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
  }
}

.oceterie-landing .michelin-stars {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  min-width: 52px;
  color: #e12726;
  line-height: 1;
}
.oceterie-landing .menu-toggle[aria-expanded="true"] .menu-toggle-label,
.oceterie-landing .menu-toggle[aria-expanded="true"] .menu-toggle-lines {
  transform: none !important;
}
.oceterie-landing .menu-toggle[aria-expanded="true"] .menu-toggle-lines i:first-child {
  transform: translateY(4.5px) rotate(45deg);
}
.oceterie-landing .menu-toggle[aria-expanded="true"] .menu-toggle-lines i:last-child {
  transform: translateY(-4.5px) rotate(-45deg);
}
.oceterie-landing .michelin-stars i {
  display: inline-block;
  font-family: Georgia, serif;
  font-size: 35px;
  font-style: normal;
  line-height: .8;
  transform: rotate(10deg);
  text-shadow: 0 1px 0 rgba(255,255,255,.18);
}

.oceterie-landing .product-image-pair {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 18px;
  background: #f8f4ed;
}
.oceterie-landing .product-image-pair > * {
  display: block;
  overflow: hidden;
  background: #efe8dc;
}
.oceterie-landing .product-image-pair img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: cover;
}
.oceterie-landing .balsamico-detail-link {
  width: fit-content;
  margin: 4px 0 24px;
}
.oceterie-landing .balsamico-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 4px;
}
.oceterie-landing .balsamico-option {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 14px;
  padding: 20px;
  border: 1px solid rgba(26,16,11,.16);
  background: #fffdf9;
}
.oceterie-landing .balsamico-option-featured {
  border-color: rgba(223,96,72,.55);
  background: #fff8f4;
}
.oceterie-landing .balsamico-option h4 {
  margin: 8px 0 0;
  color: #1a100b;
  font-size: 1.32rem;
}
.oceterie-landing .balsamico-option .product-stock {
  margin: 9px 0 0;
}
.oceterie-landing .balsamico-option .price {
  margin-top: auto;
}
.oceterie-landing .balsamico-option .product-buy-button {
  width: 100%;
}
.oceterie-landing .option-kicker {
  color: #746a61;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.oceterie-landing .vinegar-descriptions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 24px 0;
}
.oceterie-landing .vinegar-descriptions > section {
  padding: 20px;
  border-top: 2px solid var(--oc-accent);
  background: rgba(26,16,11,.035);
}
.oceterie-landing .vinegar-descriptions h4 {
  margin: 0 0 12px;
  color: #1a100b;
  font-size: 1.18rem;
  line-height: 1.2;
}
.oceterie-landing .vinegar-descriptions p {
  margin: 0;
  color: #5f5750;
  font-size: 14px;
  line-height: 1.65;
}
.oceterie-landing .vinegar-descriptions .product-use {
  margin-top: 14px;
}
.oceterie-landing .vinegar-options .product-detail-button {
  width: 100%;
  margin-top: 2px;
  text-align: center;
}

@media (min-width: 0px) {
  .oceterie-landing .hero-content { order: 1 !important; padding-top: 105px !important; }
  .oceterie-landing .hero-media {
    order: 2 !important;
    width: min(72%, 330px) !important;
    margin: 0 auto 30px;
    overflow: hidden;
    border-radius: 0;
  }
  .oceterie-landing .hero-media img { aspect-ratio: 1; object-fit: cover !important; object-position: 50% 0 !important; }
  .oceterie-landing .hero-proof { order: 3 !important; }
  .oceterie-landing .menu-toggle-label { display: none !important; }
  .oceterie-landing .menu-toggle-lines { display: grid !important; width: 25px !important; height: auto !important; gap: 8px; background: transparent !important; }
  .oceterie-landing .menu-toggle-lines i { display: block; width: 25px; height: 1px; background: currentColor; }
}
@media (min-width: 0px) {
  .oceterie-landing .product-image-pair { gap: 8px; padding: 10px; }
  .oceterie-landing .balsamico-options { grid-template-columns: 1fr; }
  .oceterie-landing .vinegar-descriptions { grid-template-columns: 1fr; }
}

/* V121 - čistě textový úvod, proklik z fotografií bez popisku a menší fotografie na detailu Balsamica. */
.oceterie-landing .hero {
  display: block !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: visible !important;
  background: #1A100B !important;
}
.oceterie-landing .hero-media,
.oceterie-landing .hero-shade,
.oceterie-landing .hero-note {
  display: none !important;
}
.oceterie-landing .hero-content {
  width: var(--wrap) !important;
  max-width: 820px !important;
  height: auto !important;
  margin-inline: auto !important;
  padding: clamp(132px, min(13vw, 55.9px), 190px) 0 clamp(70px, min(8vw, 34.4px), 110px) !important;
  justify-content: center !important;
}
.oceterie-landing .hero-content .eyebrow,
.oceterie-landing .hero-content h1,
.oceterie-landing .hero-lead {
  width: 100% !important;
  max-width: 100% !important;
}
.oceterie-landing .hero-content h1 {
  font-size: clamp(3.1rem, min(7.2vw, 30.96px), 7rem) !important;
}
.oceterie-landing .hero-proof {
  position: relative !important;
  inset: auto !important;
  width: var(--wrap) !important;
  margin: 0 auto 30px !important;
  transform: none !important;
}
.oceterie-landing .product-detail-image-link::after {
  content: none !important;
  display: none !important;
}
.oceterie-balsamico .balsamico-product-pair {
  width: min(64%, 520px) !important;
  gap: clamp(10px, min(2vw, 8.6px), 22px) !important;
}
.oceterie-balsamico .balsamico-product-pair img {
  max-height: 46vh !important;
}
@media (min-width: 0px) {
  .oceterie-landing .hero-content {
    padding: 116px 0 66px !important;
  }
  .oceterie-landing .hero-content h1 {
    font-size: clamp(2.8rem, min(12vw, 51.6px), 5rem) !important;
  }
}
@media (min-width: 0px) {
  .oceterie-balsamico .balsamico-product-pair {
    width: min(92%, 360px) !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .oceterie-balsamico .balsamico-product-pair img:last-child {
    display: block !important;
  }
  .oceterie-balsamico .balsamico-product-pair img {
    max-height: 34vh !important;
  }
}

/* V122 - jednotné dvousloupcové zápatí na hlavní stránce i detailech. */
.oceterie-landing .footer-top {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 54px clamp(28px, min(7vw, 30.1px), 96px) !important;
}
.oceterie-landing .footer-brand,
.oceterie-landing .footer-column {
  grid-column: auto !important;
}
@media (min-width: 0px) {
  .oceterie-landing .footer-top {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 38px 18px !important;
  }
  .oceterie-landing .brand-footer .brand-word {
    font-size: clamp(1.65rem, min(7vw, 30.1px), 2.35rem) !important;
  }
}


/* V58: fotografie vždy celé, bez ořezu a bez dodatečného podkladu */

/* V126 - fotografie pod úvodním textem a suchary přes celou šířku karty. */
.oceterie-landing .hero-content {
  position: relative !important;
  isolation: isolate;
}
.oceterie-landing .hero-content::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset-block: 0;
  left: 50%;
  width: min(100vw, 430px);
  transform: translateX(-50%);
  background: linear-gradient(90deg, rgba(26,16,11,.74), rgba(26,16,11,.48)), url("assets/images/hero-balsamico-v126.jpg") center 48% / cover no-repeat;
}
.oceterie-landing .hero-content h1,
.oceterie-landing .hero-content .eyebrow,
.oceterie-landing .hero-content .hero-lead {
  color: #fff8ed !important;
  text-shadow: 0 2px 16px rgba(0,0,0,.3);
}
.oceterie-landing .product-image-biscuits {
  width: 100%;
  overflow: hidden;
}
.oceterie-landing .product-image-biscuits img {
  display: block;
  width: 100%;
  height: auto;
}

/* V127 - samostatný velkoobchod a úvodní štítek podle mobilní V125. */
.oceterie-landing .hero-content > .eyebrow {
  display: inline-block;
  padding: 10px 13px 9px;
  margin-bottom: 24px;
  border-left: 3px solid var(--oc-accent);
  background: rgba(26,16,11,.82);
  font-size: .76rem;
  font-weight: 760;
  letter-spacing: .14em;
  line-height: 1.45;
  text-shadow: none;
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
}
.oceterie-landing .single-product-options {
  grid-template-columns: minmax(0, 1fr);
  margin-top: 24px;
}
.oceterie-landing .product-card-wholesale {
  border: 1px solid rgba(223,96,72,.55);
  border-top: 4px solid var(--oc-accent);
}
.oceterie-landing .product-card-wholesale .product-body {
  background: #fff8f4;
}
.oceterie-landing .product-card-wholesale .balsamico-option-featured {
  background: #fff8f4;
}

/* V128 - souvislý podklad velkoobchodu a společné hrany fotografie a obsahu. */
.oceterie-landing .product-card-wholesale {
  box-sizing: border-box;
  background: #fff8f4;
  align-items: stretch;
  padding: 0;
  gap: 0;
  overflow: hidden;
}
.oceterie-landing .product-card-wholesale > .product-image-biscuits,
.oceterie-landing .product-card-wholesale > .product-body {
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  margin: 0;
  align-self: stretch;
  background: transparent;
}
.oceterie-landing .product-card-wholesale .single-product-options {
  min-width: 0;
  width: 100%;
}
.oceterie-landing .product-card-wholesale .balsamico-option-featured {
  background: transparent;
  border: 0;
  border-top: 1px solid rgba(223,96,72,.35);
  padding: 24px 0 0;
}

/* V131 - jednotné mobilní rozložení, na velkých obrazovkách uprostřed. */
.oceterie-landing,
html.oceterie-landing-active body > #oceterie-landing {
  width: min(100%, 430px) !important;
  max-width: 430px !important;
  margin-inline: auto !important;
}
.oceterie-landing .site-header {
  left: 50% !important;
  right: auto !important;
  width: min(100%, 430px) !important;
  max-width: 430px !important;
  transform: translateX(-50%) !important;
}
.oceterie-landing .main-nav.is-open {
  width: min(100vw, 430px) !important;
  max-width: 430px !important;
}

/* V132 - kategorie katalogu. */
.oceterie-landing .catalog-category-title { margin: 0 0 24px; font-size: 2rem; line-height: 1.15; }

/* V133 - nabídka se odkryje až po ověření veřejného katalogu. */
.oceterie-landing [data-public-codes]:not([data-public-visible="true"]) { display: none !important; }
.oceterie-landing .public-single { grid-template-columns: minmax(0, 1fr) !important; }
.oceterie-landing [data-catalog-status][hidden] { display: none !important; }

.oceterie-landing [data-public-codes] .product-kicker[hidden] { display: none !important; }

/* V135 - každé balení na samostatné pozici, celé fotografie bez ořezu. */
.oceterie-landing .product-image-gift img { display:block; width:100%; height:auto; object-fit:contain; }
.oceterie-landing .balsamico-buy-grid { grid-template-columns:1fr !important; }
.oceterie-balsamico .balsamico-product-pair.gift-detail-image { width:100% !important; grid-template-columns:1fr !important; }
.oceterie-balsamico .balsamico-product-pair.gift-detail-image img { width:100%; height:auto; max-height:none !important; }
.oceterie-landing .gift-pack-label { margin-bottom:16px; font-weight:700; }

.oceterie-landing img[src*="-darkove-v135-"] { object-fit: contain !important; width:100%; height:auto !important; max-height:none !important; aspect-ratio:1; }

/* V136 - fotografie odkazují do detailu; ochutnávka. */
.oceterie-landing .product-photo-link { display:block; text-decoration:none; }
.oceterie-landing .product-photo-link:focus-visible { outline:3px solid #df6048; outline-offset:-3px; }
.oceterie-landing .tasting-section { padding-block:36px; }
.oceterie-landing .tasting-section article { padding-block:28px; border-bottom:1px solid rgba(223,96,72,.25); }
.oceterie-landing .tasting-section h2 { font-size:2rem; margin-bottom:24px; }
.oceterie-landing .tasting-section h3 { margin-bottom:16px; }
.oceterie-landing .tasting-section p, .oceterie-landing .tasting-section ul, .oceterie-landing .tasting-section dd { margin-bottom:20px; line-height:1.65; }
.oceterie-landing .tasting-section ul { padding-left:20px; }
.oceterie-landing .tasting-section dt { font-weight:700; }
.oceterie-landing .standalone-product-detail { padding-top:110px; padding-bottom:48px; }

/* V137 - aktuální fotografie ochutnávky v celém formátu. */
.oceterie-landing img[src*="ochutnavka-darkove-v137-"] { object-fit:contain !important; width:100%; height:auto !important; max-height:none !important; aspect-ratio:1; }

/* V138 - emocionální úvod; obličej a lžíce zůstávají nad textem. */
.oceterie-landing .intro-portrait {
  display:grid; grid-template-columns:minmax(0,1fr); position:relative;
  isolation:isolate; margin-top:70px; background:#1a100b;
}
.oceterie-landing .intro-portrait-photo {
  grid-area:1 / 1; display:block; width:100%; height:auto;
  align-self:start; object-fit:contain;
}
.oceterie-landing .intro-portrait::after {
  content:""; grid-area:1 / 1; z-index:0; pointer-events:none;
  background:linear-gradient(to bottom, transparent 44%, rgba(26,16,11,.08) 54%, rgba(26,16,11,.78) 72%, #1a100b 100%);
}
.oceterie-landing .intro-portrait .hero-content {
  grid-area:1 / 1; z-index:1; position:relative !important;
  display:flex !important; flex-direction:column; align-self:start;
  box-sizing:border-box; width:100% !important; max-width:none !important;
  min-height:0 !important; margin:0 !important;
  padding:64% 28px 32px !important; text-align:left;
}
.oceterie-landing .intro-portrait .hero-content::before { content:none !important; }
.oceterie-landing .intro-portrait .eyebrow {
  width:auto !important; margin:0 0 14px !important; padding:0 0 0 11px !important;
  border-left:2px solid #df6048; background:none !important;
  backdrop-filter:none !important; -webkit-backdrop-filter:none !important;
  font-size:10px !important; line-height:1.5; letter-spacing:.12em;
}
.oceterie-landing .intro-portrait .hero-content h1 {
  font-size:clamp(30px,8.7vw,38px) !important; font-weight:600;
  line-height:1.08 !important; letter-spacing:-.035em; margin:0 0 18px !important;
  text-shadow:none !important;
}
.oceterie-landing .intro-portrait .hero-lead {
  font-size:14px !important; line-height:1.65 !important; margin:0 !important;
  max-width:36ch !important; color:#f2e7dc !important; text-shadow:none !important;
}
.oceterie-landing .customers-image img[src*="pani-balicek-v140"] {
  width:100% !important; height:auto !important; object-fit:contain !important;
  aspect-ratio:1; transform:none !important;
}
@media (min-width:821px) {
  .oceterie-landing, html.oceterie-landing-active body > #oceterie-landing {
    width:645px !important; max-width:645px !important; --wrap:calc(100% - 48px);
  }
  .oceterie-landing .site-header, .oceterie-landing .main-nav.is-open {
    width:645px !important; max-width:645px !important;
  }
  .oceterie-landing .header-inner { width:calc(100% - 48px) !important; max-width:none !important; }
  .oceterie-landing .intro-portrait .hero-content { padding:64% 40px 40px !important; }
  .oceterie-landing .intro-portrait .hero-content h1 { font-size:48px !important; }
  .oceterie-landing .intro-portrait .eyebrow { font-size:11px !important; }
  .oceterie-landing .intro-portrait .hero-lead { font-size:16px !important; max-width:43ch !important; }
}

/* V139 - velkoobchod pouze na dotaz v kontaktech. */
.oceterie-landing .wholesale-contact-note { margin-top:16px; line-height:1.65; }
.oceterie-landing .wholesale-contact-note a { display:inline; text-decoration:underline; }

/* V141: viditelný vstup do systémového vrácení Shoptetu. */
.oceterie-landing .withdrawal-access { padding-block:24px; }
.oceterie-landing .withdrawal-button { display:inline-block; padding:14px 18px; border:1px solid #df6048; border-radius:4px; color:#fff; background:#372219; text-decoration:none; line-height:1.5; white-space:normal; }
.oceterie-landing .withdrawal-button:focus-visible { outline:3px solid #df6048; outline-offset:4px; }
.oceterie-landing .withdrawal-access p { margin-top:12px; font-size:14px; line-height:1.6; }
.oceterie-landing [data-pending-product][hidden] { display:none!important; }

/* V145: souvislý mobilní úvod bez překryvu a výškových rezerv. */
@media(max-width:820px){
 .oceterie-landing .intro-section,.oceterie-landing .intro-section > .hero {height:auto!important;min-height:0!important;padding:0!important;gap:0!important;}
 .oceterie-landing .intro-portrait {display:block;margin-top:70px;height:auto;min-height:0;}
 .oceterie-landing .intro-portrait::after {display:none;}
 .oceterie-landing .intro-portrait .hero-content {display:block!important;padding:24px 24px 28px!important;margin:0!important;min-height:0!important;height:auto!important;}
 .oceterie-landing .intro-portrait-photo {display:block;width:100%;height:auto;}
 .oceterie-landing .intro-section .handcraft-section {padding:28px 0!important;margin:0!important;}
}
.oceterie-landing .opy-page {padding-top:70px;}
.oceterie-landing .opy-intro > img,.oceterie-landing .opy-wide,.oceterie-landing .opy-author {display:block;width:100%;height:auto;}
.oceterie-landing .opy-copy {padding-block:28px 36px;}
.oceterie-landing .opy-page h1 {font-size:clamp(32px,7vw,48px);line-height:1.12;letter-spacing:-.03em;margin:16px 0 20px;}
.oceterie-landing .opy-page h2 {font-size:clamp(28px,6vw,38px);line-height:1.18;margin:12px 0 22px;}
.oceterie-landing .opy-page p {line-height:1.7;margin:16px 0;}
.oceterie-landing .opy-section {padding-block:36px;}
.oceterie-landing .opy-topics article {padding:20px 0;border-top:1px solid #644233;}
.oceterie-landing .opy-topics span {color:#df8064;}
.oceterie-landing .opy-topics h3 {font-size:22px;margin-top:12px;}
.oceterie-landing .opy-request {background:#302119;scroll-margin-top:90px;}
.oceterie-landing .opy-form {display:grid;gap:14px;}
.oceterie-landing .opy-form input {box-sizing:border-box;min-width:0;width:100%;padding:16px;background:#fff9f3;color:#261b15;border:1px solid #bd927b;border-radius:3px;font:inherit;font-size:16px;}
.oceterie-landing .opy-form button {white-space:normal;min-height:48px;}
.oceterie-landing .opy-small {font-size:14px;}
.oceterie-landing .opy-author {margin-bottom:24px;}
.oceterie-landing .opy-footer-link {padding-block:20px;}

/* V151: celé nové grafiky a úvodní text mimo ilustraci. */
.oceterie-landing img[src*="-v151-"], .oceterie-landing img[src*="-v152-"] {width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;aspect-ratio:1;transform:none!important;}
.oceterie-landing .intro-section,.oceterie-landing .intro-section > .hero {height:auto!important;min-height:0!important;padding:0!important;gap:0!important;}
.oceterie-landing .intro-portrait {display:block;height:auto;min-height:0;}
.oceterie-landing .intro-portrait::after {display:none;}
.oceterie-landing .intro-portrait .hero-content {display:block!important;padding:24px 24px 28px!important;margin:0!important;min-height:0!important;height:auto!important;}
@media(min-width:821px){.oceterie-landing .intro-portrait .hero-content {padding:32px 40px 40px!important;}}

/* v154: visible navigation for people and crawlers. */
.oc-seo-links{max-width:1254px;margin:0 auto;padding:28px 24px;color:inherit;font:inherit;line-height:1.6}
.oc-seo-links p{font-weight:700;margin:0 0 12px}.oc-seo-links ul{display:flex;flex-wrap:wrap;gap:10px 24px;list-style:none;padding:0;margin:0}
.oc-seo-links a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.oc-seo-links a:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.oc-breadcrumb{padding:16px 24px;max-width:1254px;margin:0 auto;font-size:14px;line-height:1.5;color:inherit}.oc-breadcrumb a{color:inherit}
