:root { color-scheme: light; --red: #d21f1f; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 96px; }
body { margin: 0; background: #fff; color: #000; font-family: Montserrat, sans-serif; }
button, input, textarea { font: inherit; color: inherit; }
button, a, summary { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
img { max-width: 100%; }
button:disabled { cursor: default; }
:focus-visible { outline: 3px solid var(--red); outline-offset: 5px; }
:where([hidden]) { display: none !important; }
.site-canvas { width: 100%; container-type: inline-size; }
:where(a) { color: inherit; }
.site-link { text-decoration: none; }
a.site-link { align-content: center; }
a.site-link:hover { text-decoration: none; }
header a.site-link, .hero-buttons a { display: inline-flex; align-items: center; justify-content: center; }
header nav a { min-height: 44px; }
footer a.site-link { min-height: 44px; }
.mobile-only { display: none; }
.skip-link { position: fixed; top: -100px; left: 16px; z-index: 100; padding: 14px 20px; background: #fff; color: #000; border: 3px solid #000; font-weight: 800; }
.skip-link:focus { top: 12px; }
[data-screen-label="Rozcestník"] { min-height: 100dvh; }
[data-screen-label="Rozcestník"] > div:nth-child(2) > a { min-width: 0; }
.screen { width: 100%; min-width: 0; }
.screen img { height: auto; }
.gallery-display { width: 100%; }
.product-photo { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; }
.notice { font: 700 15px/1.6 Montserrat, sans-serif; border-left: 4px solid var(--red); padding: 2px 0 2px 16px; margin: 0 0 24px; }
.gallery-error { margin-top: 20px; }
.sale-disabled { width: 100%; }
#mobile-menu { position: fixed; inset: 0; width: 100%; height: 100dvh; max-width: none; max-height: none; margin: 0; padding: 14px 20px 28px; border: 0; background: #000; color: #fff; overflow-y: auto; }
#mobile-menu[open] { display: flex; flex-direction: column; }
#mobile-menu::backdrop { background: #000; }
#mobile-menu > a { flex: none; }
.menu-open { overflow: hidden; }
summary { list-style: none; cursor: pointer; }
summary::-webkit-details-marker { display: none; }
.disclosure-icon::before { content: '+'; }
details[open] > summary .disclosure-icon::before { content: '−'; }
.faq-item { display: block; }
.faq-item > summary { display: flex; }
.benefit { display: block; }
.benefit > summary { min-height: 242px; display: flex; flex-direction: column; }
.benefit > summary > :last-child { margin-top: auto; }
.benefit > summary .disclosure-icon { flex: none; }
.guide-pending, .guide-ready { display: flex; align-items: center; gap: 16px; width: 100%; padding: 16px 0; border-top: 3px solid currentColor; min-height: 64px; }
.guide-pending { cursor: default; }
.guide-number { font: 400 15px 'Archivo Black', sans-serif; width: 32px; flex: none; color: var(--red); }
.guide-title { flex: 1; font-size: 17px; font-weight: 800; line-height: 1.35; }
.pending-tag { border: 2px solid var(--red); color: var(--red); font: 400 11px/1.3 'Archivo Black', sans-serif; padding: 5px 7px; text-transform: uppercase; }
button[data-group] { transition: background .15s, color .15s, border-color .15s; }
button[data-group="showKinds"], button[data-group="showPals"] { background: #000; color: #fff; }
button[data-group="showKinds"][aria-pressed="true"], button[data-group="showPals"][aria-pressed="true"] { background: var(--red); color: #fff; }
button[data-group="palOpts"] { border-color: #000; }
button[data-group="palOpts"][aria-pressed="true"] { border-color: var(--red); }
button[data-group="palOpts"] > span:first-child { background: #fff; }
button[data-group="palOpts"][aria-pressed="true"] > span:first-child { background: var(--red); }
button[data-group="prodThumbs"] { border-color: #000; }
button[data-group="prodThumbs"][aria-pressed="true"] { border-color: var(--red); }
button[data-group="sizeOpts"], button[data-group="faqGroups"], button[data-group="inspFilters"] { background: #fff; color: #000; }
button[data-group="sizeOpts"][aria-pressed="true"], button[data-group="faqGroups"][aria-pressed="true"], button[data-group="inspFilters"][aria-pressed="true"] { background: #000; color: #fff; }
[data-screen-label="Kontakt"] input:disabled, [data-screen-label="Kontakt"] textarea:disabled { background: #f5f3ee; opacity: 1; }
.comparison > div { overflow-wrap: anywhere; }
@media (max-width: 1079px) {
  .desktop-only { display: none; }
  .mobile-only { display: flex; }
}
@media (max-width: 899px) {
  .home-visual { display: none; }
}
@media (max-width: 639px) {
  .hero-buttons { display: none; }
  .benefit { min-height: 0; padding: 16px 18px; }
  .benefit > summary { min-height: 0; gap: 10px; }
  .benefit > summary > :last-child { padding-top: 0; }
  .help-tiles { grid-template-columns: minmax(0, 1fr); }
  .guide-pending, .guide-ready { gap: 10px; flex-wrap: wrap; }
  .guide-title { min-width: 180px; }
  .guide-pending .pending-tag { margin-left: 42px; }
  .comparison { font-size: 12px; }
  .comparison > div { padding: 10px 6px; }
  [data-screen-label="Kontakt"] h1 { overflow-wrap: anywhere; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition: none !important; }
}
