/* V6.1 — full-bleed Gutenberg groups and hero without 100vw scrollbar overflow */
:root { --vn-content-width: var(--width, 1200px); }
*, *::before, *::after { box-sizing: border-box; }
/* Do not clip the root scrolling elements: the fixed header lives directly in body. */
body { width: 100%; max-width: 100%; }
#sadrzaj, .vn-page-main, .entry-content { min-width: 0; }
:where(img,video,canvas,svg) { max-width: 100%; }
:where(.wp-block-columns,.wp-block-column,.wp-block-group,.vn56-hero-inner) { min-width: 0; }
/* Compensate full-bleed -50vw techniques: 100vw can exceed the layout viewport due to scrollbar. */
.vn56-hero { width: 100%; max-width: 100%; left: auto; right: auto; margin-left: 0; margin-right: 0; }
/* Gutenberg alignfull blocks remain full bleed with viewport-safe width. */
.vn-page-main > .alignfull { width: 100%; max-width: 100%; margin-inline: 0; }
.vn-page-article .vn-entry-content { min-width: 0; }
.vn-entry-content :where(img,iframe,video) { max-width: 100%; }
/* Keep semantic blog and portfolio headings visually unchanged. */
.vn57-project-article > .vn59-project-hero { display: flex; }

/* WordPress navigation now has proper list semantics. */
.desktop-nav > ul { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: clamp(10px,1.4vw,26px); }
.desktop-nav > ul > li { list-style: none; margin: 0; padding: 0; }
.mobile-nav > ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; align-items: stretch; gap: 10px; }
.mobile-nav > ul li { list-style: none; }
