/* Alleen de introductiepagina; gedeelde navigatie, formulieren en knoppen blijven intact. */
.sh-page { background:linear-gradient(180deg,#fff,var(--grijs-bg)); color:var(--ink); padding:0 0 64px; }
.sh-page .sh-wrap { width:min(1160px,calc(100% - 40px)); margin:0 auto; }
.sh-page h1,.sh-page h2,.sh-page h3 { font-family:var(--font-sans); color:var(--groen-dark); letter-spacing:-.035em; line-height:1.16; }
.sh-page h1 { font-size:clamp(2rem,4.2vw,3.4rem); font-weight:800; margin:20px 0; }
.sh-page h2 { font-size:clamp(1.65rem,2.8vw,2.3rem); font-weight:750; margin:0 0 16px; }
.sh-page h3 { font-size:1.3rem; font-weight:750; margin:0 0 12px; }
.sh-page p { margin:0 0 16px; line-height:1.7; }
.sh-page a { text-underline-offset:3px; }
.sh-page .sh-text-link { display:inline-flex; align-items:center; gap:12px; font-weight:700; color:var(--groen); text-decoration:underline; }
.sh-page a:focus-visible,.sh-page summary:focus-visible { outline:3px solid var(--groen-mid); outline-offset:4px; border-radius:var(--radius-sm); }
.sh-page .sh-icon { width:24px; height:24px; flex:0 0 24px; vertical-align:middle; }
.sh-page .sh-breadcrumb { display:flex; align-items:center; flex-wrap:wrap; gap:12px; padding:28px 0 20px; font-size:.78rem; color:#374151; }
.sh-page .sh-breadcrumb a { color:#374151; }
.sh-page .sh-hero { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); align-items:center; gap:56px; padding:8px 0 32px; }
.sh-page .sh-hero-copy,.sh-page .sh-hero-visual { min-width:0; }
.sh-page .sh-label { display:inline-block; margin:0; padding:6px 12px; background:var(--groen-licht); color:var(--groen-dark); border-radius:var(--radius-pil); font-size:.68rem; line-height:1.5; text-transform:uppercase; letter-spacing:.065em; font-weight:800; }
.sh-page .sh-lead { max-width:34ch; font-size:1.08rem; line-height:1.6; color:#374151; margin-bottom:24px; }
.sh-page .sh-hero-cta { display:inline-flex; justify-content:center; align-items:center; gap:24px; }
.sh-page .sh-hero-link { display:flex; width:fit-content; font-size:.88rem; margin-top:16px; min-height:32px; }
.sh-page .sh-trust { display:flex; align-items:center; gap:8px; font-size:.7rem; font-weight:500; color:#374151; margin:24px 0 0; }
.sh-page .sh-trust .sh-icon { width:20px; height:20px; flex-basis:20px; color:var(--groen); }
.sh-page .sh-hero-visual { margin:0; }
.sh-page .sh-hero-visual img { display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; border-radius:var(--radius-lg); }
.sh-page .sh-hero-visual figcaption { font-size:.68rem; color:#374151; margin-top:8px; text-align:right; }
.sh-page .sh-anchor-nav { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:4px; padding:8px 16px; background:var(--groen-licht); border-radius:var(--radius-md); }
.sh-page .sh-anchor-nav a { display:flex; align-items:center; justify-content:center; gap:12px; min-height:48px; padding:8px 4px; border-bottom:3px solid transparent; font-weight:700; font-size:.8rem; text-decoration:none; color:var(--groen-dark); }
.sh-page .sh-anchor-nav a:hover,.sh-page .sh-anchor-nav a:focus-visible { border-bottom-color:var(--groen); }
.sh-page .sh-anchor-nav .sh-icon { width:20px; height:20px; flex-basis:20px; }
.sh-page .sh-section { padding-top:60px; scroll-margin-top:132px; }
.sh-page .sh-section-heading { text-align:center; max-width:760px; margin:0 auto 28px; }
.sh-page .sh-section-heading p { color:#374151; margin-bottom:12px; }
.sh-page .sh-eyebrow { color:var(--groen); text-transform:uppercase; font-size:.68rem; font-weight:800; letter-spacing:.09em; margin:0 0 12px; }
.sh-page .sh-section-heading .sh-eyebrow { color:var(--groen); }
.sh-page .sh-heading-left { text-align:left; max-width:760px; margin-left:0; }
.sh-page .sh-two-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.sh-page .sh-flow-card { overflow:hidden; border-radius:var(--radius-md); background:#fff; }
.sh-page .sh-flow-card img { display:block; width:100%; height:auto; aspect-ratio:2/1; object-fit:cover; }
.sh-page .sh-flow-copy { padding:24px 28px 28px; }
.sh-page .sh-flow-copy p:last-child { margin-bottom:0; font-size:.94rem; color:#374151; }
.sh-page .sh-flow-day { background:#fffbeb; }
.sh-page .sh-flow-night { background:#eff6ff; }
.sh-page .sh-step { display:flex; align-items:center; gap:8px; width:fit-content; font-size:.72rem; line-height:1.4; font-weight:750; color:#78350f; margin:0 0 12px; }
.sh-page .sh-flow-night .sh-step { color:#1e40af; }
.sh-page .sh-step .sh-icon { width:20px; height:20px; flex-basis:20px; }
.sh-page .sh-note { font-size:.84rem; color:#374151; margin:20px 0 0; max-width:100ch; }
.sh-page .sh-expect { padding-top:44px; }
.sh-page .sh-list-card { background:#fff; border:1px solid var(--grijs-rand); border-radius:var(--radius-md); padding:24px; }
.sh-page .sh-list-card h3 { display:flex; align-items:center; gap:12px; font-size:1.13rem; letter-spacing:-.02em; }
.sh-page .sh-round-icon { display:grid; place-items:center; flex:0 0 36px; width:36px; height:36px; border-radius:50%; color:#fff; background:var(--groen); }
.sh-page .sh-attention .sh-round-icon { background:var(--oranje); }
.sh-page .sh-list-card ul { list-style:none; padding:0; margin:16px 0 0; }
.sh-page .sh-list-card li { display:flex; gap:12px; padding:12px 0; border-top:1px solid var(--grijs-rand); font-size:.88rem; line-height:1.6; }
.sh-page .sh-list-card li .sh-icon { width:20px; height:20px; flex-basis:20px; margin-top:2px; color:var(--groen); }
.sh-page .sh-attention li .sh-icon { color:var(--oranje); }
.sh-page .sh-details { margin-top:20px; background:#fff; border:1px solid var(--grijs-rand); border-radius:var(--radius-md); font-size:.9rem; }
.sh-page .sh-details summary { padding:20px 24px; cursor:pointer; color:var(--groen-dark); font-weight:700; line-height:1.6; }
.sh-page .sh-details summary::marker { color:var(--groen); }
.sh-page .sh-details[open] summary { border-bottom:1px solid var(--grijs-rand); }
.sh-page .sh-details > div { padding:20px 24px; }
.sh-page .sh-details p:last-child { margin-bottom:0; }
.sh-page .sh-fit-card { background:#fff; border:1px solid var(--grijs-rand); border-radius:var(--radius-md); padding:28px; }
.sh-page .sh-card-icon { display:grid; place-items:center; width:44px; height:44px; border-radius:var(--radius-sm); background:var(--groen-licht); color:var(--groen); margin-bottom:20px; }
.sh-page .sh-fit-card p,.sh-page .sh-costs p { font-size:.94rem; color:#374151; }
.sh-page .sh-fit-card p:last-child { margin-bottom:0; }
.sh-page .sh-costs { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:24px 48px; align-items:start; }
.sh-page .sh-costs .sh-eyebrow { color:var(--groen); font-size:.68rem; }
.sh-page .sh-cost-card { padding:28px; background:var(--groen-licht); border-radius:var(--radius-md); }
.sh-page .sh-cost-card a { font-size:.88rem; font-weight:700; }
.sh-page .sh-cost-details { grid-column:1/-1; margin-top:0; }
.sh-page .sh-routes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.sh-page .sh-route { display:flex; flex-direction:column; min-width:0; padding:24px; background:#fff; border:1px solid var(--grijs-rand); border-radius:var(--radius-md); }
.sh-page .sh-route-label { color:var(--groen); font-size:.7rem; font-weight:750; }
.sh-page .sh-route h3 { font-size:1.15rem; }
.sh-page .sh-route > p:not(.sh-route-label) { font-size:.88rem; flex:1; color:#374151; }
.sh-page .sh-route .btn { font-size:.8rem; padding:12px 8px; width:100%; }
.sh-page .sh-faq .sh-details { margin-top:12px; }
.sh-page .sh-faq .faq-blok { margin-top:0; }
.sh-page .sh-faq summary h3 { display:inline; margin:0; color:inherit; font-size:inherit; font-weight:700; letter-spacing:normal; line-height:inherit; }
.sh-page .sh-alarm { margin-top:40px; }
.sh-page .sh-alarm > div { padding:0 20px; }
.sh-page .sh-final { margin-top:48px; display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); align-items:center; gap:40px; padding:40px; background:var(--groen-dark); border-radius:var(--radius-lg); color:#fff; }
.sh-page .sh-final h2 { color:#fff; font-size:clamp(1.5rem,2.4vw,2rem); }
.sh-page .sh-final .sh-eyebrow { color:#d1fae5; }
.sh-page .sh-final p { font-size:.88rem; line-height:1.6; }
.sh-page .sh-final > div > p:last-child { margin-bottom:0; }
.sh-page .sh-final-actions .btn { display:flex; align-items:center; justify-content:center; gap:16px; font-size:.9rem; }
.sh-page .sh-final-actions p { font-size:.72rem; text-align:center; margin:12px 0 0; }
.sh-page .sh-final-actions p a { color:#fff; text-decoration:underline; }
.sh-page .sh-final a:focus-visible { outline-color:#6ee7a0; }
@media(max-width:1000px) {
    .sh-page .sh-hero { gap:28px; }
    .sh-page h1 { font-size:2.6rem; }
    .sh-page .sh-trust { align-items:flex-start; }
    .sh-page .sh-route { padding:20px; }
    .sh-page .sh-final { gap:24px; padding:32px; }
}
@media(max-width:767px) {
    .sh-page .sh-hero,.sh-page .sh-costs,.sh-page .sh-final { grid-template-columns:minmax(0,1fr); }
    .sh-page .sh-hero { gap:28px; padding-bottom:24px; }
    .sh-page .sh-hero-visual img { aspect-ratio:3/2; }
    .sh-page .sh-lead { max-width:48ch; }
    .sh-page h1 { font-size:clamp(2rem,6vw,2.8rem); }
    .sh-page .sh-section { padding-top:44px; }
    .sh-page .sh-section-heading { margin-bottom:24px; }
    .sh-page .sh-anchor-nav { padding:8px; gap:0; }
    .sh-page .sh-anchor-nav a { gap:6px; font-size:.72rem; }
    .sh-page .sh-routes { grid-template-columns:minmax(0,1fr); }
    .sh-page .sh-route .btn { width:fit-content; padding:12px 20px; }
    .sh-page .sh-flow-copy { padding:20px; }
    .sh-page .sh-flow-card h3 { font-size:1.13rem; }
    .sh-page .sh-final-actions { max-width:420px; }
}
@media(max-width:599px) {
    .sh-page .sh-wrap { width:calc(100% - 32px); }
    .sh-page .sh-breadcrumb { padding:20px 0; }
    .sh-page .sh-two-cards { grid-template-columns:minmax(0,1fr); gap:20px; }
    .sh-page .sh-anchor-nav { grid-template-columns:repeat(6,minmax(0,1fr)); }
    .sh-page .sh-anchor-nav a { grid-column:span 2; font-size:.73rem; gap:6px; }
    .sh-page .sh-anchor-nav a:nth-last-child(-n+2) { grid-column:span 3; }
    .sh-page .sh-anchor-nav .sh-icon { width:18px; height:18px; flex-basis:18px; }
    .sh-page .sh-trust { font-size:.65rem; }
    .sh-page .sh-list-card,.sh-page .sh-fit-card,.sh-page .sh-cost-card { padding:24px 20px; }
    .sh-page .sh-details summary,.sh-page .sh-details > div { padding:16px 20px; }
    .sh-page .sh-final { padding:28px 24px; }
    .sh-page .sh-final-actions .btn { padding:14px 12px; font-size:.83rem; }
}
@media(prefers-reduced-motion:reduce) {
    .sh-page *, .sh-page *::before,.sh-page *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
    .sh-page .btn:hover,.sh-page .btn:active { transform:none; }
}
