/* Bac Orchids — herbouw 2026-08: design-tokens */
:root {
  --kleur-tekst: #666;
  --kleur-donker: #222;
  --kleur-wit: #fff;
  --kleur-lijn: #ccc;
  --kleur-actie: #0074d4;
  --kleur-band: #425c74;
  --kleur-voet: #5e7690;
  --kleur-vlak: #eee;
  --kleur-hint: #6e6e6e;
  --font-kop: 'BenchNine', 'PT Sans Narrow', sans-serif;
  --font-tekst: overpass, 'PT Sans', sans-serif;
}

@font-face {
  font-family: 'Pathway Gothic One';
  font-style: normal;
  font-weight: 400;
  src: url('inc/skins/fese/fnt/pathway-gothic-one/pathway-gothic-one-v4-latin-ext_latin-regular.eot');
 /* IE9 Compat Modes */
  src: url('inc/skins/fese/fnt/pathway-gothic-one/pathway-gothic-one-v4-latin-ext_latin-regular-.eot#iefix') format('embedded-opentype'), /* IE6-IE8 */
                    url('inc/skins/fese/fnt/pathway-gothic-one/pathway-gothic-one-v4-latin-ext_latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
                    url('inc/skins/fese/fnt/pathway-gothic-one/pathway-gothic-one-v4-latin-ext_latin-regular.woff') format('woff'), /* Modern Browsers */
                    url('inc/skins/fese/fnt/pathway-gothic-one/pathway-gothic-one-v4-latin-ext_latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
                    url('inc/skins/fese/fnt/pathway-gothic-one/pathway-gothic-one-v4-latin-ext_latin-regular.svg#PathwayGothicOne') format('svg');
 /* Legacy iOS */;
}

@font-face {
  font-family: 'Overpass';
                src: url('inc/skins/fese/fnt/overpass/Overpass-Italic.eot'); /* IE9 Compat Modes */
                src: url('inc/skins/fese/fnt/overpass/Overpass-Italic-.eot#iefix') format('embedded-opentype'), /* IE6-IE8 */
                     url('inc/skins/fese/fnt/overpass/Overpass-Italic.woff') format('woff'), /* Modern Browsers */
                     url('inc/skins/fese/fnt/overpass/Overpass-Italic.ttf') format('truetype'), /* Safari, Android, iOS */
                     url('inc/skins/fese/fnt/overpass/Overpass-Italic.svg#Overpass-Italic') format('svg'); /* Legacy iOS */
                font-style: italic;
                font-weight: 600;
                text-rendering: optimizeLegibility;
}

@font-face {
  font-family: 'Overpass';
                src: url('inc/skins/fese/fnt/overpass/Overpass-Light.eot'); /* IE9 Compat Modes */
                src: url('inc/skins/fese/fnt/overpass/Overpass-Light-.eot#iefix') format('embedded-opentype'), /* IE6-IE8 */
                     url('inc/skins/fese/fnt/overpass/Overpass-Light.woff') format('woff'), /* Modern Browsers */
                     url('inc/skins/fese/fnt/overpass/Overpass-Light.ttf') format('truetype'); /* Safari, Android, iOS */
                font-style: normal;
                font-weight: normal;
                text-rendering: optimizeLegibility;
}

@font-face {
  font-family: 'Overpass';
                src: url('inc/skins/fese/fnt/overpass/Overpass-Light-Italic.eot'); /* IE9 Compat Modes */
                src: url('inc/skins/fese/fnt/overpass/Overpass-Light-Italic-.eot#iefix') format('embedded-opentype'), /* IE6-IE8 */
                     url('inc/skins/fese/fnt/overpass/Overpass-Light-Italic.woff') format('woff'), /* Modern Browsers */
                     url('inc/skins/fese/fnt/overpass/Overpass-Light-Italic.ttf') format('truetype'), /* Safari, Android, iOS */
                     url('inc/skins/fese/fnt/overpass/Overpass-Light-Italic.svg#Overpass-LightItalic') format('svg'); /* Legacy iOS */
                font-style: italic;
                font-weight: normal;
                text-rendering: optimizeLegibility;
}

@font-face {
  font-family: 'Overpass';
                src: url('inc/skins/fese/fnt/overpass/Overpass-ExtraLight.eot'); /* IE9 Compat Modes */
                src: url('inc/skins/fese/fnt/overpass/Overpass-ExtraLight-.eot#iefix') format('embedded-opentype'), /* IE6-IE8 */
                     url('inc/skins/fese/fnt/overpass/Overpass-ExtraLight.woff') format('woff'), /* Modern Browsers */
                     url('inc/skins/fese/fnt/overpass/Overpass-ExtraLight.ttf') format('truetype'), /* Safari, Android, iOS */
                     url('inc/skins/fese/fnt/overpass/Overpass-ExtraLight.svg#Overpass-ExtraLight') format('svg'); /* Legacy iOS */
                font-style: normal;
                font-weight: 300;
                text-rendering: optimizeLegibility;
}

@font-face {
  font-family: 'Overpass';
                src: url('inc/skins/fese/fnt/overpass/Overpass-ExtraLight-Italic.eot'); /* IE9 Compat Modes */
                src: url('inc/skins/fese/fnt/overpass/Overpass-ExtraLight-Italic-.eot#iefix') format('embedded-opentype'), /* IE6-IE8 */
                     url('inc/skins/fese/fnt/overpass/Overpass-ExtraLight-Italic.woff') format('woff'), /* Modern Browsers */
                     url('inc/skins/fese/fnt/overpass/Overpass-ExtraLight-Italic.ttf') format('truetype'), /* Safari, Android, iOS */
                     url('inc/skins/fese/fnt/overpass/Overpass-ExtraLight-Italic.svg#Overpass-ExtraLightItalic') format('svg'); /* Legacy iOS */
                font-style: italic;
                font-weight: 300;
                text-rendering: optimizeLegibility;
}
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
body,html {
  min-height: 100%;
}
#myVideo {
  background: #fff;
  position: fixed;
  right: 0;
  bottom: 0;
  min-width: 100%;
  min-height: 100%;
}
body {
  margin: 0;
}
* {
  box-sizing: border-box;
}
article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary {
  display: block;
}
audio,canvas,progress,video {
  display: inline-block;
  vertical-align: baseline;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
[hidden],template {
  display: none;
}
a {
  background-color: transparent;
  color: var(--kleur-actie);
}
a:active,a:hover {
  outline: 0;
}
b,strong {
  font-weight: 700;
  text-transform: uppercase;
}
dfn {
  font-style: italic;
}
h1 {
  font-size: 2em;
  margin: .67em 0;
}
mark {
  background: #ff0;
  color: #000;
}
small {
  font-size: 80%;
}
sub,sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sup {
  top: -.5em;
}
sub {
  bottom: -.25em;
}
img {
  border: 0;
}
svg:not(:root) {
  overflow: hidden;
}
figure {
  margin: 1em
40px;
}
hr {
  box-sizing: content-box;
  height: 1px;
  background: var(--kleur-lijn);
  border: none;
}
pre {
  overflow: auto;
}
code,kbd,pre,samp {
  font-family: monospace,monospace;
  font-size: 1em;
}
button,input,optgroup,select,textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}
button {
  overflow: visible;
}
button,select {
  text-transform: none;
}
button,html input[type=button],input[type=reset],input[type=submit] {
  -webkit-appearance: button;
  cursor: pointer;
}
button[disabled],html input[disabled] {
  pointer-events: none;
  opacity: 0.3;
  cursor: default;
}
a.onderstreept { text-decoration: underline !important; }
.links { text-align: left !important; }
.detail-nav .rechts { float: right !important; }
button::-moz-focus-inner,input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
input {
  line-height: normal;
}
input[type=checkbox],input[type=radio] {
  box-sizing: border-box;
  padding: 0;
}
input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button {
  height: auto;
}
input[type=search] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}
input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}
fieldset {
  border: 1px
solid silver;
  margin: 0
2px;
  padding: .35em .625em .75em;
}
legend {
  border: 0;
  padding: 0;
}
textarea {
  overflow: auto;
}
optgroup {
  font-weight: 700;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
td,th {
  padding: 0;
}
body {
  line-height: 1.5;
  font-size: 100%;
}
body,h1,h2,h3,h4,h5,h6 {
  font-family: lato,helvetica neue,arial,sans-serif;
}
h1,h2,h3,h4,h5,h6 {
  font-weight: 400;
  line-height: 1.25;
}
code,pre,samp {
  font-family: Source Code Pro,Consolas,monospace;
  font-size: inherit;
}
pre {
  overflow-x: scroll;
}
code {
  max-width: 100%;
  overflow: auto;
}
h1 {
  font-size: 45px;
  line-height: 1.25;
  letter-spacing: -1px;
}
h2 {
  font-size: 22px;
  line-height: 1.25;
}
h3 {
  font-size: 20px;
}
.txtS3,h4 {
  font-size: 16px;
}
h5 {
  font-size: 14px;
}
h6 {
  font-size: 12px;
}
h1 a,h2 a,h3 a,h4 a,h5 a,h6
a {
  text-decoration: none;
}
h1,h2,h3,h4,h5,h6,ol,p,ul {
  margin: 0
0 20px;
}
.tekst-midden {
  text-align: center;
}
.tekst-rechts {
  text-align: right;
}
blockquote,q {
  margin: 0;
  padding: 0;
  quotes: "\201C" "\201D" "\2018" "\2019";
}
.nadruk,strong {
  font-weight: 700;
}
small {
  font-size: 75%;
  opacity: .75;
}
.kader {
  max-width: 100%;
}
.kader {
  margin: 0 auto;
  display: inherit;
  overflow-x: hidden;
}
.kader.kader {
  max-width: 1020px;
  width: 100%;
}
.knop {
  background: #f7f7f7;
  color: #444;
  display: inline-block;
  text-align: center;
  cursor: pointer;
  text-decoration: none;
  position: relative;
  border-radius: 3px;
}
.knop:last-child {
  margin-right: 0;
}
.knop:active {
  background: #dedede;
}
.knop:focus {
  outline: none;
}
.knop[disabled] {
  opacity: .65;
  pointer-events: none;
}
.knop.kader {
  padding: 10px
20px;
}
.bar--centered :not(:first-child):not(:last-child) {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-basis: 33.3%;
  -ms-flex-preferred-size: 33.3%;
  flex-basis: 33.3%;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.bar--centered :not(:first-child):not(:last-child) {
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0;
}
.beeld,img {
  max-width: 100%;
}
.beeld {
  display: inline-block;
  overflow: hidden;
  position: relative;
  background-position: 50%;
}
.beeld
img {
  display: block;
  z-index: 0;
}
.beeld--vullend {
  background-size: cover;
}
.beeld--vullend
img {
  object-fit: cover;
  height: 100%;
  width: 100%;
  position: absolute;
}
.beeld.kader {
  width: 256px;
}
.onderschrift {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 10px;
  background: linear-gradient(transparent,#000);
  color: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
}
.menu-lijst:after {
  content: " ";
  display: block;
  height: 0;
  clear: both;
}
.menu-lijst {
  margin: 0;
  padding: 0;
  z-index: 50;
}
.menu-lijst
ul {
  margin: 0;
  padding: 0;
}
.menu-lijst li,.menu-lijst
ul {
  list-style: none;
}
.menu-item {
  position: relative;
  display: block;
  padding: 9px
14px;
  border: 1px
solid transparent;
  color: inherit;
  text-decoration: none;
  text-overflow: ellipsis;
  cursor: pointer;
  white-space: nowrap;
}
.menu-item:hover {
  /* background: rgba(0,0,0,.011); */
}
.menu-item
.menu-lijst {
  margin-left: 30px;
  line-height: 2;
}
.menu-lijst--rij {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.veld {
  position: relative;
  overflow: hidden;
  max-width: 100%;
  padding-left: 10px;
  padding-right: 10px;
}
input:invalid {
  color: #f4514c;
  fill: #f4514c;
  box-shadow: none;
}
input[disabled],select[disabled],textarea[disabled] {
  color: #999;
}
.veld
label {
  position: relative;
  white-space: nowrap;
  text-overflow: ellipsis;
  padding: 10px
0;
  overflow: hidden;
}
.veld
input {
  border: 1px
solid var(--kleur-lijn);
  background: transparent;
  padding: 10px;
  box-sizing: border-box;
  width: 100%;
}
.veld
select {
  border: 1px
solid var(--kleur-lijn);
  padding: 10px
30px 10px 5px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
  background: transparent url("data:image/svg+xml,\<svg height='50' viewBox='0 0 50 50' width='50' xmlns='http://www.w3.org/2000/svg'\>\<path fill='none' d='M0 0h50v50H0z'/\>\<path fill='grey' d='M47.25 15l-2.086-2.086L25 33.078 4.836 12.914 2.75 15 25 37.25'/\>\</svg\>") no-repeat;
  background-size: 16px 16px;
  background-position: right 10px center;
}
.veld
.rooster {
  margin: 0;
}
[type=checkbox] {
  width: auto;
  position: relative;
  margin: -2px 3px 0 0;
}
.veld:not(.veld--actief):last-of-type {
  border-bottom: none;
}
.veld .cel
input {
  margin-bottom: 8px;
}
.veld input:focus,.veld select:focus,.veld textarea:focus {
  outline: none;
}
.veld
textarea {
  box-sizing: border-box;
  border: 0;
  padding: 10px
20px 10px 0;
  width: 100%;
  background: transparent;
  resize: vertical;
  min-height: 72px;
}
.veld input[type=file] {
  position: absolute;
  top: -9999px;
}
.veld input[type=file]+label {
  border: none;
  white-space: nowrap;
  color: var(--kleur-actie);
  text-align: right;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 200px;
  margin-left: auto;
}
.veld label
select {
  padding: 0;
  width: 100%;
}
::-webkit-input-placeholder {
  color: var(--kleur-hint);
}
:-moz-placeholder,::-moz-placeholder {
  color: var(--kleur-hint);
}
:-ms-input-placeholder {
  color: var(--kleur-hint);
}
input:-webkit-autofill {
  box-shadow: inset 0 0 0 1000px #fff!important;
}
label
input {
  width: auto!important;
}
[type=search]:focus {
  background: #fff;
  color: #444;
}
.veld+.rooster:before,.veld+.veld {
  border-top: 1px solid #ddd;
}
.veld+.rooster:before {
  content: " ";
  position: absolute;
  left: 10px;
  right: 10px;
  top: 0;
}
.cel.veld {
  border-top: none;
}
.kvs--table .kv:not(:last-child) {
  border-bottom: 1px solid #ddd;
}
.art-set--bordered .art:not(:last-child) {
  border-bottom: 1px solid rgba(0,0,0,.1);
}
.art-set--striped .art:not(:last-child) {
  border-bottom: 1px dashed rgba(0,0,0,.1);
}
li li a+ul:after {
  top: -16px;
}
li li a+ul:after {
  content: "";
  display: block;
  position: absolute;
  left: -4px;
  height: 16px;
  width: 8px;
  background-color: #fff;
}

@-webkit-keyframes
a {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }

  to {
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn);
  }
}

@keyframes
a {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }

  to {
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn);
  }
}
.timeline .event:not(:last-child) {
  margin-bottom: 20px;
}
.knop,button,input[type=button] {
  padding: 9px
14px;
  border: 1px
solid transparent;
}
.knop {
  margin-right: 10px;
}
.rooster {
  position: relative;
  margin: 0
-2px;
  overflow-x: hidden;
}
.rooster:after {
  content: " ";
  height: 0;
  clear: both;
  display: block;
}
.rooster
.cel {
  position: relative;
  float: left;
  margin-left: 2px;
  margin-right: 2px;
  margin-bottom: 4px;
}
.vul {
  width: 100%;
}
.cel--vol {
  width: calc(100% - 4px);
}
.cel--half {
  width: calc(50% - 4px);
}
.cel--derde {
  width: calc(33.333% - 4px);
}
.cel--tweederde {
  width: calc(66.66666% - 4px);
}
.cel--kwart {
  width: calc(25% - 4px);
}
.cel--twaalfde {
  width: calc(8.333% - 4px);
}
.hoog-driekwart:before {
  width: 10px;
  background: pink;
  float: left;
  margin-left: -10px;
  content: " ";
  display: block;
  -webkit-flex: 0;
  -ms-flex: 0;
  flex: 0;
}
.hoog-driekwart:before {
  padding-bottom: 75%;
}
.dicht {
  display: none!important;
}

@media(max-width:680px) {
.mobiel-vol {
    width: calc(100% - 4px);
  }
.mobiel-verborgen {
    display: none!important;
  }
}

@media(min-width:681px) and (max-width:1024px) {
.tablet-half {
    width: calc(50% - 4px);
  }
}

@media
print {
*,:after,:before,:first-letter,:first-line {
    background: transparent!important;
    color: #000!important;
    box-shadow: none!important;
    text-shadow: none!important;
  }
a,a:visited {
    text-decoration: underline;
  }
a[href]:after {
    content: " (" attr(href) ")";
  }
a[href^="#"]:after,a[href^="javascript:"]:after {
    content: "";
  }
blockquote,pre {
    border: 1px
solid #999;
    page-break-inside: avoid;
  }
thead {
    display: table-header-group;
  }
img,tr {
    page-break-inside: avoid;
  }
img {
    max-width: 100%!important;
  }
h2,h3,p {
    orphans: 3;
    widows: 3;
  }
h2,h3 {
    page-break-after: avoid;
  }
}
#head {
}
#head .kader {
  position: relative;
  overflow: visible;
}
#head .kader:after {
  content: " ";
  position: absolute;
  height: 1px;
  background: var(--kleur-lijn);
  left: 15px;
  right: 15px;
  bottom: -30px;
}
.logo-beeld { position: absolute; top: 10px; left: 30px; width: 330px; }
.logo-beeld { position: absolute; bottom: -42px; left: 30px; }
#page {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
#body {
  flex: 1;
}
#nav {
  /* background: rgba(0,0,0,.9); */
  background: rgba(0,0,0,.8);
  position: fixed;
  z-index: 9990;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  text-align: center;
  display: flex;
}
#nav li,#nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
  align-self: center;
}
#nav a {
  display: block;
  text-decoration: none;
  color: rgba(255,255,255,.8);
  padding: 10px 20px;
  transition: .5s all;
  font: 24px/30px var(--font-kop);
  text-transform: uppercase;
  -moz-osx-font-smoothing: grayscale;
}
#nav a:hover {
  background: var(--kleur-donker);
}
#nav .sluit-knop {
  position: absolute;
  top: 20px;
  right: 20px;
  background: 0 0;
}
h1 {
  font: 120px/120px var(--font-kop);
  text-transform: uppercase;
  text-indent: -5px;
  line-height: 0.8;
  letter-spacing: -3px;
  color: var(--kleur-donker);
  margin: 10px 10px 10px 0px !important;
}
h2 {
  font: 200 26px/30px var(--font-tekst);
  text-transform: uppercase;
}
h3 {
  font: 200 20px/20px var(--font-tekst);
  text-transform: uppercase;
}
h4 {
  font: 200 15px/20px var(--font-tekst);
  text-transform: uppercase;
  margin-bottom: 10px;
}
body,p {
  font-family: var(--font-tekst);
  color: var(--kleur-tekst);
}
h1+h2 {
  font: 200 26px/30px var(--font-tekst);
  text-transform: uppercase;
  margin-bottom: 120px;
  color: #777;
}
blockquote {
    font-family: var(--font-tekst);
    text-transform: uppercase;
    text-indent: 1em;
    font-size: 1.3em;
    border-left: 5px solid grey;
    margin-left: 3em;
    padding: 1em 0em 0.5em 0em;
}
.kader {
  padding: 0 20px;
}
.kader {
  overflow-x: visible;
}
.kaart {
  position: relative;
  display: flex;
  overflow: hidden;
  background: #111;
  color: #fff;
  flex-direction: row;
  text-decoration: none;
}
.kaart>div {
  position: relative;
  float: left;
  left: 100%;
  margin-left: -100%;
  z-index: inherit;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
}
.kaart .kader {
  height: 100%;
}
.kaart .beeld {
  opacity: .90;
  transition: all 0.8s;
}
.kaart .ruim {
  padding: 20px;
}
.kaart .kaart-voet::after {
  content: " ";
  position: absolute;
  display: block;
  height: 180%;
  top: 25%;
  left: 0;
  right: 0;
  background: linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.72));
  z-index: 2;
  transition: top .8s;
}
.kaart:hover .kaart-voet::after {
  top: -25%;
}
.kaart:hover .beeld {
  opacity: 1;
  transform: scale(1.15);
}
.kaart-voet {
  position: relative;
  align-self: flex-end;
  width: 100%;
  margin-top: auto;
}
.kaart h2,.kaart h3,.kaart h4,.kaart p {
  color: #fff;
  position: relative;
  z-index: 3;
  margin: 0 0 5px 0;
  font-weight: 200;
}
.fotorooster {
  overflow: hidden;
  margin: 4px 0 24px 0;
}
.fotorooster img {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  image-rendering: crisp-edges;
  object-fit: cover;
}
.fotorooster>div {
  background: #353a4b;
  width: calc(50% - 2px);
  text-align: center;
  overflow: hidden;
  position: relative;
}
.fotorooster>.fotorooster--a {
  float: left;
}
.fotorooster--b {
  float: right;
  margin-bottom: 4px;
}
.fotorooster--c {
  float: right;
}
.fotorooster--a:after {
  content: " ";
  display: block;
  padding-bottom: 100%;
  background: #0f0;
  float: left;
  width: 10px;
  margin-left: -10px;
  position: relative;
}
.fotorooster--b:after {
  content: " ";
  display: block;
  padding-bottom: calc(50% - 2px);
  background: #0f0;
  float: left;
  width: 10px;
  margin-left: -10px;
  position: relative;
}
.fotorooster--c:after {
  content: " ";
  display: block;
  padding-bottom: calc(50% - 2px);
  background: #0f0;
  float: left;
  width: 10px;
  margin-left: -10px;
  position: relative;
}

@media only screen and (max-width:680px) {
.fotorooster>div {
    width: 100%;
    text-align: center;
    overflow: hidden;
    position: relative;
  }
.fotorooster>.fotorooster--a {
    margin-bottom: 4px;
  }
}
#foot {
  background: var(--kleur-voet);
  position: relative;
  /* color: #000; MM 2026-08 */
  color: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font: 14px/18px var(--font-tekst);
  text-transform: uppercase;
}
#foot--a {
  color: #fff;
  background-size: cover;
  padding-top: 80px;
}
#foot blockquote {
  padding: 40px 40px 40px 0;
}
#foot--a blockquote::before {
  font: 400 50px/30px var(--font-tekst);
  color: rgba(255,255,255,.66);
}
.voet-logo {
  position: relative;
  float: right;
  width: 250px;
  /*height: 183px; MM */
  height: 52px;
}
.voet-logo div {
  position: absolute;
  left: 0;
  top: 15px;
  height: 100%;
  width: 100%;
  z-index: 99;
}

#foot .voet-logo div {
  background: url("image/logo-bacorchids-text-small.png") no-repeat;
}
#foot .menu-lijst {
  margin: 0 0 20px 0;
  padding: 0;
  /* border-bottom: 1px solid var(--kleur-donker); MM */
  border-bottom: 1px solid #555;
}
#foot .menu-item {
  font: 400 14px/20px var(--font-tekst);
  margin-right: 10px;
  padding: 10px 0;
}
#foot--b {
  /* background: #829ebd; MM 2026-08 */
  background: var(--kleur-band);
  padding: 10px 0 20px 0;
}
#foot a {
  /* color: var(--kleur-tekst); MM */
  color: #fff;
  text-decoration: none;
  transition: .5s;
}
#foot a:hover {
  color: #ff0;
}

@keyframes beatIt {
  100% {
    background-position: -150px -50px;
  }
}

@keyframes favIt {
  100% {
    background-position: -300px -100px;
  }
}
.kaartenset .kaart .ruim {
  padding: 20px 80px 20px 20px;
}
.ruim {
  padding: 20px;
}
.verborgen {
  display: none;
}
.paginering {
  font-size: 18px;
  text-align: center;
  margin: 20px 0;
}
.paginering a {
  display: none;
  background: var(--kleur-vlak);
  padding: 20px 30px;
  text-decoration: none;
  color: #444;
}
.paginering a.volgende,.paginering a.vorige {
  display: inline-block;
  border-radius: 2px;
}
.kaart-link {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: -300%;
  z-index: 8;
  text-indent: -999px;
}
.veld {
  padding: 10px 0;
}
.veld label {
  padding: 5px 0;
  display: block;
}
.veld+.rooster::before,.veld+.veld {
  border-top: none;
}
.veld textarea {
  border: 1px solid var(--kleur-lijn);
  padding: 10px;
}
.knop.facebook {
  background: #274687;
}

@media only screen and (max-width:680px) {
.menu-lijst.menu-lijst--rij {
    flex-direction: column;
    flex: none;
  }
#foot--b .menu-item {
    float: none;
    margin: 0;
  }
h1 {
    font: 90px/90px "pathway gothic one";
    text-indent: -3px;
  }
h1+h2 {
    font: 200 20px/25px var(--font-tekst);
    margin-bottom: 80px;
  }
#nav a {
    padding: 10px 5px;
  }
}
hr {
  margin: 40px 0;
}
.detail-nav {
  border: 0px solid var(--kleur-lijn);
  overflow: hidden;
}
.detail-nav a {
  font: 14px/14px var(--font-tekst);
  color: var(--kleur-tekst);
  text-transform: uppercase;
  text-decoration: none;
  padding: 12px 14px 10px 14px;
  border: 1px solid var(--kleur-lijn);
  float: left;
}
.detail-nav a:hover {
  background: #f4f4f4;
}
#head {
  position: relative;
  left: 0;
  right: 0;
  z-index: 9;
}
.volscherm {
  height: 100vh;
  background-size: cover;
  background-position: center left;
  color: #fff;
}
.volscherm>div {
  /* background: rgba(0,0,0,.33); MM */
  background: rgba(0,0,0,.1); 
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.volscherm h2,.volscherm h3,.volscherm h4,.volscherm p {
  color: #fff;
}
.menu-knop {
  fill: #fff;
}
.cel img {
  width: 100%;
}
#content {
  padding: 40px 0;
}
#page {
  min-height: 100%;
}
#head {
  margin-bottom: 0px;
}
h1+h2 {
  margin-bottom: 20px;
}

@media only screen and (max-width:600px) {
h1 {
    font: 60px/60px "pathway gothic one";
    text-indent: -3px;
  }
}
h2+div {
  margin-bottom: 40px;
}
#content {
  padding: 20px 0;
  padding-top: 0;
}

@media only screen and (max-width:480px) {
#body>#content {
    padding-top: 0;
  }
}

@media all and (-ms-high-contrast:none) {
#page {
    display: block;
  }
::-ms-backdrop #page {
    display: block;
  }
}
#head .kader {
  margin-top: 55px;
}
.menu-knop {
  padding: 10px;
  border-left: none!important;
  position: relative;
  top: -5px;
}
.menu-knop:after {
  display: none;
}
.pg-homepage .menu-knop {
  top: -8px;
}
#nav {
  width: 400px;
  /* background: rgba(0,0,0,.9); MM */
  background: rgba(0,0,0,.8);
  position: fixed;
  height: 100%;
  height: 100vh;
  min-height: 100vh;
  display: block!important;
  right: 0;
  bottom: auto;
  top: 0;
  left: auto;
  z-index: 9032324;
  -webkit-transition: all .5s;
  -moz-transition: all .5s;
  -ms-transition: all .5s;
  -o-transition: all .5s;
  transition: all .5s;
}

@media only screen and (max-width:480px) {
#nav {
    width: 100%;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
  }
}

@media only screen and (max-width:1025px) {
#nav {
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
  }
}

@media only screen and (max-height:700px) {
#nav {
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
  }
}
#nav.dicht {
  right: -400px;
}

@media only screen and (max-width:480px) {
#nav.dicht {
    right: -100%;
  }
}
#nav>.kader.kader {
  width: 100%;
  margin-top: 100px;
}

@media only screen and (max-width:480px) {
#nav>.kader.kader {
    margin-top: 80px;
  }
}
#nav a {
  text-align: left;
}
#nav a span {
  display: block;
  color: rgba(255,255,255,.65);
  font-size: 16px;
  text-transform: none;
}
#foot .voet-witbalk {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 84px;
  background-color: #fff;
}
#foot blockquote {
  padding: 60px 40px 40px 0;
}

@media only screen and (max-width:1024px) {
#foot #foot--b,#foot .voet-inhoud {
    overflow-x: hidden;
    width: 100%;
  }
}
#foot .menu-lijst {
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media only screen and (max-width:1024px) {
#foot .menu-lijst {
    width: 100%;
  }
}
#foot .menu-item:nth-last-child(2):before {
  display: none;
}
#foot .menu-item:before {
  content: "\007C";
  float: right;
  margin-left: 10px;
}

@media (max-width:680px) {
#foot .menu-item:before {
    display: none;
  }
}
#foot .voet-telefoon {
  display: inline-block;
  float: right;
  font: 400 14px/20px var(--font-tekst);
  margin-right: 0;
  margin-left: auto;
  padding: 10px 0;
}

@media only screen and (max-width:890px) {
#foot .voet-telefoon {
    display: block;
    float: none;
    margin: 0;
  }
}
#foot .voet-rechts {
  clear: both;
  float: none;
  margin-top: 10px;
}

@media only screen and (min-width:770px) {
#foot .voet-rechts {
    margin-top: -20px;
    clear: none;
    float: right;
  }
}
.contact-strook .contact-strook-inhoud {
  display: block;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  width: 100%;
  padding: 20px 0;
  border-top: 1px solid var(--kleur-lijn);
  border-bottom: 1px solid var(--kleur-lijn);
}

@media only screen and (max-width:600px) {
.contact-strook .contact-strook-inhoud {
    display: block;
  }
}
.contact-strook .contact-strook-inhoud .cta-vak {
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  width: 50%;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  padding-right: 25px;
}
.contact-strook .contact-strook-inhoud .cta-vak.rechts {
  padding-right: 0;
  padding-left: 25px;
}

@media only screen and (max-width:600px) {
.contact-strook .contact-strook-inhoud .cta-vak.rechts {
    margin-top: 20px;
  }
}

@media only screen and (max-width:600px) {
.contact-strook .contact-strook-inhoud .cta-vak {
    padding: 0!important;
    width: 100%;
  }
}

@media only screen and (max-width:960px) {
.contact-strook .contact-strook-inhoud {
    padding-bottom: 20px;
  }
}

@media only screen and (max-width:600px) {
.contact-strook .contact-strook-inhoud {
    flex-flow: column;
    text-align: center;
  }
}
.contact-strook .contact-strook-inhoud .contact-strook-kop {
  font-weight: 400!important;
  display: inline-block;
  float: left;
  line-height: 50px!important;
  margin-right: 15px;
}

@media only screen and (max-width:960px) {
.contact-strook .contact-strook-inhoud .contact-strook-kop {
    margin-bottom: 5px;
    line-height: normal!important;
    display: block;
    float: none;
  }
}

@media only screen and (max-width:600px) {
.contact-strook .contact-strook-inhoud .contact-strook-kop {
    float: none;
    margin-right: 0;
    text-align: center;
  }
}
.contact-strook .contact-strook-inhoud a.cta-knop {
  font: 14px/14px var(--font-tekst);
  color: var(--kleur-tekst);
  text-transform: uppercase;
  text-decoration: none;
  padding: 16px 14px;
  border: 1px solid var(--kleur-lijn);
  display: inline-block;
  float: none;
  width: 200px;
  margin-left: 20px;
  text-align: center;
  transition: all .3s;
}
.contact-strook .contact-strook-inhoud a.cta-knop:hover {
  background-color: var(--kleur-tekst);
  color: #fff;
}

@media only screen and (max-width:960px) {
.contact-strook .contact-strook-inhoud a.cta-knop {
    clear: both;
    margin-left: 0;
  }
}
.contact-strook .contact-strook-inhoud a.soc-knop {
  padding: 11px 16px;
  border: 1px solid var(--kleur-lijn);
  margin-right: 15px;
  color: var(--kleur-tekst);
  display: inline-block;
  float: right;
  min-width: 47px;
  transition: all .3s;
}
.contact-strook .contact-strook-inhoud a.soc-knop:first-child {
  margin-right: 0;
}
.contact-strook .contact-strook-inhoud a.soc-knop:hover {
  background-color: var(--kleur-tekst);
  color: #fff;
}

@media only screen and (max-width:960px) {
.contact-strook .contact-strook-inhoud a.soc-knop {
    float: left;
  }
}

@media only screen and (max-width:960px) {
.contact-strook .contact-strook-inhoud a.soc-knop {
    float: none;
  }
}
.contact-strook .contact-strook-inhoud a.soc-knop.facebook {
  color: #3b5998;
}
.contact-strook .contact-strook-inhoud a.soc-knop.facebook:hover {
  background-color: #3b5998;
  color: #fff;
}
.contact-strook .contact-strook-inhoud a.soc-knop.instagram {
  color: #125688;
}
.contact-strook .contact-strook-inhoud a.soc-knop.instagram:hover {
  background-color: #125688;
  color: #fff;
}
.voet-disclaimer {
  text-align: center;
  font-size: 8px;
  padding-top: 10px;
}
.voet-disclaimer img {
  max-height: 10px;
}
.pg-homepage {
  overflow-x: hidden;
}
.pg-homepage .volscherm {
  background-position: top;
}

@media only screen and (max-width:680px) {
.pg-homepage .volscherm {
    margin-bottom: 3px;
  }
}
.pg-homepage #head .kader:after {
  display: none;
}
.volscherm h2 {
  font-weight: 400;
  text-transform: none;
}

@media all and (-ms-high-contrast:none) {
.home-developments a>div+div::-ms-backdrop #page {
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
}

@-webkit-keyframes bloop {
  0% {
    -webkit-transform: scale3d(1,1,1);
    transform: scale3d(1,1,1);
  }

  50% {
    -webkit-transform: scale3d(1.4,1.4,1.4);
    transform: scale3d(1.4,1.4,1.4);
  }

  100% {
    -webkit-transform: scale3d(1,1,1);
    transform: scale3d(1,1,1);
  }
}

@keyframes bloop {
  0% {
    -webkit-transform: scale3d(1,1,1);
    transform: scale3d(1,1,1);
  }

  50% {
    -webkit-transform: scale3d(1.4,1.4,1.4);
    transform: scale3d(1.4,1.4,1.4);
  }

  100% {
    -webkit-transform: scale3d(1,1,1);
    transform: scale3d(1,1,1);
  }
}
.kaart {
  position: relative;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  overflow: hidden;
  background: #111;
  color: #fff;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -moz-box-orient: horizontal;
  -moz-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-flex-direction: row;
  flex-direction: row;
  text-decoration: none;
}
.kaart>div {
  position: relative;
  float: left;
  left: 100%;
  margin-left: -100%;
  z-index: inherit;
  width: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  justify-content: space-between;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  flex-start: space-between;
  -webkit-box-align: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
}

@media all and (-ms-high-contrast:none) {
.kaart>div+div {
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
.kaart>div+div::-ms-backdrop #page {
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
}
.kaart>div .kaart-voet {
  position: relative;
  -ms-flex-item-align: end;
  -webkit-align-self: flex-end;
  align-self: flex-end;
  width: 100%;
  margin-top: auto;
}

@media only screen and (max-width:1199px) {
.pg-idx #idx-search_1 .idx-search-form .nnn select::-ms-expand,.pg-listings #idx-search_1 .idx-search-form .nnn select::-ms-expand,.search.tpl-search #idx-search_1 .idx-search-form .nnn select::-ms-expand {
    display: none;
  }
}
.veld label {
  white-space: normal;
}

/* ===== MM 2026-08: toegankelijkheid & mobiel (Impeccable-pass) ===== */

button.menu-knop,button.knop.sluit-knop {
  background: none;
  border: 0;
  cursor: pointer;
}
#nav .knop.sluit-knop {
  padding: 16px;
  line-height: 0;
}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.knop:focus-visible {
  outline: 2px solid var(--kleur-actie);
  outline-offset: 2px;
}
#nav a:focus-visible,#nav button:focus-visible,#foot a:focus-visible {
  outline-color: #fff;
}
.video-pauze {
  position: absolute;
  right: max(20px, calc((100% - 1020px) / 2));
  bottom: 20px;
  z-index: 50;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(0,0,0,.45);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

@media only screen and (max-width:1060px) {
.kader.kader {
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
  }
}

@media (prefers-reduced-motion: reduce) {
#nav,#foot a,.vervaag,.knop .rimpel {
    transition: none !important;
    animation: none !important;
  }
}

/* ===== MM 2026-08: homepage-hero & iconen (Impeccable-pass 2) ===== */

.video-pauze .icoon-speel {
  display: none;
}
.video-pauze.gepauzeerd .icoon-speel {
  display: inline;
}
.video-pauze.gepauzeerd .icoon-pauze {
  display: none;
}
.contact-strook .contact-strook-inhoud a.soc-knop svg {
  vertical-align: middle;
}
.pg-homepage .intro-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(10,20,26,.65) 0%, rgba(10,20,26,0) 20%), linear-gradient(115deg, rgba(10,20,26,.75) 0%, rgba(10,20,26,.4) 55%, rgba(10,20,26,.15) 100%);
}
.pg-homepage .intro-overlay .kader.kader {
  width: 100%;
}
.pg-homepage .intro-boodschap {
  pointer-events: auto;
  max-width: 620px;
}
.pg-homepage .intro-boodschap h1 {
  color: #fff;
  font-size: clamp(40px, 11vw, 120px);
  line-height: .85;
  margin: 0 0 24px 0 !important;
}
.pg-homepage .intro-boodschap p {
  color: #fff;
  font: 200 19px/28px var(--font-tekst);
  margin: 0 0 34px;
  max-width: 32em;
}
.pg-homepage .intro-knop {
  display: inline-block;
  font: 300 22px/1 var(--font-kop);
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #fff;
  text-decoration: none;
  border: 1px solid rgba(255,255,255,.85);
  padding: 14px 26px;
  margin: 0 14px 14px 0;
  transition: background .3s, color .3s;
}
.pg-homepage .intro-knop:hover,.pg-homepage .intro-knop:focus-visible {
  background: #fff;
  color: var(--kleur-donker);
}
.pg-homepage .intro-knop--primair {
  background: #fff;
  color: var(--kleur-donker);
}
.pg-homepage .intro-knop--primair:hover,.pg-homepage .intro-knop--primair:focus-visible {
  background: transparent;
  color: #fff;
}

/* ===== MM 2026-08: catalogus-zoek & paginering (Impeccable-pass 3) ===== */

.catalogus-zoek {
  margin: 0 0 6px;
}
.catalogus-zoek input[type=search] {
  font: 200 16px/24px var(--font-tekst);
  color: #444;
  padding: 10px 14px;
  border: 1px solid var(--kleur-lijn);
  width: 340px;
  max-width: 100%;
  vertical-align: middle;
}
.catalogus-zoek .knop {
  vertical-align: middle;
}
.zoek-resultaat {
  margin: 0 0 20px;
}
.verborgen-label {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}
.paginering a.pagina-nr,.paginering span.pagina-nr {
  display: inline-block;
  background: var(--kleur-vlak);
  color: var(--kleur-donker);
  padding: 12px 16px;
  text-decoration: none;
  border-radius: 2px;
  margin: 0 3px 6px;
}
.paginering a.pagina-nr:hover,.paginering a.pagina-nr:focus-visible {
  background: var(--kleur-donker);
  color: #fff;
}
.paginering span.pagina-nr.huidig {
  background: var(--kleur-donker);
  color: #fff;
}
.paginering span.pagina-rest {
  padding: 0 4px;
  color: var(--kleur-tekst);
}
.detail-fotos {
  margin-top: 20px;
}
.detail-fotos .detail-foto {
  display: inline-block;
  margin: 0 10px 10px 0;
  max-width: 180px;
}
.detail-fotos img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* ===== MM 2026-08: desktopmenu, kruimelpad, kaart-affordance (Impeccable-pass 4) ===== */

.hoofdnav {
  display: none;
}

@media only screen and (min-width:1061px) {
.hoofdnav {
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }
.menu-knop {
    display: none;
  }
  /* MM 2026-08-29/30: zeven menu-items (incl. Orchideeenkenner) passen niet in
     het 1020px-kader; de kop-rij mag op desktop 1240px breed zijn. Van 1061
     tot 1259px een compacte tussentrap (zie onderaan), vanaf 1260px de ruime
     maatvoering. */
  #head .kader.kop-rij {
    max-width: 1240px;
  }
}
.hoofdnav-link {
  font: 300 17px/1 var(--font-kop);
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--kleur-donker);
  text-decoration: none;
  padding: 12px;
  margin-left: 4px;
  border-bottom: 2px solid transparent;
  transition: border-color .3s;
}
.hoofdnav-link:hover {
  border-bottom-color: currentColor;
}
.hoofdnav-link--huidig {
  font-weight: 700;
  border-bottom-color: currentColor;
}
.pg-homepage .hoofdnav .hoofdnav-link {
  color: #fff;
}
#kruimelpad {
  position: relative;
  z-index: 1;
  font: 200 14px/20px var(--font-tekst);
  color: var(--kleur-tekst);
  margin: 0 0 4px;
}
#kruimelpad a {
  color: var(--kleur-tekst);
  text-decoration: underline;
}
#kruimelpad span {
  padding: 0 2px;
}
.foto-kaart .kaart-voet {
  background: linear-gradient(180deg, rgba(17,17,17,0), rgba(17,17,17,0.9));
}
.foto-kaart:focus-within {
  outline: 3px solid var(--kleur-actie);
  outline-offset: -3px;
}
a.knop-omlijnd {
  display: inline-block;
  border: 1px solid var(--kleur-donker);
  color: var(--kleur-donker);
  font: 300 16px/1 var(--font-kop);
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 10px 16px;
  text-decoration: none;
  transition: background .3s, color .3s;
}
a.knop-omlijnd:hover,a.knop-omlijnd:focus-visible {
  background: var(--kleur-donker);
  color: #fff;
}

/* ===== MM 2026-08: responsive header & homepage-flow (Impeccable-pass 5) ===== */

#head {
  border-bottom: 1px solid var(--kleur-lijn);
}
.pg-homepage #head {
  border-bottom: 0;
}
#head .kader {
  margin-top: 0;
}
#head .kader:after {
  display: none;
}
#head .kop-rij {
  display: flex;
  align-items: center;
  gap: 16px;
  padding-top: 18px;
  padding-bottom: 14px;
}
#head .kop-logo {
  display: block;
  flex-shrink: 0;
}
#head .kop-logo img {
  position: static;
  display: block;
  width: auto;
  height: 56px;
}
#head .menu-knop {
  position: static;
  top: auto;
  margin-left: auto;
  padding: 12px;
}
.kop-rij .hoofdnav {
  margin-left: auto;
}

@media only screen and (max-width:680px) {
#head .kop-logo img {
    height: 44px;
  }
#head .kop-rij {
    padding-top: 12px;
    padding-bottom: 10px;
  }
}
.pg-homepage #feature.volscherm {
  height: auto;
  flex: 1 1 auto;
}
.pg-homepage .contact-strook {
  display: none;
}
.pg-homepage .voet-witbalk,.pg-homepage #foot--a {
  display: none;
}
.pg-homepage #foot {
  background: transparent;
}
#content {
  padding-top: 28px;
}
#content h1 {
  font-family: var(--font-kop);
  font-size: clamp(40px, 11vw, 120px);
  line-height: .85;
  letter-spacing: -2px;
}

@media only screen and (min-width:601px) {
.contact-strook .contact-strook-inhoud {
    display: flex;
  }
}

/* ===== MM 2026-08: mobiele verfijning (Impeccable-pass 6) ===== */

@media only screen and (max-width:680px) {
.pg-homepage #foot {
    display: none;
  }
.rooster .cel.veld {
    width: 100%;
  }
.pg-homepage .intro-boodschap {
    padding-bottom: 76px;
  }
}

@media only screen and (max-width:480px) {
.pg-homepage .intro-knop {
    display: block;
    text-align: center;
    margin-right: 0;
  }
}

/* ===== MM 2026-08: homepage-hoogte & body-groei (Impeccable-pass 7) ===== */

.pg-homepage #page {
  min-height: 100vh;
  min-height: 100svh;
}
.pg-homepage #body {
  flex: 0 0 auto;
}

/* ===== MM 2026-08: zelf-gehost BenchNine, contrast, sticky header, skip-link (Impeccable-pass 8) ===== */

@font-face {
  font-family: 'BenchNine';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('inc/skins/fese/fnt/benchnine/bn300-latin-ext.v2.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: 'BenchNine';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('inc/skins/fese/fnt/benchnine/bn300-latin.v2.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
h1+h2 {
  color: var(--kleur-tekst);
}
#head {
  position: sticky;
  top: 0;
  background: #fff;
  z-index: 40;
}
.pg-homepage #head {
  position: relative;
  background: transparent;
}
.skip-link {
  position: absolute;
  left: -9999px;
  top: 0;
  z-index: 100;
  background: var(--kleur-donker);
  color: #fff;
  padding: 12px 20px;
  font: 300 16px/1 var(--font-kop);
  text-transform: uppercase;
  letter-spacing: 1px;
  text-decoration: none;
}
.skip-link:focus {
  left: 0;
}

/* ===== MM 2026-08: responsieve video-embed (Impeccable-pass 9) ===== */

.video-vak {
  max-width: 720px;
  margin: 0 0 20px;
}
.video-vak iframe {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  border: 0;
}
/* ===== MM 2026-08: meertaligheid NL/EN/RU (Impeccable-pass 10) ===== */
@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('inc/skins/fese/fnt/ptsans/ptsans-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('inc/skins/fese/fnt/ptsans/ptsans-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'PT Sans Narrow';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('inc/skins/fese/fnt/ptsans/ptsansnarrow-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'PT Sans Narrow';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('inc/skins/fese/fnt/ptsans/ptsansnarrow-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

html[lang="ru"] {
  --font-kop: 'PT Sans Narrow', sans-serif;
  --font-tekst: 'PT Sans', sans-serif;
}

html[lang="ru"] h1 {
  letter-spacing: -1px;
}

.taal-wissel {
  display: flex;
  align-items: center;
  margin-left: auto;
}

@media only screen and (min-width:1260px) {
  .taal-wissel {
    margin-left: 16px;
  }
  /* compacter desktopmenu (zeven items); staat ná de generieke
     .hoofdnav-link-regel zodat deze wint op volgorde */
  .hoofdnav-link {
    padding: 12px 10px;
    margin-left: 2px;
  }
}

.taal-link {
  /* Letterlijke stack i.p.v. --font-kop: de labels zijn Latijns en moeten
     op RU-pagina's (token wisselt daar naar PT Sans Narrow) pixelvast staan. */
  font: 300 15px/1 'BenchNine', 'PT Sans Narrow', sans-serif;
  letter-spacing: 1px;
  color: var(--kleur-donker);
  text-decoration: none;
  padding: 10px 7px;
}

.taal-link:hover {
  text-decoration: underline;
}

.taal-link--huidig {
  font-weight: 700;
  border-bottom: 2px solid currentColor;
}

.pg-homepage .taal-wissel .taal-link {
  color: var(--kleur-wit);
}

/* ===== MM 2026-08: RU-navmaat, nowrap, pauzeknop in raster (Impeccable-pass 11) ===== */
.pg-homepage #feature {
  position: relative;
}

.hoofdnav-link,
.taal-link {
  white-space: nowrap;
}

html[lang="ru"] .hoofdnav-link {
  font-size: 15px;
  letter-spacing: 0;
  padding: 12px 8px;
  margin-left: 2px;
}

html[lang="en"] .hoofdnav-link {
  padding: 12px 9px;
}

/* ===== MM 2026-08: catalogusbediening & compacte weergave ===== */

.catalogus-rooster .foto-kaart h3 {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.catalogus-rooster--groot .foto-kaart .kaart-voet {
  padding: 12px 16px;
}
.catalogus-rooster--groot .foto-kaart h3 {
  margin-bottom: 4px;
  font-size: 17px;
  line-height: 19px;
}
.catalogus-rooster--groot .foto-kaart h4 {
  margin-bottom: 0;
  font-size: 14px;
  line-height: 16px;
}

.catalogus-tools {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 12px;
  margin: 0 0 12px;
}
.catalogus-tool {
  display: flex;
  flex: 0 1 210px;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}
.catalogus-tool--zoek {
  flex: 1 1 300px;
}

.catalogus-tool label,.weergave-label {
  color: var(--kleur-donker);
  font: 300 15px/20px var(--font-kop);
  letter-spacing: .5px;
  text-transform: uppercase;
}
.catalogus-tool input,.catalogus-tool select {
  box-sizing: border-box;
  width: 100%;
  min-height: 46px;
  margin: 0;
  border: 1px solid var(--kleur-lijn);
  border-radius: 0;
  background-color: var(--kleur-wit);
  color: var(--kleur-donker);
  font: 200 16px/24px var(--font-tekst);
  padding: 10px 14px;
}
.catalogus-tools .knop {
  min-height: 46px;
  margin: 0;
}
.catalogus-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 0 0 20px;
}
.catalogus-meta .zoek-resultaat {
  margin: 0;
}
.weergave-keuze {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 6px;
}
.weergave-label {
  margin-right: 4px;
}
.weergave-optie {
  display: inline-flex;
  width: 44px;
  height: 44px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--kleur-lijn);
  background: var(--kleur-wit);
  color: var(--kleur-donker);
  text-decoration: none;
  transition: background .2s, color .2s, border-color .2s;
}
.weergave-optie svg {
  fill: currentColor;
}
.weergave-optie:hover,.weergave-optie:focus-visible,.weergave-optie.huidig {
  border-color: var(--kleur-donker);
  background: var(--kleur-donker);
  color: var(--kleur-wit);
}
.catalogus-leeg {
  margin: 0 0 24px;
}
.catalogus-rooster--compact .cel {
  width: calc(16.6667% - 4px);
}
.catalogus-rooster--compact .kaart .ruim {
  padding: 14px;
}
.catalogus-rooster--compact .kaart h3 {
  font-size: 16px;
  line-height: 18px;
}
.catalogus-rooster--compact .kaart h4 {
  font-size: 13px;
  line-height: 16px;
}
.catalogus-rooster--compact .omschrijving {
  display: none;
}

@media only screen and (max-width:1024px) {
  .catalogus-rooster--compact .cel {
    width: calc(25% - 4px);
  }
}

@media only screen and (max-width:680px) {
  .catalogus-tools,.catalogus-meta {
    align-items: stretch;
    flex-direction: column;
  }
  .catalogus-tool,.catalogus-tool--zoek {
    flex-basis: auto;
    width: 100%;
  }
  .catalogus-tools .knop {
    width: 100%;
  }
  .weergave-keuze {
    justify-content: flex-end;
  }
  .catalogus-rooster--compact .cel {
    width: calc(50% - 4px);
  }
}

/* ===== MM 2026-08: vorige/volgende op catalogusdetail ===== */
.detail-blader {
  display: grid;
  grid-template-columns: 50% minmax(280px, 1fr);
  gap: clamp(24px, 4vw, 48px);
  align-items: stretch;
  margin: 20px 0 24px;
  overflow: visible;
}
.detail-blader a.detail-blader__link {
  display: flex;
  min-width: 0;
  float: none;
  flex-direction: column;
  gap: 5px;
  background: #f4f4f4;
  line-height: 1.25;
  text-transform: none;
  transition: background-color .2s cubic-bezier(.22, 1, .36, 1);
}
.detail-blader a.detail-blader__link:hover,
.detail-blader a.detail-blader__link:focus-visible {
  background: #e4e4e4;
}
.detail-blader__link--volgende {
  grid-column: 2;
  margin-inline-start: 0;
  text-align: end;
}
.detail-blader__richting {
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--kleur-donker);
  font: 300 16px/1 var(--font-kop);
  letter-spacing: 1px;
  text-transform: uppercase;
}
.detail-blader__link--volgende .detail-blader__richting {
  justify-content: flex-end;
}
.detail-blader__richting svg {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.detail-blader__naam {
  overflow-wrap: anywhere;
  color: var(--kleur-tekst);
  font: 14px/1.35 var(--font-tekst);
}
.detail-blader a.detail-blader__link:hover .detail-blader__richting,
.detail-blader a.detail-blader__link:hover .detail-blader__naam,
.detail-blader a.detail-blader__link:focus-visible .detail-blader__richting,
.detail-blader a.detail-blader__link:focus-visible .detail-blader__naam {
  color: inherit;
}
@media only screen and (max-width: 680px) {
  .detail-blader {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .detail-blader a.detail-blader__link {
    width: 100%;
    max-width: none;
  }
  .detail-blader__link--volgende {
    grid-column: auto;
  }
}

/* ===== MM 2026-08: fotogalerij en lightbox ===== */
.detail-galerij .detail-foto {
  cursor: zoom-in;
}
.detail-galerij .beeld--vullend .detail-foto {
  position: absolute;
  inset: 0;
  z-index: 4;
  display: block;
}
.detail-galerij .foto-kaart > div:last-child {
  pointer-events: none;
}
.detail-galerij .beeld--vullend .detail-foto:focus-visible {
  outline: 3px solid var(--kleur-actie);
  outline-offset: -3px;
}
.foto-lightbox {
  display: none;
  width: 100vw;
  max-width: none;
  height: 100vh;
  max-height: none;
  margin: 0;
  padding: 0;
  border: 0;
  background: rgba(18, 24, 30, .98);
  color: var(--kleur-wit);
}
.foto-lightbox::backdrop {
  background: rgba(18, 24, 30, .92);
}
.foto-lightbox.foto-lightbox--actief {
  display: grid;
  place-items: center;
  animation: foto-lightbox-in .2s cubic-bezier(.22, 1, .36, 1);
}
.foto-lightbox__inhoud {
  position: relative;
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr) 56px;
  align-items: center;
  width: min(100%, 1440px);
  height: 100%;
  padding: 24px;
}
.foto-lightbox figure {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  margin: 0;
  padding: 24px 12px 10px;
}
.foto-lightbox__beeld {
  display: block;
  align-self: center;
  justify-self: center;
  max-width: 100%;
  max-height: calc(100vh - 96px);
  object-fit: contain;
}
.foto-lightbox figcaption {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding-top: 12px;
  color: #fff;
  font: 14px/1.4 var(--font-tekst);
}
.foto-lightbox__teller {
  flex: 0 0 auto;
  font-variant-numeric: tabular-nums;
}
.foto-lightbox__knop {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  padding: 0;
  border: 1px solid rgba(255,255,255,.55);
  border-radius: 50%;
  background: rgba(18,24,30,.65);
  color: #fff;
  cursor: pointer;
  transition: background .2s, border-color .2s;
}
.foto-lightbox__knop:hover,
.foto-lightbox__knop:focus-visible {
  border-color: #fff;
  background: var(--kleur-band);
}
.foto-lightbox__knop svg {
  width: 24px;
  height: 24px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
}
.foto-lightbox__sluiten {
  position: absolute;
  z-index: 2;
  top: 20px;
  right: 24px;
}
@keyframes foto-lightbox-in {
  from { opacity: 0; }
  to { opacity: 1; }
}
@media (max-width: 680px) {
  .foto-lightbox__inhoud {
    grid-template-columns: 44px minmax(0, 1fr) 44px;
    padding: 12px;
  }
  .foto-lightbox figure {
    padding: 56px 4px 8px;
  }
  .foto-lightbox__beeld {
    max-height: calc(100vh - 120px);
  }
  .foto-lightbox__knop {
    width: 44px;
    height: 44px;
  }
  .foto-lightbox__sluiten {
    top: 12px;
    right: 12px;
  }
  .foto-lightbox figcaption {
    flex-direction: column;
    gap: 4px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .foto-lightbox.foto-lightbox--actief {
    animation: none;
  }
}

/* Partners and inspiration */
.partner-intro {
  max-width: 72ch;
  margin: 0 0 44px;
  font-size: 18px;
  line-height: 1.7;
}
.partner-deel {
  margin: 44px 0 0;
}
.partner-deel > h2 {
  margin: 0 0 18px;
  color: var(--kleur-donker);
}
.partner-kanalen {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.partner-kanaal {
  display: flex;
  align-items: center;
  gap: 18px;
  min-height: 112px;
  padding: 20px 24px;
  color: var(--kleur-donker);
  background: var(--kleur-vlak);
  border: 1px solid var(--kleur-lijn);
  text-decoration: none;
}
.partner-kanaal svg {
  flex: 0 0 auto;
  color: var(--kleur-band);
}
.partner-kanaal strong,
.partner-kanaal span span {
  display: block;
}
.partner-kanaal strong {
  margin-bottom: 4px;
  font: 400 25px/1.1 var(--font-kop);
  text-transform: uppercase;
}
.partner-kanaal span span {
  color: var(--kleur-tekst);
  line-height: 1.5;
}
.partner-kanaal:hover {
  background: var(--kleur-wit);
  border-color: var(--kleur-band);
}
.partner-uitgelicht {
  display: grid;
  grid-template-columns: minmax(260px, .9fr) minmax(0, 1.1fr);
  background: var(--kleur-vlak);
}
.partner-uitgelicht__beeld {
  min-height: 390px;
  overflow: hidden;
}
.partner-uitgelicht__beeld img,
.partner-item__beeld img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.partner-uitgelicht__inhoud {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 36px 42px;
}
.partner-uitgelicht__inhoud h3,
.partner-item h3 {
  margin: 0 0 10px;
  color: var(--kleur-donker);
}
.partner-uitgelicht__inhoud p,
.partner-item p {
  max-width: 68ch;
  margin: 0 0 18px;
  line-height: 1.65;
}
.partner-lijst {
  border-top: 1px solid var(--kleur-lijn);
}
.partner-item {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  gap: 28px;
  align-items: center;
  padding: 24px 0;
  border-bottom: 1px solid var(--kleur-lijn);
}
.partner-item__beeld {
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: var(--kleur-vlak);
}
.partner-link {
  display: inline-block;
  color: var(--kleur-actie);
  font-weight: 700;
  text-underline-offset: 3px;
}
.partner-link:hover {
  color: var(--kleur-donker);
}
.partner-kanaal:focus-visible,
.partner-link:focus-visible {
  outline: 3px solid var(--kleur-actie);
  outline-offset: 4px;
}
@media only screen and (max-width: 800px) {
  .partner-uitgelicht {
    grid-template-columns: 1fr;
  }
  .partner-uitgelicht__beeld {
    min-height: 320px;
    max-height: 480px;
  }
}
@media only screen and (max-width: 680px) {
  .partner-intro {
    margin-bottom: 34px;
    font-size: 16px;
  }
  .partner-deel {
    margin-top: 36px;
  }
  .partner-kanalen {
    grid-template-columns: 1fr;
  }
  .partner-uitgelicht__inhoud {
    padding: 26px 22px 30px;
  }
  .partner-item {
    grid-template-columns: 112px minmax(0, 1fr);
    gap: 18px;
  }
}
@media only screen and (max-width: 430px) {
  .partner-item {
    grid-template-columns: 1fr;
  }
  .partner-item__beeld {
    max-height: 220px;
  }
}

/* ===== MM 2026-08: uitlijning en informatiehiërarchie catalogusdetail ===== */
.detail-terug {
  margin: 0 0 18px;
  overflow: visible;
}
.detail-terug a {
  float: none;
  display: inline-block;
}
.detail-galerij {
  display: grid;
  grid-template-columns: 50% minmax(280px, 1fr);
  gap: clamp(24px, 4vw, 48px);
  align-items: start;
  margin: 0 0 28px;
  overflow: visible;
}
.detail-galerij > .cel {
  float: none;
  width: auto;
  margin: 0;
}
.detail-informatie {
  padding-top: 6px;
}
.detail-kenmerken {
  margin: 0 0 28px;
}
.detail-kenmerken > div {
  display: grid;
  grid-template-columns: minmax(130px, .8fr) minmax(0, 1.2fr);
  gap: 16px;
  padding: 13px 0;
  border-bottom: 1px solid var(--kleur-lijn);
}
.detail-kenmerken > div:first-child {
  padding-top: 0;
}
.detail-kenmerken dt {
  color: var(--kleur-donker);
  font: 300 15px/1.3 var(--font-kop);
  letter-spacing: .5px;
  text-transform: uppercase;
}
.detail-kenmerken dd {
  min-width: 0;
  margin: 0;
  overflow-wrap: anywhere;
  color: var(--kleur-tekst);
  font: 200 16px/1.5 var(--font-tekst);
}
.detail-actie {
  margin: 0;
}
.detail-fotos {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 0;
}
.detail-fotos .detail-foto {
  display: block;
  max-width: none;
  margin: 0;
}
.detail-fotos img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}
@media only screen and (max-width: 680px) {
  .detail-galerij {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .detail-kenmerken > div {
    grid-template-columns: 1fr;
    gap: 4px;
  }
  .detail-fotos {
    grid-column: auto;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* ===== MM 2026-08: inhoudelijke vervolgnavigatie bedrijfsinformatie ===== */
.vervolg-sectie {
  margin: 64px 0 0;
  padding: 32px 0 0;
  border-top: 1px solid var(--kleur-lijn);
}
.vervolg-sectie h2 {
  margin: 0 0 20px;
  color: var(--kleur-donker);
  font: 300 30px/1.1 var(--font-kop);
  letter-spacing: .5px;
  text-transform: uppercase;
}
.vervolg-links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.vervolg-link {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 24px;
  gap: 20px;
  align-items: center;
  min-height: 124px;
  padding: 22px 24px;
  background: #f4f4f4;
  color: var(--kleur-donker);
  text-decoration: none;
  transition: background-color .2s cubic-bezier(.22, 1, .36, 1);
}
.vervolg-link:hover,
.vervolg-link:focus-visible {
  background: #e4e4e4;
}
.vervolg-link:focus-visible {
  outline: 3px solid var(--kleur-actie);
  outline-offset: 3px;
}
.vervolg-link__titel,
.vervolg-link__tekst {
  display: block;
}
.vervolg-link__titel {
  margin: 0 0 6px;
  font: 400 25px/1.1 var(--font-kop);
  letter-spacing: .5px;
  text-transform: uppercase;
}
.vervolg-link__tekst {
  color: var(--kleur-tekst);
  font: 200 16px/1.5 var(--font-tekst);
}
.vervolg-link svg {
  width: 24px;
  height: 24px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform .2s cubic-bezier(.22, 1, .36, 1);
}
.vervolg-link:hover svg,
.vervolg-link:focus-visible svg {
  transform: translateX(4px);
}
@media only screen and (max-width: 680px) {
  .vervolg-sectie {
    margin-top: 48px;
    padding-top: 24px;
  }
  .vervolg-sectie h2 {
    font-size: 27px;
  }
  .vervolg-links {
    grid-template-columns: 1fr;
  }
  .vervolg-link {
    min-height: 0;
    padding: 20px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .vervolg-link svg {
    transition: none;
  }
}

/* ===== MM 2026-08: hoogtebewuste homepagehero en contactpagina ===== */
.pg-homepage .intro-overlay {
  box-sizing: border-box;
  padding-top: 96px;
  padding-bottom: 76px;
}
.pg-homepage .intro-boodschap {
  max-width: 900px;
}
.pg-homepage .intro-boodschap h1 {
  max-width: 900px;
  font-size: clamp(40px, min(9vw, 14vh), 96px);
  line-height: .9;
}

.pg-7 #content h1 + h2,
.pg-17 #content h1 + h2,
.pg-82 #content h1 + h2,
.pg-83 #content h1 + h2,
.pg-98 #content h1 + h2,
.pg-99 #content h1 + h2 {
  margin-bottom: 32px;
}
.contact-intro {
  max-width: 72ch;
  margin: 0 0 36px;
  color: var(--kleur-tekst);
  font: 200 18px/1.7 var(--font-tekst);
}
.contact-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(260px, .65fr);
  gap: clamp(36px, 6vw, 72px);
  align-items: start;
  margin: 0 0 40px;
}
.contact-formulier,
.contact-gegevens {
  min-width: 0;
}
.contact-layout h2 {
  margin: 0 0 16px;
  color: var(--kleur-donker);
  font: 300 30px/1.1 var(--font-kop);
  letter-spacing: .5px;
  text-transform: uppercase;
}
.contact-verplicht {
  margin: 0 0 14px;
  color: var(--kleur-hint);
  font: 200 14px/1.5 var(--font-tekst);
}
.contact-formulier .rooster {
  margin-bottom: 12px;
}
.contact-formulier .knop--primair {
  min-height: 46px;
  margin: 4px 0 0;
  padding: 13px 20px;
  border-color: var(--kleur-donker);
  background: var(--kleur-donker);
  color: var(--kleur-wit);
  font: 300 18px/1 var(--font-kop);
  letter-spacing: 1px;
  text-transform: uppercase;
  transition: background-color .2s, border-color .2s;
}
.contact-formulier .knop--primair:hover,
.contact-formulier .knop--primair:focus-visible {
  border-color: var(--kleur-band);
  background: var(--kleur-band);
}
.contact-gegevens {
  padding: 28px 30px;
  background: var(--kleur-vlak);
}
.contact-gegevens address {
  display: grid;
  gap: 12px;
  color: var(--kleur-tekst);
  font: normal 200 16px/1.6 var(--font-tekst);
}
.contact-gegevens address strong {
  color: var(--kleur-donker);
  font: 400 20px/1.2 var(--font-kop);
  letter-spacing: .5px;
}
.contact-gegevens address a {
  color: var(--kleur-actie);
  font-weight: 700;
  overflow-wrap: anywhere;
  text-underline-offset: 3px;
}
.contact-gegevens address a:hover {
  color: var(--kleur-donker);
}

@media only screen and (max-width: 800px) {
  .contact-layout {
    grid-template-columns: 1fr;
    gap: 36px;
  }
}

@media only screen and (max-width: 680px) {
  .pg-homepage .intro-overlay {
    padding-top: 72px;
    padding-bottom: 72px;
  }
  .contact-intro {
    margin-bottom: 28px;
    font-size: 16px;
  }
  .contact-layout {
    gap: 28px;
  }
  .contact-layout h2 {
    font-size: 27px;
  }
  .contact-gegevens {
    padding: 24px;
  }
}

@media only screen and (min-width: 681px) and (max-height: 700px) {
  .pg-homepage .intro-overlay {
    padding-top: 88px;
    padding-bottom: 54px;
  }
  .pg-homepage .intro-boodschap h1 {
    margin-bottom: 16px !important;
  }
  .pg-homepage .intro-boodschap p {
    margin-bottom: 20px;
    font-size: 16px;
    line-height: 23px;
  }
  .pg-homepage .intro-knop {
    margin-bottom: 8px;
    padding: 11px 18px;
    font-size: 18px;
  }
}


/* ===== MM 2026-08: homepage in lage landscape-viewports ===== */
@media only screen and (orientation: landscape) and (max-height: 500px) {
  .pg-homepage .intro-overlay {
    position: relative;
    inset: auto;
    flex: 0 0 auto;
    align-items: flex-start;
    padding: 12px 0 20px;
  }
  .pg-homepage .intro-boodschap h1 {
    margin-bottom: 10px !important;
    font-size: clamp(40px, min(7vw, 14vh), 56px);
  }
  .pg-homepage .intro-boodschap p {
    max-width: 52em;
    margin-bottom: 12px;
    font-size: 14px;
    line-height: 20px;
  }
  .pg-homepage .intro-knop {
    margin-bottom: 6px;
    padding: 9px 16px;
    font-size: 17px;
  }
  .pg-homepage #feature.volscherm {
    flex: 0 0 64px;
    min-height: 64px;
  }
}

.artikel-meta {
  margin: -.5em 0 1.5em;
  color: #5b6874;
  font-size: .9rem;
}
.artikel-meta time {
  white-space: nowrap;
}

/* ===== MM 2026-08-18: B01-hoofdkleur + bloeitijd (Floriday) ===== */

.kaart-kleur {
  display: flex;
  align-items: center;
  gap: 7px;
  font: 200 14px/20px var(--font-tekst);
}
.kleur-stip {
  display: inline-block;
  flex: 0 0 auto;
  width: 13px;
  height: 13px;
  border: 1px solid rgba(0,0,0,0.25);
  border-radius: 50%;
  background: var(--kleur-vlak);
}
.kleur-stip--wi { background: #faf7ef; }
.kleur-stip--ge { background: #e6c53c; }
.kleur-stip--or { background: #dd7d2b; }
.kleur-stip--ro { background: #b03038; }
.kleur-stip--rs { background: #e69cb8; }
.kleur-stip--pa { background: #8d4f9f; }
.kleur-stip--bl { background: #4f6fbe; }
.kleur-stip--gr { background: #7da24f; }
.kleur-stip--br { background: #8a5a34; }
.kleur-stip--gm { background: conic-gradient(#faf7ef 0 25%, #e6c53c 25% 50%, #e69cb8 50% 75%, #7da24f 75%); }
.kleur-stip--ov { background: conic-gradient(#b03038, #dd7d2b, #e6c53c, #7da24f, #4f6fbe, #8d4f9f, #b03038); }
.bloei-badge {
  display: inline-block;
  background: var(--kleur-band);
  color: #fff;
  font: 300 12px/16px var(--font-kop);
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 3px 8px 2px;
  white-space: nowrap;
}
.kaart-kleur .bloei-badge {
  margin-left: auto;
}
.detail-kenmerken .kleur-stip {
  margin-right: 7px;
  border-color: var(--kleur-lijn);
  vertical-align: -2px;
}
.detail-kenmerken .bloei-badge {
  margin-left: 8px;
  vertical-align: 1px;
}


/* ===== MM 2026-08-18b: kleurchips + direct filteren (filter-UX-ronde) ===== */

.kleur-chips {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 0 0 16px;
}
.kleur-chips-label {
  color: var(--kleur-donker);
  font: 300 15px/20px var(--font-kop);
  letter-spacing: .5px;
  text-transform: uppercase;
  margin-right: 4px;
}
.kleur-chip {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 7px 12px;
  border: 1px solid var(--kleur-lijn);
  background: var(--kleur-wit);
  color: var(--kleur-donker);
  font: 200 15px/20px var(--font-tekst);
  text-decoration: none;
  transition: border-color .2s, background .2s, color .2s;
}
a.kleur-chip:hover {
  border-color: var(--kleur-donker);
}
a.kleur-chip:focus-visible {
  outline: 3px solid var(--kleur-actie);
  outline-offset: 1px;
}
.chip--actief {
  background: var(--kleur-donker);
  border-color: var(--kleur-donker);
  color: #fff;
}
.chip--actief .chip-aantal {
  color: #ccc;
}
.chip--leeg {
  opacity: .45;
}
.chip-aantal {
  color: var(--kleur-hint);
  font-size: 13px;
}
.chip-bloei-stip {
  display: inline-block;
  flex: 0 0 auto;
  width: 13px;
  height: 13px;
  border: 3px solid var(--kleur-band);
  border-radius: 50%;
  background: var(--kleur-wit);
}
.chip--actief .chip-bloei-stip {
  background: var(--kleur-donker);
}

/* Float-stagger-fix: het catalogusrooster als flex zodat rijen uniform
   hoog zijn, ook als een kleurregel + badge omslaat. Gescopeerd op de
   catalogus; andere roosters blijven float. */
.catalogus-rooster {
  display: flex;
  flex-wrap: wrap;
}
.catalogus-rooster .cel {
  float: none;
}

/* ===== MM 2026-08-18d: compacte weergave — kleinere tekstoverlay ===== */

.catalogus-rooster--compact .kaart .ruim {
  padding: 8px 10px;
}
.catalogus-rooster--compact .kaart h3 {
  font-size: 14px;
  line-height: 16px;
}
.catalogus-rooster--compact .kaart h4 {
  font-size: 11px;
  line-height: 14px;
}
.catalogus-rooster--compact .kaart h3,
.catalogus-rooster--compact .kaart h4,
.catalogus-rooster--compact .kaart p {
  margin: 0 0 2px 0;
}
.catalogus-rooster--compact .kaart-kleur {
  gap: 5px;
  font-size: 12px;
  line-height: 16px;
}
.catalogus-rooster--compact .kleur-stip {
  width: 10px;
  height: 10px;
}
.catalogus-rooster--compact .bloei-badge {
  font-size: 10px;
  line-height: 12px;
  letter-spacing: .5px;
  padding: 2px 5px;
}


/* ===== MM 2026-08-19: compacte mobiele catalogus ===== */

.catalogus-bediening {
  display: contents;
}
.chip-label--kort,
.knop-label--kort {
  display: none;
}

@media only screen and (max-width: 680px) {
  .catalogus-subtitel,
  .catalogus-intro {
    display: none;
  }
  .catalogus-bediening {
    display: flex;
    flex-direction: column;
  }
  .catalogus-bediening .kleur-chips {
    order: 1;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
    margin: 0 0 12px;
  }
  .catalogus-bediening .kleur-chips-label {
    grid-column: 1 / -1;
    margin: 0 0 2px;
  }
  .catalogus-bediening .kleur-chip {
    box-sizing: border-box;
    min-width: 0;
    min-height: 44px;
    justify-content: flex-start;
    gap: 4px;
    padding: 6px;
    font-size: 14px;
    line-height: 18px;
    white-space: nowrap;
  }
  .kleur-chips .chip-aantal {
    display: none;
  }
  .kleur-chips .chip-label--lang,
  .catalogus-tools .knop-label--lang {
    display: none;
  }
  .kleur-chips .chip-label--kort,
  .catalogus-tools .knop-label--kort {
    display: inline;
  }
  .catalogus-tools {
    order: 2;
    display: grid;
    grid-template-columns: max-content minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px 10px;
    margin: 0 0 12px;
  }
  .catalogus-tool {
    display: contents;
  }
  .catalogus-tool--zoek label {
    grid-area: 1 / 1;
  }
  .catalogus-tool--zoek input {
    grid-area: 1 / 2;
  }
  .catalogus-tool--sorteer label {
    grid-area: 2 / 1;
  }
  .catalogus-tool--sorteer select {
    grid-area: 2 / 2 / 2 / 4;
  }

  .catalogus-tool input,
  .catalogus-tool select {
    min-width: 0;
  }
  .catalogus-tools .knop {
    grid-area: 1 / 3;
    width: auto;
    min-width: 64px;
    min-height: 46px;
    padding: 10px 12px;
  }
  .catalogus-meta {
    order: 3;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0 0 16px;
  }
  .catalogus-meta .weergave-label {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }
  .catalogus-meta .weergave-keuze {
    justify-content: flex-end;
  }
}

@media only screen and (max-width: 360px) {
  .catalogus-bediening .kleur-chips {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media only screen and (max-width: 680px) {
  html[lang="ru"] .catalogus-bediening .kleur-chips {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* ===== MM 2026-08-19: homepagehero zonder verborgen contentzone ===== */
.pg-homepage #feature.homepage-hero {
  position: relative;
  overflow: hidden;
}
.pg-homepage #feature.homepage-hero > .volscherm-inhoud {
  z-index: 0;
}
.pg-homepage #feature.homepage-hero > .intro-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  padding-top: 28px;
  padding-bottom: 28px;
}
.pg-homepage #feature.homepage-hero > .video-pauze {
  z-index: 2;
}

@media only screen and (max-width: 680px), only screen and (max-height: 700px) {
  .pg-homepage #feature.homepage-hero {
    flex: 0 0 auto;
    min-height: calc(100svh - 68px);
  }
  .pg-homepage #feature.homepage-hero > .intro-overlay {
    position: relative;
    inset: auto;
    min-height: calc(100svh - 68px);
    align-items: flex-start;
    padding-top: clamp(28px, 7vh, 56px);
    padding-bottom: 32px;
  }
}
.pg-homepage .intro-boodschap {
  min-width: 0;
  width: 100%;
}
.pg-homepage .intro-boodschap h1 {
  overflow-wrap: anywhere;
  hyphens: auto;
}


/* ===== MM 2026-08-19d: CSP-veilige stijlen en homepagekop ===== */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}
.voet-logo-rij {
  display: flex;
  align-content: center;
  flex-direction: row-reverse;
}
.voet-logo-rij > .voet-logo {
  flex-shrink: 0;
  align-self: flex-end;
}
.voet-logo-rij > .voet-midden {
  align-self: center;
}
.pg-homepage #head {
  background: rgba(10, 20, 26, .72);
}

#content > .kader > img {
  height: auto;
}


/* ===== MM 2026-08-30: Orchideeenkenner-teaser — lint over de homepage-video (taal-homes) en lint op assortiment ===== */

/* Homepage: video (#myVideo) en intro-overlay staan fixed; het lint ligt als
   in-flow band boven de transparante footer en moet dus zelf boven de video
   schilderen (z-index). De overlay krijgt padding-bottom zodat de
   hero-boodschap gecentreerd blijft in de ruimte bóven het lint. */
.spel-strook {
  position: relative;
  z-index: 0; /* boven de fixed video, onder de intro-overlay (z-index 1): bij krappe hoogte blijven de hero-knoppen bovenop */
  background: rgba(10,20,26,.72);
  color: #fff;
}
.spel-strook-inhoud {
  display: flex;
  align-items: center;
  gap: 28px;
  padding-top: 14px;
  padding-bottom: 14px;
}
.spel-strook-fotos {
  display: flex;
  gap: 5px;
  flex: 0 0 auto;
}
.spel-strook-fotos:empty {
  display: none;
}
.spel-strook-fotos img {
  display: block;
  width: 64px;
  height: 64px;
  object-fit: cover;
  background: #fff;
}
.spel-strook-tekst {
  flex: 1 1 auto;
  min-width: 0;
}
.spel-strook-chapeau {
  font: 300 14px/1 var(--font-kop);
  text-transform: uppercase;
  letter-spacing: 2px;
  color: rgba(255,255,255,.75);
  margin: 0 0 4px;
}
.spel-strook h2 {
  font: 300 26px/1.1 var(--font-kop);
  text-transform: uppercase;
  color: #fff;
  margin: 0;
}
.spel-strook-uitleg {
  font: 200 14px/1.4 var(--font-tekst);
  color: rgba(255,255,255,.85);
  margin: 6px 0 0;
  max-width: 62ch;
}
.spel-strook-actie {
  flex: 0 0 auto;
}
.spel-strook a.knop-omlijnd {
  border-color: rgba(255,255,255,.85);
  color: #fff;
}
.spel-strook a.knop-omlijnd:hover,.spel-strook a.knop-omlijnd:focus-visible {
  background: #fff;
  color: var(--kleur-donker);
}
@media only screen and (min-height:821px) {
  .pg-homepage .intro-overlay {
    padding-bottom: 92px;
  }
}
/* Krappe viewporthoogte (laptops ~700px): compact eenregelig lint, zodat de
   gecentreerde hero-boodschap er niet mee botst. */
@media only screen and (max-height:820px) {
  .pg-homepage .intro-overlay {
    padding-bottom: 52px;
  }
  .spel-strook-fotos,.spel-strook-uitleg,.spel-strook-chapeau {
    display: none;
  }
  .spel-strook-inhoud {
    gap: 20px;
    padding-top: 8px;
    padding-bottom: 8px;
  }
  .spel-strook h2 {
    font-size: 22px;
  }
  .spel-strook a.knop-omlijnd {
    font-size: 15px;
    padding: 7px 12px;
  }
}
@media only screen and (max-width:1060px) {
  .spel-strook-uitleg {
    display: none;
  }
}
@media only screen and (max-width:680px) {
  .spel-strook-fotos {
    display: none;
  }
  .spel-strook-inhoud {
    gap: 16px;
    padding-top: 12px;
    padding-bottom: 12px;
  }
  .spel-strook h2 {
    font-size: 22px;
  }
  .pg-homepage .intro-overlay {
    padding-bottom: 70px;
  }
}
@media only screen and (max-width:480px) {
  .spel-strook-inhoud {
    flex-wrap: wrap;
  }
  .spel-strook-actie {
    flex: 1 1 100%;
  }
  .spel-strook a.knop-omlijnd {
    display: block;
    text-align: center;
  }
  .pg-homepage .intro-overlay {
    padding-bottom: 118px;
  }
}
.spel-lint {
  background: var(--kleur-vlak);
  margin-top: 30px;
}
.spel-lint-link {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 14px 0;
  color: var(--kleur-donker);
  text-decoration: none;
  font: 300 19px/1.2 var(--font-kop);
  text-transform: uppercase;
  letter-spacing: 1px;
}
.spel-lint-fotos {
  display: flex;
  gap: 4px;
  flex: 0 0 auto;
}
.spel-lint-fotos:empty {
  display: none;
}
.spel-lint-fotos img {
  display: block;
  width: 40px;
  height: 40px;
  object-fit: cover;
  background: #fff;
}
.spel-lint-tekst {
  flex: 1 1 auto;
  min-width: 0;
}
.spel-lint-pijl {
  flex: 0 0 auto;
  transition: transform .3s;
}
.spel-lint-link:hover .spel-lint-pijl,.spel-lint-link:focus-visible .spel-lint-pijl {
  transform: translateX(6px);
}
@media only screen and (max-width:600px) {
  .spel-lint-fotos {
    display: none;
  }
  .spel-lint-link {
    font-size: 17px;
  }
}

/* ===== MM 2026-08-30: desktopmenu-tussentrap 1061–1259px ===== */

/* Zeven items passen op deze breedtes alleen compact: kleiner lettertype,
   krappere padding, logo 48px, smallere taalwissel. Staat onderaan zodat
   deze regels op volgorde winnen van de generieke en de taalspecifieke
   .hoofdnav-link-regels. Gemeten speling bij 1061px: NL 57, EN 65, RU 48px. */
@media only screen and (min-width:1061px) and (max-width:1259px) {
  .hoofdnav-link {
    font-size: 16px;
    letter-spacing: .5px;
    padding: 12px 7px;
    margin-left: 1px;
  }
  html[lang="en"] .hoofdnav-link {
    padding: 12px 7px;
  }
  html[lang="ru"] .hoofdnav-link {
    font-size: 14px;
    letter-spacing: 0;
    padding: 12px 6px;
    margin-left: 1px;
  }
  #head .kop-rij {
    gap: 12px;
  }
  #head .kop-logo img {
    height: 48px;
  }
  .taal-wissel {
    margin-left: 8px;
  }
  .taal-link {
    padding: 10px 5px;
  }
}
