/* pagina/voorstel-home.css — ronde 2c (tweede jury: 7 / 7,5), eigenaar: bouwer voorstel-home (site/index.html). Prefix .vh-
   Eén beeldtaal: eigen 3D-renders met licht en kleur (ronde2/voorstel-home/3d + huis), in ronde medaillons met dubbele goudrand
   of los op de zon, met mist naar het rijstpapier. Componenten (.s-*) uit site.css worden alleen geplaatst, niet herdefinieerd.
   Beweging: alleen transform/opacity/mask; startstanden alleen onder html.js-beweeg; reduced motion = eindstand. */

/* ================================================================ demo-strook (voorstel blijft gemarkeerd) */
.vh-demo{position:relative;z-index:2;background:var(--goudlicht);border-bottom:1px solid var(--lijn-goud-zacht)}
.vh-demo__balk{display:flex;flex-wrap:wrap;align-items:center;gap:2px 18px;min-height:44px;padding-block:6px}
.vh-demo__label{font:500 .875rem/1.3 var(--f-kop);letter-spacing:.2em;text-transform:uppercase;color:var(--dgoud);white-space:nowrap}
@media (min-width:768px){.vh-demo__label{font-size:.75rem;letter-spacing:.28em}}
.vh-demo__tekst{font-size:.875rem;line-height:1.4;color:var(--grijs1)}
.vh-demo__link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:.875rem;color:var(--inkt);text-decoration:underline;text-decoration-color:var(--lijn-goud);text-underline-offset:.22em}
.vh-demo__link .s-ico{width:14px;height:14px;color:var(--dgoud)}
@media (max-width:767px){.vh-demo__tekst{display:none}.vh-demo__balk{justify-content:space-between}}
@media (max-width:399px){.vh-demo__lang{display:none}}

/* ================================================================ MEDAILLON (offerte p3 'Ook vervangen'): rond, dubbele goudrand, zon erachter */
.vh-medaillon{position:relative;display:block;aspect-ratio:1;border-radius:50%;padding:5px;background:var(--rijst);
  box-shadow:0 0 0 1.5px var(--goud),0 0 0 6px var(--rijst),0 0 0 7px rgba(var(--dgoud-rgb),.75),0 18px 34px -12px rgba(var(--inkt-rgb),.28)}
.vh-medaillon > picture,.vh-medaillon > .vh-medaillon__vlak{display:block;width:100%;height:100%;border-radius:50%;overflow:hidden;
  background:radial-gradient(circle at 50% 36%,#FCF4E0 0,#F5E6C2 38%,#EBD39C 72%,#DDBE7C 100%)}
.vh-medaillon img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%}
.vh-medaillon::after{content:"";position:absolute;inset:5px;border-radius:50%;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(var(--dgoud-rgb),.35),inset 0 -14px 26px -14px rgba(var(--inkt-rgb),.18)}

/* ================================================================ 0 OMSLAG (p1): 诚信 + zegel · 3D-haven op de zon · SOURCING · totaalkader */
.vh-omslag{padding-block:clamp(12px,1.6vw,24px) 0}
.vh-omslag__vel{display:grid;grid-template-columns:minmax(0,1fr);overflow:clip;padding:22px 18px 64px;
  background:radial-gradient(70% 60% at 88% 4%,rgba(var(--dgoud-rgb),.07),transparent 70%),radial-gradient(80% 60% at 4% 98%,rgba(var(--inkt-rgb),.045),transparent 70%)}
.vh-omslag__watermerk{right:-16%;bottom:-6%;width:min(92vw,720px);opacity:.05}
.vh-omslag__tak{width:224px;right:-30px;top:-14px;clip-path:inset(14px 30px 0 0)}
.vh-omslag__blaadjes{left:45%;right:0;top:0;height:60%}
.vh-omslag__den{bottom:8px;width:48px;opacity:.5}
.vh-omslag__den--l{left:6px}
.vh-omslag__den--r{right:6px;transform:scaleX(-1)}
.vh-omslag__bergen{left:-4%;right:-4%;bottom:0;height:34%;opacity:.26;
  background:url('../../beeld/voorstel-home/bergen-band.webp?v=0db3d674') 50% 100%/max(100%,1100px) auto no-repeat;
  -webkit-mask-image:linear-gradient(0deg,transparent 0,#000 30%,#000 70%,transparent);mask-image:linear-gradient(0deg,transparent 0,#000 30%,#000 70%,transparent)}

.vh-omslag__teken{position:relative;z-index:2;display:flex;align-items:center;gap:12px;color:var(--inkt)}
.vh-omslag__teken .s-kalli--v{writing-mode:horizontal-tb;font-size:40px;line-height:1;letter-spacing:.04em;opacity:.92}
.vh-omslag__teken .s-zegel-svg{rotate:-4deg}

/* scène: zon + 3D-haven + mist aan de waterlijn */
.vh-omslag__scene{position:relative;z-index:1;margin:6px -18px 0}
.vh-omslag__zon{position:absolute;left:50%;top:50%;width:min(66%,480px);aspect-ratio:1;translate:-50% -50%;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle at 44% 40%,rgba(250,239,210,.98),rgba(243,224,176,.92) 46%,rgba(232,204,140,.62) 64%,rgba(222,190,118,0) 71%)}
.vh-omslag__haven{position:relative;isolation:isolate}
.vh-omslag__haven img{display:block;width:100%;height:auto}
.vh-omslag__mist{position:absolute;pointer-events:none;border-radius:50%;opacity:.8;
  background:radial-gradient(closest-side,rgba(var(--rijst-rgb),.95),rgba(var(--rijst-rgb),.55) 48%,rgba(var(--rijst-rgb),0))}
.vh-omslag__mist--1{left:-10%;width:58%;height:22%;bottom:4%}
.vh-omslag__mist--2{right:-12%;width:56%;height:20%;bottom:-4%;opacity:.9}

.vh-omslag__tekst{position:relative;z-index:2;margin-top:6px}
.vh-omslag__tekst h1{margin:0}
.vh-omslag__tekst .s-omslag__sub{margin-top:12px}
.vh-omslag__orn{margin-block:22px 14px}
.vh-omslag__bijschrift{margin:0;font:italic 400 1.0625rem/1.4 var(--f-serif);color:var(--grijs1)}
.vh-omslag__totaal{position:relative;z-index:2;margin-top:30px;max-width:none}
.vh-omslag__totaal .s-totaal__waarde{text-transform:uppercase;letter-spacing:.06em}
.vh-omslag__acties{display:grid;gap:4px;justify-items:start}

@media (min-width:768px){
  .vh-omslag__vel{padding:36px 40px 88px}
  .vh-omslag__tak{width:400px;right:-40px;top:-28px;clip-path:inset(28px 40px 0 0)}
  .vh-omslag__scene{margin:0 -16px}
  .vh-omslag__den{width:72px}
  .vh .s-omslag__woord{letter-spacing:.36em;margin-right:-.36em}
}
@media (min-width:1024px){
  .vh-omslag__vel{grid-template-columns:96px minmax(0,1fr) minmax(300px,348px);grid-template-rows:auto auto;column-gap:24px;row-gap:0;padding:40px 48px 96px}
  .vh-omslag__teken{grid-column:1;grid-row:1;align-self:start;width:96px;flex-direction:column;gap:16px}
  .vh-omslag__teken .s-kalli--v{writing-mode:vertical-rl;font-size:72px;letter-spacing:.06em}
  .vh-omslag__scene{grid-column:2 / 4;grid-row:1;margin:14px -30px 0 0}
  .vh-omslag__haven{width:min(100%,860px);margin-inline:auto 0}
  .vh-omslag__zon{left:53%;top:49%;width:min(58%,470px)}
  .vh-omslag__tekst{grid-column:1 / 3;grid-row:2;margin-top:-18px}
  .vh-omslag__totaal{grid-column:3;grid-row:2;align-self:end;margin:0}
  .vh-omslag__tak{width:500px;right:-48px;top:-34px;clip-path:inset(34px 48px 0 0)}
  .vh-omslag__watermerk{right:-12%;bottom:-14%;width:640px}
  .vh-omslag__den{width:72px;bottom:12px}
  .vh-omslag__den--l{left:14px}.vh-omslag__den--r{right:14px}
}
@media (min-width:1024px) and (max-width:1279px){.vh .s-omslag__woord{font-size:clamp(56px,6.2vw,80px)}}

/* omslag-beweging: zon stijgt, haven vloeit in met inkt, mist drijft (alleen in beeld) */
@media (prefers-reduced-motion:no-preference){
  html.js-beweeg .vh-omslag__zon{animation:vh-zon-op 1.1s var(--s-ease-inkt) both}
  html.js-beweeg .vh-omslag__haven > picture{display:block;animation:vh-inkt-in 1.3s var(--s-ease-inkt) .1s both;
    -webkit-mask:url('../../beeld/orn/inkt-masker.webp?v=8dfd628d') 50% 52%/320% 320% no-repeat;mask:url('../../beeld/orn/inkt-masker.webp?v=8dfd628d') 50% 52%/320% 320% no-repeat}
  .vh-omslag__mist--1{animation:vh-drift 26s ease-in-out infinite alternate;animation-play-state:paused}
  .vh-omslag__mist--2{animation:vh-drift 32s ease-in-out -9s infinite alternate-reverse;animation-play-state:paused}
  .vh-omslag.is-in-beeld .vh-omslag__mist{animation-play-state:running}
}
@keyframes vh-zon-op{from{translate:-50% calc(-50% + 46px);opacity:.3}to{translate:-50% -50%;opacity:1}}
@keyframes vh-inkt-in{from{-webkit-mask-size:60% 60%;mask-size:60% 60%;opacity:.4}to{-webkit-mask-size:320% 320%;mask-size:320% 320%;opacity:1}}
@keyframes vh-drift{from{transform:translate3d(-3%,0,0)}to{transform:translate3d(4%,-6%,0)}}

/* ================================================================ BAND: in één oogopslag (p2-kolom als band) */
.vh-band-sectie{padding-block:clamp(32px,4.2vw,60px) clamp(20px,2.6vw,36px)}
.vh-band{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0}
.vh-band::before,.vh-band::after{content:"";position:absolute;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--lijn-goud) 12%,var(--lijn-goud) 88%,transparent)}
.vh-band::before{top:0}.vh-band::after{bottom:0}
.vh-band__item{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 40px;column-gap:8px;align-content:start;padding:18px 12px 18px 0;min-width:0}
.vh-band__item:nth-child(even){padding:18px 0 18px 14px}
.vh-band__item:nth-child(even)::after{content:"";position:absolute;left:0;top:16px;bottom:16px;width:1px;background:linear-gradient(180deg,transparent,rgba(var(--dgoud-rgb),.4),transparent)}
.vh-band__item > *{grid-column:1}
.vh-band__item dd{margin:0}
.vh-band__item .s-oogopslag__waarde{white-space:nowrap;margin-top:2px}
.vh-band__regio{margin-left:6px;font:italic 400 1.0625rem/1 var(--f-serif) !important;letter-spacing:0;color:var(--dgoud) !important}
.vh-band__item .s-oogopslag__toel{font-size:.9375rem;text-wrap:balance;margin-top:3px}
.vh-band__ico{grid-column:2 !important;grid-row:1 / span 3;align-self:start;display:grid;width:40px;height:40px;place-items:center;border-radius:50%;
  box-shadow:inset 0 0 0 1px var(--lijn-goud),inset 0 0 0 4px var(--rijst),inset 0 0 0 5px rgba(var(--dgoud-rgb),.25);color:var(--dgoud)}
.vh-band__ico .s-ico{width:20px;height:20px}
.vh-band__item:nth-child(n+3)::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,rgba(var(--dgoud-rgb),.3),rgba(var(--dgoud-rgb),.3) 70%,transparent)}
.vh-band__item--breed{grid-column:1 / -1;padding-right:0 !important}
.vh-band__item--breed{padding-left:0 !important}
.vh-band__item--breed::after{display:none}
@media (min-width:900px){
  .vh-band{grid-template-columns:repeat(5,minmax(0,1fr))}
  .vh-band__item,.vh-band__item:nth-child(even),.vh-band__item--breed{grid-column:auto;grid-template-columns:minmax(0,1fr);padding:26px 16px 26px 24px !important}
  .vh-band__item:first-child{padding-left:4px !important}
  .vh-band__item:nth-child(n+3)::before{display:none}
  .vh-band__item::after{display:none}
  .vh-band__item + .vh-band__item::after{display:block;content:"";position:absolute;left:0;top:22px;bottom:22px;width:1px;background:linear-gradient(180deg,transparent,rgba(var(--dgoud-rgb),.45),transparent)}
  .vh-band__ico{order:-1;grid-column:1 !important;grid-row:auto;margin:0 0 12px;width:44px;height:44px}
  .vh-band__ico .s-ico{width:24px;height:24px}
}

/* ================================================================ 一 BRIEF (p2): kop · medaillon · brief · twee handtekeningen + zegel */
.vh-brief{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"kop" "plaat" "tekst";padding:30px 20px 34px}
.vh-brief__kop{grid-area:kop}
.vh-brief__titel{margin:14px 0 0}
.vh-brief__plaat{grid-area:plaat;display:grid;justify-items:center;gap:22px;margin:26px 0 30px}
.vh-brief__plaat .vh-medaillon{width:min(70vw,300px,56vh)}
.vh-brief__tekst{grid-area:tekst}
.vh-brief__citaat{position:relative;max-width:28ch;margin:0;padding-left:20px;font:italic 400 1.25rem/1.42 var(--f-serif);color:var(--inkt2);text-wrap:balance}
.vh-brief__citaat::before{content:"";position:absolute;left:0;top:6px;bottom:4px;width:2px;background:linear-gradient(180deg,var(--goud),rgba(var(--goud-rgb),.15))}
.vh-brief__aanhaling{position:absolute;left:18px;top:-30px;font:400 3.25rem/1 var(--f-serif);color:var(--dgoud);opacity:.55}
.vh-brief__groet{margin:26px 0 0;font:italic 400 1.25rem/1.4 var(--f-serif);color:var(--inkt2)}
.vh-brief__handtekeningen{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:20px;margin-top:16px}
.vh-teken{display:grid;gap:4px;align-content:start}
.vh-teken__naam{font-size:1.75rem}
@media (min-width:640px){
  .vh-brief__handtekeningen{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto auto;column-gap:32px;row-gap:4px}
  .vh-teken{grid-row:span 3;grid-template-rows:subgrid;gap:0}
}
@media (min-width:1024px){
  .vh-brief{grid-template-columns:minmax(0,7fr) minmax(0,4fr);grid-template-areas:"kop plaat" "tekst plaat";column-gap:clamp(40px,5vw,72px);padding:56px 64px 60px}
  .vh-brief__titel{margin-bottom:24px}
  .vh-brief__plaat{align-self:start;justify-items:start;margin:8px 0 0;padding-top:28px}
  .vh-brief__plaat .vh-medaillon{width:min(100%,330px)}
  .vh-brief__citaat{font-size:1.5rem;margin-top:12px}
}

/* ================================================================ scharnier tussen hoofdstukken — ronde 2c: niet overal dezelfde reeks
   H1→H2 bergen + ornament · H3→H4 alleen bergen · H5→H6 alleen ornament · elders alleen de folio. De bergen worden NIET bijgesneden
   (hele beeld op hoogte, alpha loopt aan alle kanten naar 0) en krijgen daarbovenop een radiaal masker: geen naad, geen rechthoek. */
.vh-scharnier{position:relative;display:grid;place-items:center;height:clamp(110px,11vw,160px);max-width:1440px;margin-inline:auto;pointer-events:none;overflow:hidden}
.vh-scharnier--orn{height:clamp(56px,6vw,84px)}
.vh-scharnier__bergen{position:absolute;inset:0;opacity:.26;
  background:url('../../beeld/voorstel-home/bergen-band.webp?v=0db3d674') 50% 100%/auto 96% no-repeat;
  -webkit-mask-image:radial-gradient(ellipse 52% 60% at 50% 62%,#000 42%,transparent 100%);mask-image:radial-gradient(ellipse 52% 60% at 50% 62%,#000 42%,transparent 100%)}
@media (max-width:767px){.vh-scharnier__bergen{background-size:auto 80%;-webkit-mask-image:radial-gradient(ellipse 60% 60% at 50% 62%,#000 40%,transparent 100%);mask-image:radial-gradient(ellipse 60% 60% at 50% 62%,#000 40%,transparent 100%)}}
.vh-scharnier__orn{position:relative;margin:0;opacity:.95}
@media (prefers-reduced-motion:no-preference){
  html.js-beweeg .vh-scharnier__bergen{animation:vh-bergdrift 46s ease-in-out infinite alternate}
}
@keyframes vh-bergdrift{from{transform:translate3d(-1.2%,0,0)}to{transform:translate3d(1.2%,0,0)}}
.vh .s-sectie:has(+ .vh-scharnier){padding-bottom:calc(var(--sectie) * .3)}
.vh-scharnier + .s-sectie,.vh-scharnier + .s-slot{padding-top:calc(var(--sectie) * .3)}
/* folio's: overal op de velbreedte (130–1310 op 1440), zodat de rechterkantlijn per hoofdstuk op de pixel gelijk staat */
@media (min-width:1280px){.vh .s-container:not(.s-container--vel) > .s-folio{margin-inline:-32px}}

/* ================================================================ 二 ROUTE (p15 + regio) — pagina-eigen correcties op de kaart */
.vh-route__kaart{margin-top:4px}
.vh-route .s-routekaart__kompas{--ux:623 !important;--uy:250 !important}
.vh-route .s-routekaart__naam--foshan > *::before{content:"";position:absolute;inset:-6px -12px;z-index:-1;border-radius:50%;
  background:radial-gradient(closest-side,rgba(var(--rijst-rgb),.94),rgba(var(--rijst-rgb),.8) 55%,rgba(var(--rijst-rgb),0))}
.vh-route .s-routekaart__lab{text-shadow:none;isolation:isolate}
.vh-route .s-routekaart__lab::before{content:"";position:absolute;inset:-3px -7px;z-index:-1;border-radius:40%;
  background:radial-gradient(closest-side,rgba(var(--rijst-rgb),.95),rgba(var(--rijst-rgb),.85) 60%,rgba(var(--rijst-rgb),0))}
.vh-route .s-routekaart__lab--delta{display:none}
.vh-route .s-routekaart__lab.vh-delta{left:52%;top:85.5%;translate:-50% 0;color:var(--inkt)}   /* op zee, onder de deltaring (vaste plek, buiten de automatische plaatsing) */
.vh-routespoor{stroke:#B08A32;opacity:.32}
@media (min-width:768px){
  .vh-route .s-routekaart__lab,.vh-route .s-routekaart__loeptitel{font-size:12px}
  .vh-route .s-routekaart__lab--dsd i{font-size:13px}
}
@media (max-width:767px){
  .vh-route__kaart{padding-inline:0}
  .vh-route .s-routekaart__loep--china{order:-1}
  .vh-route .s-routekaart__kompas{display:none}
  /* loepen staan er meteen (geen lege ruimte); alleen de route en de inkt bewegen */
  .vh-route .s-routekaart .s-routekaart__loep{opacity:1 !important;transform:none !important}
  .vh-route .s-routekaart .s-routekaart__loep .s-routekaart__lab,.vh-route .s-routekaart .s-routekaart__loep .s-routekaart__loeptitel{opacity:1 !important}
  .vh-route .s-routekaart__loepen{gap:18px;margin-top:4px}
}
.vh-legenda{list-style:none;display:grid;grid-template-columns:minmax(0,1fr);margin:clamp(20px,3vw,36px) 0 0;padding:0;border-top:1px solid var(--lijn-goud-zacht)}
.vh-legenda__item{display:grid;grid-template-columns:24px minmax(0,1fr);grid-template-rows:24px auto;column-gap:14px;row-gap:6px;align-content:start;padding:16px 4px;border-bottom:1px solid rgba(var(--dgoud-rgb),.2)}
.vh-legenda__teken{grid-column:1;grid-row:1;position:relative;width:24px;height:24px}
.vh-legenda__titel{grid-column:2;grid-row:1;align-self:center}
.vh-legenda__tekst{grid-column:2;grid-row:2}
.vh-legenda__teken--regio::before{content:"";position:absolute;inset:3px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--dgoud)}
.vh-legenda__teken--regio::after{content:"";position:absolute;inset:8px;border-radius:50%;background:var(--goud);box-shadow:0 0 0 1px var(--dgoud)}
.vh-legenda__teken--foshan{background:url('../../kit/svg/zegel/leeg.svg?v=648606df') center/16px 16px no-repeat;rotate:-6deg}
.vh-legenda__teken--foshan::after{content:"";position:absolute;inset:1px;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--dgoud)}
.vh-legenda__teken--nl::before{content:"";position:absolute;inset:1px;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--dgoud),inset 0 0 0 4px var(--rijst),inset 0 0 0 5px rgba(var(--dgoud-rgb),.5)}
.vh-legenda__teken--nl::after{content:"";position:absolute;left:50%;top:50%;width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;background:var(--rood)}
.vh-legenda__titel{font:500 .9375rem/1.2 var(--f-kop);letter-spacing:.14em;text-transform:uppercase;color:var(--inkt)}
.vh-legenda__tekst{font-size:.9375rem;line-height:1.5;color:var(--grijs1)}
@media (min-width:900px){
  .vh-legenda{grid-template-columns:repeat(3,minmax(0,1fr));margin-inline:-22px;border-bottom:1px solid rgba(var(--dgoud-rgb),.2);border-top-color:rgba(var(--dgoud-rgb),.32)}
  .vh-legenda__item{padding:20px 22px;border-bottom:0}
  .vh-legenda__item + .vh-legenda__item{border-left:1px solid rgba(var(--dgoud-rgb),.25)}
  .vh-legenda__titel{font-size:.875rem;letter-spacing:.18em}
}
.vh-stappen{margin-top:clamp(32px,4.4vw,56px)}
.vh-stappen > li{outline-offset:6px;align-content:start}
.vh-route__tik{margin:clamp(18px,2.4vw,28px) 0 0;text-align:center}
@media (pointer:fine){.vh-route__tik{display:none}}

/* bewijsregels: een feit breekt nooit; de punt hoort bij het volgende feit en verdwijnt aan het begin van een regel (home.js) */
.vh-bewijs > span{white-space:nowrap}
.vh-bewijs > span + span::before{content:"\B7\A0";white-space:pre}
.vh-bewijs > span.is-regelstart::before{content:none}

/* ================================================================ 三 DIENSTEN: drie 3D-medaillons */
.vh-vakken{display:grid;grid-template-columns:minmax(0,1fr);gap:48px}
.vh-vak{display:grid;grid-template-columns:minmax(0,1fr);align-content:start;min-width:0}
.vh-vak__nr{display:flex;align-items:center;gap:10px;margin:0 0 8px;color:var(--dgoud)}
.vh-vak__nr img{width:28px;height:28px}
.vh-vak__nr .s-mono{font-size:.875rem;letter-spacing:.08em;color:var(--dgoud)}
.vh-vak__nr::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--lijn-goud),transparent)}
.vh-vak__titel{margin:0 0 8px}
.vh-vak__tekst{margin:0 0 14px;font:italic 400 1.1875rem/1.42 var(--f-serif);color:var(--grijs1)}
.vh-vak__punten{margin:0 0 14px;font-size:.9375rem;line-height:1.45;color:var(--inkt2);gap:7px}
.vh-vak__link{justify-self:start}
@media (min-width:1024px){
  .vh-vakken{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px}
  @supports (grid-template-rows:subgrid){.vh-vakken{grid-template-rows:repeat(6,auto)}.vh-vak{grid-row:span 6;grid-template-rows:subgrid}}
}
.vh-midden{margin:clamp(28px,3.6vw,44px) 0 0;text-align:center}
@media (pointer:fine){
  .vh-medaillon img{transition:transform .6s var(--s-ease-inkt)}
  .vh-vak:hover .vh-medaillon img,.vh-groep:hover .vh-medaillon img{transform:scale(1.045)}
}

/* ================================================================ 四 UITGELICHT: kozijnen (plechtig vel) — woning dag → avond, pins altijd zichtbaar */
.vh-uit__vel{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;padding:34px 18px 34px;overflow:clip}
.vh-uit__beeld{position:relative;display:grid;justify-items:center}
.vh-uit__zon{position:absolute;left:54%;top:36%;width:min(78%,500px);aspect-ratio:1;translate:-50% -50%;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle at 44% 40%,rgba(250,239,210,.96),rgba(242,222,172,.84) 46%,rgba(230,200,132,.48) 64%,rgba(222,190,118,0) 71%)}
.vh-uit__huis{position:relative;width:100%;--avond:0}
.vh-uit__huis picture{display:block}
.vh-uit__huis img{display:block;width:100%;height:auto}
.vh-uit__avond{position:absolute;inset:0;opacity:var(--avond);pointer-events:none}
.vh-uit__nevel{left:-6%;right:-6%;bottom:30%;height:16%;opacity:.7}
.vh-uit__bijschrift{position:relative;margin:6px 0 0;text-align:center}
.vh-klik{display:none}
@media (hover:hover) and (pointer:fine){.vh-tik{display:none}.vh-klik{display:inline}}
.vh-pins .s-pin{font-size:.875rem}
.vh-pins .s-pin__tip{font-size:.875rem}
@media (min-width:768px){.vh-pins .s-pin,.vh-pins .s-pin__tip{font-size:.8125rem}}
@media (prefers-reduced-motion:no-preference){
  .vh-uit.is-in-beeld .vh-pins .s-pin{animation:vh-pin-in .42s var(--s-ease-stempel,cubic-bezier(.2,1.4,.4,1)) calc(var(--i) * 45ms) both}
  .vh-uit.is-in-beeld .vh-pins .s-pin::before{animation:vh-steel .42s ease-out calc(var(--i) * 45ms) both}
}
@keyframes vh-pin-in{from{opacity:0;scale:.55}to{opacity:1;scale:1}}
@keyframes vh-steel{from{transform:scaleY(0);transform-origin:50% 0}to{transform:scaleY(1);transform-origin:50% 0}}
.vh-kleuren{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 16px;margin-top:16px}
.vh-kleuren__label{font:500 .875rem/1.2 var(--f-kop);letter-spacing:.22em;text-transform:uppercase;color:var(--dgoud)}
.vh-kleuren__lijst{list-style:none;display:flex;gap:14px;margin:0;padding:0}
.vh-kleuren__lijst li{display:inline-flex;align-items:center;gap:6px}
.vh-kleuren__lijst .s-mono{font-size:.875rem;color:var(--inkt)}
.vh-kleuren__staal{width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 34% 30%,rgba(255,255,255,.28),transparent 46%),var(--staal);
  box-shadow:0 0 0 1px rgba(var(--inkt-rgb),.35),0 0 0 3px var(--rijst),0 0 0 4px rgba(var(--dgoud-rgb),.5)}
.vh-kleuren__noot{flex-basis:100%;text-align:center;font:italic 400 1rem/1.3 var(--f-serif);color:var(--grijs1)}
.vh-uit__tekst{position:relative;display:grid;align-content:start;gap:14px;min-width:0}
.vh-uit__tekst .s-h2{margin:0}
.vh-uit__lead{margin:6px 0 0}
.vh-keuzes{list-style:none;display:grid;gap:0;margin:0;padding:0;border-top:1px solid var(--lijn-goud-zacht)}
.vh-keuzes > li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:0 14px;align-items:start;align-content:start;padding:12px 0;border-bottom:1px solid rgba(var(--dgoud-rgb),.2)}
.vh-keuzes .s-stapnr{grid-row:1 / span 2;align-self:start;margin-top:10px}
.vh-keuzes__titel{display:inline-flex;align-items:center;gap:10px;justify-self:start;min-height:44px;font:500 1rem/1.2 var(--f-kop);letter-spacing:.12em;text-transform:uppercase;color:var(--inkt);text-decoration:none}
.vh-keuzes__titel .s-ico{width:16px;height:16px;color:var(--dgoud);transition:transform var(--duur-kort) var(--ease)}
.vh-keuzes__titel:hover .s-ico{transform:translateX(4px)}
.vh-keuzes__titel:hover{text-decoration:underline;text-decoration-color:var(--goud);text-underline-offset:.3em}
.vh-keuzes__tekst{margin-top:-6px;font-size:.9375rem;line-height:1.45;color:var(--grijs1)}
.vh-uit__knoppen{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-top:10px}
.vh-uit__knoppen .s-knop{width:100%;white-space:nowrap;padding-inline:18px calc(18px - .16em)}
.vh-uit__montage{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:4px 0 0;font-size:.9375rem;line-height:1.45;color:var(--grijs1)}
@media (min-width:600px){.vh-uit__knoppen{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:768px){.vh-uit__vel{padding:44px 40px}}
@media (min-width:1024px){
  .vh-uit__vel{grid-template-columns:minmax(0,7fr) minmax(0,5fr);column-gap:clamp(32px,4vw,56px);padding:56px 60px 56px;align-items:start}
  .vh-uit__beeld{margin:0 -8px 0 -20px;padding-top:8px}
  .vh-uit__tekst{align-self:center;padding-top:8px}
  .vh-keuzes{grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:8px;border-bottom:1px solid rgba(var(--dgoud-rgb),.2)}
  .vh-keuzes > li{padding:18px 24px 20px;border-bottom:0}
  .vh-keuzes > li:first-child{padding-left:4px}
  .vh-keuzes > li + li{border-left:1px solid rgba(var(--dgoud-rgb),.25)}
}

/* ================================================================ 五 PRODUCTGROEPEN (ronde 2c): één hoofdbeeld (de freesrotor) + zes medaillons
   van 220 px op één raster (titels, teksten en linkregels op gemeenschappelijke lijnen via subgrid) + een strook voor 'iets anders' */
.vh-groepen__kader{padding:26px 16px 22px}
.vh-uitgelicht{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;gap:22px;padding:6px 0 30px;margin-bottom:6px;border-bottom:1px solid rgba(var(--dgoud-rgb),.28)}
.vh-uitgelicht__rond{width:min(78vw,320px)}
.vh-uitgelicht__tekst{display:grid;justify-items:start;align-content:start;min-width:0;width:100%}
.vh-uitgelicht__kicker{display:flex;align-items:center;gap:12px;margin:0 0 10px;font:500 .875rem/1.2 var(--f-kop);letter-spacing:.24em;text-transform:uppercase;color:var(--vh-goudtekst)}
.vh-uitgelicht__kicker img{width:30px;height:30px}
.vh-uitgelicht__titel{margin:0 0 10px;font:400 1.75rem/1.1 var(--f-kop);letter-spacing:.14em;text-transform:uppercase;color:var(--inkt)}
.vh-uitgelicht__lead{margin:0 0 16px;max-width:34ch;font:italic 400 1.25rem/1.42 var(--f-serif);color:var(--inkt2)}
.vh-uitgelicht__punten{margin:0 0 16px;font-size:.9375rem;line-height:1.45;color:var(--inkt2);gap:7px}
@media (min-width:900px){
  .vh-uitgelicht{grid-template-columns:minmax(0,5fr) minmax(0,6fr);justify-items:stretch;align-items:center;column-gap:clamp(36px,5vw,72px);padding:8px 8px 44px;margin-bottom:10px}
  .vh-uitgelicht__rond{justify-self:center;width:min(100%,380px)}
  .vh-uitgelicht__titel{font-size:clamp(30px,3vw,40px)}
  .vh-uitgelicht__lead{font-size:1.5rem}
}

.vh-groepen__raster{list-style:none;display:grid;grid-template-columns:minmax(0,1fr);gap:0;margin:0;padding:0}
.vh-groep{position:relative;display:grid;grid-template-columns:92px minmax(0,1fr);grid-template-rows:auto auto auto auto;column-gap:18px;align-items:start;align-content:start;min-width:0;padding:18px 0}
.vh-groep + .vh-groep{border-top:1px solid rgba(var(--dgoud-rgb),.2)}
.vh-groep > .vh-groep__rond{grid-row:1 / span 4;width:84px;margin:6px 0 0 6px}
.vh-groep > :not(.vh-groep__rond){grid-column:2;justify-self:start}
.vh-groep__label{display:inline-flex;align-items:center;height:24px;margin:0 0 4px;padding:0 10px 0 calc(10px + .16em);
  background:var(--s-goudverloop);color:var(--inkt);font:500 .875rem/1 var(--f-kop);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;
  box-shadow:inset 0 1px 0 rgba(255,250,232,.65),inset 0 -1px 0 var(--dgoud)}
.vh-groep--uit > .vh-groep__rond{grid-row:1 / span 5}
.vh-groep__titel{margin:0 0 2px;font:500 .9375rem/1.25 var(--f-kop);letter-spacing:.1em;text-transform:uppercase;color:var(--inkt);text-wrap:balance}
.vh-groep__link{display:inline-flex;align-items:center;min-height:44px;color:inherit;text-decoration:none}
.vh-groep__link::after{content:"";position:absolute;inset:0;z-index:1;border-radius:4px}
.vh-groep__link:focus-visible{outline:none}
.vh-groep:has(.vh-groep__link:focus-visible){outline:2px solid var(--dgoud);outline-offset:4px;border-radius:4px}
.vh-groep__tekst{margin:-6px 0 8px;font-size:.9375rem;line-height:1.45;color:var(--grijs1);max-width:34ch}
.vh-groep__pijl{display:inline-flex;align-items:center;gap:8px;font:500 .875rem/1 var(--f-kop);letter-spacing:.14em;text-transform:uppercase;color:var(--vh-goudtekst)}
.vh-groep__pijl .s-ico{width:16px;height:16px;transition:transform .3s var(--ease)}
.vh-groep:hover .vh-groep__pijl .s-ico{transform:translateX(5px)}
@media (min-width:600px){
  .vh-groepen__raster{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;grid-template-rows:repeat(3,auto auto auto auto auto)}
  .vh-groep,.vh-groep--uit{grid-template-columns:minmax(0,1fr);grid-row:span 5;grid-template-rows:subgrid;row-gap:0;justify-items:center;text-align:center;padding:0 0 34px;border:0 !important}
  .vh-groep > .vh-groep__rond,.vh-groep--uit > .vh-groep__rond{grid-row:2;grid-column:1;width:min(100% - 14px,200px);margin:7px 0 18px}
  .vh-groep > :not(.vh-groep__rond){grid-column:1;justify-self:center}
  .vh-groep > .vh-groep__label{grid-row:2;align-self:start;position:relative;z-index:2;margin:-4px 0 0}
  .vh-groep > .vh-groep__titel{grid-row:3;align-self:end}
  .vh-groep > .vh-groep__tekst{grid-row:4;max-width:26ch;margin:0 0 12px}
  .vh-groep > .vh-groep__pijl{grid-row:5;align-self:end}
  .vh-groep::before{content:"";grid-row:1;height:24px}
}
@media (min-width:900px){
  .vh-groepen__kader{padding:52px 44px 34px}
  .vh-groepen__raster{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:32px;grid-template-rows:repeat(2,auto auto auto auto auto);padding-top:18px}
  .vh-groep > .vh-groep__rond,.vh-groep--uit > .vh-groep__rond{width:min(100% - 14px,220px)}
  .vh-groep{padding-bottom:40px}
  .vh-groep:not(:nth-child(3n+1))::after{content:"";position:absolute;left:-16px;top:40px;bottom:40px;width:1px;background:linear-gradient(180deg,transparent,rgba(var(--dgoud-rgb),.28),transparent)}
}
/* 'Staat uw product er niet tussen?' als strook onder het raster */
.vh-anders{display:grid;grid-template-columns:56px minmax(0,1fr);gap:14px 18px;align-items:center;padding:22px 0 4px;border-top:1px solid rgba(var(--dgoud-rgb),.28)}
.vh-anders__zegel{display:grid;place-items:center;width:56px;height:56px}
.vh-anders__zegel .s-zegel-svg{width:48px;height:48px;rotate:-4deg}
.vh-anders__titel{margin:0 0 4px;font:500 1rem/1.25 var(--f-kop);letter-spacing:.12em;text-transform:uppercase;color:var(--inkt)}
.vh-anders__tekst p{margin:0;font-size:.9375rem;line-height:1.5;color:var(--grijs1)}
.vh-anders__knop{grid-column:1 / -1;justify-self:start;padding-inline:14px calc(14px - .14em)}
.vh-anders__knop .s-ico{width:16px;height:16px}
@media (min-width:768px){
  .vh-anders{grid-template-columns:64px minmax(0,1fr) auto;padding:26px 8px 6px}
  .vh-anders__zegel{width:64px;height:64px}.vh-anders__zegel .s-zegel-svg{width:56px;height:56px}
  .vh-anders__knop{grid-column:auto;justify-self:end}
}
@media (pointer:fine){.vh-uitgelicht:hover .vh-medaillon img{transform:scale(1.035)}}

/* ================================================================ 六 DE MENSEN: portretten op de zon (wit wordt zon via multiply) */
.vh-mensen__raster{list-style:none;display:grid;grid-template-columns:minmax(0,1fr);gap:0;margin:0;padding:0;border-top:1px solid var(--lijn-goud-zacht)}
.vh-persoon{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 20px;align-items:start;padding:24px 0;border-bottom:1px solid rgba(var(--dgoud-rgb),.2)}
.vh-persoon__foto{grid-row:1 / span 5;width:88px;margin:6px}
.vh-medaillon--portret > picture{background:radial-gradient(circle at 50% 30%,#FBF1D8 0,#F3E1B4 46%,#E6CA8C 100%)}
.vh-medaillon--portret img{mix-blend-mode:multiply;filter:sepia(.14) saturate(.92) contrast(1.02);object-position:50% 30%}
.vh-persoon__foto--zegel{display:block}
.vh-persoon__foto--zegel .s-kalli{position:absolute;inset:5px;display:grid;place-items:center;border-radius:50%;font-size:44px;line-height:1;color:var(--rood);
  background:radial-gradient(circle at 50% 30%,#FBF1D8 0,#F3E1B4 46%,#E6CA8C 100%)}
.vh-persoon__naam{font-size:1.75rem;white-space:normal}
.vh-persoon__tekst{margin:6px 0 2px;font-size:.9375rem;line-height:1.5;color:var(--grijs1)}
.vh-persoon__contact{gap:0 16px}
@media (min-width:900px){
  .vh-mensen__raster{grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid rgba(var(--dgoud-rgb),.2)}
  .vh-persoon{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto 1fr auto;justify-items:center;text-align:center;padding:38px 28px 30px;border-bottom:0}
  .vh-persoon + .vh-persoon{border-left:1px solid rgba(var(--dgoud-rgb),.25)}
  .vh-persoon__foto{grid-row:auto;margin:6px 6px 24px;width:120px}
  .vh-persoon__naam{justify-self:center}
  .vh-persoon__contact{justify-content:center;flex-direction:column;align-items:center}
  .vh-persoon__foto--zegel .s-kalli{font-size:58px}
}

/* ================================================================ SLOT (p17, ronde 2c): alles in één omlijst vel — 谢谢, kop, contact met labels,
   het schip in een inktwas op zee onderin het vel (deint traag), en een kolofonregel zoals de offerte. Geen lege mist, geen schaduwband. */
.vh-slot{padding-top:0}
.vh-mensen{padding-bottom:calc(var(--sectie) * .7)}
.vh-slot__vel{position:relative;overflow:clip;padding:clamp(34px,5vw,64px) clamp(18px,4vw,64px) 0;text-align:center}
.vh-slot__tak{width:200px;right:-30px;top:-14px;clip-path:inset(14px 30px 0 0);opacity:.9}
@media (min-width:768px){.vh-slot__tak{width:360px;right:-44px;top:-30px;clip-path:inset(30px 44px 0 0)}}
.vh-slot__inhoud{position:relative;z-index:2}
.vh-slot .s-slot__logo{display:block;width:72px;height:72px}
@media (min-width:768px){.vh-slot .s-slot__logo{width:88px;height:88px}}
.vh-slot .s-slot__citaat{max-width:23em}
.vh-slot__xiexie{position:relative;display:block;width:96px;margin:0 auto}
.vh-slot__zegel{position:absolute;left:calc(100% + 10px);top:4px}
.vh-slot__zegel .s-zegel-svg{display:block;width:36px;height:36px;rotate:5deg}
.vh-slot__tekst{max-width:52ch;margin:14px auto 0;font-size:1rem;line-height:1.6;color:var(--grijs1)}
.vh-slot__contact{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 34px;margin:24px 0 0;padding:0}
.vh-slot__contact > div{display:grid;justify-items:center;gap:0}
.vh-slot__contact dt{font:500 .875rem/1.3 var(--f-kop);letter-spacing:.2em;text-transform:uppercase;color:var(--grijs2)}
@media (min-width:768px){.vh-slot__contact dt{font-size:.75rem;letter-spacing:.28em}}
.vh-slot__contact dd{margin:0}
.vh-slot__contact a{display:inline-flex;align-items:center;min-height:44px;font:500 .9375rem/1.2 var(--f-mono);color:var(--inkt);text-decoration:none;white-space:nowrap}
.vh-slot__contact a:hover{text-decoration:underline;text-decoration-color:var(--goud);text-underline-offset:.25em}
/* het schip: inktwas loopt aan alle kanten in het papier uit (masker op het beeld zelf, geen kleurvlak) */
.vh-slot__beeld{position:relative;z-index:1;margin:clamp(4px,1vw,12px) calc(-1 * clamp(18px,4vw,64px)) 0;aspect-ratio:1800/760}
.vh-slot__deining,.vh-slot__deining > picture{position:absolute;inset:0}
.vh-slot__deining img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:56% 50%}
.vh-slot__beeld::after{display:none}
.vh-slot__kolofon{position:relative;z-index:2;display:flex;flex-wrap:wrap;justify-content:center;gap:2px 16px;margin:-6px 0 0;padding:0 0 clamp(26px,3vw,40px);
  font-size:.875rem;line-height:1.5;color:var(--vh-grijstekst)}
.vh-slot__kolofon b{font:500 .875rem/1.5 var(--f-kop);letter-spacing:.16em;text-transform:uppercase;color:var(--inkt)}
.vh-slot__kolofon > * + *::before{content:"\B7";margin-right:16px;color:var(--dgoud)}
@media (max-width:767px){
  .vh-slot__beeld{margin-inline:-18px}
  .vh-slot__kolofon{flex-direction:column;gap:0}
  .vh-slot__kolofon > * + *::before{content:none}
}
@media (prefers-reduced-motion:no-preference){
  .vh-slot__deining{animation:vh-deinen 6.5s ease-in-out infinite alternate;animation-play-state:paused}
  .vh-slot.is-in-beeld .vh-slot__deining{animation-play-state:running}
}
@keyframes vh-deinen{from{transform:translate3d(0,-1.5px,0) rotate(-.12deg)}to{transform:translate3d(0,2px,0) rotate(.14deg)}}
/* (ronde 3: voet-overlap staat onderaan, op main + .s-voet) */

/* verticaal kalligrafisch teken in de titelblok-kolom (平安: levering/route) */
.vh-teken-v{writing-mode:vertical-rl;letter-spacing:.04em;font-size:44px;width:auto;height:auto}
@media (min-width:1024px){.s-titelblok__teken.vh-teken-v{font-size:64px;min-height:0;justify-self:center}}
@media (max-width:1023px){.s-titelblok__teken.vh-teken-v{writing-mode:horizontal-tb;width:auto;font-size:30px;height:56px}}

/* voet (gedeeld): het zusterbedrijf op een eigen regel op mobiel, zonder bungelende punt (home.js zet de spans) */
@media (max-width:767px){.vh-voet-copy .vh-voet-zus{display:block;white-space:normal}.vh-voet-copy .vh-voet-zus::before{content:none}}

/* fijnwerk smal scherm: onderschrift zonder weeskind, folio op één regel */
.vh-route .s-routekaart__onderschrift{text-wrap:balance}
@media (max-width:767px){.vh .s-folio__lijn{white-space:nowrap;letter-spacing:.16em}}
@media (max-width:400px){.vh .s-folio{gap:12px;letter-spacing:.14em}.vh .s-folio__lijn{gap:10px}}
@media (max-width:599px){.vh-groep--anders > .s-knop{grid-column:1 / -1 !important;justify-self:start;margin-top:14px;white-space:nowrap}}

/* ================================================================================================ RONDE 2c (jury 7 / 7,5)
   Contrast, kop, omslag mobiel, kenmerkband, zegels, H2-kop, H3-medaillons, H6-kop, stapzegels, kaartlabels, voet, beweging. */

/* --- contrast: kleine goud- en grijstekst (< 18 px) op rijst ≥ 4,5 : 1 (#866720 ≈ 4,6 · #6B655C ≈ 5,0); licht goud alleen voor lijnen en grote cursief */
.vh{--vh-goudtekst:#866720;--vh-grijstekst:#6B655C}
.vh :is(.s-kicker,.s-zegel-nr,.s-folio,.s-totaal__label,.vh-kleuren__label,.s-stappen-ring__moment,.s-routekaart__naam small,.s-routekaart__loeptitel,.vh-vak__nr .s-mono,.vh-band__regio,.s-voet h2,.s-merk__naam b){color:var(--vh-goudtekst) !important}
.vh :is(.s-zegel-nr__tot,.s-folio__lijn,.s-folio__nr span,.s-handtekening__rol,.s-oogopslag__label,.s-voet address,.s-voet__onder){color:var(--vh-grijstekst)}
.vh .vh-demo__label{color:#765A18}

/* --- kop ingeklapt (desktop): naam op het optische midden van het logo en het menu */


/* --- omslag: waarde in Oswald (mono alleen voor maten en nummers), zegel naast het hoekornament, mobiel compacter */
.vh-omslag__totaal .s-totaal__waarde{font:500 1.375rem/1.2 var(--f-kop);letter-spacing:.12em;word-spacing:.02em}
@media (min-width:768px){.vh-omslag__totaal .s-totaal__waarde{font-size:1.5rem}}
@media (max-width:767px){
  .vh-demo__balk{min-height:44px;padding-block:0;flex-wrap:nowrap}
  .vh-demo__link{font-size:.875rem}
  .vh-omslag__bijschrift{display:none}
  .vh-omslag__orn{margin-block:18px 0}
  .vh-omslag__scene{margin-top:0}
  .vh-omslag__vel{padding-bottom:30px}
  .vh-omslag__totaal{margin-top:24px}
  .vh-omslag__totaal > .s-zegel-svg{translate:4px -12px}
  .vh-omslag__den{display:none}
}

/* --- kenmerkband: kalligrafie in de gouden dubbelring (年 司 仓 佛 品) i.p.v. lijn-iconen */
.vh-band__ico img{display:block;width:24px;height:24px}
@media (min-width:900px){.vh-band__ico img{width:28px;height:28px}}
@media (max-width:899px){
  .vh-band__item--breed{grid-template-columns:44px minmax(0,1fr) !important;column-gap:16px}
  .vh-band__item--breed > :not(.vh-band__ico){grid-column:2 !important}
  .vh-band__item--breed .vh-band__ico{grid-column:1 !important;grid-row:1 / span 3;width:44px;height:44px;align-self:center}
}


/* --- H2: gecentreerd titelblok zonder citaatkolom; de kaart zo breed als het scherm toelaat */
.vh .s-titelblok--midden .s-titelblok__kop > .s-h2{padding-right:0}
.vh-route__kop .s-titelblok__lead{max-width:44ch;margin-inline:auto}
.vh-route__kop .s-bewijs{justify-content:center;text-align:center}
.vh-route__kaart{position:relative}
.vh-route__pingan{display:none}
@media (min-width:1280px){
  .vh-route__kaart{max-width:1360px}
  .vh-route__pingan{display:block;position:absolute;left:58px;bottom:16%;z-index:3;writing-mode:vertical-rl;font-size:54px;letter-spacing:.06em;color:var(--inkt);opacity:.82}
}

/* --- H3: grotere medaillons, ook mobiel gecentreerd */
.vh-vak__plaat{justify-self:center;margin:0 0 26px}
.vh-vak__plaat .vh-medaillon{width:min(84vw,320px)}
@media (min-width:768px){.vh-vak__plaat .vh-medaillon{width:min(100% - 14px,300px)}}
@media (min-width:1024px){.vh-vak__plaat .vh-medaillon{width:min(100% - 14px,310px)}}
.vh-vak__nr img{width:34px;height:34px}

/* --- stapnummers: gestempelde zegels met Plex Mono-cijfers */
.vh :is(.vh-stappen,.vh-keuzes) .s-stapnr{width:28px;height:28px;background:url('../../beeld/voorstel-home/zegel-stap.svg?v=f3a245cf') center/100% 100% no-repeat;
  font:600 .875rem/1 var(--f-mono);color:#F8E9DF;rotate:-4deg;border:0;box-shadow:none}
.vh-ico-weeg{width:24px;height:24px}

/* --- kaart (H2): labels met papiergloed en buiten de kustlijnen (posities in home.js); mobiel alleen FOSHAN + 佛山 */
.vh-route .s-routekaart__lab{padding:1px 2px}
.vh-route .s-routekaart__lab::before{inset:-5px -9px}
.vh-route .s-routekaart__lab.vh-lab--leider::after{content:"";position:absolute;top:50%;width:var(--leider,10px);height:1px;background:rgba(var(--dgoud-rgb),.8)}
.vh-route .s-routekaart__lab.vh-lab--leider-l::after{right:100%;margin-right:3px}
.vh-route .s-routekaart__lab.vh-lab--leider-r::after{left:100%;margin-left:3px}
@media (max-width:767px){.vh-route .s-routekaart__naam--foshan small{display:none}}

/* --- voet (gedeeld, hier pagina-eigen bijgestuurd): één lettertype per gegevenstype, gelijke ritmes, geen weeskind-koppen */
.vh .s-voet__contact a[href^="mailto:"]{font-family:var(--f-mono);font-size:.875rem;font-weight:500}
.vh .s-voet address{margin-top:14px}
.vh .s-voet__contact ul + address{margin-top:12px}
.vh .s-voet h2{white-space:nowrap}
@media (max-width:400px){.vh .s-voet h2{letter-spacing:.16em}}

/* --- beweging: kalligrafie tekent zich in bij het hoofdstukbegin (masker, alleen in beeld, reduced motion = eindstand) */
@media (prefers-reduced-motion:no-preference){
  html.js-beweeg .vh-inkt{-webkit-mask:linear-gradient(180deg,#000 40%,transparent 60%) 0 100%/100% 260% no-repeat;mask:linear-gradient(180deg,#000 40%,transparent 60%) 0 100%/100% 260% no-repeat}
  html.js-beweeg .vh-inkt.is-getekend{-webkit-mask-position:0 0;mask-position:0 0;transition:-webkit-mask-position 1.7s var(--s-ease-inkt),mask-position 1.7s var(--s-ease-inkt)}
  html.js-beweeg .vh-inkt--h{-webkit-mask:linear-gradient(90deg,#000 40%,transparent 60%) 100% 0/260% 100% no-repeat;mask:linear-gradient(90deg,#000 40%,transparent 60%) 100% 0/260% 100% no-repeat}
  html.js-beweeg .vh-inkt--h.is-getekend{-webkit-mask-position:0 0;mask-position:0 0}
  .vh-omslag__zon,.vh-omslag__tak,.vh-omslag__bergen,.vh-omslag__mist{will-change:transform}
}
/* --- omslag: diepte bij scrollen (home.js zet --vh-py = scrollY, alleen terwijl de omslag in beeld is; alleen transform/translate) */
@media (prefers-reduced-motion:no-preference){
  html.js-beweeg .vh-omslag__zon{transform:translate3d(0,calc(var(--vh-py,0) * .16px),0)}
  html.js-beweeg .vh-omslag__bergen{transform:translate3d(0,calc(var(--vh-py,0) * .1px),0)}
  html.js-beweeg .vh-omslag__tak{translate:0 calc(var(--vh-py,0) * -.07px)}
  html.js-beweeg .vh-omslag__mist{translate:0 calc(var(--vh-py,0) * -.05px)}
  html.js-beweeg .vh-omslag__teken{translate:0 calc(var(--vh-py,0) * .06px)}
}

/* --- ritme: mobiel ± 15 % korter per hoofdstuk; de Foshan-naam op de hoofdkaart in het binnenland (boven de kust) */
@media (max-width:767px){.vh .s-sectie{padding-block:calc(var(--sectie) * .82)}.vh .s-folio{margin-top:32px}}
@media (min-width:768px){.vh-route .s-routekaart__naam--foshan{translate:-4px -30px}}
/* het schip op de hoofdkaart: kleiner, zodat het in de Noordzee ≥ 12 px vrij ligt van beide kusten */
.vh-route .s-routekaart__romp{scale:.66}
@media (max-width:767px){.vh-route .s-routekaart__romp{scale:.8}}
/* bijschrift onder de verticale stappenlijst: op de tekstkolom uitgelijnd (ring 56 + 18), niet gecentreerd onder een linkse lijst */
@media (max-width:767px){.vh-route__tik{text-align:left;padding-left:74px}}

/* ================================================================================================ RONDE 3 (jury 7,5 / 8)
   Eén groot beeldmoment per hoofdstuk, medaillons alleen nog voor details; zegel naast de handtekening; 龍 alleen bij de
   handtekening, het omslagkader en het slot; hoofdstukvoeten met het hoofdstukzegel; mobiel ± 25 % korter. */

/* --- omslag: groter beeld, optisch gecentreerd op de zon; het beeld eindigt binnen de binnenlijn van het kader */
.vh-omslag__haven{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 94%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 94%,transparent 100%)}
@media (max-width:767px){.vh-omslag__scene{margin-inline:-8px}}
@media (min-width:1024px){
  .vh-omslag__scene{grid-column:1 / 4;margin:4px -24px 0 56px}
  .vh-omslag__haven{width:min(100%,1000px);margin-inline:auto}
  .vh-omslag__zon{left:47%;top:40%;width:min(48%,470px)}
  .vh-omslag__tekst{margin-top:-34px}
}

/* --- kenmerkband mobiel: het vijfde cijfer over de volle breedte, zelfde patroon (ring rechts) */
@media (max-width:899px){
  .vh-band__item--breed{grid-template-columns:minmax(0,1fr) 40px !important;column-gap:8px;padding:18px 0 !important}
  .vh-band__item--breed > :not(.vh-band__ico){grid-column:1 !important}
  .vh-band__item--breed .vh-band__ico{grid-column:2 !important;grid-row:1 / span 3;width:40px;height:40px;align-self:start}
}

/* --- H1 brief: kop · brief | detail · groot vrijstaand warehouse op de zon (offerte p2) */
.vh-brief{grid-template-areas:"kop" "tekst" "plaat"}
.vh-brief__zij{display:none}
.vh-brief__plaat{position:relative;grid-area:plaat;display:block;margin:30px -14px 0;padding:0}
.vh-brief__zon{position:absolute;left:58%;top:40%;width:min(62%,420px);aspect-ratio:1;translate:-50% -50%;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle at 44% 40%,rgba(250,239,210,.96),rgba(242,222,172,.82) 46%,rgba(230,200,132,.42) 64%,rgba(222,190,118,0) 71%)}
.vh-brief__warehouse{position:relative;display:block;margin-top:18px}
.vh-brief__warehouse img{display:block;width:100%;height:auto}
.vh-brief__nevel{left:-6%;right:-6%;bottom:-4%;height:34%;opacity:.75}
.vh-brief__plaat .vh-brief__citaat{position:relative;z-index:2;max-width:26ch;margin:0 0 0 14px;padding-left:20px}
.vh-brief__tekst{position:relative;z-index:2}
.vh-brief__citaatzegel{display:inline-block;width:26px;height:26px;margin-left:10px;vertical-align:-4px;rotate:4deg}
@media (min-width:1024px){
  .vh-brief{grid-template-columns:minmax(0,7fr) minmax(0,4fr);grid-template-areas:"kop zij" "tekst zij" "plaat plaat";padding:56px 64px 40px}
  .vh-brief__zij{grid-area:zij;display:grid;justify-items:center;align-content:start;gap:16px;padding-top:44px}
  .vh-brief__detail{width:200px}
  .vh-brief__detailtekst{max-width:24ch;margin:0;text-align:center;font:italic 400 1.0625rem/1.4 var(--f-serif);color:var(--vh-grijstekst)}
  .vh-brief__plaat{margin:52px -24px 0;min-height:0}
  .vh-brief__plaat .vh-brief__citaat{margin:0 0 0 24px;max-width:36ch;font-size:1.5rem}
  .vh-brief__warehouse{width:94%;margin:-10px auto 0}
  .vh-brief__zon{left:57%;top:56%;width:min(40%,420px)}
}

/* --- handtekening: het 龍-zegel in een eigen kolom rechts van naam en functie (nooit over de naam) */
.vh-teken--zegel{grid-template-columns:max-content 44px;column-gap:16px}
.vh-teken--zegel > :not(.vh-teken__zegel){grid-column:1}
.vh-teken__zegel{grid-column:2;grid-row:1 / span 2;align-self:center;display:block;width:44px;height:44px}
.vh-teken__zegel .s-zegel-svg{display:block;width:44px;height:44px;rotate:-4deg}
@media (min-width:640px){.vh-teken__zegel{align-self:start;margin-top:2px}}

/* --- hoofdstukvoet: hoofdstukzegel (壹–陆) i.p.v. 龍; mobiel één haarlijn over de volle breedte, geen losse lijnstukjes */
.vh .s-folio__nr .vh-folio__zegel{width:18px;height:18px;rotate:-4deg}
@media (max-width:767px){
  .vh .s-folio{padding-top:14px;border-top:1px solid var(--lijn-goud-zacht)}
  .vh .s-folio__lijn::before,.vh .s-folio__lijn::after{content:none}
}

/* --- scharnieren: mobiel laag en zichtbaar (geen 'laadt nog'-gat) */
@media (max-width:767px){
  .vh-scharnier{height:clamp(56px,16vw,88px)}
  .vh-scharnier--orn{height:48px}
  .vh-scharnier__bergen{opacity:.4;background-size:auto 100%}
  .vh .s-sectie:has(+ .vh-scharnier){padding-bottom:calc(var(--sectie) * .2)}
  .vh-scharnier + .s-sectie,.vh-scharnier + .s-slot{padding-top:calc(var(--sectie) * .2)}
}

/* --- H3: drie vrijstaande vignetten (tafel → kist → kade) met één nevelband eronder; mobiel een veegstrook */
.vh-vakken{position:relative}
.vh-vak__plaat{position:relative;z-index:0;justify-self:stretch;margin:0 0 18px}
.vh-vak__plaat picture{display:block}
.vh-vak__plaat img{display:block;width:100%;height:auto}
.vh-vak > :not(.vh-vak__plaat){position:relative;z-index:2}
.vh-vak__tekst{max-width:32ch}
.vh-vakken__nevel{display:none}
.vh-stippen{display:none}
@media (max-width:1023px){
  .vh-vakken{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:min(82%,380px);gap:20px;overflow-x:auto;overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;scrollbar-width:none;margin-inline:calc(-1 * var(--s-goot));padding:0 var(--s-goot) 6px;scroll-padding-inline:var(--s-goot)}
  .vh-vakken::-webkit-scrollbar{display:none}
  .vh-vak{scroll-snap-align:start}
  .vh-vak__plaat{margin-bottom:10px}
  .vh-stippen{display:flex;justify-content:center;gap:10px;margin:14px 0 0}
  .vh-stippen i{width:7px;height:7px;rotate:45deg;border:1px solid var(--dgoud);transition:background .3s var(--ease)}
  .vh-stippen i.is-actief{background:var(--dgoud)}
}
@media (min-width:1024px){
  .vh-vakken{margin-top:8px}
  .vh-vak,.vh-vak:last-child{justify-self:stretch}
  .vh-vakken__nevel{display:block;position:absolute;z-index:1;left:-5%;right:-5%;top:150px;height:120px;pointer-events:none;opacity:.85;
    background:url('../../kit/svg/land/nevel.svg?v=caf49ff3') center bottom/100% 100% no-repeat}
}

/* --- H4: titelblok los (mobiel boven de render), nummers op het glas zoals de offertegevels, vlakke RAL-stalen */
.vh-uit__kop{position:relative;display:grid;gap:14px;align-content:end;min-width:0}
.vh-uit__kop .s-h2{margin:0}
.vh-uit__vel{grid-template-areas:"kop" "beeld" "tekst" "keuzes"}
.vh-uit__kop{grid-area:kop}.vh-uit__beeld{grid-area:beeld}.vh-uit__tekst{grid-area:tekst}.vh-keuzes{grid-area:keuzes}
@media (min-width:1024px){
  .vh-uit__vel{grid-template-areas:"beeld kop" "beeld tekst" "keuzes keuzes";grid-template-rows:auto 1fr auto;row-gap:18px}
  .vh-uit__kop{align-self:end;padding-top:24px}
  .vh-uit__tekst{align-self:start;padding-top:0}
}
.vh-pins .s-pin{width:44px;height:44px;border:0;background:none;box-shadow:none;translate:-50% -50%}
.vh-pins .s-pin::before,.vh-pins .s-pin::after{content:none}
.vh-pins .s-pin > span:first-child{display:grid;place-items:center;width:30px;height:30px;border:1.5px solid var(--dgoud);border-radius:50%;
  background:radial-gradient(circle at 38% 32%,#F6E7BD,var(--goud) 58%,var(--dgoud));color:var(--inkt);
  box-shadow:inset 0 0 0 4px rgba(var(--rijst-rgb),.55),0 0 0 2px rgba(var(--rijst-rgb),.7),0 4px 10px rgba(var(--inkt-rgb),.32)}
.vh-kleuren__lijst{gap:18px}
.vh-kleuren__lijst li{flex-direction:column;gap:6px}
.vh-kleuren__staal{width:34px;height:22px;border-radius:2px;
  background:linear-gradient(160deg,rgba(255,255,255,.16),transparent 55%),var(--staal);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.22),0 0 0 1px rgba(var(--inkt-rgb),.28),0 2px 4px rgba(var(--inkt-rgb),.18)}
.vh-kleuren__staal--licht{box-shadow:inset 0 0 0 1px rgba(255,255,255,.6),0 0 0 1px rgba(var(--dgoud-rgb),.55),0 2px 4px rgba(var(--inkt-rgb),.12)}
.vh-kleuren__lijst .s-mono{font-size:.875rem;line-height:1}
.vh-kleuren__label{flex-basis:100%;text-align:center}

/* --- H5: het uitgelichte product vrijstaand op de zon (schaalcontrast met de kleine medaillons eronder) */
.vh-uitgelicht__rond{position:relative;display:block;aspect-ratio:1}
.vh-uitgelicht__zon{position:absolute;inset:8%;border-radius:50%;
  background:radial-gradient(circle at 44% 40%,rgba(250,239,210,.98),rgba(242,222,172,.86) 46%,rgba(230,200,132,.46) 64%,rgba(222,190,118,0) 71%)}
.vh-uitgelicht__rond picture{position:relative;display:block}
.vh-uitgelicht__rond img{display:block;width:100%;height:auto}
@media (min-width:900px){.vh-uitgelicht__rond{width:min(100%,420px)}}

/* --- H6: 'Ons team' met ons warehouse in het medaillon */
.vh-persoon__foto--warehouse img{object-fit:cover;transform:scale(1.18)}

/* --- slot: eerst de vraag, dan het schip, dan de groet (谢谢) als afsluiter op de mist */
.vh-slot__kicker{margin:0 0 12px}
.vh-slot__groet{position:relative;z-index:2;display:grid;justify-items:center;gap:10px;margin-top:clamp(-72px,-5vw,-28px);padding-bottom:18px}
.vh-slot__groet .s-slot__citaat{margin:2px auto 0}
.vh-slot__beeld{margin-top:clamp(12px,2vw,28px)}
.vh-slot__kolofon{margin-top:4px}
.vh-slot{position:relative;z-index:1}
@media (min-width:768px){.vh main + .s-voet{margin-top:-56px}}

/* --- kaart H2: land warm en dekkend (golven alleen op zee), kust fijn in inkt, kompas op open zee, loeplabels één stijl */
.vh-route .s-routekaart__land > path:first-of-type{fill:#EAE2CF;fill-opacity:1}
.vh-route .s-routekaart__land > g[filter]{stroke:#3B3631}
.vh-route .s-routekaart__land > g[filter] path{stroke-width:.6}
.vh-route .s-routekaart__loep .s-routekaart__lab{font:500 12px/1.2 var(--f-kop);letter-spacing:.18em;text-transform:uppercase;color:var(--inkt)}
.vh-route .s-routekaart__loep .s-routekaart__lab b{font:inherit;letter-spacing:inherit}
.vh-route .s-routekaart__lab--dsd i{display:none}

/* --- ritme iPhone (doel ≤ 11.000 px): loepen als veegstrook, legenda alleen vanaf tablet (de loepen en de lead noemen alles al),
   compactere productrijen en keuzes; niets verdwijnt dat nergens anders staat */
@media (max-width:767px){
  .vh-route .s-routekaart__loepen{flex-wrap:nowrap;justify-content:flex-start;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;
    margin-inline:calc(-1 * var(--s-goot));padding:4px var(--s-goot) 8px;scroll-padding-inline:var(--s-goot);pointer-events:auto}
  .vh-route .s-routekaart__loepen::-webkit-scrollbar{display:none}
  .vh-route .s-routekaart__loep{flex:0 0 auto;width:min(76vw,310px);scroll-snap-align:center}
  .vh-legenda{display:none}
  .vh-stappen{margin-top:26px}
  .vh-uitgelicht__rond{width:min(64vw,260px)}
  .vh-uitgelicht{gap:14px;padding-bottom:22px}
  .vh-uitgelicht__punten{margin-bottom:12px}
  .vh-groep{padding:12px 0;grid-template-columns:80px minmax(0,1fr)}
  .vh-groep > .vh-groep__rond{width:72px;margin:4px 0 0 4px}
  .vh-keuzes__tekst{display:none}
  .vh-keuzes > li{padding:4px 0}
  .vh-keuzes .s-stapnr{margin-top:8px}
  .vh-uit__vel{gap:22px}
  .vh-persoon{padding:18px 0}
  .vh-persoon__foto{width:76px}
}
@media (min-width:400px) and (max-width:599px){
  .vh-uit__knoppen{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .vh-uit__knoppen .s-knop{padding-inline:10px calc(10px - .16em);letter-spacing:.12em}
}

/* --- productgroepen mobiel: twee kolommen medaillons met titel (de hele kaart is de link; de omschrijving staat op de productenpagina) */
@media (max-width:599px){
  .vh-groepen__raster{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px}
  .vh-groep,.vh-groep--uit{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;justify-items:center;text-align:center;padding:16px 0 10px;border-top:0 !important}
  .vh-groep:nth-child(n+3){border-top:1px solid rgba(var(--dgoud-rgb),.2) !important}
  .vh-groep:nth-child(even)::after{content:"";position:absolute;left:-6px;top:18px;bottom:14px;width:1px;background:linear-gradient(180deg,transparent,rgba(var(--dgoud-rgb),.3),transparent)}
  .vh-groep > .vh-groep__rond,.vh-groep--uit > .vh-groep__rond{grid-row:1;grid-column:1;width:min(100% - 16px,112px);margin:6px 0 4px}
  .vh-groep > :not(.vh-groep__rond){grid-column:1;justify-self:center}
  .vh-groep__titel{grid-row:2;max-width:18ch}
  .vh-groep__tekst,.vh-groep__pijl{display:none}
  .vh-groep--uit .vh-groep__label{position:absolute;z-index:2;top:8px;left:50%;translate:-50% 0;margin:0;font-size:.875rem;height:24px}
  .vh-uitgelicht__punten{display:none}
  .vh .s-sectie{padding-block:calc(var(--sectie) * .68)}
  .vh-band__item,.vh-band__item:nth-child(even){padding-block:14px}
  .vh main + .s-voet{margin-top:0;padding-top:76px}
}
@media (max-width:599px){
  .vh .s-folio{margin-top:24px}
  .vh-stappen{--ring:48px;gap:16px}
  .vh-stappen > li::before{bottom:-16px}
  .vh-persoon{gap:2px 16px;padding:16px 0}
  .vh-persoon__foto{width:64px}
  .vh-persoon__naam{font-size:1.5rem}
  .vh-persoon__tekst{margin-top:4px}
}
/* kerncijfers mobiel: één rij van vijf gelijke cellen die u opzij veegt (zelfde patroon: ring boven, label, waarde, toelichting) */
@media (max-width:599px){
  .vh-band{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-inline:calc(-1 * var(--s-goot));padding-inline:var(--s-goot);scroll-padding-inline:var(--s-goot)}
  .vh-band::-webkit-scrollbar{display:none}
  .vh-band::before,.vh-band::after{left:var(--s-goot);right:var(--s-goot)}
  .vh-band__item,.vh-band__item:nth-child(even),.vh-band__item--breed{flex:0 0 40%;display:grid;grid-template-columns:minmax(0,1fr) !important;column-gap:0;padding:18px 14px 16px 16px !important;scroll-snap-align:start}
  .vh-band__item:first-child{padding-left:2px !important}
  .vh-band__item > *,.vh-band__item--breed > :not(.vh-band__ico){grid-column:1 !important}
  .vh-band__item .vh-band__ico,.vh-band__item--breed .vh-band__ico{order:-1;grid-column:1 !important;grid-row:auto;width:40px;height:40px;margin:0 0 10px;align-self:start}
  .vh-band__item::before{display:none !important}
  .vh-band__item::after{display:none}
  .vh-band__item + .vh-band__item::after{display:block;content:"";position:absolute;left:0;top:18px;bottom:18px;width:1px;background:linear-gradient(180deg,transparent,rgba(var(--dgoud-rgb),.4),transparent)}
  .vh .s-titelblok__lead{font-size:1.125rem;line-height:1.45}
}
@media (max-width:599px){
  .vh-vak__punten{display:none}
  .vh-vak__tekst{margin-bottom:10px}
  .vh-kleuren{flex-wrap:nowrap;justify-content:center;gap:14px;margin-top:12px}
  .vh-kleuren__label{flex-basis:auto;font-size:.875rem;letter-spacing:.16em;writing-mode:horizontal-tb;max-width:7.5em;text-align:right;line-height:1.25}
  .vh-kleuren__lijst{gap:12px}
  .vh-kleuren{flex-wrap:wrap}.vh-kleuren__noot{font-size:.9375rem}
  .vh .s-sectie{padding-block:calc(var(--sectie) * .6)}
}
/* H1: citaat boven het warehouse (zoals de offerte p2), zon achter het gebouw */
.vh-brief__plaat{display:flex;flex-direction:column}
.vh-brief__plaat .vh-brief__citaat{order:-1;align-self:flex-start}
.vh-brief__zon{top:66%}
@media (max-width:1023px){.vh-brief__tekst{margin-top:22px}.vh-brief__plaat{margin-top:34px}}
@media (min-width:1024px){.vh-brief__zon{top:64%;left:60%}}
/* slot: het 龍-zegel naast 谢谢 (vaste maat; de absolute span kromp tot 0 px) */
.vh-slot__zegel{width:36px;height:36px}
.vh-slot__zegel .s-zegel-svg{width:36px !important;height:36px !important;min-width:36px}
/* mobiel fijnwerk: kleurstalen onder hun label, tak boven de slotkop, geen dubbele lijn boven de hoofdstukvoet, uitgelicht product zacht uitlopend */
@media (max-width:599px){
  .vh-kleuren__label{flex-basis:100%;max-width:none;text-align:center}
  .vh-slot__tak{width:132px;right:-22px;top:-10px;clip-path:inset(10px 22px 0 0)}
  .vh-mensen__raster > .vh-persoon:last-child{border-bottom:0}
}
.vh-uitgelicht__rond picture{-webkit-mask-image:radial-gradient(closest-side,#000 80%,transparent 100%);mask-image:radial-gradient(closest-side,#000 80%,transparent 100%)}
@media (max-width:767px){.vh-route .s-routekaart__loep .s-routekaart__lab{letter-spacing:.14em}}
/* 龍 alleen bij de handtekening, het omslagkader en het slot: in de (gedeelde) voet op deze pagina een ruit i.p.v. het zegel */
.vh .s-voet__montage .s-zegel-svg{display:none}
.vh .s-voet__montage::before{content:"";display:inline-block;width:7px;height:7px;margin:0 10px 1px 2px;rotate:45deg;background:var(--rood)}
@media (max-width:599px){
  .vh .s-sectie{padding-block:calc(var(--sectie) * .52)}
  .vh-scharnier{height:52px}
  .vh-band-sectie{padding-block:22px 6px}
  .vh-route__tik{margin-top:12px}
  .vh-uitgelicht__lead{margin-bottom:10px}
}

/* ================================================================ EINDKEURING — mobiel snijdt niets meer af (de PDF snijdt nooit iets af):
   kerncijfers als raster van 2 kolommen, de twee kaartuitsneden onder elkaar binnen de goot, de drie vakken gestapeld */
@media (max-width:599px){
  .vh-band{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;margin-inline:0;padding-inline:0}
  .vh-band__item,.vh-band__item:nth-child(even),.vh-band__item--breed{padding:16px 10px 14px 0 !important;border-top:1px solid rgba(var(--dgoud-rgb),.22)}
  .vh-band__item:first-child{padding-left:0 !important}
  .vh-band__item:last-child:nth-child(odd){grid-column:1 / -1}
}
@media (max-width:767px){
  .vh-route .s-routekaart__loepen{flex-direction:column;align-items:center;flex-wrap:nowrap;overflow:visible;margin-inline:0;padding:4px 0 8px}
  .vh-route .s-routekaart__loep{width:min(100%,340px)}
}
@media (max-width:1023px){
  .vh-vakken{grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:minmax(0,1fr);overflow:visible;margin-inline:0;padding:0;gap:34px}
  .vh-stippen{display:none!important}
}
/* één scheiding tussen hoofdstukken: de folio blijft (zoals de PDF-voet), de losse ornamentlijn erna vervalt; mobiel staat de folio ondergeschikt */
.vh-scharnier__orn,.vh-scharnier--orn{display:none}
@media (max-width:767px){.vh .s-folio{font-size:.875rem;letter-spacing:.2em;color:var(--grijs-tekst)}}
/* hoekornament: één schaal voor alle kaders */
.vh{--hoek:28px}
@media (min-width:768px){.vh{--hoek:40px}}
/* takken: de omslagtak hangt bewust over de kaderlijn (niet afgeknipt); de slottak staat binnen het kader met lucht rond de kop */
.vh-omslag__tak{clip-path:none;z-index:4}
@media (min-width:768px){.vh-slot__tak{width:250px;right:14px;top:14px;clip-path:none}}
/* hoofdstuk 1: de zon loopt onderaan uit en komt nooit door de kaderlijn; het warehouse lost symmetrisch op in de mist */
.vh-brief__zon{-webkit-mask-image:linear-gradient(180deg,#000 55%,transparent 88%);mask-image:linear-gradient(180deg,#000 55%,transparent 88%)}
.vh-brief__warehouse img{-webkit-mask-image:radial-gradient(ellipse 62% 70% at 50% 46%,#000 62%,transparent 100%);mask-image:radial-gradient(ellipse 62% 70% at 50% 46%,#000 62%,transparent 100%)}

/* ================================================================ EEN DOCUMENT (eenheid.css) — de hoofdstukbalk staat in elk vel bovenaan over de volle breedte */
@media (min-width:768px){
  .vh .vh-uit__vel{grid-template-areas:"kop kop" "beeld tekst" "keuzes keuzes";grid-template-rows:auto auto auto}
  .vh .vh-uit__vel > .vh-uit__kop{padding-top:0;align-self:start}
}
.vh .vh-uit__vel > .vh-uit__kop{display:grid}
