/* PURGED by client-content/asbitech/css_purge.py from the full producer sheet (sha256 37c7ddb407e2f973, 420649 B). Do not edit: rerun the producers, then css_purge.py. */
:root{--bouw-brand-unset: #ff00ff;
	--bouw-brand-unset-font: system-ui, -apple-system, sans-serif;

	

	

	
	--neutral-50: var(--wp--preset--color--neutral-50, #fafafa);
	--neutral-100: var(--wp--preset--color--neutral-100, #f5f5f5);
	--neutral-200: var(--wp--preset--color--neutral-200, #e5e5e5);
	--neutral-300: var(--wp--preset--color--neutral-300, #d4d4d4);
	--neutral-400: var(--wp--preset--color--neutral-400, #a3a3a3);
	--neutral-500: var(--wp--preset--color--neutral-500, #737373);
	--neutral-600: var(--wp--preset--color--neutral-600, #525252);
	--neutral-700: var(--wp--preset--color--neutral-700, #404040);
	--neutral-800: var(--wp--preset--color--neutral-800, #262626);
	--neutral-900: var(--wp--preset--color--neutral-900, #171717);

	

	
	--space-xs: var(--wp--preset--spacing--20, 0.5rem);
	--space-sm: var(--wp--preset--spacing--30, 0.75rem);
	--space-md: var(--wp--preset--spacing--40, 1rem);
	--space-lg: var(--wp--preset--spacing--50, 1.5rem);
	--space-xl: var(--wp--preset--spacing--60, 2rem);
	--space-2xl: var(--wp--preset--spacing--70, 3rem);
	--space-3xl: var(--wp--preset--spacing--80, 4rem);

	

	
	--cta-primary-hover: color-mix(in srgb, var(--cta-primary, var(--bouw-brand-unset)) 85%, black);
	--cta-primary-active: color-mix(in srgb, var(--cta-primary, var(--bouw-brand-unset)) 70%, black);
	--success: #059669;
	--success-light: #d1fae5;
	--warning: #f59e0b;
	--warning-light: #fef3c7;
	--error: #dc2626;
	--error-light: #fee2e2;

	
	--text-xs: clamp(0.75rem, 0.69rem + 0.25vw, 0.875rem);
	--text-sm: clamp(0.875rem, 0.81rem + 0.31vw, 1rem);
	--text-base: clamp(1rem, 0.93rem + 0.38vw, 1.125rem);
	--text-lg: clamp(1.125rem, 1.05rem + 0.38vw, 1.25rem);
	--text-xl: clamp(1.25rem, 1.16rem + 0.44vw, 1.5rem);
	--text-2xl: clamp(1.5rem, 1.39rem + 0.56vw, 1.875rem);
	--text-3xl: clamp(1.875rem, 1.74rem + 0.69vw, 2.25rem);
	--text-4xl: clamp(2.25rem, 2.09rem + 0.81vw, 2.75rem);
	--text-5xl: clamp(2.75rem, 2.55rem + 1vw, 3.5rem);

	
	--leading-tight: 1.25;
	--leading-snug: 1.375;
	--leading-normal: 1.5;
	--leading-relaxed: 1.625;
	--leading-loose: 2;

	
	--radius-xs: 0.125rem;
	--radius-sm: 0.25rem;
	--radius-md: 0.375rem;
	--radius-lg: 0.5rem;
	--radius-xl: 0.75rem;
	--radius-2xl: 1rem;
	--radius-3xl: 1.5rem;
	--radius-full: 9999px;

	
	--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
	--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1);
	--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
	--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
	--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
	--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, 0.25);

	
	--focus-ring: 0 0 0 3px rgba(37, 99, 235, 0.1);
	--focus-ring-error: 0 0 0 3px rgba(220, 38, 38, 0.1);
	--focus-ring-success: 0 0 0 3px rgba(5, 150, 105, 0.1);

	
	--transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
	--transition-base: 200ms cubic-bezier(0.4, 0, 0.2, 1);
	--transition-slow: 300ms cubic-bezier(0.4, 0, 0.2, 1);
	--transition-bounce: 400ms cubic-bezier(0.68, -0.55, 0.265, 1.55);

	
	--container-sm: 640px;
	--container-md: 768px;
	--container-lg: 1024px;
	--container-xl: 1280px;
	--container-2xl: 1536px;

	
	--z-dropdown: 1000;
	--z-sticky: 1020;
	--z-modal-backdrop: 1040;
	--z-modal: 1050;
	--z-popover: 1060;
	--z-tooltip: 1070;

	
	--form-height-sm: 2.25rem;
	--form-height-base: 2.75rem;
	--form-height-lg: 3.5rem;
	--form-padding-x: 0.875rem;
	--form-padding-y: 0.625rem;

	
	--cta-height-sm: 2.5rem;
	--cta-height-base: 3rem;
	--cta-height-lg: 3.5rem;
	--cta-padding-x: 1.5rem;
	--cta-padding-y: 0.75rem;

	
	--content-width: 65ch;
	--content-width-narrow: 45ch;
	--content-width-wide: 85ch;

	
	--delay-xs: 0ms;
	--delay-sm: 100ms;
	--delay-md: 200ms;
	--delay-lg: 300ms;
	--delay-xl: 400ms;}
@media (prefers-reduced-motion: reduce){
:root{--transition-fast: 0ms;
		--transition-base: 0ms;
		--transition-slow: 0ms;
		--transition-bounce: 0ms;}
}
*, ::before, ::after{box-sizing: border-box;}
html{font-family:
		system-ui,
		'Segoe UI',
		Roboto,
		Helvetica,
		Arial,
		sans-serif,
		'Apple Color Emoji',
		'Segoe UI Emoji';
	line-height: 1.15; 
	-webkit-text-size-adjust: 100%; 
	-moz-tab-size: 4; 
	tab-size: 4;}
body{margin: 0;}
hr{height: 0; 
	color: inherit;}
abbr[title]{text-decoration: underline dotted;}
b, strong{font-weight: bolder;}
code, kbd, samp, pre{font-family:
		ui-monospace,
		SFMono-Regular,
		'SF Mono',
		Menlo,
		Consolas,
		'Liberation Mono',
		monospace; 
	font-size: 1em;}
small{font-size: 80%;}
sub, sup{font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;}
sub{bottom: -0.25em;}
sup{top: -0.5em;}
table{text-indent: 0; 
	border-color: inherit;}
button, input, optgroup, select, textarea{font-family: inherit; 
	font-size: 100%; 
	line-height: 1.15; 
	margin: 0;}
button, select{text-transform: none;}
button, [type='button'], [type='reset'], [type='submit']{-webkit-appearance: button;}
::-moz-focus-inner{border-style: none;
	padding: 0;}
:-moz-focusring{outline: 1px dotted ButtonText;}
:-moz-ui-invalid{box-shadow: none;}
legend{padding: 0;}
progress{vertical-align: baseline;}
::-webkit-inner-spin-button, ::-webkit-outer-spin-button{height: auto;}
[type='search']{-webkit-appearance: textfield; 
	outline-offset: -2px;}
::-webkit-search-decoration{-webkit-appearance: none;}
::-webkit-file-upload-button{-webkit-appearance: button; 
	font: inherit;}
summary{display: list-item;}
:focus-visible{outline: 2px solid var(--primary, var(--bouw-brand-unset));
	outline-offset: 2px;}
button{background: none;
	border: none;
	padding: 0;
	font: inherit;
	cursor: pointer;}
img, picture, video, canvas, svg{display: block;
	max-width: 100%;}
ul, ol{list-style: none;
	margin: 0;
	padding: 0;}
body{-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeSpeed;}
@media (prefers-reduced-motion: reduce){
*, ::before, ::after{animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;}
}
:root{--bouw-primary-dark: color-mix(in srgb, var(--bouw-primary, var(--bouw-brand-unset)) 80%, black);
  --bouw-primary-light: color-mix(in srgb, var(--bouw-primary, var(--bouw-brand-unset)) 75%, white);
  --bouw-secondary-dark: color-mix(in srgb, var(--bouw-secondary, var(--bouw-brand-unset)) 80%, black);
  --bouw-secondary-light: color-mix(in srgb, var(--bouw-secondary, var(--bouw-brand-unset)) 75%, white);
  --bouw-accent-dark: color-mix(in srgb, var(--bouw-accent, var(--bouw-brand-unset)) 80%, black);
  --bouw-accent-light: color-mix(in srgb, var(--bouw-accent, var(--bouw-brand-unset)) 75%, white);

  --bouw-gray-50: #FAFAFA;
  --bouw-gray-100: #F5F5F5;
  --bouw-gray-200: #EEEEEE;
  --bouw-gray-300: #E0E0E0;
  --bouw-gray-400: #BDBDBD;
  --bouw-gray-500: #9E9E9E;
  --bouw-gray-600: #757575;
  --bouw-gray-700: #616161;
  --bouw-gray-800: #424242;
  --bouw-gray-900: #212121;

  --bouw-white: #FFFFFF;
  --bouw-black: #000000;

  
  --bouw-space-xs: 0.25rem;
  --bouw-space-sm: 0.5rem;
  --bouw-space-md: 1rem;
  --bouw-space-lg: 1.5rem;
  --bouw-space-xl: 2rem;
  --bouw-space-2xl: 3rem;
  --bouw-space-3xl: 4rem;
  --bouw-space-4xl: 6rem;
  --bouw-space-5xl: 8rem;

  

  --bouw-text-xs: clamp(0.75rem, 2vw, 0.875rem);
  --bouw-text-sm: clamp(0.875rem, 2.5vw, 1rem);
  --bouw-text-base: clamp(1rem, 3vw, 1.125rem);
  --bouw-text-lg: clamp(1.125rem, 3.5vw, 1.25rem);
  --bouw-text-xl: clamp(1.25rem, 4vw, 1.5rem);
  --bouw-text-2xl: clamp(1.5rem, 5vw, 1.875rem);
  --bouw-text-3xl: clamp(1.875rem, 6vw, 2.25rem);
  --bouw-text-4xl: clamp(2.25rem, 7vw, 3rem);
  --bouw-text-5xl: clamp(3rem, 8vw, 3.75rem);
  --bouw-text-6xl: clamp(3.75rem, 10vw, 4.5rem);

  
  --bouw-radius-sm: 0.25rem;
  --bouw-radius-md: 0.5rem;
  --bouw-radius-lg: 0.75rem;
  --bouw-radius-xl: 1rem;
  --bouw-radius-2xl: 1.5rem;
  --bouw-radius-full: 9999px;

  
  --bouw-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --bouw-shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1);
  --bouw-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1);
  --bouw-shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.15);
  --bouw-shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.25);

  
  --bouw-transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
  --bouw-transition-base: 250ms cubic-bezier(0.4, 0, 0.2, 1);
  --bouw-transition-slow: 350ms cubic-bezier(0.4, 0, 0.2, 1);

  
  --bouw-container-sm: 640px;
  --bouw-container-md: 768px;
  --bouw-container-lg: 1024px;
  --bouw-container-xl: 1280px;
  --bouw-container-2xl: 1536px;}
.bouw-breadcrumbs-bar:empty{display: none;}
.breadcrumbs{margin: 0.75rem 0 0;
  font-size: 0.875rem;
  line-height: 1.4;}
.breadcrumbs .breadcrumb-list{list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.4rem;}
.breadcrumbs .breadcrumb-item{margin: 0;
  padding: 0;
  display: inline-flex;
  min-width: 0;}
.breadcrumbs .breadcrumb-item a{color: var(--bouw-primary, var(--bouw-brand-unset));
  text-decoration: none;}
.breadcrumbs .breadcrumb-item a:hover, .breadcrumbs .breadcrumb-item a:focus-visible{text-decoration: underline;}
.breadcrumbs .breadcrumb-item.current span{color: var(--bouw-gray-600, #4b5563);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 60vw;}
.breadcrumbs .breadcrumb-separator{margin: 0;
  padding: 0;
  color: var(--bouw-gray-400, #9ca3af);
  user-select: none;}
.watson-lang-switcher{display: inline-flex;
    align-items: center;}
.watson-lang-switcher ul{list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    gap: 0.25rem;
    align-items: center;}
.watson-lang-switcher li{margin: 0;
    padding: 0;}
.watson-lang-switcher a, .watson-lang-switcher span{display: inline-block;
    padding: 0.2em 0.55em;
    font-size: 0.8rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    text-decoration: none;
    color: inherit;
    border: 1px solid currentColor;
    border-radius: 3px;
    opacity: 0.65;
    transition: opacity 0.15s, background-color 0.15s;
    line-height: 1.4;}
.watson-lang-switcher a:hover, .watson-lang-switcher a:focus{opacity: 1;
    outline: 2px solid currentColor;
    outline-offset: 1px;}
.watson-lang-switcher li + li::before{content: '';
    display: inline-block;
    width: 1px;
    height: 0.9em;
    background: currentColor;
    opacity: 0.25;
    margin-right: 0.25rem;
    vertical-align: middle;}
.watson-lang-switcher--pills li + li::before{display: none;}
.watson-lang-switcher--light a, .watson-lang-switcher--light span{color: #fff;
    border-color: rgba(255, 255, 255, 0.5);}
[dir="rtl"] .watson-lang-switcher ul{flex-direction: row-reverse;}
.watson-own-light [class*="background-shape"]{display: none !important;}
@media (prefers-reduced-motion: no-preference){
.watson-own-light *{animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;}
}
.watson-own-light .wp-block-cover.is-layout-full-height, .watson-own-light .wp-block-cover[style*="min-height: 100vh"]{min-height: 50vh !important;}
*{margin: 0;
    padding: 0;
    box-sizing: border-box;}
body{font-family: 'Inter', sans-serif;
    line-height: 1.6;
    color: var(--wp--preset--color--contrast);
    background-color: var(--wp--preset--color--base);}
:root{--primary-color: #2E8B57;
    --secondary-color: #FFD700;
    --accent-color: #FF6347;
    --text-color: #333333;
    --background-color: #ffffff;
    --border-color: #e0e0e0;}
.breadcrumbs{margin: 1rem 0;
    font-size: 0.9rem;}
.breadcrumb-list{display: flex;
    flex-wrap: wrap;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;}
.breadcrumb-item{display: flex;
    align-items: center;}
.breadcrumb-item a{color: var(--bouw-primary);
    text-decoration: none;
    transition: color 0.3s ease;}
.breadcrumb-item a:hover{color: var(--bouw-secondary);
    text-decoration: underline;}
.breadcrumb-item.current span{color: var(--bouw-contrast);
    font-weight: 500;}
.breadcrumb-separator{margin: 0 0.5rem;
    color: var(--bouw-contrast);
    opacity: 0.6;}
:root{--font-editorial:   "DM Serif Display", Georgia, serif;
  --font-mono:        "JetBrains Mono", "Fira Code", monospace;

  

  
  --surface-body:         #ffffff;
  --surface-card:         #ffffff;
  --surface-section-alt:  #f5f4f7;
  --ink-primary:          #1b1a1f;
  --ink-muted:            #55535e;
  --wm-hairline:          rgba(20, 18, 28, 0.12);
  --wm-paper:             #f5f4f7;
  --wm-paper-ink:         #16151a;
  --weight-heading-light: 500;
  --weight-body-medium: 500;
  --weight-body-bold: 600;
  --color-success:    #2e7d32;
  --color-warning:    #ed6c02;
  --color-error:      #c62828;
  --ink-tertiary:     #8a9bb0;
  --surface-elevated: #ffffff;
  --surface-section-warm: #f9f6f2;
  --surface-overlay:  rgba(255, 255, 255, 0.85);
  
  --surface-header:      var(--color-primary, var(--bouw-brand-unset));
  --surface-header-dark: color-mix(in srgb, var(--color-primary, var(--bouw-brand-unset)) 80%, black);
  --radius-full:      9999px;

  
  --shadow-xs:   0 1px 2px rgba(60, 42, 20, 0.06);
  --shadow-sm:   0 1px 3px rgba(60, 42, 20, 0.08),
                 0 4px 8px rgba(60, 42, 20, 0.04);
  --shadow-md:   0 2px 4px rgba(60, 42, 20, 0.08),
                 0 8px 20px rgba(60, 42, 20, 0.06);
  --shadow-lg:   0 4px 6px rgba(60, 42, 20, 0.06),
                 0 16px 40px rgba(60, 42, 20, 0.10);
  --shadow-xl:   0 8px 12px rgba(60, 42, 20, 0.06),
                 0 24px 56px rgba(60, 42, 20, 0.14);
  --shadow-hover:0 4px 8px rgba(60, 42, 20, 0.08),
                 0 12px 28px rgba(60, 42, 20, 0.12);
  --shadow-inset-highlight: inset 0 1px 0 rgba(255, 255, 255, 0.5);

  
  --glass-bg:         rgba(255, 255, 255, 0.75);
  --glass-bg-heavy:   rgba(255, 255, 255, 0.90);
  --glass-blur:       12px;
  --glass-blur-heavy: 20px;
  --glass-border:     1px solid rgba(255, 255, 255, 0.3);

  
  --text-xs:      0.75rem;
  --text-sm:      0.875rem;
  --text-base:    1rem;
  --text-md:      1.125rem;
  --text-lg:      1.5rem;
  --text-xl:      clamp(1.75rem, 3vw, 2.25rem);
  --text-2xl:     clamp(2rem, 4vw, 3rem);
  --text-display: clamp(2.5rem, 5vw, 4rem);

  
  --leading-tight:    1.15;
  --leading-snug:     1.3;
  --leading-normal:   1.6;
  --leading-relaxed:  1.75;

  
  --tracking-tight:  -0.01em;
  --tracking-normal:  0;
  --tracking-wide:    0.04em;
  --tracking-caps:    0.12em;

  
  --motion-duration:      300ms;
  --motion-duration-fast: 150ms;
  --motion-duration-slow: 500ms;
  --ease-standard:    cubic-bezier(0.2, 0, 0, 1);
  --ease-decelerate:  cubic-bezier(0, 0, 0, 1);
  --ease-accelerate:  cubic-bezier(0.3, 0, 1, 1);
  --transition-base:  var(--motion-duration) var(--ease-standard);
  --transition-fast:  var(--motion-duration-fast) var(--ease-standard);
  --transition-slow:  var(--motion-duration-slow) var(--ease-decelerate);
  --hover-lift:       translateY(-2px);
  --hover-press:      scale(0.98);

  
  --layout-content: 1200px;
  --layout-narrow:  720px;
  --layout-wide:    1400px;
  --layout-gutter:  clamp(1rem, 4vw, 2.5rem);
  --col-major:      62%;
  --col-minor:      38%;

  
  --space-2xs:    0.25rem;
  --space-xs:     0.5rem;
  --space-sm:     0.75rem;
  --space-md:     1rem;
  --space-lg:     1.5rem;
  --space-xl:     2.5rem;
  --space-2xl:    4rem;
  --space-3xl:    6rem;
  --section-breathe:  clamp(4rem, 8vw, 7rem);
  --section-normal:   clamp(3rem, 5vw, 4.5rem);
  --section-compact:  clamp(1.5rem, 3vw, 2.5rem);
  --heading-gap:      1.25rem;
  --card-gap:         clamp(0.75rem, 2vw, 1.25rem);

  
  --input-height:       44px;
  --input-padding:      0.625rem 0.875rem;
  --input-radius:       var(--radius-sm);
  --input-border:       1px solid rgba(60, 42, 20, 0.15);
  --input-border-focus: 2px solid var(--color-primary);
  --input-bg:           var(--surface-card);

  --btn-padding:        0.625rem 1.25rem;
  --btn-padding-lg:     0.75rem 1.75rem;
  --btn-font-weight:    var(--weight-body-bold);
  --btn-transition:     background var(--transition-base),
                        transform var(--transition-fast),
                        box-shadow var(--transition-base);

  --card-padding:       var(--space-lg);
  --card-bg:            var(--surface-card);
  --card-border:        1px solid rgba(60, 42, 20, 0.06);
  --card-shadow:        var(--shadow-sm);
  --card-shadow-hover:  var(--shadow-hover);

  --tag-radius:     var(--radius-xs);
  --tag-padding:    0.2rem 0.6rem;
  --tag-font-size:  var(--text-xs);

  --z-base:      1;
  --z-dropdown:  100;
  --z-sticky:    200;
  --z-overlay:   300;
  --z-modal:     400;
  --z-toast:     500;

  
  --color-rating-star:  #f59e0b;

  
  --ink-inverse-muted:     rgba(255, 255, 255, 0.85); 
  --ink-inverse-subtle:    rgba(255, 255, 255, 0.6);  
  --border-inverse:        rgba(255, 255, 255, 0.1);  
  --border-inverse-strong: rgba(255, 255, 255, 0.3);  
  --divider-subtle:        rgba(60, 42, 20, 0.08);    

  
  --surface-primary-tint:       #e9f2ff; 
  --surface-primary-tint-hover: #d4e5ff; 
  --surface-input-disabled:     #e5e7eb; 
  --bouw-border-light:          #d1d5db; 
  --bouw-border-muted:          #9ca3af; 

  
  --bouw-color-primary:       var(--color-primary);
  --bouw-color-accent:        var(--color-accent);
  --bouw-color-base:          var(--surface-card);
  --bouw-color-contrast:      var(--ink-primary);
  --bouw-color-surface:       var(--surface-section-alt);
  --bouw-color-surface-warm:  var(--surface-section-warm);
  --bouw-color-muted:         var(--ink-secondary);

  
  --bouw-base:         var(--surface-card, #ffffff);
  --bouw-contrast:     var(--ink-primary, #1a1a2e);
  --bouw-error:        var(--color-error, #dc2626);
  --bouw-success:      var(--color-success, #16a34a);
  --bouw-warning:      var(--color-warning, #f59e0b);
  --bouw-rating-star:  var(--color-rating-star, #f59e0b);
  --bouw-card-bg:             var(--card-bg);
  --bouw-card-border:         var(--card-border);
  --bouw-card-shadow:         var(--card-shadow);
  --bouw-card-radius:         var(--card-radius);
  --bouw-font-family-heading: var(--font-heading);
  --bouw-font-family-body:    var(--font-body);
  --bouw-section-gap:         var(--section-normal);
  --bouw-heading-gap:         var(--heading-gap);
  --bouw-card-gap:            var(--card-gap);
  --bouw-transition-fast:     var(--transition-fast);
  --bouw-transition-base:     var(--transition-base);
  --bouw-transition-slow:     var(--transition-slow);
  --bouw-layout-content-width:var(--layout-content);
  --bouw-responsive-gutter:   var(--layout-gutter);
  --bouw-input-radius:        var(--input-radius);}
.bouw-form-error{display: block;
	font-size: var(--bouw-font-size-small);
	color: #dc2626;
	margin-top: var(--bouw-spacing-xs);
	font-weight: 500;}
.bouw-form-success{padding: var(--bouw-spacing-md);
	background-color: #10b981;
	color: white;
	border-radius: var(--bouw-radius-md);
	font-weight: 600;
	text-align: center;
	margin-bottom: var(--bouw-spacing-lg);}








:root{--wm-primary: var(--wp--preset--color--primary, var(--bouw-primary, var(--bouw-brand-unset)));
	--wm-accent:  var(--wp--preset--color--accent,  var(--bouw-accent,  var(--bouw-brand-unset)));
	--wm-secondary: var(--wp--preset--color--secondary, var(--bouw-secondary, var(--bouw-brand-unset)));

	
	--wm-on-accent: #16151a;
	
	--wm-on-primary: #ffffff;

	
	--wm-paper: var(--wp--preset--color--paper, var(--bouw-paper, #f5f4f7));
	--wm-paper-ink: var(--bouw-paper-ink, #16151a);}
:root{--wm-dark-surface: #16151a;
	--wm-dark-surface-alt: #201e26;
	--wm-dark-card: #232028;
	--wm-dark-ink: #f5f4f7;
	--wm-dark-ink-soft: #b6b2bd;
	--wm-dark-hairline: rgba(255, 255, 255, 0.12);

	--wm-light-surface: #ffffff;
	--wm-light-surface-alt: #f5f4f7;
	--wm-light-card: #ffffff;
	--wm-light-ink: #1b1a1f;
	--wm-light-ink-soft: #55535e;
	--wm-light-hairline: rgba(20, 18, 28, 0.12);}
:root[data-theme="light"]{--bouw-bg-color: var(--wm-light-surface);
	--bouw-surface: var(--wm-light-surface);
	--bouw-base: var(--wm-light-surface);
	--bouw-text-color: var(--wm-light-ink);
	--bouw-ink: var(--wm-light-ink);
	--bouw-contrast: var(--wm-light-ink);
	--surface-body: var(--wm-light-surface);
	--surface-card: var(--wm-light-card);
	--surface-section-alt: var(--wm-light-surface-alt);
	--ink-primary: var(--wm-light-ink);
	--ink-secondary: var(--wm-light-ink-soft);
	--ink-muted: var(--wm-light-ink-soft);
	--wm-hairline: var(--wm-light-hairline);
	color-scheme: light;}
:root[data-theme="light"] body{background-color: var(--wm-light-surface);
	color: var(--wm-light-ink);}
:root[data-theme="dark"]{--bouw-bg-color: var(--wm-dark-surface);
	--bouw-surface: var(--wm-dark-surface);
	--bouw-base: var(--wm-dark-surface);
	--bouw-text-color: var(--wm-dark-ink);
	--bouw-ink: var(--wm-dark-ink);
	--bouw-contrast: var(--wm-dark-ink);
	--surface-body: var(--wm-dark-surface);
	--surface-card: var(--wm-dark-card);
	--surface-section-alt: var(--wm-dark-surface-alt);
	--ink-primary: var(--wm-dark-ink);
	--ink-secondary: var(--wm-dark-ink-soft);
	--ink-muted: var(--wm-dark-ink-soft);
	--wm-hairline: var(--wm-dark-hairline);
	color-scheme: dark;}
:root[data-theme="dark"] body{background-color: var(--wm-dark-surface);
	color: var(--wm-dark-ink);}
@media (prefers-color-scheme: light){
:root:not([data-theme="light"]):not([data-theme="dark"]){--bouw-bg-color: var(--wm-light-surface);
		--bouw-surface: var(--wm-light-surface);
		--bouw-base: var(--wm-light-surface);
		--bouw-text-color: var(--wm-light-ink);
		--bouw-ink: var(--wm-light-ink);
		--bouw-contrast: var(--wm-light-ink);
		--surface-body: var(--wm-light-surface);
		--surface-card: var(--wm-light-card);
		--surface-section-alt: var(--wm-light-surface-alt);
		--ink-primary: var(--wm-light-ink);
		--ink-secondary: var(--wm-light-ink-soft);
		--ink-muted: var(--wm-light-ink-soft);
		--wm-hairline: var(--wm-light-hairline);
		color-scheme: light;}
}
.wp-block-button__link, .wp-element-button{display: inline-block;
	padding: var(--bouw-space-md, 0.75rem) var(--bouw-space-xl, 1.5rem);
	border: 2px solid transparent;
	border-radius: var(--radius-md, var(--bouw-radius-md, 4px));
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	background-color: var(--wm-primary);
	color: var(--wm-on-primary);
	border-color: transparent;
	transition: filter 0.15s ease, background-color 0.15s ease, color 0.15s ease;}
.wp-block-button__link:hover, .wp-block-button__link:focus-visible, .wp-element-button:hover, .wp-element-button:focus-visible{filter: brightness(1.08);}
.wp-block-button__link.has-primary-background-color{background-color: var(--wm-primary) !important;
	color: var(--wm-on-primary) !important;}
.wp-block-button__link.has-accent-background-color, .wp-block-button__link.has-secondary-background-color{background-color: var(--wm-accent) !important;
	color: var(--wm-on-accent) !important;}
.wp-block-button.is-style-outline > .wp-block-button__link, .wp-block-button__link.is-style-outline{background-color: transparent;
	color: var(--wm-primary);
	border: 2px solid var(--wm-primary);}
:root[data-theme="dark"] .wp-block-button.is-style-outline > .wp-block-button__link, :root[data-theme="dark"] .wp-block-button__link.is-style-outline{color: var(--wm-accent);
	border-color: var(--wm-accent);}
.wp-block-button.is-style-outline > .wp-block-button__link:hover, .wp-block-button__link.is-style-outline:hover{background-color: var(--wm-primary);
	color: var(--wm-on-primary);
	border-color: var(--wm-primary);}
.wp-block-button.cta-button{background-color: transparent !important;
	padding: 0 !important;
	border-radius: 0 !important;}
.wp-block-button.cta-button > .wp-block-button__link{background-color: var(--wm-accent);
	color: var(--wm-on-accent);
	border-radius: 999px;
	font-weight: 700;}
@media (prefers-reduced-motion: reduce){
.wp-block-button__link, .wp-element-button{transition: none;}
}
.is-inverted-band, .is-style-inverted-band{--surface-body: var(--wm-paper);
	--surface-card: var(--wm-light-card);
	--surface-section-alt: var(--wm-light-surface-alt);
	--ink-primary: var(--wm-paper-ink);
	--ink-secondary: var(--wm-light-ink-soft);
	--ink-muted: var(--wm-light-ink-soft);
	--bouw-base: var(--wm-paper);
	--bouw-surface: var(--wm-paper);
	--bouw-bg-color: var(--wm-paper);
	--bouw-contrast: var(--wm-paper-ink);
	--bouw-text-color: var(--wm-paper-ink);
	--bouw-ink: var(--wm-paper-ink);
	--wm-hairline: var(--wm-light-hairline);
	background-color: var(--surface-body);
	color: var(--ink-primary);}
:root[data-theme="light"] .is-inverted-band, :root[data-theme="light"] .is-style-inverted-band{--surface-body: var(--wm-dark-surface);
	--surface-card: var(--wm-dark-card);
	--surface-section-alt: var(--wm-dark-surface-alt);
	--ink-primary: var(--wm-dark-ink);
	--ink-secondary: var(--wm-dark-ink-soft);
	--ink-muted: var(--wm-dark-ink-soft);
	--bouw-base: var(--wm-dark-surface);
	--bouw-surface: var(--wm-dark-surface);
	--bouw-bg-color: var(--wm-dark-surface);
	--bouw-contrast: var(--wm-dark-ink);
	--bouw-text-color: var(--wm-dark-ink);
	--bouw-ink: var(--wm-dark-ink);
	--wm-hairline: var(--wm-dark-hairline);}
@media (prefers-color-scheme: light){
:root:not([data-theme="dark"]):not([data-theme="light"]) .is-inverted-band, :root:not([data-theme="dark"]):not([data-theme="light"]) .is-style-inverted-band{--surface-body: var(--wm-dark-surface);
		--surface-card: var(--wm-dark-card);
		--surface-section-alt: var(--wm-dark-surface-alt);
		--ink-primary: var(--wm-dark-ink);
		--ink-secondary: var(--wm-dark-ink-soft);
		--ink-muted: var(--wm-dark-ink-soft);
		--bouw-base: var(--wm-dark-surface);
		--bouw-surface: var(--wm-dark-surface);
		--bouw-bg-color: var(--wm-dark-surface);
		--bouw-contrast: var(--wm-dark-ink);
		--bouw-text-color: var(--wm-dark-ink);
		--bouw-ink: var(--wm-dark-ink);
		--wm-hairline: var(--wm-dark-hairline);}
}
.is-style-eyebrow{font-family: var(--font-heading, var(--bouw-brand-unset-font));
	font-weight: var(--font-heading-weight, 700);
	text-transform: uppercase;
	letter-spacing: var(--tracking-caps, 0.12em);
	line-height: 1.2;
	font-size: var(--text-sm, 0.875rem);
	color: var(--ink-muted, var(--ink-secondary, currentColor));
	margin-bottom: 0.5rem;}
.is-brand-band, .is-style-brand-band{--surface-body: var(--color-primary);
	--surface-card: var(--color-primary);
	--surface-section-alt: var(--color-primary-dark, var(--color-primary));
	--ink-primary: var(--ink-inverse, #fff);
	--ink-secondary: var(--ink-inverse-muted, rgba(255, 255, 255, 0.85));
	--ink-muted: var(--ink-inverse-muted, rgba(255, 255, 255, 0.85));
	--bouw-base: var(--color-primary);
	--bouw-surface: var(--color-primary);
	--bouw-bg-color: var(--color-primary);
	--bouw-contrast: var(--ink-inverse, #fff);
	--bouw-text-color: var(--ink-inverse, #fff);
	--bouw-ink: var(--ink-inverse, #fff);
	--wm-hairline: var(--border-inverse, rgba(255, 255, 255, 0.14));
	background-color: var(--surface-body);
	color: var(--ink-primary);}
.is-soft-band, .is-style-soft-band{--surface-body: var(--surface-section-alt);
	--surface-card: var(--surface-section-alt);
	--bouw-base: var(--surface-section-alt);
	--bouw-surface: var(--surface-section-alt);
	--bouw-bg-color: var(--surface-section-alt);
	background-color: var(--surface-body);
	color: var(--ink-primary);}
.is-accent-quote, .is-style-accent-quote{border-left: var(--quote-border, 4px) solid var(--color-accent);
	padding-left: 1.25rem;
	font-style: italic;}
.watson-section{--watson-mass-k: 1;
  --watson-ws-k: 1;
  padding-block: max(28px, calc(var(--bouw-dir-section-breathe, clamp(64px, 8vw, 112px)) * var(--watson-mass-k) * var(--watson-ws-k)));
  position: relative;}
.watson-section__inner{max-width: var(--bouw-dir-content, min(1200px, 92vw));
  margin-inline: auto;}
.watson-section--hero{padding-block: calc(var(--bouw-dir-section-breathe, clamp(64px, 8vw, 112px)) * 1.15);}
.watson-surface--alt{background-color: var(--bouw-dir-surface-alt, var(--surface-section-alt, transparent));}
.watson-shape-sharp{--watson-shape-r: 0;}
.watson-shape-soft{--watson-shape-r: var(--bouw-dir-radius, 8px);}
.watson-shape-round{--watson-shape-r: calc(var(--bouw-dir-radius, 8px) * 3);}
:is(.watson-shape-sharp, .watson-shape-soft, .watson-shape-round) :is(img, figure, .wp-block-image, .wp-block-group.has-background, .wp-block-button__link, .wp-block-cover){border-radius: var(--watson-shape-r);}
.watson-section :is(h1, h2, h3){font-weight: var(--bouw-dir-heading-weight, inherit);
  text-transform: var(--bouw-dir-heading-transform, inherit);}
.watson-eyebrow{display: block;
  margin-block-end: 0.75em;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-primary, var(--bouw-brand-unset));}
.watson-gesture--bleed{margin-inline: calc(50% - 50vw);
  max-width: 100vw;
  width: 100vw;}
:is(.wp-site-blocks, body):has(.watson-gesture--bleed){overflow-x: clip;}
.watson-gesture--overlap{position: relative;
  z-index: 1;
  margin-block-start: calc(var(--bouw-dir-section-breathe, 80px) * -0.6);}
.watson-gesture--overlap > :is(.wp-block-group, .wp-block-column, figure, div):first-child{background: var(--surface-card, var(--surface-body, transparent));
  box-shadow: 0 12px 40px color-mix(in srgb, currentColor 14%, transparent);
  border-radius: var(--watson-shape-r, var(--bouw-dir-radius, 0));}
.watson-gesture--implicit-frame{position: relative;
  isolation: isolate;}
.watson-gesture--implicit-frame::before, .watson-gesture--implicit-frame::after{content: "";
  position: absolute;
  width: clamp(28px, 6vw, 56px);
  aspect-ratio: 1;
  pointer-events: none;
  z-index: -1;
  border: 2px solid color-mix(in srgb, var(--color-primary, var(--bouw-brand-unset)) 50%, transparent);}
.watson-gesture--implicit-frame::before{inset-block-start: calc(-1 * clamp(8px, 2vw, 20px));
  inset-inline-start: calc(-1 * clamp(8px, 2vw, 20px));
  border-inline-end: 0;
  border-block-end: 0;}
.watson-gesture--implicit-frame::after{inset-block-end: calc(-1 * clamp(8px, 2vw, 20px));
  inset-inline-end: calc(-1 * clamp(8px, 2vw, 20px));
  border-inline-start: 0;
  border-block-start: 0;}
.watson-gesture--line, .watson-spine{position: relative;
  padding-inline-start: clamp(16px, 3vw, 32px);
  border-inline-start: 2px solid color-mix(in srgb, var(--color-primary, var(--bouw-brand-unset)) 60%, transparent);}
.watson-gesture--broken-grid > *{min-width: 0;}
.watson-gesture--lockup > :is(h1, h2, h3, .watson-eyebrow){margin-block-end: 0.35em;}
.watson-lockup-rule{display: block;
  width: clamp(40px, 8vw, 72px);
  height: 3px;
  margin-block: 0.75em 1em;
  border: 0;
  background: var(--color-primary, var(--bouw-brand-unset));}
.watson-emphasis--oversized-numeral{counter-reset: watson-numeral;}
.watson-emphasis--oversized-numeral > *{counter-increment: watson-numeral;
  position: relative;}
.watson-emphasis--oversized-numeral > *::before{content: counter(watson-numeral, decimal-leading-zero);
  display: block;
  font-family: var(--font-heading);
  font-size: clamp(3rem, 7vw, 5.5rem);
  font-weight: var(--bouw-dir-heading-weight, 700);
  line-height: 1;
  color: color-mix(in srgb, var(--color-primary, var(--bouw-brand-unset)) 35%, transparent);
  margin-block-end: 0.15em;}
@media (min-width: 782px){
.watson-gesture--broken-grid > :nth-child(even){transform: translateY(clamp(16px, 3vw, 48px));}
.watson-gesture--broken-grid > :nth-child(odd):not(:first-child){margin-inline-start: clamp(0px, 2vw, 32px);}
}
@media (max-width: 781px){
.watson-gesture--overlap{margin-block-start: 0;}
.watson-gesture--overlap > :is(.wp-block-group, .wp-block-column, figure, div):first-child{box-shadow: none;}
.watson-gesture--broken-grid > *{transform: none;
    margin-inline-start: 0;}
.watson-gesture--implicit-frame::before, .watson-gesture--implicit-frame::after{inset-inline-start: auto;
    inset-inline-end: auto;}
.watson-gesture--implicit-frame::before{inset-inline-start: 0; inset-block-start: -8px;}
.watson-gesture--implicit-frame::after{inset-inline-end: 0;  inset-block-end: -8px;}
}
@media (prefers-reduced-motion: reduce){
.watson-gesture--broken-grid > *{transform: none;}
}
.watson-mass--s{--watson-mass-k: .55;}
.watson-mass--m{--watson-mass-k: 1;}
.watson-mass--l{--watson-mass-k: 1.12;}
.watson-mass--xl{--watson-mass-k: 1.28;}
.watson-ws--tight{--watson-ws-k: .52;}
.watson-ws--normal{--watson-ws-k: 1;}
.watson-ws--open{--watson-ws-k: 1.4;}
.watson-ws--dramatic{--watson-ws-k: 1.75;}
.watson-emphasis--dominant > .watson-section__inner > :is(h1, h2, h3):first-child, .watson-emphasis--dominant > .watson-section__inner .watson-section__lead :is(h1, h2){font-size: clamp(2rem, 4.4vw, 3.4rem);
  line-height: 1.04;}
.watson-emphasis--subordinate{opacity: .96;}
.watson-section__lead{max-width: var(--bouw-measure, 62ch);
  margin-block-end: clamp(1.75rem, 3.5vw, 3rem);}
.watson-section__lead > :is(h1, h2, h3){margin-block: 0 .35em;}
.watson-section__lead > p{margin-block: 0; color: var(--ink-secondary, #5b6270);}
.watson-lead--center .watson-section__lead{margin-inline: auto; text-align: center;}
.watson-lead--center .watson-section__lead > p{margin-inline: auto;}
.watson-arch--editorial-rows > .watson-section__inner{max-width: var(--bouw-dir-measure, 74ch);
  margin-inline: 0;}
.watson-arch--editorial-rows .watson-section__lead{margin-inline: 0;}
.watson-section--testimonial.watson-arch--editorial-rows > .watson-section__inner{max-width: var(--bouw-dir-content, min(1180px, 92vw));}
.watson-editorial-list{display: grid; gap: 0;}
.watson-editorial-list__row{padding-block: clamp(1.1rem, 2.2vw, 1.75rem);}
.watson-editorial-list__row:first-child{padding-block-start: 0;}
.watson-editorial-list__row + .watson-editorial-list__row{border-block-start: 1px solid color-mix(in srgb, currentColor 15%, transparent);}
.watson-editorial-list__row > :is(h3){font-size: clamp(1.15rem, 1.8vw, 1.45rem);}
.watson-arch--statement > .watson-section__inner{max-width: min(46ch, 90vw);
  margin-inline: auto;
  text-align: center;}
.watson-arch--statement :is(h1, h2){font-size: clamp(2.2rem, 6vw, 4.2rem);
  line-height: 1.03;
  letter-spacing: -0.015em;}
.watson-arch--statement > .watson-section__inner > p{margin-inline: auto;}
.watson-arch--inline-strip > .watson-section__inner{max-width: min(1100px, 94vw);}
.watson-arch--inline-strip .wp-block-columns{gap: clamp(1.25rem, 4vw, 3.25rem);
  align-items: baseline;
  margin-block: 0;}
.watson-arch--inline-strip .wp-block-columns > .wp-block-column{flex-basis: auto;}
@media (min-width: 782px){
.watson-arch--split > .watson-section__inner{display: grid;
    grid-template-columns: 1.05fr 0.95fr;
    gap: clamp(2rem, 5vw, 4.5rem);
    align-items: center;
    max-width: min(1240px, 94vw);}
.watson-arch--split > .watson-section__inner > .watson-section__lead{margin-block-end: 0;}
}
@media (min-width: 782px){
.watson-arch--asymmetric > .watson-section__inner{max-width: min(1180px, 94vw);
    margin-inline-start: min(9vw, 120px);}
}
.watson-arch--dominant .watson-section__lead :is(h2, h3){font-size: clamp(1.9rem, 3.6vw, 2.9rem);}
.watson-container--editorial .wp-block-columns{gap: 0;}
.watson-container--open .wp-block-columns{gap: clamp(1.5rem, 3vw, 2.75rem);}
.watson-arch--editorial-rows.watson-spine > .watson-section__inner, .watson-spine > .watson-section__inner{padding-inline-start: clamp(16px, 3vw, 34px);
  border-inline-start: 2px solid color-mix(in srgb, var(--color-primary, var(--bouw-brand-unset)) 55%, transparent);}
@media (max-width: 781px){
.watson-arch--split > .watson-section__inner, .watson-arch--asymmetric > .watson-section__inner{display: block;
    margin-inline: auto;}
.watson-arch--asymmetric > .watson-section__inner{margin-inline-start: auto;}
.watson-arch--inline-strip .wp-block-columns{flex-wrap: wrap; gap: 1.5rem 2rem;}
.watson-arch--statement :is(h1, h2){font-size: clamp(1.9rem, 8vw, 2.8rem);}
}
.wpd-scope{--wpd-ink: var(--bouw-dir-text, #1a141d);
  font-family: var(--font-body, var(--bouw-brand-unset-font));
  font-size: var(--bouw-dir-t-body, 1.0625rem);
  line-height: 1.6;
  color: var(--wpd-ink);
  -webkit-font-smoothing: antialiased;}
.wpd-page{overflow-x: clip;}
body.page-template-page-composed{padding: 0;}
body.page-template-page-composed .wp-site-blocks > *{margin-block: 0;}
.wpd-scope :where(h1, h2, h3, h4, h5, h6, p, ul, ol, blockquote, figure){margin-block: 0;}
.wpd-scope :where(h1, h2, h3, h4, h5, h6){font-family: var(--font-heading, var(--bouw-brand-unset-font)); font-weight: var(--bouw-dir-w-heading, 400); color: inherit; letter-spacing: -0.02em; line-height: 1.1;}
.wpd-scope :where(.wp-block-group){box-sizing: border-box; min-width: 0;}
.wpd-scope :where(.wp-block-group, .wp-block-quote) > * + *{margin-block-start: 0;}
.wpd-scope .wpd-band{position: relative; margin-block: 0; max-width: none;}
.wpd-scope .wpd-band > .wp-block-group:first-child{margin-inline: auto;
  padding-inline: var(--bouw-dir-gutter, clamp(16px, 4.5vw, 64px));
  max-width: var(--bouw-dir-content, 1312px);
  box-sizing: content-box;}
.wpd-grid > *{grid-column: 1 / -1; min-width: 0;}
.wpd-scope a{color: inherit;}
.wpd-scope :is(h1, h2, h3, h4) a{text-decoration: none;}
.watson-surface--paper{background-color: var(--bouw-dir-paper, #fff); color: var(--bouw-dir-text, #1a141d);
  --wpd-tone-2: var(--bouw-dir-text-2, #4a4250); --wpd-tone-mute: var(--bouw-dir-mute, #7a7180); --wpd-em: var(--color-primary, var(--bouw-brand-unset)); --wpd-rule-soft: var(--bouw-dir-rule, #d9d2dc);}
.watson-surface--tint{background-color: var(--bouw-dir-tint, #f2eff4); color: var(--bouw-dir-text, #1a141d);
  --wpd-tone-2: var(--bouw-dir-text-2, #4a4250); --wpd-tone-mute: var(--bouw-dir-mute, #7a7180); --wpd-em: var(--color-primary, var(--bouw-brand-unset)); --wpd-rule-soft: var(--bouw-dir-rule, #d9d2dc);}
.watson-surface--ink{background-color: var(--bouw-dir-ink, #1b1220); color: var(--bouw-dir-on-ink, #ede6f0);
  --wpd-tone-2: var(--bouw-dir-on-ink-2, #c9bfce); --wpd-tone-mute: var(--bouw-dir-on-ink-mute, #9c8fa3); --wpd-em: var(--bouw-dir-em-on-ink, #c9a9da); --wpd-rule-soft: var(--bouw-dir-ink-rule, #3a2d40);}
.watson-surface--brand{background-color: var(--color-primary, var(--bouw-brand-unset)); color: #fff;
  --wpd-tone-2: var(--bouw-dir-on-brand-2, #eadcf1); --wpd-tone-mute: var(--bouw-dir-on-brand-2, #eadcf1); --wpd-em: var(--bouw-dir-em-on-brand, #f3d99b); --wpd-rule-soft: rgba(255, 255, 255, .35);}
.watson-surface--ink :is(h1, h2, h3, h4), .watson-surface--brand :is(h1, h2, h3, h4){color: #fff;}
:is(.watson-surface--ink, .watson-surface--brand) :is(.watson-surface--paper, .watson-surface--tint) :is(h1, h2, h3, h4){color: inherit;}
.wpd-scope .watson-tone--secondary{color: var(--wpd-tone-2, inherit);}
.wpd-scope .watson-tone--mute{color: var(--wpd-tone-mute, inherit);}
.wpd-scope .watson-tone--signal{color: var(--bouw-dir-signal, var(--bouw-brand-unset));}
.wpd-scope .watson-tone--brand{color: var(--wpd-em, var(--color-primary));}
.wpd-scope :is(.watson-surface--paper, .watson-surface--tint) .watson-tone--brand{color: var(--color-primary, var(--bouw-brand-unset));}
.wpd-scope :is(h1, h2, h3, h4, p) em{font-style: italic; color: var(--wpd-em, inherit);}
.wpd-scope .wp-block-quote em, .wpd-scope .watson-list__figure em{color: inherit;}
.wpd-scope :is(h1, h2, h3, h4, .watson-t--display, .watson-t--display-s, .watson-t--h-l, .watson-t--h-m, .watson-t--numeral, .watson-stat__value, .watson-stat__compare, .watson-list__marker.watson-t--h-m, .watson-wordmark a){font-variation-settings: "opsz" var(--bouw-dir-opsz-heading);}
.wpd-scope :is(h1, h2, h3, h4):is(.watson-t--small, .watson-t--ui, .watson-t--label){font-variation-settings: normal;}
.watson-t--display{font-family: var(--font-heading); font-size: var(--bouw-dir-t-display, clamp(2.75rem, 8vw, 7rem)); line-height: var(--bouw-dir-lh-display, 0.96); letter-spacing: var(--bouw-dir-ls-display, -0.035em); font-weight: var(--bouw-dir-w-display, 400);}
.watson-t--display-s{font-family: var(--font-heading); font-size: var(--bouw-dir-t-display-s, clamp(2.5rem, 6vw, 5.5rem)); line-height: 1; letter-spacing: -0.03em; font-weight: var(--bouw-dir-w-display, 400);}
.watson-t--h-l{font-family: var(--font-heading); font-size: var(--bouw-dir-t-h-l, clamp(2.25rem, 5vw, 4.5rem)); line-height: 1.03; letter-spacing: -0.025em; font-weight: var(--bouw-dir-w-display, 400);}
.watson-t--h-m{font-family: var(--font-heading); font-size: var(--bouw-dir-t-h-m, clamp(1.75rem, 2.8vw, 2.6rem)); line-height: 1.1; letter-spacing: -0.02em; font-weight: var(--bouw-dir-w-heading, 400);}
.watson-t--h-s{font-family: var(--font-heading); font-size: var(--bouw-dir-t-h-s, clamp(1.375rem, 1.9vw, 1.65rem)); line-height: 1.2; letter-spacing: -0.01em; font-weight: var(--bouw-dir-w-heading, 400);}
.watson-t--lead{font-family: var(--font-body); font-size: var(--bouw-dir-t-lead, clamp(1.15rem, 1.5vw, 1.3rem)); line-height: 1.5;}
.watson-t--body{font-family: var(--font-body); font-size: var(--bouw-dir-t-body, 1.0625rem); line-height: 1.6;}
.watson-t--small{font-family: var(--font-body); letter-spacing: 0; font-size: var(--bouw-dir-t-small, 0.875rem); line-height: 1.5;}
.watson-t--ui{font-family: var(--font-body); font-size: inherit; font-weight: 500; letter-spacing: 0; line-height: 1.35;}
.watson-t--mono{font-family: var(--bouw-dir-font-mono, ui-monospace, "SFMono-Regular", Menlo, monospace); font-size: var(--bouw-dir-t-mono, 0.8125rem); line-height: 1.45; font-variant-numeric: tabular-nums; letter-spacing: 0;}
.watson-t--label{font-family: var(--font-body); font-size: var(--bouw-dir-t-label, 0.75rem); line-height: 1.35; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 500;}
.watson-t--numeral{font-family: var(--font-heading); font-size: var(--bouw-dir-t-numeral, clamp(2.25rem, 3.4vw, 3rem)); line-height: 1; letter-spacing: -0.03em; font-weight: var(--bouw-dir-w-heading, 400); font-variant-numeric: lining-nums;}
.watson-t--quote{font-family: var(--font-heading); font-size: var(--bouw-dir-t-quote, clamp(1.5rem, 2.4vw, 2.1rem)); line-height: 1.22; letter-spacing: -0.015em;}
.watson-box--card{background-color: var(--bouw-dir-card, #fff); color: var(--bouw-dir-text, #1a141d); border-radius: var(--bouw-dir-radius, 4px); padding: var(--bouw-dir-card-pad, clamp(20px, 3vw, 40px)); box-shadow: var(--wpd-shadow, var(--bouw-dir-card-shadow, 0 18px 48px -18px rgba(20, 10, 30, .28)));
  --wpd-tone-2: var(--bouw-dir-text-2, #4a4250); --wpd-tone-mute: var(--bouw-dir-mute, #7a7180); --wpd-em: var(--color-primary); --wpd-rule-soft: var(--bouw-dir-rule, #d9d2dc);}
.watson-box--panel{background-color: var(--bouw-dir-tint, #f2eff4); border-radius: var(--bouw-dir-radius, 4px); padding: var(--bouw-dir-card-pad, clamp(20px, 3vw, 40px));}
.watson-box--outline{border: 1px solid var(--wpd-rule, var(--wpd-rule-soft, currentColor)); border-radius: var(--bouw-dir-radius, 4px); padding: var(--bouw-dir-card-pad, clamp(20px, 3vw, 40px));}
.watson-box--rule-top{border-block-start: 1px solid var(--wpd-rule, var(--wpd-rule-soft, currentColor));}
.watson-box--rule-left{border-inline-start: 2px solid var(--wpd-rule, var(--color-primary)); padding-inline-start: clamp(14px, 1.6vw, 22px);}
.watson-transition--hairline{border-block-start: 1px solid var(--bouw-dir-rule, #d9d2dc);}
.watson-edge--hairline{border-block-end: 1px solid var(--wpd-rule-soft, var(--bouw-dir-rule, #d9d2dc));}
.watson-device--stagger .watson-line{display: block;}
.watson-device--stagger .watson-line:first-of-type{font-weight: var(--wpd-lead-weight, inherit);}
.watson-device--stagger .watson-line:nth-of-type(2){padding-inline-start: calc(var(--wpd-step, 0em) * 1);}
.watson-device--stagger .watson-line:nth-of-type(3){padding-inline-start: calc(var(--wpd-step, 0em) * 2);}
.watson-device--stagger .watson-line:nth-of-type(4){padding-inline-start: calc(var(--wpd-step, 0em) * 3);}
.watson-device--mark-em em{position: relative; z-index: 0; white-space: nowrap; color: var(--color-primary, var(--bouw-brand-unset)); font-weight: calc(var(--bouw-dir-w-display, 400) + 50);}
.watson-device--mark-em em::after{content: ""; position: absolute; inset-inline: -0.04em -0.02em; bottom: 0.08em; height: 0.14em; background: var(--bouw-dir-signal, var(--bouw-brand-unset)); opacity: .85; z-index: -1;}
.watson-eyebrow--rail{display: flex; gap: 10px; align-items: baseline; color: var(--wpd-tone-mute);}
.watson-eyebrow--rail strong{font-weight: 600; color: var(--wpd-em, var(--color-primary));}
@media (min-width: 782px){
.watson-eyebrow--rail{flex-direction: column; gap: 6px; padding-block-start: 14px; border-block-start: 1px solid currentColor; border-color: var(--wpd-rail-rule, var(--wpd-ink)); align-self: start;}
.watson-surface--ink .watson-eyebrow--rail, .watson-surface--brand .watson-eyebrow--rail{border-color: var(--bouw-dir-on-ink, #ede6f0);}
}
.watson-surface--paper .watson-eyebrow--rail strong, .watson-surface--tint .watson-eyebrow--rail strong{color: var(--color-primary);}
.wpd-scope :where(.watson-list){list-style: none; padding: 0; margin: 0;}
.wpd-scope :where(.watson-list > li){margin: 0;}
.watson-list__item{position: relative;}
.watson-list__marker{grid-area: marker;}
.watson-list__kicker{grid-area: kicker; color: var(--wpd-em, var(--color-primary)); font-weight: 600;}
.watson-list__title{grid-area: title;}
.watson-list__badge{grid-area: badge;}
.watson-list__figure{grid-area: figure;}
.watson-list__text{grid-area: text; color: var(--wpd-tone-2, inherit);}
.watson-list__meta{grid-area: meta; color: var(--wpd-tone-mute, inherit);}
.watson-list__extra{grid-area: extra;}
.watson-list__marker{font-family: var(--font-body); font-size: 0.8125rem; letter-spacing: 0.08em; color: var(--wpd-em, var(--color-primary)); font-variant-numeric: tabular-nums;}
.watson-list__marker.watson-t--label{color: var(--wpd-em);}
.watson-list__marker:is(.watson-t--h-m, .watson-t--h-l, .watson-t--numeral){font-family: var(--font-heading); letter-spacing: -0.02em; line-height: 1; color: var(--color-primary, var(--bouw-brand-unset));}
.watson-surface--ink .watson-list__marker:is(.watson-t--h-m, .watson-t--h-l, .watson-t--numeral){color: var(--wpd-em);}
.watson-list__title a:hover{color: var(--color-primary, var(--bouw-brand-unset));}
.watson-surface--ink .watson-list__title a:hover{color: var(--wpd-em);}
.watson-list__badge{width: max-content; padding: 5px 7px; border-radius: 2px; background: var(--bouw-dir-signal, var(--bouw-brand-unset)); color: var(--bouw-dir-text, #1a141d); font-size: 11px; font-weight: 600; letter-spacing: 0.12em;}
.watson-list__figure{font-family: var(--font-heading); font-size: var(--bouw-dir-t-numeral, clamp(2.25rem, 3.4vw, 3rem)); line-height: 1; letter-spacing: -0.03em; color: var(--color-primary, var(--bouw-brand-unset));}
.watson-list__figure--word{font-style: italic; font-size: clamp(1.25rem, 1.8vw, 1.625rem); letter-spacing: -0.01em; line-height: 1.1; max-width: 9ch;}
@media (max-width: 781px){
.watson-list__figure--word{justify-self: end;}
}
.watson-list--dash > li, .watson-list--arrow > li, .watson-list--check > li{padding-inline-start: 1.5em; position: relative;}
.watson-list--dash > li::before{content: "—"; position: absolute; inset-inline-start: 0; color: var(--wpd-em);}
.watson-list--arrow > li::before{content: "→"; position: absolute; inset-inline-start: 0; color: var(--wpd-em);}
.watson-list--check > li::before{content: "✓"; position: absolute; inset-inline-start: 0; color: var(--wpd-em);}
.watson-list--quote > li{position: relative; padding-inline-start: 1.15em;}
.watson-list--quote > li::before{content: "\201C"; position: absolute; inset-inline-start: 0; top: -0.08em; font-family: var(--font-heading); font-size: 1.6em; line-height: 1; color: var(--color-primary, var(--bouw-brand-unset));}
@media (min-width: 782px){
.watson-list--quote > li{padding-inline-start: 0;}
.watson-list--quote > li::before{inset-inline-start: -0.62em;}
}
.watson-list--chain{counter-reset: none;}
.watson-list--chain > .watson-list__item{padding: 18px 0 18px 36px; border-block-start: 1px solid var(--wpd-rule-soft);}
.watson-list--chain > .watson-list__item:last-child{border-block-end: 1px solid var(--wpd-rule-soft);}
.watson-list--chain > .watson-list__item::before{content: ""; position: absolute; inset-inline-start: 6px; top: 0; bottom: 0; width: 1px; background: var(--wpd-em); opacity: .5;}
.watson-list--chain > .watson-list__item::after{content: ""; position: absolute; inset-inline-start: 1px; top: 27px; width: 11px; height: 11px; border-radius: 50%; background: currentColor; background: var(--bouw-dir-ink, #1b1220); border: 1.5px solid var(--wpd-em); box-sizing: border-box;}
.watson-surface--paper .watson-list--chain > .watson-list__item::after, .watson-surface--tint .watson-list--chain > .watson-list__item::after{background: var(--bouw-dir-paper, #fff);}
.watson-list--chain > .watson-list__item:last-child::after{background: var(--bouw-dir-signal, var(--bouw-brand-unset)); border-color: var(--bouw-dir-signal, var(--bouw-brand-unset));}
.watson-list--chain .watson-list__kicker{color: var(--wpd-em); font-weight: 500;}
.watson-list--chain .watson-list__title{margin-block-start: 6px; color: #fff;}
.watson-surface--paper .watson-list--chain .watson-list__title, .watson-surface--tint .watson-list--chain .watson-list__title{color: inherit;}
@media (min-width: 782px){
.watson-device--chain-h-md{display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); border-block: 1px solid var(--wpd-rule-soft);}
.watson-device--chain-h-md > .watson-list__item{border: 0 !important; padding: 36px 24px 32px 0;}
.watson-device--chain-h-md > .watson-list__item::before{inset-inline: 0; top: -1px; bottom: auto; width: auto; height: 1px; opacity: 1;}
.watson-device--chain-h-md > .watson-list__item::after{inset-inline-start: 0; top: -6px;}
}
.watson-device--bleed-fill{position: relative; isolation: isolate;}
.watson-device--bleed-fill::before{content: ""; position: absolute; inset-block: 0; inset-inline: -100vmax; background: inherit; z-index: -1;}
.watson-stat{display: grid;}
.watson-stat__value{font-size: var(--wpd-value-size, inherit); font-weight: var(--wpd-value-weight, inherit); line-height: 0.8; letter-spacing: -0.045em; color: inherit;}
.watson-stat__value sup{font-size: 0.4em; vertical-align: 0; position: relative; top: -0.95em; margin-inline-end: 0.02em; font-weight: 400;}
.watson-stat__compare{font-family: var(--font-heading); font-size: var(--wpd-compare-size, 0.45em); line-height: 1; color: var(--wpd-tone-mute);}
.watson-device--strike-compare .watson-stat__compare s{text-decoration-thickness: 2px; text-decoration-color: var(--wpd-tone-2);}
.watson-stat__label{font-family: var(--font-body); font-size: 12px; line-height: 1.4; letter-spacing: 0.12em; text-transform: uppercase; color: var(--wpd-tone-mute); max-width: 16ch;}
.watson-stat .watson-stat__value{font-family: var(--font-heading);}
.watson-stat.watson-tone--signal .watson-stat__value{color: var(--bouw-dir-signal, var(--bouw-brand-unset));}
.watson-stat.watson-tone--signal :is(.watson-stat__compare, .watson-stat__label){color: var(--wpd-tone-mute);}
.watson-stat.watson-tone--brand .watson-stat__value{color: var(--color-primary, var(--bouw-brand-unset));}
@media (min-width: 782px){
.watson-stat[style*="text-align"], .watson-stat .watson-stat__label{margin-inline-start: auto;}
}
.wpd-scope .wp-block-quote{border: 0; padding: 0; margin: 0; quotes: none;}
.wpd-scope .wp-block-quote p{font: inherit; margin: 0;}
.wpd-scope .wp-block-quote cite{display: block; margin-block-start: 0.6em; font-family: var(--font-body); font-size: 13px; line-height: 1.4; font-style: normal; letter-spacing: 0; color: var(--wpd-tone-mute);}
.wpd-scope .wp-block-quote cite strong{color: var(--wpd-ink); font-weight: 600;}
.watson-surface--ink .wp-block-quote cite strong{color: #fff;}
.wpd-scope .wp-block-buttons{display: flex; flex-wrap: wrap; gap: 20px 28px; align-items: center; margin: 0;}
.wpd-scope .wp-block-button{margin: 0;}
.wpd-scope .watson-btn--primary .wp-block-button__link{display: inline-flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 52px; padding: 0 24px; background: var(--wpd-cta, var(--bouw-dir-cta, var(--color-primary, var(--bouw-brand-unset)))); color: var(--wpd-cta-ink, var(--bouw-dir-cta-ink, #fff)); border: 0; border-radius: var(--bouw-dir-btn-radius, 999px); font-family: var(--font-body); font-size: 16px; font-weight: 600; line-height: 1; text-decoration: none; transition: background-color .2s;}
.wpd-scope .watson-btn--primary .wp-block-button__link:hover{background: var(--bouw-dir-cta-hover, var(--bouw-dir-cta, var(--color-primary)));}
.wpd-scope .watson-btn--secondary .wp-block-button__link{display: inline-flex; align-items: center; min-height: 52px; padding: 0 22px; background: transparent; color: inherit; border: 1.5px solid currentColor; border-radius: var(--bouw-dir-btn-radius, 999px); font-weight: 600; text-decoration: none;}
.wpd-scope .watson-btn--link .wp-block-button__link{background: none; color: inherit; padding: 0 0 2px; border: 0; border-block-end: 1.5px solid currentColor; border-radius: 0; font-family: var(--font-body); font-size: 16px; font-weight: 600; text-decoration: none; line-height: 1.3;}
.wpd-scope .watson-btn--link .wp-block-button__link:hover{color: var(--color-primary);}
.wpd-scope .watson-btn--arrow .wp-block-button__link::after{content: "\2192"; transition: transform .2s;}
.wpd-scope .watson-btn--arrow .wp-block-button__link:hover::after{transform: translateX(3px);}
.wpd-scope .watson-btn--s .wp-block-button__link{min-height: 0; padding: 12px 14px; font-size: 14px; white-space: nowrap;}
@media (min-width: 782px){
.wpd-scope .watson-btn--s .wp-block-button__link{padding: 14px 20px; font-size: 15px;}
}
@media (max-width: 599px){
.wpd-scope .watson-btn--block{flex-basis: 100%;}
.wpd-scope .watson-btn--block .wp-block-button__link{width: 100%; box-sizing: border-box;}
}
.watson-wordmark{display: flex; align-items: baseline; gap: 8px; margin: 0;}
.watson-wordmark a{font-family: var(--font-heading); font-size: 26px; font-weight: 500; line-height: 1; letter-spacing: -0.03em; text-decoration: none; color: inherit;}
.watson-wordmark.watson-t--h-l a{font-size: inherit; font-weight: 400;}
.watson-wordmark__dot{color: var(--wpd-em, var(--color-primary));}
.watson-surface--paper .watson-wordmark__dot{color: var(--color-primary, var(--bouw-brand-unset));}
.watson-wordmark__sub{display: none; font-family: var(--font-body); font-size: 10px; font-weight: 500; letter-spacing: 0.16em; text-transform: uppercase; color: var(--wpd-tone-mute);}
@media (min-width: 782px){
.watson-wordmark__sub{display: inline;}
}
.wpd-scope .watson-nav{font-family: var(--font-body); font-size: 15px; font-weight: 500;}
.wpd-scope .watson-nav .wp-block-navigation__container{gap: 32px;}
.wpd-scope .watson-nav .wp-block-navigation-item__content{color: var(--wpd-tone-2); text-decoration: none;}
.wpd-scope .watson-nav .wp-block-navigation-item__content:hover{color: var(--color-primary);}
.wpd-scope .watson-nav .wp-block-navigation__responsive-container-open{font-size: 14px; font-weight: 600; padding: 12px 4px;}
.wpd-scope .watson-nav .wp-block-navigation__responsive-container.is-menu-open{background: var(--bouw-dir-paper, #fff); color: var(--bouw-dir-text, #1a141d);}
.wpd-scope .watson-links{list-style: none; padding: 0; margin: 14px 0 0; display: grid; gap: 8px; font-size: 15px;}
.wpd-scope .watson-links li{margin: 0;}
.wpd-scope .watson-links a{text-decoration: none;}
.wpd-scope .watson-links a:hover{text-decoration: underline;}
.watson-surface--ink .watson-links{color: var(--bouw-dir-on-ink, #e8e1ec);}
.wpd-scope .watson-form{max-width: none; width: auto; margin: 0; padding: 0; background: none; border: 0; box-shadow: none; border-radius: 0; color: inherit;}
.wpd-scope .watson-form label{display: block; margin: 0 0 8px; font-family: var(--font-body); font-size: 14px; font-weight: 600; line-height: 1.3; color: inherit;}
.wpd-scope .watson-form :is(input:not([type=checkbox]):not([type=hidden]), textarea, select){width: 100%; box-sizing: border-box; padding: 10px 0; font-family: var(--font-body); font-size: 17px; line-height: 1.4; color: inherit; background: transparent; border: 0; border-block-end: 1.5px solid currentColor; border-radius: 0; box-shadow: none; outline: none;}
.wpd-scope .watson-form textarea{min-height: 96px; resize: vertical;}
.wpd-scope .watson-form :is(input, textarea):focus{border-block-end-color: var(--color-primary); box-shadow: 0 1.5px 0 var(--color-primary);}
.watson-figure svg{display: block; width: 100%; height: auto;}
.watson-device--block-base :is(.wp-block-button, .wp-block-button__link, button, input[type="submit"]){width: 100%; justify-content: center;}
.wp-block-buttons.watson-device--block-base, .watson-device--block-base .wp-block-buttons{flex-direction: column; align-items: stretch;}
@media (min-width: 782px){
.watson-device--block-base :is(.wp-block-button, .wp-block-button__link, button, input[type="submit"]){width: auto;}
.wp-block-buttons.watson-device--block-base, .watson-device--block-base .wp-block-buttons{flex-direction: row; align-items: center;}
}
.wpd-scope .wp-block-image{margin: 0;}
.wpd-scope .wp-block-image img{display: block; width: 100%; height: auto;}
.wpd-scope .wp-block-image figcaption{margin-block-start: 10px; font-size: var(--bouw-dir-t-small, 0.875rem); color: inherit; opacity: .8;}
.wpd-scope .wp-block-separator{width: auto; max-width: none; margin-inline: 0;}
.wpd-scope :is(h1, h2, h3, h4, .watson-list__title, .watson-list__title a){overflow-wrap: break-word; hyphens: auto;}
.wpd-scope :is(.wpd-grid > *, .watson-list > li, .watson-list__item > *){min-width: 0;}
body{font-family: var(--font-body, var(--bouw-brand-unset-font)); line-height: 1.6; color: var(--neutral-900, #171717);}
*{margin: 0;
    padding: 0;
    box-sizing: border-box;}
body{font-family: var(--bouw-body-font, var(--bouw-brand-unset-font));
    font-size: var(--bouw-base-font-size, 1rem);
    line-height: 1.6;
    color: var(--ink-primary, #333);
    background-color: var(--surface-body, #fff);}
h1, h2, h3, h4, h5, h6{font-family: var(--font-heading, var(--bouw-heading-font, var(--bouw-brand-unset-font)));
    font-weight: var(--font-heading-weight, 700);
    text-transform: var(--font-heading-transform, none);
    letter-spacing: var(--font-heading-tracking, normal);
    line-height: var(--font-heading-leading, 1.2);
    color: var(--ink-primary, var(--bouw-contrast, #111));
    margin-bottom: 1rem;}
h1{font-size: var(--bouw-h1-font-size, 3.5rem);
    color: var(--ink-primary, var(--bouw-contrast, #111));}
h2{font-size: var(--bouw-h2-font-size, 2.5rem);
    color: var(--ink-primary, var(--bouw-contrast, #111));}
h3{font-size: var(--bouw-h3-font-size, 2rem);
    color: var(--ink-primary, var(--bouw-contrast, #111));}
a:focus, button:focus, input:focus, textarea:focus, select:focus{outline: 2px solid var(--bouw-accent, var(--bouw-brand-unset));
    outline-offset: 2px;}
.screen-reader-text{position: absolute !important;
    clip: rect(1px, 1px, 1px, 1px);
    width: 1px;
    height: 1px;
    overflow: hidden;}
.screen-reader-text:focus{position: absolute !important;
    clip: auto;
    width: auto;
    height: auto;
    padding: 8px 16px;
    background: var(--ink-primary, #111);
    color: var(--surface-body, #fff);
    text-decoration: none;
    z-index: 9999;}
:root{--primary:#EC643D;--color-primary:#EC643D;--bouw-primary:#EC643D;--ink-on-primary:#16151a;--secondary:#EF7676;--color-secondary:#EF7676;--bouw-secondary:#EF7676;--ink-on-secondary:#16151a;--accent:#F8AF3A;--color-accent:#F8AF3A;--cta-primary:#F8AF3A;--bouw-accent:#F8AF3A;--ink-on-accent:#16151a;--font-heading:"Noto Sans", system-ui, sans-serif;--bouw-heading-font:"Noto Sans", system-ui, sans-serif;--bouw-font-heading:"Noto Sans", system-ui, sans-serif;--font-body:"Sofia Sans", system-ui, sans-serif;--bouw-body-font:"Sofia Sans", system-ui, sans-serif;--bouw-font-body:"Sofia Sans", system-ui, sans-serif;--radius-lg:0.5rem;}
img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}
ol, ul{box-sizing:border-box}
:root :where(.wp-block-list.has-background){padding:1.25em 2.375em}
.wp-block-group{box-sizing:border-box}
:where(.wp-block-group.wp-block-group-is-layout-constrained){position:relative}
:where(.wp-block-group.has-background){padding:1.25em 2.375em}
.is-small-text{font-size:.875em}
.is-regular-text{font-size:1em}
.is-large-text{font-size:2.25em}
.is-larger-text{font-size:3em}
.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;font-style:normal;font-weight:100;line-height:.68;margin:.05em .1em 0 0;text-transform:uppercase}
body.rtl .has-drop-cap:not(:focus):first-letter{float:none;margin-left:.1em}
p.has-drop-cap.has-background{overflow:hidden}
:root :where(p.has-background){padding:1.25em 2.375em}
:where(p.has-text-color:not(.has-link-color)) a{color:inherit}
p.has-text-align-left[style*="writing-mode:vertical-lr"], p.has-text-align-right[style*="writing-mode:vertical-rl"]{rotate:180deg}
.wp-block-navigation .wp-block-navigation-item__label{overflow-wrap:break-word}
.wp-block-navigation .wp-block-navigation-item__description{display:none}
.wp-block-button__link{align-content:center;box-sizing:border-box;cursor:pointer;display:inline-block;height:100%;text-align:center;word-break:break-word}
.wp-block-button__link.aligncenter{text-align:center}
.wp-block-button__link.alignright{text-align:right}
:where(.wp-block-button__link){border-radius:9999px;box-shadow:none;padding:calc(.667em + 2px) calc(1.333em + 2px);text-decoration:none}
.wp-block-button[style*=text-decoration] .wp-block-button__link{text-decoration:inherit}
.wp-block-buttons>.wp-block-button.has-custom-width{max-width:none}
.wp-block-buttons>.wp-block-button.has-custom-width .wp-block-button__link{width:100%}
.wp-block-buttons>.wp-block-button.has-custom-font-size .wp-block-button__link{font-size:inherit}
.wp-block-buttons>.wp-block-button[class*=wp-block-button__width]{width:calc(var(--wp--block-button--width)*1% - var(--wp--style--block-gap, .5em)*(1 - var(--wp--block-button--width)/100))}
.wp-block-buttons>.wp-block-button.wp-block-button__width-25{width:calc(25% - var(--wp--style--block-gap, .5em)*.75)}
.wp-block-buttons>.wp-block-button.wp-block-button__width-50{width:calc(50% - var(--wp--style--block-gap, .5em)*.5)}
.wp-block-buttons>.wp-block-button.wp-block-button__width-75{width:calc(75% - var(--wp--style--block-gap, .5em)*.25)}
.wp-block-buttons>.wp-block-button.wp-block-button__width-100{flex-basis:100%;width:100%}
.wp-block-buttons.is-vertical>.wp-block-button[class*=wp-block-button__width]{width:calc(var(--wp--block-button--width)*1%)}
.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-25{width:25%}
.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-50{width:50%}
.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-75{width:75%}
.wp-block-button.is-style-squared, .wp-block-button__link.wp-block-button.is-style-squared{border-radius:0}
.wp-block-button.no-border-radius, .wp-block-button__link.no-border-radius{border-radius:0!important}
:root :where(.wp-block-button .wp-block-button__link.is-style-outline), :root :where(.wp-block-button.is-style-outline>.wp-block-button__link){border:2px solid;padding:.667em 1.333em}
:root :where(.wp-block-button .wp-block-button__link.is-style-outline:not(.has-text-color)), :root :where(.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-text-color)){color:currentColor}
:root :where(.wp-block-button .wp-block-button__link.is-style-outline:not(.has-background)), :root :where(.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background)){background-color:transparent;background-image:none}
.wp-block-buttons{box-sizing:border-box}
.wp-block-buttons.is-vertical{flex-direction:column}
.wp-block-buttons.is-vertical>.wp-block-button:last-child{margin-bottom:0}
.wp-block-buttons>.wp-block-button{display:inline-block;margin:0}
.wp-block-buttons.is-content-justification-left{justify-content:flex-start}
.wp-block-buttons.is-content-justification-left.is-vertical{align-items:flex-start}
.wp-block-buttons.is-content-justification-center{justify-content:center}
.wp-block-buttons.is-content-justification-center.is-vertical{align-items:center}
.wp-block-buttons.is-content-justification-right{justify-content:flex-end}
.wp-block-buttons.is-content-justification-right.is-vertical{align-items:flex-end}
.wp-block-buttons.is-content-justification-space-between{justify-content:space-between}
.wp-block-buttons.aligncenter{text-align:center}
.wp-block-buttons:not(.is-content-justification-space-between,.is-content-justification-right,.is-content-justification-left,.is-content-justification-center) .wp-block-button.aligncenter{margin-left:auto;margin-right:auto;width:100%}
.wp-block-buttons[style*=text-decoration] .wp-block-button, .wp-block-buttons[style*=text-decoration] .wp-block-button__link{text-decoration:inherit}
.wp-block-buttons.has-custom-font-size .wp-block-button__link{font-size:inherit}
.wp-block-buttons .wp-block-button__link{width:100%}
.wp-block-button.aligncenter{text-align:center}
:root :where(.wp-block-template-part.has-background){margin-bottom:0;margin-top:0;padding:1.25em 2.375em}
h1:where(.wp-block-heading).has-background, h2:where(.wp-block-heading).has-background, h3:where(.wp-block-heading).has-background, h4:where(.wp-block-heading).has-background, h5:where(.wp-block-heading).has-background, h6:where(.wp-block-heading).has-background{padding:1.25em 2.375em}
h1.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]), h1.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]), h2.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]), h2.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]), h3.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]), h3.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]), h4.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]), h4.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]), h5.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]), h5.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]), h6.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]), h6.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]){rotate:180deg}
.wp-block-image>a, .wp-block-image>figure>a{display:inline-block}
.wp-block-image img{box-sizing:border-box;height:auto;max-width:100%;vertical-align:bottom}
@media not (prefers-reduced-motion){
.wp-block-image img.hide{visibility:hidden}
.wp-block-image img.show{animation:show-content-image .4s}
}
.wp-block-image[style*=border-radius] img, .wp-block-image[style*=border-radius]>a{border-radius:inherit}
.wp-block-image.has-custom-border img{box-sizing:border-box}
.wp-block-image.aligncenter{text-align:center}
.wp-block-image.alignfull>a, .wp-block-image.alignwide>a{width:100%}
.wp-block-image.alignfull img, .wp-block-image.alignwide img{height:auto;width:100%}
.wp-block-image .aligncenter, .wp-block-image .alignleft, .wp-block-image .alignright, .wp-block-image.aligncenter, .wp-block-image.alignleft, .wp-block-image.alignright{display:table}
.wp-block-image .aligncenter>figcaption, .wp-block-image .alignleft>figcaption, .wp-block-image .alignright>figcaption, .wp-block-image.aligncenter>figcaption, .wp-block-image.alignleft>figcaption, .wp-block-image.alignright>figcaption{caption-side:bottom;display:table-caption}
.wp-block-image .alignleft{float:left;margin:.5em 1em .5em 0}
.wp-block-image .alignright{float:right;margin:.5em 0 .5em 1em}
.wp-block-image .aligncenter{margin-left:auto;margin-right:auto}
.wp-block-image :where(figcaption){margin-bottom:1em;margin-top:.5em}
.wp-block-image.is-style-circle-mask img{border-radius:9999px}
@supports ((-webkit-mask-image:none) or (mask-image:none)) or (-webkit-mask-image:none){
.wp-block-image.is-style-circle-mask img{border-radius:0;-webkit-mask-image:url('data:image/svg+xml;utf8,<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><circle cx="50" cy="50" r="50"/></svg>');mask-image:url('data:image/svg+xml;utf8,<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><circle cx="50" cy="50" r="50"/></svg>');mask-mode:alpha;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}
}
:root :where(.wp-block-image.is-style-rounded img,.wp-block-image .is-style-rounded img){border-radius:9999px}
.wp-block-image figure{margin:0}
@keyframes show-content-image{0%{visibility:hidden}99%{visibility:hidden}to{visibility:visible}}
:root :where(.wp-block-image figcaption){color:#555;font-size:13px;text-align:center}
.is-dark-theme :root :where(.wp-block-image figcaption){color:hsla(0,0%,100%,.65)}
.wp-block-image{margin:0 0 1em}
.wp-block-quote{box-sizing:border-box;overflow-wrap:break-word}
.wp-block-quote>cite{display:block}
.wp-block-quote{border-left:.25em solid;margin:0 0 1.75em;padding-left:1em}
.wp-block-quote cite, .wp-block-quote footer{color:currentColor;font-size:.8125em;font-style:normal;position:relative}
.wp-block-quote:where(.has-text-align-right){border-left:none;border-right:.25em solid;padding-left:0;padding-right:1em}
.wp-block-quote:where(.has-text-align-center){border:none;padding-left:0}
.wp-block-quote.is-large, .wp-block-quote.is-style-large, .wp-block-quote:where(.is-style-plain){border:none}
.wp-block-post-content{display:flow-root}
img.wp-smiley, img.emoji{display: inline !important;
		border: none !important;
		box-shadow: none !important;
		height: 1em !important;
		width: 1em !important;
		margin: 0 0.07em !important;
		vertical-align: -0.1em !important;
		background: none !important;
		padding: 0 !important;}
:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}
@media (min-resolution:192dpi){
:root{--wp-admin-border-width-focus:1.5px}
}
.wp-element-button{cursor:pointer}
:root .has-very-light-gray-background-color{background-color:#eee}
:root .has-very-dark-gray-background-color{background-color:#313131}
:root .has-very-light-gray-color{color:#eee}
:root .has-very-dark-gray-color{color:#313131}
:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}
:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}
:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}
:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}
:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}
:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}
:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}
:root{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}
.has-regular-font-size{font-size:1em}
.has-larger-font-size{font-size:2.625em}
.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}
.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}
:root .has-text-align-center{text-align:center}
:root .has-text-align-left{text-align:left}
:root .has-text-align-right{text-align:right}
.has-fit-text{white-space:nowrap!important}
.aligncenter{clear:both}
.items-justified-left{justify-content:flex-start}
.items-justified-center{justify-content:center}
.items-justified-right{justify-content:flex-end}
.items-justified-space-between{justify-content:space-between}
.screen-reader-text{word-wrap:normal!important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-break:normal!important}
.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}
html :where(.has-border-color){border-style:solid}
html :where([style^=border-color],[style*=";border-color"],[style*="; border-color"]){border-style:solid}
html :where([style^=border-top-color],[style*=";border-top-color"],[style*="; border-top-color"]){border-top-style:solid}
html :where([style^=border-right-color],[style*=";border-right-color"],[style*="; border-right-color"]){border-right-style:solid}
html :where([style^=border-bottom-color],[style*=";border-bottom-color"],[style*="; border-bottom-color"]){border-bottom-style:solid}
html :where([style^=border-left-color],[style*=";border-left-color"],[style*="; border-left-color"]){border-left-style:solid}
html :where([style^=border-width],[style*=";border-width"],[style*="; border-width"]){border-style:solid}
html :where([style^=border-top-width],[style*=";border-top-width"],[style*="; border-top-width"]){border-top-style:solid}
html :where([style^=border-right-width],[style*=";border-right-width"],[style*="; border-right-width"]){border-right-style:solid}
html :where([style^=border-bottom-width],[style*=";border-bottom-width"],[style*="; border-bottom-width"]){border-bottom-style:solid}
html :where([style^=border-left-width],[style*=";border-left-width"],[style*="; border-left-width"]){border-left-style:solid}
html :where(img[class*=wp-image-]){height:auto;max-width:100%}
:where(figure){margin:0 0 1em}
html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}
@media screen and (max-width:600px){
html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}
}
:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--primary: #EC643D;--wp--preset--color--secondary: #EF7676;--wp--preset--color--accent: #F8AF3A;--wp--preset--color--base: #ffffff;--wp--preset--color--contrast: #333333;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,0) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 14px;--wp--preset--font-size--medium: 16px;--wp--preset--font-size--large: 20px;--wp--preset--font-size--x-large: 24px;--wp--preset--font-family--heading: system-ui, -apple-system, sans-serif;--wp--preset--font-family--body: system-ui, -apple-system, sans-serif;--wp--preset--spacing--20: 0.5rem;--wp--preset--spacing--30: 1rem;--wp--preset--spacing--40: 1.5rem;--wp--preset--spacing--50: 2rem;--wp--preset--spacing--60: 3rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--spacing--10: 0.25rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}
.wp-block-button{--wp--preset--dimension--25: 25%;--wp--preset--dimension--50: 50%;--wp--preset--dimension--75: 75%;--wp--preset--dimension--100: 100%;}
:root{--wp--style--global--content-size: 1200px;--wp--style--global--wide-size: 1400px;}
:where(body){margin: 0;}
.wp-site-blocks > .alignleft{float: left; margin-right: 2em;}
.wp-site-blocks > .alignright{float: right; margin-left: 2em;}
.wp-site-blocks > .aligncenter{justify-content: center; margin-left: auto; margin-right: auto;}
:where(.is-layout-flex){gap: 0.5em;}
:where(.is-layout-grid){gap: 0.5em;}
.is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}
.is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}
.is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}
.is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}
.is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}
.is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}
.is-layout-constrained > .alignwide{max-width: var(--wp--style--global--wide-size);}
body .is-layout-flex{display: flex;}
.is-layout-flex{flex-wrap: wrap;align-items: center;}
.is-layout-flex > :is(*, div){margin: 0;}
body .is-layout-grid{display: grid;}
.is-layout-grid > :is(*, div){margin: 0;}
body{background-color: var(--wp--preset--color--base);color: var(--wp--preset--color--contrast);font-family: var(--wp--preset--font-family--body);font-size: var(--wp--preset--font-size--medium);padding-top: var(--wp--preset--spacing--50);padding-right: 0px;padding-bottom: var(--wp--preset--spacing--50);padding-left: 0px;}
:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}
.has-black-color{color: var(--wp--preset--color--black) !important;}
.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}
.has-white-color{color: var(--wp--preset--color--white) !important;}
.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}
.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}
.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}
.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}
.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}
.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}
.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}
.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}
.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}
.has-primary-color{color: var(--wp--preset--color--primary) !important;}
.has-secondary-color{color: var(--wp--preset--color--secondary) !important;}
.has-accent-color{color: var(--wp--preset--color--accent) !important;}
.has-base-color{color: var(--wp--preset--color--base) !important;}
.has-contrast-color{color: var(--wp--preset--color--contrast) !important;}
.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}
.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}
.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}
.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}
.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}
.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}
.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}
.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}
.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}
.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}
.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}
.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}
.has-primary-background-color{background-color: var(--wp--preset--color--primary) !important;}
.has-secondary-background-color{background-color: var(--wp--preset--color--secondary) !important;}
.has-accent-background-color{background-color: var(--wp--preset--color--accent) !important;}
.has-base-background-color{background-color: var(--wp--preset--color--base) !important;}
.has-contrast-background-color{background-color: var(--wp--preset--color--contrast) !important;}
.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}
.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}
.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}
.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}
.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}
.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}
.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}
.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}
.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}
.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}
.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}
.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}
.has-primary-border-color{border-color: var(--wp--preset--color--primary) !important;}
.has-secondary-border-color{border-color: var(--wp--preset--color--secondary) !important;}
.has-accent-border-color{border-color: var(--wp--preset--color--accent) !important;}
.has-base-border-color{border-color: var(--wp--preset--color--base) !important;}
.has-contrast-border-color{border-color: var(--wp--preset--color--contrast) !important;}
.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}
.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}
.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}
.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}
.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}
.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}
.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}
.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}
.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}
.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}
.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}
.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}
.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}
.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}
.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}
.has-heading-font-family{font-family: var(--wp--preset--font-family--heading) !important;}
.has-body-font-family{font-family: var(--wp--preset--font-family--body) !important;}
:root{--bouw-base: #FFFFFF;
    --bouw-contrast: #333333;
    --bouw-gray_90: #414042;
    --bouw-gray_75: #58595B;
    --bouw-gray_50: #808285;
    --bouw-gray_25: #A7A9AC;
    --bouw-gray_10: #DCDDDE;
    --font-heading-weight: 700;
    --font-heading-transform: none;
    --font-heading-tracking: 0;
    --font-heading-leading: 1.1;
    --bouw-spacing-xs: 0.25rem;
    --bouw-spacing-sm: 0.5rem;
    --bouw-spacing-md: 1rem;
    --bouw-spacing-lg: 1.5rem;
    --bouw-spacing-xl: 2rem;
    --bouw-spacing-xxl: 3rem;
    --bouw-spacing-xxxl: 4rem;
    --bouw-radius-sm: 4px;
    --bouw-radius-md: 8px;
    --bouw-radius-lg: 12px;
    --bouw-radius-xl: 16px;
    --bouw-shadow-sm: 0 2px 4px rgba(0,0,0,0.1);
    --bouw-shadow-md: 0 4px 8px rgba(0,0,0,0.15);
    --bouw-shadow-lg: 0 8px 16px rgba(0,0,0,0.2);
    --bouw-shadow-xl: 0 12px 24px rgba(0,0,0,0.25);
    --bouw-dir-paper: #FFFFFF;
    --bouw-dir-tint: #FDF1EA;
    --bouw-dir-ink: #333333;
    --bouw-dir-text: #333333;
    --bouw-dir-text-2: #555555;
    --bouw-dir-mute: #6B6B6B;
    --bouw-dir-rule: #F1D9CC;
    --bouw-dir-on-ink: #FFFFFF;
    --bouw-dir-on-ink-2: rgba(255,255,255,0.86);
    --bouw-dir-on-ink-mute: rgba(255,255,255,0.7);
    --bouw-dir-ink-rule: #4A4A4A;
    --bouw-dir-em-on-ink: #F8AF3A;
    --bouw-dir-em-on-brand: #FFFFFF;
    --bouw-dir-on-brand-2: rgba(255,255,255,0.92);
    --bouw-dir-signal: #EC643D;
    --bouw-dir-cta: #EC643D;
    --bouw-dir-cta-hover: #F8AF3A;
    --bouw-dir-card: #FFFFFF;
    --bouw-dir-card-shadow: 0 12px 32px rgba(51,51,51,0.12);
    --bouw-dir-card-pad: clamp(20px, 14px + 1.6vw, 36px);
    --bouw-dir-radius: 24px;
    --bouw-dir-btn-radius: 999px;
    --bouw-dir-content: 1140px;
    --bouw-dir-gutter: clamp(16px, 8px + 2vw, 40px);
    --bouw-dir-t-display: clamp(35px, 22px + 3.2vw, 55px);
    --bouw-dir-lh-display: 1.2;
    --bouw-dir-ls-display: 0;
    --bouw-dir-w-display: 700;
    --bouw-dir-t-display-s: clamp(28px, 20px + 2vw, 45px);
    --bouw-dir-t-h-l: clamp(28px, 20px + 2vw, 45px);
    --bouw-dir-t-h-m: clamp(24px, 19px + 1.2vw, 30px);
    --bouw-dir-t-h-s: clamp(18px, 16.6px + 0.35vw, 20px);
    --bouw-dir-w-heading: 700;
    --bouw-dir-t-lead: clamp(18px, 16px + 0.5vw, 21px);
    --bouw-dir-t-body: 17px;
    --bouw-dir-t-small: 15px;
    --bouw-dir-t-label: clamp(18px, 14px + 1vw, 24px);
    --bouw-dir-t-quote: clamp(18px, 16px + 0.6vw, 22px);
    --bouw-dir-t-numeral: clamp(44px, 28px + 4vw, 69px);
    --bouw-dir-cta-ink: #333333;}
:root{--bouw-container-width: 1200px;}
h1, h2, h3, h4, h5, h6{font-family: var(--bouw-heading-font, var(--bouw-brand-unset-font));}
body{font-family: var(--bouw-body-font, var(--bouw-brand-unset-font));}
a:focus, button:focus, input:focus, textarea:focus, select:focus{outline: 2px solid #007cba;
			outline-offset: 2px;}
.screen-reader-text{position: absolute !important;
			clip: rect(1px, 1px, 1px, 1px);
			width: 1px;
			height: 1px;
			overflow: hidden;}
.screen-reader-text:focus{position: absolute !important;
			clip: auto;
			width: auto;
			height: auto;
			padding: 8px 16px;
			background: #000;
			color: #fff;
			text-decoration: none;
			z-index: 9999;}
@media (prefers-reduced-motion: reduce){
*{animation-duration: 0.01ms !important;
				animation-iteration-count: 1 !important;
				transition-duration: 0.01ms !important;}
}
.wpd-scope .wpd-hero__in{grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 16px; row-gap: 28px; padding-block: 32px 0 0; padding-inline: clamp(16px, 8px + 2vw, 40px); max-width: 1140px; display: grid;}
.wpd-scope .wpd-hero__belofte{grid-column: 1 / -1; grid-row: 1;}
.wpd-scope .wpd-hero__belofte{grid-template-columns: minmax(0, 1fr); row-gap: 20px; display: grid;}
.wpd-scope .wpd-hero__h1{font-size: min(32px, 8vw); line-height: 1.15; letter-spacing: 0; max-width: 100%;}
.wpd-scope .wpd-hero__intro{max-width: 100%;}
.wpd-scope .wpd-hero__checks{margin-block-end: 4px;}
.wpd-scope .wpd-hero__checks{grid-template-columns: minmax(0, 1fr); row-gap: 10px; display: grid;}
.wpd-scope .wpd-hero__missie{justify-self: stretch;}
.wpd-scope .wpd-hero__offerte-kaart{grid-column: 1 / -1; grid-row: 2; z-index: 2; padding: clamp(20px, 14px + 1.6vw, 36px); margin-block-end: 0; position: relative;}
.wpd-scope .wpd-hero__offerte-kaart{grid-template-columns: minmax(0, 1fr); row-gap: 16px; display: grid;}
.wpd-scope .wpd-hero__offerte-kop{text-align: left;}
.wpd-scope .wpd-klanten__in{grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 16px; padding-block: 32px; padding-inline: var(--bouw-dir-gutter); max-width: var(--bouw-dir-content); display: grid;}
.wpd-scope .wpd-klanten__logorij{grid-column: 1 / -1;}
.wpd-scope .wpd-klanten__logorij{grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 16px; row-gap: 20px; align-items: center; justify-items: center; display: grid;}
.wpd-scope .wpd-klanten__logo-infrabel{max-width: 120px; justify-self: center;}
.wpd-scope .wpd-klanten__logo-lanxess{max-width: 120px; justify-self: center;}
.wpd-scope .wpd-klanten__logo-shell{max-width: 120px; justify-self: center;}
.wpd-scope .wpd-klanten__logo-bayer{max-width: 120px; justify-self: center;}
.wpd-scope .wpd-klanten__logo-exxonmobil{max-width: 120px; justify-self: center;}
.wpd-scope .wpd-klanten__logo-bp{max-width: 120px; justify-self: center;}
.wpd-scope .wpd-klanten__logo-vopak{max-width: 120px; justify-self: center;}
.wpd-scope .wpd-klanten__logo-infrabel-tuc-rail{max-width: 120px; justify-self: center;}
.wpd-scope .wpd-klanten__logo-antwerpen{max-width: 120px; justify-self: center;}
.wpd-scope .wpd-klanten__logo-mortsel{max-width: 120px; justify-self: center;}
.wpd-scope .wpd-diensten__in{grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 16px; row-gap: 20px; padding-block: clamp(56px, 40px + 4vw, 112px); max-width: var(--bouw-dir-content, 1140px); padding-inline: clamp(16px, 8px + 2vw, 40px); align-items: start; display: grid;}
.wpd-scope .wpd-diensten__diensten-heading{grid-column: 1 / -1; grid-row: 1; line-height: 1.15;}
.wpd-scope .wpd-diensten__diensten-intro{grid-column: 1 / -1; grid-row: 2;}
.wpd-scope .wpd-diensten__diensten-foto{grid-column: 1 / -1; grid-row: 3; margin-block-end: 12px; --wpd-radius: 24px;}
.wpd-scope .wpd-diensten__diensten-routes{grid-column: 1 / -1; grid-row: 4; margin-block-start: 16px;}
.wpd-scope .wpd-diensten__diensten-routes{grid-template-columns: minmax(0, 1fr); row-gap: 40px; display: grid;}
.wpd-scope .wpd-diensten__diensten-routes-item{grid-template-areas: "title" "text" "extra"; grid-template-columns: minmax(0, 1fr); row-gap: 10px; align-items: start; --wpd-rule: transparent; display: grid;}
.wpd-scope .wpd-diensten__diensten-routes-item-1{grid-column: 1 / -1;}
.wpd-scope .wpd-diensten__diensten-routes-item-2{grid-column: 1 / -1;}
.wpd-scope .wpd-diensten__diensten-routes-item-3{grid-column: 1 / -1;}
.wpd-scope .wpd-diensten__diensten-routes-item-4{grid-column: 1 / -1;}
.wpd-scope .wpd-diensten__diensten-routes-item-5{grid-column: 1 / -1;}
.wpd-scope .wpd-diensten__diensten-routes-title{line-height: 1.25;}
.wpd-scope .wpd-diensten__diensten-routes-text{font-size: var(--bouw-dir-t-body, 17px);}
.wpd-scope .wpd-diensten__lees-sanering{grid-area: extra; padding-block: 12px; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-diensten__lees-afvoer{grid-area: extra; padding-block: 12px; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-diensten__lees-premies{grid-area: extra; padding-block: 12px; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-diensten__lees-professionals{grid-area: extra; padding-block: 12px; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-diensten__particulieren-tekst{grid-area: text;}
.wpd-scope .wpd-diensten__lees-particulieren{grid-area: extra; padding-block: 12px; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-veiligheid{--wpd-cta: #FFFFFF; --wpd-cta-ink: #333333;}
.wpd-scope .wpd-veiligheid__in{grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 16px; row-gap: 20px; padding-block: clamp(48px, 36px + 3vw, 72px); padding-inline: var(--bouw-dir-gutter); max-width: var(--bouw-dir-content); align-items: start; display: grid;}
.wpd-scope .wpd-veiligheid__busfoto{grid-column: 1 / -1; grid-row: 1; margin-block-start: calc(-1 * clamp(48px, 36px + 3vw, 72px) - 40px); z-index: 2; position: relative;}
.wpd-scope .wpd-veiligheid__busfoto{grid-template-columns: minmax(0, 1fr); row-gap: 0px; display: grid;}
.wpd-scope .wpd-veiligheid__bus-beeld{grid-row: 1;}
.wpd-scope .wpd-veiligheid__bus-label{grid-row: 2; margin-block-start: -26px; margin-inline: 16px; justify-self: start; padding: 10px 18px; font-weight: 700; --wpd-rule: #FFFFFF; z-index: 3; position: relative;}
.wpd-scope .wpd-veiligheid__kicker{grid-column: 1 / -1; grid-row: 2; margin-block-start: 8px;}
.wpd-scope .wpd-veiligheid__titel{grid-column: 1 / -1; grid-row: 3; font-size: clamp(32px, 22px + 3vw, 40px); line-height: 1.15;}
.wpd-scope .wpd-veiligheid__intro{grid-column: 1 / -1; grid-row: 4; font-size: clamp(24px, 20px + 1vw, 28px); line-height: 1.45;}
.wpd-scope .wpd-veiligheid__case-vlasbloempje{grid-column: 1 / -1; grid-row: 5; margin-block-start: 8px;}
.wpd-scope .wpd-veiligheid__case-vlasbloempje{grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); column-gap: 16px; row-gap: 8px; align-items: start; display: grid;}
.wpd-scope .wpd-veiligheid__vlasbloempje-beeld{grid-column: 1; grid-row: 1 / span 2;}
.wpd-scope .wpd-veiligheid__vlasbloempje-titel{grid-column: 2; grid-row: 1;}
.wpd-scope .wpd-veiligheid__vlasbloempje-link{grid-column: 2; grid-row: 2; font-weight: 700; letter-spacing: 0.04em;}
.wpd-scope .wpd-veiligheid__case-sint-clara{grid-column: 1 / -1; grid-row: 6;}
.wpd-scope .wpd-veiligheid__case-sint-clara{grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); column-gap: 16px; row-gap: 8px; align-items: start; display: grid;}
.wpd-scope .wpd-veiligheid__sint-clara-beeld{grid-column: 1; grid-row: 1 / span 2;}
.wpd-scope .wpd-veiligheid__sint-clara-titel{grid-column: 2; grid-row: 1;}
.wpd-scope .wpd-veiligheid__sint-clara-link{grid-column: 2; grid-row: 2; font-weight: 700; letter-spacing: 0.04em;}
.wpd-scope .wpd-over__in{grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 16px; row-gap: 20px; padding-block: clamp(56px, 40px + 4vw, 96px); padding-inline: var(--bouw-dir-gutter, clamp(16px, 8px + 2vw, 40px)); max-width: 1140px; align-items: start; display: grid;}
.wpd-scope .wpd-over__over-label{grid-column: 1 / -1; grid-row: 1; letter-spacing: 0.08em; font-weight: 700;}
.wpd-scope .wpd-over__over-kop{grid-column: 1 / -1; grid-row: 2; font-size: clamp(26px, 18px + 2.4vw, 32px);}
.wpd-scope .wpd-over__over-media{grid-column: 1 / -1; grid-row: 3;}
.wpd-scope .wpd-over__over-media{grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 16px; row-gap: 12px; align-items: start; display: grid;}
.wpd-scope .wpd-over__over-video-poster{grid-column: 1 / -1; grid-row: 1; z-index: 1; --wpd-radius: 24px; position: relative;}
.wpd-scope .wpd-over__over-portret{grid-column: 1 / span 2; grid-row: 2; margin-block-start: -48px; z-index: 2; --wpd-radius: 24px; position: relative;}
.wpd-scope .wpd-over__over-video-link{grid-column: 3 / span 2; grid-row: 2; align-self: start; font-weight: 700;}
.wpd-scope .wpd-over__over-tekstkolom{grid-column: 1 / -1; grid-row: 4;}
.wpd-scope .wpd-over__over-tekstkolom{grid-template-columns: minmax(0, 1fr); row-gap: 20px; display: grid;}
.wpd-scope .wpd-over__over-intro{grid-row: 1;}
.wpd-scope .wpd-over__over-methode-kop{grid-row: 2; margin-block-start: 8px;}
.wpd-scope .wpd-over__over-tekst{grid-row: 3;}
.wpd-scope .wpd-over__over-cta{grid-row: 4; margin-block-start: 8px;}
.wpd-scope .wpd-kosten-cijfers__in{grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 16px; row-gap: 40px; padding-block: clamp(56px, 40px + 4vw, 96px); padding-inline: var(--bouw-dir-gutter); max-width: var(--bouw-dir-content); display: grid;}
.wpd-scope .wpd-kosten-cijfers__kosten{grid-column: 1 / -1; grid-row: 1;}
.wpd-scope .wpd-kosten-cijfers__kosten{grid-template-columns: minmax(0, 1fr); row-gap: 16px; display: grid;}
.wpd-scope .wpd-kosten-cijfers__kosten-kop{margin-block-end: 0px; font-size: clamp(28px, 24px + 1vw, 40px); max-width: none;}
.wpd-scope .wpd-kosten-cijfers__kosten-tekst{max-width: 36ch;}
.wpd-scope .wpd-kosten-cijfers__kosten-acties{padding-block: 8px 0px;}
.wpd-scope .wpd-realisaties__in{grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 16px; row-gap: 32px; padding-block: clamp(56px, 40px + 4vw, 112px); padding-inline: var(--bouw-dir-gutter, clamp(16px, 8px + 2vw, 40px)); max-width: 1140px; display: grid;}
.wpd-scope .wpd-realisaties__kop{grid-column: 1 / -1; grid-row: 1;}
.wpd-scope .wpd-realisaties__kielpark{grid-column: 1 / -1; grid-row: 2;}
.wpd-scope .wpd-realisaties__kielpark{grid-template-columns: minmax(0, 1fr); row-gap: 16px; display: grid;}
.wpd-scope .wpd-realisaties__kielpark-foto{margin-block-end: 8px;}
.wpd-scope .wpd-realisaties__kielpark-meer{letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-realisaties__overige{grid-column: 1 / -1; grid-row: 3; margin-block-start: 8px;}
.wpd-scope .wpd-realisaties__overige{grid-template-columns: minmax(0, 1fr); row-gap: 40px; display: grid;}
.wpd-scope .wpd-realisaties__elslopark{grid-template-columns: minmax(0, 1fr); grid-template-areas: "photo" "title" "text" "more"; row-gap: 14px; display: grid;}
.wpd-scope .wpd-realisaties__elslopark-foto{grid-area: photo;}
.wpd-scope .wpd-realisaties__elslopark-titel{grid-area: title;}
.wpd-scope .wpd-realisaties__elslopark-tekst{grid-area: text;}
.wpd-scope .wpd-realisaties__elslopark-meer{grid-area: more; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-realisaties__blanden{grid-template-columns: minmax(0, 1fr); grid-template-areas: "photo" "title" "text" "more"; row-gap: 14px; display: grid;}
.wpd-scope .wpd-realisaties__blanden-foto{grid-area: photo;}
.wpd-scope .wpd-realisaties__blanden-titel{grid-area: title;}
.wpd-scope .wpd-realisaties__blanden-tekst{grid-area: text;}
.wpd-scope .wpd-realisaties__blanden-meer{grid-area: more; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-realisaties__alle{grid-column: 1 / -1; grid-row: 4; margin-block-start: 8px;}
.wpd-scope .wpd-faq-nieuws__in{grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 16px; row-gap: 56px; padding-block: clamp(56px, 40px + 4vw, 96px); padding-inline: var(--bouw-dir-gutter); max-width: 1140px; align-items: start; display: grid;}
.wpd-scope .wpd-faq-nieuws__faq{grid-column: 1 / -1; grid-row: 1;}
.wpd-scope .wpd-faq-nieuws__faq{grid-template-columns: minmax(0, 1fr); row-gap: 20px; display: grid;}
.wpd-scope .wpd-faq-nieuws__faq-intro{max-width: 60ch; margin-block-end: 8px;}
.wpd-scope .wpd-faq-nieuws__faq-accordion{grid-template-columns: minmax(0, 1fr); row-gap: 12px; display: grid;}
.wpd-scope .wpd-faq-nieuws__faq-accordion-item{grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "title badge" "text text"; column-gap: 16px; row-gap: 12px; align-items: center; display: grid;}
.wpd-scope .wpd-faq-nieuws__faq-accordion-badge{font-size: 24px; font-weight: 700; justify-self: end;}
.wpd-scope .wpd-faq-nieuws__faq-accordion-text{max-width: 60ch;}
.wpd-scope .wpd-faq-nieuws__nieuws{grid-column: 1 / -1; grid-row: 2;}
.wpd-scope .wpd-faq-nieuws__nieuws{grid-template-columns: minmax(0, 1fr); row-gap: 16px; display: grid;}
.wpd-scope .wpd-faq-nieuws__nieuws-text{margin-block-end: 8px;}
.wpd-scope .wpd-faq-nieuws__nieuws-rows{grid-template-columns: minmax(0, 1fr); row-gap: 20px; display: grid;}
.wpd-scope .wpd-faq-nieuws__artikel-regelgeving{grid-template-columns: 96px minmax(0, 1fr); grid-template-areas: "thumb date" "thumb title" "thumb more"; column-gap: 16px; row-gap: 4px; padding-block: 16px 0 0; --wpd-rule: #F1D9CC; display: grid;}
.wpd-scope .wpd-faq-nieuws__thumb-regelgeving{grid-area: thumb; align-self: start;}
.wpd-scope .wpd-faq-nieuws__datum-regelgeving{grid-area: date;}
.wpd-scope .wpd-faq-nieuws__titel-regelgeving{grid-area: title;}
.wpd-scope .wpd-faq-nieuws__meer-regelgeving{grid-area: more; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-faq-nieuws__artikel-vinyl{grid-template-columns: 96px minmax(0, 1fr); grid-template-areas: "thumb date" "thumb title" "thumb more"; column-gap: 16px; row-gap: 4px; padding-block: 16px 0 0; --wpd-rule: #F1D9CC; display: grid;}
.wpd-scope .wpd-faq-nieuws__thumb-vinyl{grid-area: thumb; align-self: start;}
.wpd-scope .wpd-faq-nieuws__datum-vinyl{grid-area: date;}
.wpd-scope .wpd-faq-nieuws__titel-vinyl{grid-area: title;}
.wpd-scope .wpd-faq-nieuws__meer-vinyl{grid-area: more; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-faq-nieuws__artikel-prijs{grid-template-columns: 96px minmax(0, 1fr); grid-template-areas: "thumb date" "thumb title" "thumb more"; column-gap: 16px; row-gap: 4px; padding-block: 16px 0 0; --wpd-rule: #F1D9CC; display: grid;}
.wpd-scope .wpd-faq-nieuws__thumb-prijs{grid-area: thumb; align-self: start;}
.wpd-scope .wpd-faq-nieuws__datum-prijs{grid-area: date;}
.wpd-scope .wpd-faq-nieuws__titel-prijs{grid-area: title;}
.wpd-scope .wpd-faq-nieuws__meer-prijs{grid-area: more; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-team__in{grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 16px; row-gap: 24px; padding-block: clamp(48px, 32px + 4vw, 72px) clamp(48px, 32px + 4vw, 72px); padding-inline: var(--bouw-dir-gutter); max-width: var(--bouw-dir-content); align-items: start; display: grid;}
.wpd-scope .wpd-team__kop{grid-column: 1 / -1; grid-row: 2; z-index: 2; position: relative;}
.wpd-scope .wpd-team__kop{row-gap: 12px;}
.wpd-scope .wpd-team__titel{max-width: 14ch;}
.wpd-scope .wpd-team__tagline{max-width: 36ch;}
.wpd-scope .wpd-team__portretten{grid-column: 1 / -1; grid-row: 3; z-index: 3; position: relative;}
.wpd-scope .wpd-team__portretten{grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 16px; row-gap: 32px; align-items: start; display: grid;}
.wpd-scope .wpd-team__jochen{grid-column: 1 / span 2; grid-row: 1;}
.wpd-scope .wpd-team__jochen{row-gap: 10px;}
.wpd-scope .wpd-team__czernia{grid-column: 3 / span 2; grid-row: 1;}
.wpd-scope .wpd-team__czernia{row-gap: 10px;}
.wpd-scope .wpd-team__joeri{grid-column: 2 / span 2; grid-row: 2;}
.wpd-scope .wpd-team__joeri{row-gap: 10px;}
@media (min-width: 782px){
.wpd-scope .wpd-hero__in{grid-template-columns: repeat(12, minmax(0, 1fr)); grid-template-rows: auto auto; column-gap: 24px; row-gap: 0; padding-block: clamp(40px, 4vw, 64px) 0 0; padding-inline: clamp(16px, 8px + 2vw, 40px); max-width: 1140px; align-items: start;}
.wpd-scope .wpd-hero__belofte{grid-column: 1 / span 7; grid-row: 1; align-self: start; padding-block: 0 clamp(32px, 4vw, 56px);}
.wpd-scope .wpd-hero__belofte{grid-template-columns: minmax(0, 1fr); row-gap: 22px;}
.wpd-scope .wpd-hero__h1{font-size: min(clamp(35px, 22px + 3.2vw, 55px), 4.6vw); line-height: 1.2; letter-spacing: 0; max-width: 100%;}
.wpd-scope .wpd-hero__intro{max-width: 58ch;}
.wpd-scope .wpd-hero__checks{margin-block-end: 6px;}
.wpd-scope .wpd-hero__checks{grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; row-gap: 12px;}
.wpd-scope .wpd-hero__missie{justify-self: start;}
.wpd-scope .wpd-hero__offerte-kaart{grid-column: 8 / span 5; grid-row: 1; z-index: 2; align-self: end; padding: clamp(20px, 14px + 1.6vw, 36px); margin-block-end: -64px; position: relative;}
.wpd-scope .wpd-hero__offerte-kaart{grid-template-columns: minmax(0, 1fr); row-gap: 18px;}
.wpd-scope .wpd-hero__offerte-kop{text-align: left;}
.wpd-scope .wpd-klanten__in{grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; padding-block: 36px; padding-inline: var(--bouw-dir-gutter); max-width: var(--bouw-dir-content);}
.wpd-scope .wpd-klanten__logorij{grid-column: 1 / -1;}
.wpd-scope .wpd-klanten__logorij{grid-template-columns: repeat(5, minmax(0, 1fr)); column-gap: 24px; row-gap: 24px; align-items: center; justify-items: center;}
.wpd-scope .wpd-klanten__logo-infrabel{max-width: 130px; justify-self: center;}
.wpd-scope .wpd-klanten__logo-lanxess{max-width: 130px; justify-self: center;}
.wpd-scope .wpd-klanten__logo-shell{max-width: 130px; justify-self: center;}
.wpd-scope .wpd-klanten__logo-bayer{max-width: 130px; justify-self: center;}
.wpd-scope .wpd-klanten__logo-exxonmobil{max-width: 130px; justify-self: center;}
.wpd-scope .wpd-klanten__logo-bp{max-width: 130px; justify-self: center;}
.wpd-scope .wpd-klanten__logo-vopak{max-width: 130px; justify-self: center;}
.wpd-scope .wpd-klanten__logo-infrabel-tuc-rail{max-width: 130px; justify-self: center;}
.wpd-scope .wpd-klanten__logo-antwerpen{max-width: 130px; justify-self: center;}
.wpd-scope .wpd-klanten__logo-mortsel{max-width: 130px; justify-self: center;}
.wpd-scope .wpd-diensten__in{grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; row-gap: 24px; padding-block: clamp(72px, 48px + 4vw, 128px); max-width: var(--bouw-dir-content, 1140px); padding-inline: clamp(16px, 8px + 2vw, 40px); align-items: start;}
.wpd-scope .wpd-diensten__diensten-heading{grid-column: 6 / span 7; grid-row: 1; line-height: 1.15;}
.wpd-scope .wpd-diensten__diensten-intro{grid-column: 6 / span 7; grid-row: 2; max-width: 58ch;}
.wpd-scope .wpd-diensten__diensten-foto{grid-column: 1 / span 5; grid-row: 1 / span 3; --wpd-radius: 24px;}
.wpd-scope .wpd-diensten__diensten-routes{grid-column: 6 / span 7; grid-row: 3; margin-block-start: 24px;}
.wpd-scope .wpd-diensten__diensten-routes{grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: clamp(24px, 12px + 2vw, 48px); row-gap: 56px; align-items: start;}
.wpd-scope .wpd-diensten__diensten-routes-item{grid-template-areas: "title" "text" "extra"; grid-template-columns: minmax(0, 1fr); row-gap: 12px; align-items: start; --wpd-rule: transparent;}
.wpd-scope .wpd-diensten__diensten-routes-item-1{grid-column: 1; grid-row: 1;}
.wpd-scope .wpd-diensten__diensten-routes-item-2{grid-column: 2; grid-row: 1; margin-block-start: 80px;}
.wpd-scope .wpd-diensten__diensten-routes-item-3{grid-column: 1; grid-row: 2;}
.wpd-scope .wpd-diensten__diensten-routes-item-4{grid-column: 2; grid-row: 2; margin-block-start: 80px;}
.wpd-scope .wpd-diensten__diensten-routes-item-5{grid-column: 1; grid-row: 3;}
.wpd-scope .wpd-diensten__diensten-routes-title{line-height: 1.25;}
.wpd-scope .wpd-diensten__diensten-routes-text{font-size: var(--bouw-dir-t-body, 17px);}
.wpd-scope .wpd-diensten__lees-sanering{grid-area: extra; padding-block: 6px; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-diensten__lees-afvoer{grid-area: extra; padding-block: 6px; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-diensten__lees-premies{grid-area: extra; padding-block: 6px; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-diensten__lees-professionals{grid-area: extra; padding-block: 6px; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-diensten__particulieren-tekst{grid-area: text;}
.wpd-scope .wpd-diensten__lees-particulieren{grid-area: extra; padding-block: 6px; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-veiligheid__in{grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; row-gap: 24px; padding-block: clamp(72px, 48px + 4vw, 112px); padding-inline: var(--bouw-dir-gutter); max-width: var(--bouw-dir-content); align-items: start;}
.wpd-scope .wpd-veiligheid__busfoto{grid-column: 1 / span 6; grid-row: 1 / span 4; margin-block-start: calc(-1 * clamp(72px, 48px + 4vw, 112px) - 80px); z-index: 2; align-self: start; position: relative;}
.wpd-scope .wpd-veiligheid__busfoto{grid-template-columns: minmax(0, 1fr); row-gap: 0px;}
.wpd-scope .wpd-veiligheid__bus-beeld{grid-row: 1;}
.wpd-scope .wpd-veiligheid__bus-label{grid-row: 2; margin-block-start: -34px; margin-inline-start: -20px; justify-self: start; padding: 12px 24px; font-weight: 700; --wpd-rule: #FFFFFF; z-index: 3; position: relative;}
.wpd-scope .wpd-veiligheid__kicker{grid-column: 7 / span 6; grid-row: 1;}
.wpd-scope .wpd-veiligheid__titel{grid-column: 7 / span 6; grid-row: 2; font-size: var(--bouw-dir-t-display); line-height: 1.15;}
.wpd-scope .wpd-veiligheid__intro{grid-column: 7 / span 6; grid-row: 3; font-size: clamp(24px, 20px + 1vw, 28px); line-height: 1.45; max-width: 34ch;}
.wpd-scope .wpd-veiligheid__case-vlasbloempje{grid-column: 7 / span 3; grid-row: 4; margin-block-start: 8px;}
.wpd-scope .wpd-veiligheid__case-vlasbloempje{grid-template-columns: minmax(0, 1fr); row-gap: 12px;}
.wpd-scope .wpd-veiligheid__vlasbloempje-beeld{grid-column: 1; grid-row: 1;}
.wpd-scope .wpd-veiligheid__vlasbloempje-titel{grid-column: 1; grid-row: 2;}
.wpd-scope .wpd-veiligheid__vlasbloempje-link{grid-column: 1; grid-row: 3; font-weight: 700; letter-spacing: 0.04em;}
.wpd-scope .wpd-veiligheid__case-sint-clara{grid-column: 10 / span 3; grid-row: 4; margin-block-start: 48px;}
.wpd-scope .wpd-veiligheid__case-sint-clara{grid-template-columns: minmax(0, 1fr); row-gap: 12px;}
.wpd-scope .wpd-veiligheid__sint-clara-beeld{grid-column: 1; grid-row: 1;}
.wpd-scope .wpd-veiligheid__sint-clara-titel{grid-column: 1; grid-row: 2;}
.wpd-scope .wpd-veiligheid__sint-clara-link{grid-column: 1; grid-row: 3; font-weight: 700; letter-spacing: 0.04em;}
.wpd-scope .wpd-over__in{grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; row-gap: 24px; padding-block: clamp(72px, 48px + 4vw, 120px); max-width: 1140px; align-items: start;}
.wpd-scope .wpd-over__over-label{grid-column: 1 / span 8; grid-row: 1; letter-spacing: 0.08em; font-weight: 700;}
.wpd-scope .wpd-over__over-kop{grid-column: 1 / -1; grid-row: 2;}
.wpd-scope .wpd-over__over-media{grid-column: 7 / span 6; grid-row: 3; align-self: start;}
.wpd-scope .wpd-over__over-media{grid-template-columns: repeat(6, minmax(0, 1fr)); column-gap: 24px; row-gap: 16px; align-items: start;}
.wpd-scope .wpd-over__over-video-poster{grid-column: 2 / span 5; grid-row: 1; z-index: 1; margin-inline: 0 calc(-1 * var(--bouw-dir-gutter, clamp(16px, 8px + 2vw, 40px))); --wpd-radius: 24px; position: relative;}
.wpd-scope .wpd-over__over-portret{grid-column: 1 / span 3; grid-row: 2; margin-block-start: -96px; z-index: 2; --wpd-radius: 24px; position: relative;}
.wpd-scope .wpd-over__over-video-link{grid-column: 4 / span 3; grid-row: 2; align-self: start; font-weight: 700;}
.wpd-scope .wpd-over__over-tekstkolom{grid-column: 1 / span 6; grid-row: 3;}
.wpd-scope .wpd-over__over-tekstkolom{grid-template-columns: repeat(6, minmax(0, 1fr)); column-gap: 24px; row-gap: 24px;}
.wpd-scope .wpd-over__over-intro{grid-column: 1 / span 6; grid-row: 1;}
.wpd-scope .wpd-over__over-methode-kop{grid-column: 2 / span 5; grid-row: 2; margin-block-start: 16px;}
.wpd-scope .wpd-over__over-tekst{grid-column: 2 / span 5; grid-row: 3; max-width: 62ch;}
.wpd-scope .wpd-over__over-cta{grid-column: 2 / span 5; grid-row: 4; margin-block-start: 16px;}
.wpd-scope .wpd-kosten-cijfers__in{grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; row-gap: 48px; align-items: start; padding-block: clamp(72px, 48px + 4vw, 112px) clamp(120px, 72px + 5vw, 160px);}
.wpd-scope .wpd-kosten-cijfers__kosten{grid-column: 1 / span 8; grid-row: 1; align-self: start;}
.wpd-scope .wpd-kosten-cijfers__kosten{grid-template-columns: minmax(0, 1fr); row-gap: 20px;}
.wpd-scope .wpd-kosten-cijfers__kosten-kop{margin-block-end: 4px; font-size: clamp(28px, 24px + 1vw, 40px); max-width: none;}
.wpd-scope .wpd-kosten-cijfers__kosten-tekst{max-width: 40ch; margin-block-end: 12px;}
.wpd-scope .wpd-kosten-cijfers__kosten-acties{padding-block: 4px 0px;}
.wpd-scope .wpd-realisaties__in{grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; row-gap: 48px; padding-block: clamp(56px, 40px + 4vw, 112px); padding-inline: var(--bouw-dir-gutter, clamp(16px, 8px + 2vw, 40px)); max-width: 1140px; align-items: start;}
.wpd-scope .wpd-realisaties__kop{grid-column: 1 / span 7; grid-row: 1; max-width: 18ch;}
.wpd-scope .wpd-realisaties__kielpark{grid-column: 1 / span 5; grid-row: 2; align-self: start;}
.wpd-scope .wpd-realisaties__kielpark{grid-template-columns: minmax(0, 1fr); row-gap: 20px;}
.wpd-scope .wpd-realisaties__kielpark-foto{margin-block-end: 8px;}
.wpd-scope .wpd-realisaties__kielpark-meer{letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-realisaties__overige{grid-column: 6 / span 7; grid-row: 2; margin-block-start: clamp(64px, 24px + 6vw, 128px); align-self: start;}
.wpd-scope .wpd-realisaties__overige{grid-template-columns: minmax(0, 1fr); row-gap: 48px;}
.wpd-scope .wpd-realisaties__elslopark{grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); grid-template-areas: "photo title" "photo text" "photo more"; grid-template-rows: auto auto 1fr; column-gap: 24px; row-gap: 12px; align-items: start;}
.wpd-scope .wpd-realisaties__elslopark-foto{grid-area: photo;}
.wpd-scope .wpd-realisaties__elslopark-titel{grid-area: title;}
.wpd-scope .wpd-realisaties__elslopark-tekst{grid-area: text;}
.wpd-scope .wpd-realisaties__elslopark-meer{grid-area: more; letter-spacing: 0.06em; font-weight: 700; align-self: start;}
.wpd-scope .wpd-realisaties__blanden{grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); grid-template-areas: "photo title" "photo text" "photo more"; grid-template-rows: auto auto 1fr; column-gap: 24px; row-gap: 12px; align-items: start;}
.wpd-scope .wpd-realisaties__blanden-foto{grid-area: photo;}
.wpd-scope .wpd-realisaties__blanden-titel{grid-area: title;}
.wpd-scope .wpd-realisaties__blanden-tekst{grid-area: text;}
.wpd-scope .wpd-realisaties__blanden-meer{grid-area: more; letter-spacing: 0.06em; font-weight: 700; align-self: start;}
.wpd-scope .wpd-realisaties__alle{grid-column: 7 / -1; grid-row: 3; justify-self: end; margin-block-start: clamp(64px, 24px + 6vw, 128px);}
.wpd-scope .wpd-faq-nieuws__in{grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; row-gap: 0px; padding-block: clamp(72px, 48px + 4vw, 120px); padding-inline: var(--bouw-dir-gutter); max-width: 1140px; align-items: start;}
.wpd-scope .wpd-faq-nieuws__faq{grid-column: 1 / span 7; grid-row: 1;}
.wpd-scope .wpd-faq-nieuws__faq{grid-template-columns: minmax(0, 1fr); row-gap: 24px;}
.wpd-scope .wpd-faq-nieuws__faq-intro{max-width: 58ch; margin-block-end: 16px;}
.wpd-scope .wpd-faq-nieuws__faq-accordion{grid-template-columns: minmax(0, 1fr); row-gap: 14px;}
.wpd-scope .wpd-faq-nieuws__faq-accordion-item{grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "title badge" "text text"; column-gap: 24px; row-gap: 14px; align-items: center;}
.wpd-scope .wpd-faq-nieuws__faq-accordion-badge{font-size: 28px; font-weight: 700; justify-self: end;}
.wpd-scope .wpd-faq-nieuws__faq-accordion-text{max-width: 62ch;}
.wpd-scope .wpd-faq-nieuws__nieuws{grid-column: 8 / span 5; grid-row: 1; margin-block-start: 96px;}
.wpd-scope .wpd-faq-nieuws__nieuws{grid-template-columns: minmax(0, 1fr); row-gap: 20px;}
.wpd-scope .wpd-faq-nieuws__nieuws-text{margin-block-end: 12px;}
.wpd-scope .wpd-faq-nieuws__nieuws-rows{grid-template-columns: minmax(0, 1fr); row-gap: 24px;}
.wpd-scope .wpd-faq-nieuws__artikel-regelgeving{grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); grid-template-areas: "thumb date" "thumb title" "thumb more"; column-gap: 20px; row-gap: 6px; padding-block: 20px 0 0; --wpd-rule: #F1D9CC;}
.wpd-scope .wpd-faq-nieuws__thumb-regelgeving{grid-area: thumb; align-self: start;}
.wpd-scope .wpd-faq-nieuws__datum-regelgeving{grid-area: date;}
.wpd-scope .wpd-faq-nieuws__titel-regelgeving{grid-area: title;}
.wpd-scope .wpd-faq-nieuws__meer-regelgeving{grid-area: more; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-faq-nieuws__artikel-vinyl{grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); grid-template-areas: "thumb date" "thumb title" "thumb more"; column-gap: 20px; row-gap: 6px; padding-block: 20px 0 0; --wpd-rule: #F1D9CC;}
.wpd-scope .wpd-faq-nieuws__thumb-vinyl{grid-area: thumb; align-self: start;}
.wpd-scope .wpd-faq-nieuws__datum-vinyl{grid-area: date;}
.wpd-scope .wpd-faq-nieuws__titel-vinyl{grid-area: title;}
.wpd-scope .wpd-faq-nieuws__meer-vinyl{grid-area: more; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-faq-nieuws__artikel-prijs{grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); grid-template-areas: "thumb date" "thumb title" "thumb more"; column-gap: 20px; row-gap: 6px; padding-block: 20px 0 0; --wpd-rule: #F1D9CC;}
.wpd-scope .wpd-faq-nieuws__thumb-prijs{grid-area: thumb; align-self: start;}
.wpd-scope .wpd-faq-nieuws__datum-prijs{grid-area: date;}
.wpd-scope .wpd-faq-nieuws__titel-prijs{grid-area: title;}
.wpd-scope .wpd-faq-nieuws__meer-prijs{grid-area: more; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-team__in{grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; row-gap: 32px; padding-block: clamp(64px, 40px + 4vw, 112px) 0; align-items: start;}
.wpd-scope .wpd-team__kop{grid-column: 1 / span 6; grid-row: 1; align-self: center; z-index: 2; position: relative;}
.wpd-scope .wpd-team__kop{row-gap: 16px;}
.wpd-scope .wpd-team__titel{max-width: 14ch;}
.wpd-scope .wpd-team__tagline{max-width: 38ch;}
.wpd-scope .wpd-team__portretten{grid-column: 1 / -1; grid-row: 2; z-index: 3; margin-block-end: calc(-1 * clamp(96px, 60px + 6vw, 160px)); position: relative;}
.wpd-scope .wpd-team__portretten{grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 24px; align-items: start;}
.wpd-scope .wpd-team__jochen{grid-column: 1; grid-row: 1;}
.wpd-scope .wpd-team__jochen{row-gap: 12px;}
.wpd-scope .wpd-team__czernia{grid-column: 2; grid-row: 1; margin-block-start: clamp(48px, 24px + 4vw, 96px);}
.wpd-scope .wpd-team__czernia{row-gap: 12px;}
.wpd-scope .wpd-team__joeri{grid-column: 3; grid-row: 1;}
.wpd-scope .wpd-team__joeri{row-gap: 12px;}
}
@media (min-width: 1200px){
.wpd-scope .wpd-klanten__in{grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; padding-block: 40px; padding-inline: var(--bouw-dir-gutter); max-width: var(--bouw-dir-content);}
.wpd-scope .wpd-klanten__logorij{grid-column: 1 / span 9;}
.wpd-scope .wpd-klanten__logorij{grid-template-columns: repeat(10, minmax(0, 1fr)); column-gap: 16px; row-gap: 0px; align-items: center; justify-items: center;}
.wpd-scope .wpd-klanten__logo-infrabel{max-width: 100%; justify-self: center;}
.wpd-scope .wpd-klanten__logo-lanxess{max-width: 100%; justify-self: center;}
.wpd-scope .wpd-klanten__logo-shell{max-width: 100%; justify-self: center;}
.wpd-scope .wpd-klanten__logo-bayer{max-width: 100%; justify-self: center;}
.wpd-scope .wpd-klanten__logo-exxonmobil{max-width: 100%; justify-self: center;}
.wpd-scope .wpd-klanten__logo-bp{max-width: 100%; justify-self: center;}
.wpd-scope .wpd-klanten__logo-vopak{max-width: 100%; justify-self: center;}
.wpd-scope .wpd-klanten__logo-infrabel-tuc-rail{max-width: 100%; justify-self: center;}
.wpd-scope .wpd-klanten__logo-antwerpen{max-width: 100%; justify-self: center;}
.wpd-scope .wpd-klanten__logo-mortsel{max-width: 100%; justify-self: center;}
.wpd-scope .wpd-diensten__in{grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; row-gap: 28px; padding-block: 128px; max-width: var(--bouw-dir-content, 1140px); padding-inline: 40px; align-items: start;}
.wpd-scope .wpd-diensten__diensten-heading{grid-column: 6 / span 7; grid-row: 1; line-height: 1.15;}
.wpd-scope .wpd-diensten__diensten-intro{grid-column: 6 / span 7; grid-row: 2; max-width: 58ch;}
.wpd-scope .wpd-diensten__diensten-foto{grid-column: 1 / span 4; grid-row: 1 / span 3; --wpd-radius: 24px;}
.wpd-scope .wpd-diensten__diensten-routes{grid-column: 6 / span 7; grid-row: 3; margin-block-start: 32px;}
.wpd-scope .wpd-diensten__diensten-routes{grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 48px; row-gap: 64px; align-items: start;}
.wpd-scope .wpd-veiligheid__in{grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 32px; row-gap: 28px; padding-block: 112px; padding-inline: var(--bouw-dir-gutter); max-width: var(--bouw-dir-content); align-items: start;}
.wpd-scope .wpd-veiligheid__busfoto{grid-column: 1 / span 6; grid-row: 1 / span 4; margin-block-start: -192px; z-index: 2; align-self: start; position: relative;}
.wpd-scope .wpd-kosten-cijfers__in{grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; row-gap: 0px; align-items: start; padding-block: 112px 160px;}
.wpd-scope .wpd-kosten-cijfers__kosten{grid-column: 1 / span 5; grid-row: 1; align-self: start; padding-block: 8px 0px;}
.wpd-scope .wpd-kosten-cijfers__kosten{grid-template-columns: minmax(0, 1fr); row-gap: 20px;}
.wpd-scope .wpd-kosten-cijfers__kosten-kop{margin-block-end: 4px; font-size: clamp(28px, 24px + 1vw, 40px); max-width: none;}
.wpd-scope .wpd-kosten-cijfers__kosten-tekst{max-width: 34ch; margin-block-end: 12px;}
.wpd-scope .wpd-kosten-cijfers__kosten-acties{padding-block: 4px 0px;}
.wpd-scope .wpd-faq-nieuws__in{grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; row-gap: 0px; padding-block: 120px; padding-inline: var(--bouw-dir-gutter); max-width: 1140px; align-items: start;}
.wpd-scope .wpd-faq-nieuws__faq{grid-column: 1 / span 7; grid-row: 1;}
.wpd-scope .wpd-faq-nieuws__faq{grid-template-columns: minmax(0, 1fr); row-gap: 24px;}
.wpd-scope .wpd-faq-nieuws__faq-intro{max-width: 58ch; margin-block-end: 16px;}
.wpd-scope .wpd-faq-nieuws__faq-accordion{grid-template-columns: minmax(0, 1fr); row-gap: 14px;}
.wpd-scope .wpd-faq-nieuws__faq-accordion-item{grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "title badge" "text text"; column-gap: 24px; row-gap: 14px; align-items: center;}
.wpd-scope .wpd-faq-nieuws__faq-accordion-badge{font-size: 28px; font-weight: 700; justify-self: end;}
.wpd-scope .wpd-faq-nieuws__faq-accordion-text{max-width: 62ch;}
.wpd-scope .wpd-faq-nieuws__nieuws{grid-column: 8 / span 5; grid-row: 1; margin-block-start: 96px;}
.wpd-scope .wpd-faq-nieuws__nieuws{grid-template-columns: minmax(0, 1fr); row-gap: 20px;}
.wpd-scope .wpd-faq-nieuws__nieuws-text{margin-block-end: 12px;}
.wpd-scope .wpd-faq-nieuws__nieuws-rows{grid-template-columns: minmax(0, 1fr); row-gap: 24px;}
.wpd-scope .wpd-faq-nieuws__artikel-regelgeving{grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); grid-template-areas: "thumb date" "thumb title" "thumb more"; column-gap: 24px; row-gap: 6px; padding-block: 20px 0 0; --wpd-rule: #F1D9CC;}
.wpd-scope .wpd-faq-nieuws__thumb-regelgeving{grid-area: thumb; align-self: start;}
.wpd-scope .wpd-faq-nieuws__datum-regelgeving{grid-area: date;}
.wpd-scope .wpd-faq-nieuws__titel-regelgeving{grid-area: title;}
.wpd-scope .wpd-faq-nieuws__meer-regelgeving{grid-area: more; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-faq-nieuws__artikel-vinyl{grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); grid-template-areas: "thumb date" "thumb title" "thumb more"; column-gap: 24px; row-gap: 6px; padding-block: 20px 0 0; --wpd-rule: #F1D9CC;}
.wpd-scope .wpd-faq-nieuws__thumb-vinyl{grid-area: thumb; align-self: start;}
.wpd-scope .wpd-faq-nieuws__datum-vinyl{grid-area: date;}
.wpd-scope .wpd-faq-nieuws__titel-vinyl{grid-area: title;}
.wpd-scope .wpd-faq-nieuws__meer-vinyl{grid-area: more; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-faq-nieuws__artikel-prijs{grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); grid-template-areas: "thumb date" "thumb title" "thumb more"; column-gap: 24px; row-gap: 6px; padding-block: 20px 0 0; --wpd-rule: #F1D9CC;}
.wpd-scope .wpd-faq-nieuws__thumb-prijs{grid-area: thumb; align-self: start;}
.wpd-scope .wpd-faq-nieuws__datum-prijs{grid-area: date;}
.wpd-scope .wpd-faq-nieuws__titel-prijs{grid-area: title;}
.wpd-scope .wpd-faq-nieuws__meer-prijs{grid-area: more; letter-spacing: 0.06em; font-weight: 700;}
.wpd-scope .wpd-team__in{grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; row-gap: 40px; padding-block: 112px 0; align-items: start;}
.wpd-scope .wpd-team__kop{grid-column: 1 / span 5; grid-row: 1; align-self: center; z-index: 2; position: relative;}
.wpd-scope .wpd-team__portretten{grid-column: 2 / span 10; grid-row: 2; z-index: 3; margin-block-end: -160px; position: relative;}
.wpd-scope .wpd-team__portretten{grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 40px; align-items: start;}
}
html, body{overflow-x:clip}
*{hyphens:manual!important;-webkit-hyphens:manual!important}
h1, h2, h3{overflow-wrap:normal!important;word-break:normal!important}
.wp-block-navigation__responsive-container-open, .wp-block-navigation__responsive-container-close{display:none!important}
.wp-block-navigation__responsive-container{display:block!important;position:static!important;background:none!important;padding:0!important;opacity:1!important;visibility:visible!important;width:auto!important}
.wp-block-navigation__responsive-container-content, .wp-block-navigation__responsive-dialog, .wp-block-navigation__responsive-close{padding:0!important;margin:0!important;display:block!important}
nav.wpd-header__main-nav ul.wp-block-navigation__container{display:flex!important;flex-wrap:wrap;gap:4px 16px;list-style:none;margin:0;padding:0}
nav.wpd-header__main-nav .wp-block-navigation-item__content{white-space:nowrap}
@media (min-width:1101px){
nav.wpd-header__main-nav{flex:1 1 auto}
nav.wpd-header__main-nav ul.wp-block-navigation__container{justify-content:flex-end}
}
@media (max-width:1100px){
nav.wpd-header__main-nav{order:9;flex:0 0 100%;overflow-x:auto}
nav.wpd-header__main-nav ul.wp-block-navigation__container{flex-wrap:nowrap;padding-bottom:8px}
}
.watson-surface--brand{background:linear-gradient(180deg,#EC643D 0%,#F8AF3A 100%)!important}
.watson-surface--brand :is(p,li,label,.watson-t--body,.watson-t--small){color:#1b1b1b}
.watson-surface--brand p a, .watson-surface--brand li a{color:#1b1b1b;font-weight:800}
.wpd-veiligheid .wp-block-button__link, .wpd-veiligheid .watson-btn--secondary a{background:#fff!important;color:#EC643D!important;border:0!important;border-radius:999px!important;font-weight:800}
.wpd-hero{background:linear-gradient(rgba(255,255,255,.84),rgba(255,255,255,.84)),url(../img/hero-dakpannen.webp) 50% 85%/cover no-repeat!important}
.wpd-hero__h1{white-space:nowrap}
@media (max-width:781px){
h1.wpd-hero__h1{font-size:clamp(25px,7.6vw,40px)!important;white-space:nowrap}
}
.wpd-hero__offerte-kaart{background:linear-gradient(180deg,#F8AF3A 0%,#EC643D 100%)!important;border-radius:24px!important;color:#1b1b1b}
.wpd-hero__offerte-kaart :is(h2,h3){color:#fff!important}
.wpd-hero__offerte-kaart :is(input,textarea){background:transparent!important;border:1.5px solid #fff!important;border-radius:6px!important;padding:11px 14px!important;color:#1b1b1b!important}
.wp-block-paragraph a{color:#EC643D;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.wpd-diensten h3{color:#EC643D!important}
.wpd-diensten a, .wpd-realisaties a, .wpd-faq-nieuws a[class*=meer]{text-transform:uppercase;letter-spacing:.02em;font-weight:800;color:#EC643D}
.wpd-diensten p a{text-transform:none;letter-spacing:0}
.wpd-veiligheid__bus-label{color:#fff!important;background:transparent!important;border:1px solid #fff!important}
.wpd-veiligheid__bus-label *{color:#fff!important}
.wpd-faq-nieuws__faq-accordion p, .wpd-faq-nieuws__faq-accordion-text{color:#444!important}
.wpd-faq-nieuws__faq-accordion-title{color:#333!important}
.wpd-faq-nieuws__faq-accordion-item-1 .wpd-faq-nieuws__faq-accordion-title{color:#EC643D!important}
.wpd-faq-nieuws__faq-accordion-badge{background:#F8AF3A!important;color:#fff!important;border-radius:0!important}
.wpd-faq-nieuws__faq-accordion-item-1 .wpd-faq-nieuws__faq-accordion-badge{background:#EC643D!important}
.wpd-team{padding-bottom:clamp(56px,8vw,120px)!important}
.wpd-team :is(h2,h3,p){position:relative;z-index:2}
.wpd-team__portretten{margin-bottom:0!important}
.wpd-team__jochen-tel a, .wpd-team__czernia-tel a, .wpd-team__joeri-tel a, .wpd-team a[href^="tel"]{display:inline-block;background:#EC643D;color:#fff!important;border-radius:999px;padding:8px 18px;font-weight:800;text-decoration:none!important}
.wpd-team__jochen-foto img, .wpd-team__czernia-foto img, .wpd-team__joeri-foto img{border-radius:24px}
img{border-radius:24px}
.wpd-klanten img{border-radius:0}
.video-embed{position:relative;aspect-ratio:16/9;width:100%;border-radius:24px;overflow:hidden;background:#000}
.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.wpd-hero__h1 mark:first-child{display:block}
@media (min-width:1101px){
nav.wpd-header__main-nav{flex:0 1 auto!important}
}
.wpd-klanten__logorij{display:flex!important;flex-wrap:wrap;gap:14px 30px;align-items:center;justify-content:space-between;flex-wrap:nowrap!important}
.wpd-klanten__logorij>*{width:auto!important;flex:0 0 auto;grid-area:auto!important;margin:0!important}
.wpd-klanten img{height:34px!important;width:auto!important;max-width:105px;aspect-ratio:auto!important;object-fit:contain}
.wpd-diensten .wp-block-button__link, .wpd-realisaties .wp-block-button__link{background:none!important;border:0!important;border-bottom:2px solid #EC643D!important;border-radius:0!important;padding:2px 0!important;text-align:left;color:#EC643D!important;display:inline-block;width:auto}
.wpd-diensten .wp-block-buttons{justify-content:flex-start}
.wpd-realisaties .wp-block-button.watson-btn--primary .wp-block-button__link{background:#EC643D!important;color:#fff!important;border:0!important;border-radius:999px!important;padding:12px 24px!important}
.wpd-kosten-cijfers .watson-stat__value{font-size:clamp(30px,3vw,42px)!important;line-height:1.05!important;white-space:nowrap}
.wpd-kosten-cijfers .watson-stat__label{margin-top:8px!important;position:static!important}
.wpd-kosten-cijfers .watson-box--outline{padding:22px 24px!important;box-sizing:border-box;border-radius:30px!important}
.video-embed{cursor:pointer}
.video-embed img{width:100%;height:100%;object-fit:cover;display:block}
.video-embed .play{position:absolute;inset:0;margin:auto;width:84px;height:84px;border-radius:50%;background:#fff;color:#EC643D;display:grid;place-items:center;border:0;font-size:34px;box-shadow:0 10px 30px rgba(0,0,0,.25)}
@media (max-width:781px){
.wpd-klanten__logorij{flex-wrap:wrap!important;justify-content:center}
.wpd-klanten img{height:32px!important}
}
.wpd-klanten__logorij{grid-column:1/-1!important;width:100%!important;max-width:none!important}
@media (min-width:1101px){
nav.wpd-header__main-nav{flex:1 1 0!important;min-width:0}
nav.wpd-header__main-nav ul.wp-block-navigation__container{flex-wrap:nowrap!important;justify-content:flex-end;gap:0 14px!important;font-size:15px}
}
.wpd-hero__offerte-kaart{margin-bottom:0!important}
.wpd-hero__belofte{padding-top:44px!important}
.wpd-hero{padding-block:36px 0!important}
.wpd-faq-nieuws__faq-accordion-item-1{background:none!important}
.wpd-realisaties :is(h3,h3 a,p a){text-transform:none!important;letter-spacing:0!important}
.wpd-faq-nieuws__nieuws-rows a{color:#EC643D!important;text-transform:uppercase;font-weight:800;border-color:#EC643D!important}
.wpd-faq-nieuws__nieuws-rows :is(.wp-block-button__link){background:none!important;border:0!important;border-bottom:2px solid #EC643D!important;border-radius:0!important;padding:2px 0!important}
.wpd-veiligheid p a{background:none!important;color:#fff!important}
.wpd-veiligheid__vlasbloempje-link a, .wpd-veiligheid__sint-clara-link a, .wpd-veiligheid__vlasbloempje-link, .wpd-veiligheid__sint-clara-link{background:none!important;color:#fff!important}
.wpd-team__tagline{max-width:34ch}
.wpd-team__titel, .wpd-team__kop{max-width:11ch}
.wpd-team__portretten{margin-top:20px}
.wpd-team__jochen-naam, .wpd-team__czernia-naam, .wpd-team__joeri-naam{margin-top:12px!important}
@media (max-width:781px){
.wpd-team__tagline, .wpd-team__titel, .wpd-team__kop{max-width:none!important}
}
:root{color-scheme:only light;--o:#EC643D;--a:#F8AF3A;--ot:#C23C12;--ink:#1b1b1b;--txt:#3d3d3d;--peach:#FDEFE8;--dark:#333;--r:24px;--w:1140px;--g:clamp(16px,4vw,40px)}
*, *::before, *::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px;overflow-x:clip}
body{margin:0;padding:0;font-family:"Sofia Sans",system-ui,sans-serif;font-size:17px;line-height:1.6;color:var(--txt);background:#fff;overflow-x:clip}
img{max-width:100%;height:auto;display:block}
h1, h2, h3, h4{font-family:"Noto Sans",system-ui,sans-serif;color:var(--dark);line-height:1.15;font-weight:800;margin:0;hyphens:manual;overflow-wrap:normal;word-break:normal}
a{color:var(--ot)}
.sh-wrap{width:min(1140px,100% - 2*var(--g));margin-inline:auto}
.sh-skip{position:absolute;left:-999px;top:0;background:#fff;color:var(--ink);padding:10px 14px;z-index:100}
.sh-skip:focus{left:8px;top:8px}
.sh-hp{position:absolute!important;left:-9999px!important;height:0;width:0;opacity:0}
.sh-header{position:sticky;top:0;z-index:50;background:#fff;box-shadow:0 1px 0 rgba(0,0,0,.08)}
.sh-top{background:var(--o);color:var(--ink);font-size:14px;font-weight:700}
.sh-top a{color:var(--ink);text-decoration:none}
.sh-top a:hover{text-decoration:underline}
.sh-top__in{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:38px}
.sh-top ul{list-style:none;margin:0;padding:0;display:flex;gap:6px 22px;align-items:center}
.sh-inline{gap:18px!important}
.sh-lang{gap:8px!important}
.sh-lang span{background:var(--ink);color:#fff;border-radius:99px;padding:0 9px}
.sh-main__in{display:flex;align-items:center;gap:18px 26px;min-height:76px}
.sh-logo img{height:50px;width:auto;border-radius:0}
.sh-nav{flex:1 1 auto;min-width:0}
.sh-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px 22px;justify-content:flex-end;flex-wrap:nowrap}
.sh-nav a{color:var(--dark);font-weight:700;text-decoration:none;font-size:16px;white-space:nowrap;padding:6px 0;border-bottom:3px solid transparent}
.sh-nav a:hover, .sh-nav a.is-current{border-color:var(--o)}
.sh-mnav{display:none}
.sh-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:12px 24px;font-weight:800;font-size:16px;text-decoration:none;border:0;cursor:pointer;font-family:inherit;line-height:1.2;white-space:nowrap}
.sh-btn--orange{background:var(--o);color:var(--ink)}
.sh-btn--orange:hover{background:#f07a58}
.sh-btn--white{background:#fff;color:#a8300c}
.sh-btn--white:hover{background:var(--peach)}
.sh-btn--dark{background:var(--ink);color:#fff}
.sh-btn--dark:hover{background:#000}
.sh-btn--ghost{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 2px var(--ink)}
.sh-btn:focus-visible, a:focus-visible, summary:focus-visible, input:focus-visible, textarea:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.sh-band{padding-block:clamp(48px,7vw,96px)}
.sh-eyebrow{font:800 14px/1.3 "Sofia Sans",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--ot);margin:0 0 10px}
.sh-hero{position:relative;background:linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)),url(../img/hero-dakpannen.webp) 50% 80%/cover no-repeat;padding-block:clamp(36px,5vw,72px) clamp(28px,4vw,48px)}
.sh-hero h1{font-size:clamp(30px,4.2vw,50px);max-width:24ch}
.sh-hero h1 .a1{color:var(--a)}
.sh-hero h1 .a2{color:var(--o)}
.sh-hero__lead{font-size:clamp(17px,1.6vw,20px);max-width:62ch;margin:18px 0 0;color:var(--ink)}
.sh-hero__cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.sh-trust{background:#fff;border-bottom:1px solid #eee;padding-block:18px}
.sh-trust__in{display:flex;flex-wrap:wrap;gap:14px 30px;align-items:center;justify-content:space-between}
.sh-trust img{height:30px;width:auto;max-width:100px;object-fit:contain;border-radius:0;filter:grayscale(1);opacity:.85}
.sh-page{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(28px,4vw,64px);align-items:start;padding-block:clamp(40px,6vw,80px)}
.sh-article{min-width:0}
.sh-article>*+*{margin-top:1.1em}
.sh-article h2{font-size:clamp(26px,3.2vw,38px);margin-top:1.8em}
.sh-article h2:first-child{margin-top:0}
.sh-article h3{font-size:clamp(20px,2.2vw,26px);color:var(--ot);margin-top:1.5em}
.sh-article h4{font-size:19px;margin-top:1.3em}
.sh-article p, .sh-article li{font-size:17.5px}
.sh-article ul, .sh-article ol{padding-left:0;list-style:none}
.sh-article ul li{position:relative;padding-left:30px;margin:.45em 0}
.sh-article ul li::before{content:"";position:absolute;left:2px;top:.45em;width:16px;height:16px;border-radius:50%;background:var(--o) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}
.sh-article ol{counter-reset:n}
.sh-article ol li{counter-increment:n;padding-left:44px;position:relative}
.sh-article ol li::before{content:counter(n);position:absolute;left:0;top:0;width:30px;height:30px;border-radius:50%;background:var(--o);color:var(--ink);font:800 15px/30px "Noto Sans",sans-serif;text-align:center}
.sh-article a{font-weight:700}
.sh-sec{display:flow-root}
.sh-fig{margin:0 0 1em;width:min(42%,420px)}
.sh-fig img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r)}
.sh-fig--r{float:right;margin-left:clamp(20px,3vw,40px)}
.sh-fig--l{float:left;margin-right:clamp(20px,3vw,40px)}
.sh-fig--tall img{aspect-ratio:3/4}
.sh-gal{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:clamp(20px,3vw,32px) 0}
.sh-gal img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r)}
.sh-aside{position:sticky;top:130px;display:grid;gap:18px}
.sh-card{background:linear-gradient(180deg,var(--a),var(--o));border-radius:var(--r);padding:24px;color:var(--ink)}
.sh-card h2{font-size:25px;color:#fff;margin-bottom:12px;text-shadow:0 1px 2px rgba(0,0,0,.18)}
.sh-person{display:flex;gap:14px;align-items:center;background:var(--peach);border-radius:var(--r);padding:14px}
.sh-person img{width:72px;height:90px;object-fit:cover;object-position:top;border-radius:16px;flex:none}
.sh-person p{margin:0;line-height:1.35}
.sh-person strong{display:block;color:var(--dark)}
.sh-person a{font-weight:800}
.sh-form{display:grid;gap:14px}
.sh-field label{display:block;font-weight:800;font-size:14px;color:var(--ink);margin-bottom:5px}
.sh-field input[type=text], .sh-field input[type=email], .sh-field input[type=tel], .sh-field textarea{width:100%;font:inherit;font-size:16px;color:var(--ink);background:transparent;border:1.5px solid #fff;border-radius:6px;padding:11px 14px}
.sh-field input[type=text]:focus, .sh-field input[type=email]:focus, .sh-field input[type=tel]:focus, .sh-field textarea:focus{background:rgba(255,255,255,.3)}
.sh-field input[type=file]{width:100%;font:inherit;font-size:14px;color:var(--ink);background:rgba(255,255,255,.55);border:2px dashed rgba(27,27,27,.55);border-radius:12px;padding:12px}
.sh-help{font-size:13px;line-height:1.45;margin:6px 0 0;color:var(--ink)}
.sh-upload__list{font-size:13px;margin:4px 0 0;color:var(--ink);font-weight:700}
.sh-form__msg{background:#fff;color:var(--ink);padding:10px 14px;border-radius:10px;font-weight:700;margin:0}
.sh-form .sh-btn{justify-content:center;width:100%}
.sh-form .sh-btn--dark{padding-block:15px;font-size:17px}
.sh-offerte{background:linear-gradient(180deg,var(--a),var(--o))}
.sh-offerte__in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,5vw,72px);align-items:center}
.sh-offerte__foto{margin:0}
.sh-offerte__foto img{width:100%;aspect-ratio:4/5;max-height:620px;object-fit:cover;object-position:top;border-radius:var(--r)}
.sh-offerte h2{font-size:clamp(30px,4vw,48px);color:var(--ink);margin-bottom:10px}
.sh-offerte h2 span{color:#fff}
.sh-offerte__sub{margin:0 0 20px;color:var(--ink);font-weight:700}
.sh-offerte__sub a{color:var(--ink)}
.sh-footer{background:#fff;border-top:1px solid #eee}
.sh-footer__in{display:grid;grid-template-columns:1.4fr 1fr 1.2fr;gap:48px;padding-block:56px 40px}
.sh-footer p{margin:0 0 10px}
.sh-footer__brand p{max-width:30ch}
.sh-flist, .sh-social{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:15.5px}
.sh-social{display:flex;gap:16px;margin-top:14px}
.sh-footer, .sh-footer p, .sh-footer li{color:var(--ink)}
.sh-footer a{color:var(--ink);font-weight:600}
.sh-footer a:hover{color:var(--ot)}
.sh-footer__bar{background:var(--o);color:var(--ink);font-size:14px;font-weight:700;padding:14px 0}
.sh-sticky{display:none}
details.sh-faq{border-top:1px solid #e6dcd6;padding:0}
details.sh-faq:last-of-type{border-bottom:1px solid #e6dcd6}
details.sh-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 4px;font:800 18px/1.3 "Noto Sans",sans-serif;color:var(--dark)}
details.sh-faq summary::-webkit-details-marker{display:none}
details.sh-faq summary::after{content:"+";flex:none;width:32px;height:32px;display:grid;place-items:center;background:var(--a);color:var(--ink);font-size:22px;line-height:1}
details.sh-faq[open] summary{color:var(--ot)}
details.sh-faq[open] summary::after{content:"−";background:var(--o)}
details.sh-faq .sh-faq__a{padding:0 4px 18px}
details.sh-faq .sh-faq__a>*+*{margin-top:.8em}
.sh-dossier{list-style:none;counter-reset:d;display:grid;gap:18px;padding:0!important}
.sh-dossier>li{counter-increment:d n!important;padding:22px 24px 22px 84px!important;border:2px solid #f0e3dc;border-radius:var(--r);position:relative;margin:0!important;display:flow-root}
.sh-dossier>li::before{content:counter(d,decimal-leading-zero)!important;position:absolute;left:20px;top:18px;width:auto!important;height:auto!important;background:none!important;color:var(--o);font:800 34px/1 "Noto Sans",sans-serif;-webkit-mask:none!important}
.sh-dossier h3{margin:0 0 6px!important;color:var(--dark)!important;font-size:21px!important}
.sh-dossier p{margin:.4em 0 0}
.sh-dossier img{width:min(36%,260px);aspect-ratio:4/3;object-fit:cover;float:right;margin:0 0 8px 20px;border-radius:18px}
.sh-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;list-style:none;padding:0!important}
.sh-cards li{padding:0!important;margin:0!important}
.sh-cards li::before{display:none!important}
.sh-cards article{background:#fff;border-radius:var(--r);box-shadow:0 8px 28px rgba(0,0,0,.09);overflow:hidden;height:100%;display:flex;flex-direction:column}
.sh-cards img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:0}
.sh-cards .b{padding:18px 20px 22px;display:flex;flex-direction:column;gap:8px;flex:1}
.sh-cards time{font-size:13px;color:#666;font-weight:700}
.sh-cards h3{font-size:20px!important;color:var(--ot)!important;margin:0!important}
.sh-cards p{font-size:15.5px!important;margin:0!important}
.sh-cards a.more{margin-top:auto;font-weight:800;text-transform:uppercase;letter-spacing:.04em;font-size:14px}
.sh-team{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;list-style:none;padding:0!important}
.sh-team li{padding:0!important;margin:0!important;text-align:left}
.sh-team li::before{display:none!important}
.sh-team img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:top;border-radius:var(--r);margin-bottom:10px}
.sh-team strong{display:block;font:800 19px "Noto Sans",sans-serif;color:var(--dark)}
.sh-team span{display:block;font-size:15px;color:#666}
.sh-team a{display:inline-block;margin-top:8px;background:var(--o);color:var(--ink);border-radius:99px;padding:7px 18px;text-decoration:none}
.sh-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:2em 0}
.sh-stats div{background:var(--dark);color:#fff;border-radius:var(--r);padding:22px;text-align:left}
.sh-stats b{display:block;font:800 clamp(30px,3.4vw,42px)/1.05 "Noto Sans",sans-serif;color:#fff}
.sh-stats span{font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:#ddd}
.sh-contact{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(28px,5vw,72px);align-items:start;padding-block:clamp(40px,6vw,80px)}
.sh-facts{display:grid;gap:18px;font-size:18px}
.sh-facts h2{font-size:28px}
.sh-facts p{margin:0}
.sh-formbox{background:linear-gradient(180deg,var(--a),var(--o));border-radius:var(--r);padding:clamp(22px,3vw,36px)}
.sh-formbox h2{color:#fff;font-size:30px;margin-bottom:14px}
@media (max-width:1100px){
.sh-nav, .sh-hide-s{display:none!important}
.sh-main__in{justify-content:space-between}
.sh-mnav{display:block;position:relative}
.sh-mnav summary{list-style:none;cursor:pointer;background:var(--ink);color:#fff;border-radius:99px;padding:10px 20px;font-weight:800;font-size:16px}
.sh-mnav summary::-webkit-details-marker{display:none}
.sh-mnav ul{list-style:none;margin:0;padding:10px;position:absolute;right:0;top:calc(100% + 10px);background:#fff;border-radius:18px;box-shadow:0 12px 40px rgba(0,0,0,.25);min-width:240px;z-index:60;display:grid;gap:2px}
.sh-mnav a{display:block;padding:11px 14px;color:var(--dark);font-weight:800;text-decoration:none;border-radius:10px}
.sh-mnav a:hover{background:var(--peach)}
.sh-mnav__extra{border-top:1px solid #eee}
.sh-top__links .sh-hide-s{display:none}
.sh-page{grid-template-columns:1fr}
.sh-aside{display:none}
.sh-footer__in{grid-template-columns:1fr 1fr}
.sh-footer__brand{grid-column:1/-1}
}
@media (max-width:781px){
body{font-size:16.5px;padding-bottom:64px}
.sh-top__in{min-height:34px}
.sh-top__contact .sh-hide-s{display:none}
.sh-logo img{height:42px}
.sh-main__in{min-height:64px}
.sh-fig, .sh-fig--l, .sh-fig--r{float:none;width:100%;margin:0 0 1em}
.sh-fig img{aspect-ratio:16/10}
.sh-offerte__in, .sh-contact{grid-template-columns:1fr}
.sh-offerte__foto img{max-height:340px}
.sh-cards{grid-template-columns:1fr}
.sh-team{grid-template-columns:1fr 1fr}
.sh-stats{grid-template-columns:1fr}
.sh-dossier>li{padding:20px 18px 20px 18px!important}
.sh-dossier>li::before{position:static;display:block;margin-bottom:6px}
.sh-dossier img{float:none;width:100%;margin:0 0 12px}
.sh-trust__in{justify-content:center}
.sh-trust img{height:26px;max-width:84px}
.sh-footer__in{grid-template-columns:1fr;gap:26px;padding-block:40px 28px}
.sh-sticky{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:70;box-shadow:0 -4px 20px rgba(0,0,0,.2)}
.sh-sticky a{display:flex;align-items:center;justify-content:center;min-height:56px;font-weight:800;font-size:17px;text-decoration:none}
.sh-sticky__call{background:var(--ink);color:#fff}
.sh-sticky__quote{background:var(--o);color:var(--ink)}
.sh-hero h1{max-width:none}
}
@media print{
.sh-header, .sh-sticky, .sh-aside{display:none}
}
@media (prefers-reduced-motion:reduce){
html{scroll-behavior:auto}
}
.sh-visually{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.sh-article table{border-collapse:collapse;width:100%}
.sh-article td{border:1px solid #e6dcd6;padding:8px 10px}
.sh-footer a, .sh-nav a, .sh-top a, .sh-btn, .sh-mnav a, .sh-sticky a, .sh-logo{text-decoration:none}
.sh-footer a:hover{text-decoration:underline}
.sh-sec>*+*{margin-top:.75em}
.sh-sec>h2+*{margin-top:.8em}
.sh-article>.sh-sec+.sh-sec{margin-top:2.2em}
.sh-sec p{margin-block:0}
.sh-sec>p+p{margin-top:.9em}
.sh-article .video-embed{margin-top:1em;clear:both}
.video-embed:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.sh-offerte h2 span{color:#6b1f07}
.sh-card h2, .sh-formbox h2{color:var(--ink);text-shadow:none}
@media (max-width:781px){
.sh-offerte__foto{display:none}
}
.sh-article ol.sh-dossier{display:grid;grid-template-columns:1fr 1fr;gap:26px 36px;counter-reset:none;margin-top:1em}
.sh-article ol.sh-dossier>li{counter-increment:none!important;padding:16px 0 0!important;border:0!important;border-top:3px solid var(--a)!important;border-radius:0!important;margin:0!important}
.sh-article ol.sh-dossier>li::before{content:none!important;display:none!important}
.sh-dossier h3{font-size:19px!important;margin:0 0 6px!important}
.sh-dossier p{font-size:16px!important}
@media (max-width:781px){
.sh-article ol.sh-dossier{grid-template-columns:1fr}
.sh-article ol.sh-dossier>li{padding:14px 0 0!important}
}
.sh-trust__l, .wpd-klanten .sh-trust__l{flex:1 0 100%;margin:0 0 4px;font:800 12px/1.2 "Sofia Sans",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#595959;text-align:left}
.sh-intent{background:#fff;padding-block:clamp(48px,6vw,88px)}
.sh-intent h2{font-size:clamp(28px,3.4vw,42px)}
.sh-intent h2 span{color:var(--o)}
.sh-intent__sub{margin:10px 0 28px;max-width:60ch;color:var(--txt)}
.sh-intent__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.sh-intent__card{background:var(--peach);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column}
.sh-intent__card img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:0}
.sh-intent__b{padding:20px 22px 24px;display:grid;gap:10px}
.sh-intent__b h3{font-size:21px;color:var(--dark)}
.sh-intent__b p{margin:0;font-size:15.5px;line-height:1.5}
.sh-chips{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.sh-chips a{display:inline-flex;align-items:center;min-height:40px;padding:8px 14px;border-radius:999px;background:#fff;color:var(--ink);font-weight:700;font-size:14.5px;text-decoration:none;box-shadow:inset 0 0 0 1.5px #f1d3c5;line-height:1.2}
.sh-chips a:hover{background:var(--a)}
.sh-routes{list-style:none;margin:26px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 24px}
.sh-routes li{display:grid;gap:2px;padding:14px 0 0;border-top:3px solid var(--a)}
.sh-routes span{font:800 12px/1.2 "Sofia Sans",sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#595959}
.sh-routes a{font-weight:800;color:var(--ot);text-decoration:none;font-size:17px}
.sh-routes a:hover{text-decoration:underline}
.sh-authband{background:var(--peach);padding-block:clamp(44px,5vw,72px)}
.sh-auth h2{font-size:clamp(24px,2.8vw,34px);margin-bottom:18px}
.sh-auth h2 span{color:var(--ot)}
.sh-auth ul{list-style:none!important;margin:0;padding:0!important;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}
.sh-auth li{background:#fff;border-radius:18px;padding:18px 18px 20px!important;margin:0!important;display:flex;flex-direction:column;gap:6px;box-shadow:0 2px 0 #f1d3c5}
.sh-auth li::before{display:none!important}
.sh-auth h3{font-size:17px!important;color:var(--dark)!important;margin:0!important}
.sh-auth p{margin:0!important;font-size:15px!important;line-height:1.45}
.sh-auth a{margin-top:auto;font-weight:800;color:var(--ot);font-size:14.5px}
.sh-article .sh-auth{margin-top:2.4em;background:var(--peach);border-radius:var(--r);padding:24px}
.sh-band .sh-auth{margin-top:48px}
.sh-fork{background:#fff;border-radius:var(--r);padding:clamp(20px,3vw,32px);box-shadow:0 0 0 2px #f1d3c5;color:var(--ink)}
.sh-fork h2{font-size:clamp(20px,2.2vw,26px)!important;margin:0 0 6px!important;color:var(--dark)}
.sh-fork__lead{margin:0 0 14px}
.sh-fork__f label{display:block;font-weight:800;font-size:14px;margin-bottom:6px}
.sh-fork__row{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center}
.sh-fork__row input{width:160px;font:inherit;font-size:20px;font-weight:800;padding:10px 14px;border:2px solid var(--ink);border-radius:10px;color:var(--ink);background:#fff}
.sh-fork__row output{font:800 clamp(22px,2.6vw,30px)/1.15 "Noto Sans",sans-serif;color:var(--ot)}
.sh-fork__note{font-size:14.5px!important;line-height:1.5;margin:12px 0 0!important;color:var(--txt)}
.sh-fork__note a{color:var(--ot)}
.sh-fork__cta{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0!important}
.sh-fork--big{box-shadow:0 0 0 3px var(--a)}
.sh-article .sh-fork{margin-top:1.6em}
.wpd-kosten-cijfers .sh-fork{max-width:640px}
.sh-answer{border-left:5px solid var(--o);background:var(--peach);border-radius:0 18px 18px 0;padding:16px 20px;margin:0 0 2em}
.sh-answer p{margin:0;font-size:18px;line-height:1.55;color:var(--ink)}
.sh-ctastrip{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;background:var(--ink);color:#fff;border-radius:18px;padding:16px 20px;margin:2em 0}
.sh-ctastrip p{margin:0;color:#fff;font-weight:700;flex:1 1 280px}
.sh-ctastrip strong{color:var(--a)}
.sh-ctastrip__a{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;flex:0 0 auto!important}
.sh-ctastrip__tel{color:#fff!important;font-weight:800;white-space:nowrap}
.sh-cases{margin-top:2.4em}
.sh-cases h2{font-size:clamp(22px,2.4vw,30px)!important;margin-bottom:14px!important}
.sh-cases ul{list-style:none!important;padding:0!important;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}
.sh-case{padding:0!important;margin:0!important;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 0 0 1.5px #eadfd8;display:flex;flex-direction:column}
.sh-case::before{display:none!important}
.sh-case img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:0}
.sh-case>div{padding:12px 14px 16px;display:grid;gap:6px}
.sh-case h3{font-size:16.5px!important;margin:0!important;color:var(--dark)!important}
.sh-case a{font-weight:800;font-size:14px}
.sh-case__tag{margin:0!important;font:800 12px/1.3 "Sofia Sans",sans-serif!important;letter-spacing:.06em;text-transform:uppercase;color:#595959}
.sh-case__tag a{color:var(--ot);text-decoration:none}
.sh-case__tag a:hover{text-decoration:underline}
.sh-cards .sh-case__tag{font-size:12px!important}
@media (max-width:1100px){
.sh-intent__grid{grid-template-columns:1fr 1fr}
.sh-intent__card:last-child{grid-column:1/-1}
}
@media (max-width:781px){
.sh-intent__grid, .sh-routes{grid-template-columns:1fr}
.sh-intent__card:last-child{grid-column:auto}
.sh-intent__card img{aspect-ratio:16/8}
.sh-auth ul{grid-template-columns:1fr 1fr}
.sh-auth li{padding:14px!important}
.sh-fork__row input{width:100%}
.sh-ctastrip{padding:14px 16px}
.sh-answer p{font-size:16.5px}
}
@media (max-width:420px){
.sh-auth ul{grid-template-columns:1fr}
}
.sh-fork a.sh-btn--dark, .wpd-scope .sh-fork a.sh-btn--dark{color:#fff!important}
.sh-fork a.sh-btn--ghost, .wpd-scope .sh-fork a.sh-btn--ghost{color:#1b1b1b!important}
.wpd-scope .sh-fork p, .wpd-scope .sh-fork label, .wpd-scope .sh-fork h2{color:#1b1b1b!important}
.wpd-scope .sh-fork output{color:#C23C12!important}
.sh-ctaband{padding-block:8px 32px;background:#fff}
.sh-ctaband .sh-ctastrip{margin:0}
.sh-article .sh-auth ul{grid-template-columns:1fr 1fr}
@media (max-width:420px){
.sh-article .sh-auth ul{grid-template-columns:1fr}
}
@media (max-width:781px){
.sh-ctastrip{flex-direction:column;align-items:flex-start}
.sh-ctastrip p{flex:0 0 auto}
.sh-ctastrip__a{flex:1 1 auto!important;width:100%}
}
.sh-ctastrip a.sh-btn--orange, .wpd-scope .sh-ctastrip a.sh-btn--orange{color:#1b1b1b!important}
.sh-ctastrip a.sh-ctastrip__tel, .wpd-scope .sh-ctastrip a.sh-ctastrip__tel{color:#fff!important}
.sh-hero--bg{background: var(--watson-photo-veil), url('../img/hero-dakpannen.webp') center center/cover no-repeat !important;
    color: #fff !important;}
.sh-hero--bg h1, .sh-hero--bg p, .sh-hero--bg .a1, .sh-hero--bg .a2{color: #fff !important;}
.sh-details{background: #fff;
    border: 1px solid #ddd;
    border-radius: 8px;
    margin-bottom: 12px;
    overflow: hidden;}
.sh-details summary{font-weight: 700;
    padding: 16px;
    cursor: pointer;
    background: #fdfdfd;
    list-style: none; 
    position: relative;}
.sh-details summary::-webkit-details-marker{display: none;}
.sh-details summary::after{content: '+';
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.5em;
    color: var(--o, #f28c28);
    transition: transform 0.2s;}
.sh-details[open] summary::after{content: '−';}
.sh-details summary h2, .sh-details summary h3{margin: 0;
    font-size: 1.1em;
    display: inline;}
.sh-details__content{padding: 0 16px 16px;
    border-top: 1px solid #eee;}
.sh-cards-carousel{display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 24px;}
.sh-cards-carousel > section{background: #fff;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 16px;
    margin: 0 !important;
    min-width: 0;}
@media (max-width: 767px){
.sh-cards-carousel{flex-direction: row;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        padding-bottom: 16px;
        scrollbar-width: thin;
        margin-right: -16px;
        padding-right: 16px;}
.sh-cards-carousel > section{flex: 0 0 85%;
        scroll-snap-align: center;}
}
.sh-timeline-sec h2{margin-bottom: 2rem;}
.sh-timeline-sec h2 span{color: var(--o,#f28c28);}
.sh-timeline{list-style: none; padding: 0; margin: 0 0 40px; display: flex; flex-direction: column; gap: 24px; position: relative;}
.sh-timeline::before{content: ""; position: absolute; left: 15px; top: 0; bottom: 0; width: 2px; background: #e5e5e5;}
.sh-timeline li{display: flex; gap: 16px; position: relative;}
.sh-timeline__step{width: 32px; height: 32px; border-radius: 50%; background: var(--o,#f28c28); color: #fff; display: flex; align-items: center; justify-content: center; font-weight: bold; flex-shrink: 0; z-index: 1; border: 4px solid var(--peach,#fff4ee); margin-top: -4px;}
.sh-timeline__content h3{margin: 0 0 8px; font-size: 1.1em; color: #333;}
.sh-timeline__content p{margin: 0; font-size: 0.95em; color: #555;}
@media (min-width: 768px){
.sh-timeline{flex-direction: row; gap: 20px;}
.sh-timeline::before{left: 16px; right: 16px; top: 15px; bottom: auto; width: auto; height: 2px;}
.sh-timeline li{flex-direction: column; flex: 1; align-items: flex-start;}
.sh-timeline__step{margin-top: 0; margin-left: 0;}
.sh-timeline__content{text-align: left;}
}
.sh-method{background: var(--peach,#fff4ee); padding: 40px 0; border-radius: 8px; margin-bottom: 24px;}
.sh-method__cta{margin-top: 18px; font-weight: 600;}
.sh-quotes{display: grid; grid-template-columns: repeat(auto-fit,minmax(240px,1fr)); gap: 16px; margin-top: 18px;}
.sh-quote{margin: 0; background: #fff; border-left: 4px solid var(--o,#f28c28); border-radius: 14px; padding: 24px 20px 20px 48px; box-shadow: 0 2px 8px rgba(0,0,0,0.05); position: relative; transition: transform 0.2s ease, box-shadow 0.2s ease; margin-bottom: 24px;}
.sh-quote::before{content: "“"; position: absolute; left: 12px; top: 12px; font-size: 60px; line-height: 1; color: var(--o,#f28c28); font-family: serif; opacity: 0.3;}
@media (prefers-reduced-motion: no-preference){
.sh-quote:hover{transform: translateY(-2px); box-shadow: 0 4px 12px rgba(0,0,0,0.1);}
}
.sh-quote p{margin: 0 0 12px; font-style: italic; color: #333; font-size: 1.05em; position: relative; z-index: 1;}
.sh-quote cite{font-style: normal; font-weight: 700; color: #444; display: block; font-size: 0.9em;}
.sh-vertrouwen{margin-bottom: 24px;}
.sh-timeline > li::before{content:none!important;background:none!important}
.sh-2col{display: grid;
    gap: 32px;}
@media (min-width: 768px){
.sh-2col{grid-template-columns: 1fr 1fr;}
}
.sh-hero--sanering{background: var(--watson-photo-veil), url('../img/asbestsanering-Blanden-onderbrug-expressweg3.webp') center center/cover no-repeat !important;}
.sh-chip-btn{display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 8px 14px;
    border-radius: 999px;
    background: #fff;
    color: var(--ink);
    font-weight: 700;
    font-size: 14.5px;
    text-decoration: none;
    box-shadow: inset 0 0 0 1.5px #f1d3c5;
    line-height: 1.2;
    border: none;
    cursor: pointer;
    font-family: inherit;}
.sh-chip-btn:hover{background: var(--a);}
.sh-chip-btn.is-active{background: var(--o);
    color: #fff;
    box-shadow: none;}
.sh-hero--platen{background: var(--watson-photo-veil), url('../img/werf-houten-dak.webp') center center/cover no-repeat !important;}
.sh-hero--premies{background: var(--watson-photo-veil), url('../img/werf-kielpark-wilrijk.webp') center center/cover no-repeat !important;}
.sh-hero--vinyl{background: var(--watson-photo-veil), url('../img/nieuws-vinyl.webp') center center/cover no-repeat !important;}
.sh-hero--professionals{background: var(--watson-photo-veil), url('../img/werf-unizo-kortrijk.webp') center center/cover no-repeat !important;}
.sh-hero--realisaties{background: var(--watson-photo-veil), url('../img/werf-elslopark.webp') center center/cover no-repeat !important;}
.sh-2col{display: grid; gap: 32px;}
@media (min-width: 768px){
.sh-2col{grid-template-columns: 1fr 1fr; align-items: start;}
}
a.sh-btn--dark, .wpd-scope a.sh-btn--dark, .sh-routes-simple a.sh-btn--dark{color:#fff!important}
.sh-sticky .sh-field{margin-bottom: 0.75rem;}
.sh-sticky .sh-field label{margin-bottom: 0.25rem; font-size: 0.85rem;}
.sh-sticky .sh-field input, .sh-sticky .sh-field textarea{padding: 0.5rem;}
.sh-sticky .sh-field textarea{height: 60px;}
.sh-sticky .sh-help{font-size: 0.75rem; line-height: 1.2; margin-top: 0.25rem;}
.sh-sticky .sh-upload input[type="file"]{font-size: 0.8rem; padding: 0.25rem 0;}
.sh-article .sh-band, .sh-article .sh-sec[style*="background-color"], .sh-article .sh-sec[class*="bg-"]{padding: 20px;}
.sh-band.sh-method{padding: 20px;
    border-radius: 8px;}
@media (min-width: 768px){
.sh-article .sh-band, .sh-article .sh-sec[style*="background-color"], .sh-article .sh-sec[class*="bg-"], .sh-band.sh-method{padding: 32px;}
}
.sh-details__content :is(ul, ol):is(:not([class]), [class="wp-block-list"]):not(.sh-auth ul), .sh-sec :is(ul, ol):is(:not([class]), [class="wp-block-list"]):not(.sh-auth ul){display: flow-root;}
.sh-aside .sh-field{margin-bottom: 0.75rem;}
.sh-aside .sh-field label{margin-bottom: 0.25rem; font-size: 0.85rem;}
.sh-aside .sh-field input, .sh-aside .sh-field textarea{padding: 0.5rem;}
.sh-aside .sh-field textarea{height: 60px;}
.sh-aside .sh-help{font-size: 0.75rem; line-height: 1.2; margin-top: 0.25rem;}
.sh-aside .sh-upload input[type="file"]{font-size: 0.8rem; padding: 0.25rem 0;}
.wpd-veiligheid__bus-beeld img{width:100%;height:clamp(420px,46vw,640px);object-fit:cover;object-position:30% 50%}
.wpd-veiligheid h3, .wpd-veiligheid h3 *{color:#1b1b1b!important}
.wpd-veiligheid .wp-block-button__link, .wpd-veiligheid .watson-btn--secondary a{color:#a8300c!important}
.wpd-veiligheid__vlasbloempje-link a, .wpd-veiligheid__sint-clara-link a{color:#1b1b1b!important}
.wpd-veiligheid p a{color:#1b1b1b!important}
.wpd-veiligheid__intro{color:#1b1b1b}
.wpd-scope .wpd-veiligheid__bus-beeld img{height:clamp(420px,46vw,660px);object-fit:cover;object-position:30% 50%;aspect-ratio:auto}
.wpd-scope .wpd-team__kop{grid-column:1/-1;grid-row:1;align-self:start}
.wpd-scope .wpd-team__titel{max-width:none;font-size:clamp(32px,4vw,48px)}
.wpd-scope .wpd-team__tagline{max-width:52ch}
.wpd-scope .wpd-team__portretten{grid-column:1/-1;grid-row:2;margin-block-end:0}
.wpd-scope .wpd-team__in{padding-block:clamp(56px,7vw,100px)}
.wpd-scope .wpd-hero__checks{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;list-style:none;padding:0;margin:0}
.wpd-scope .wpd-hero__checks li{position:relative;padding-left:34px;margin:0;color:#1b1b1b}
.wpd-scope .wpd-hero__checks li::before{content:"";position:absolute;left:0;top:.2em;width:22px;height:22px;border-radius:50%;background:#EC643D url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 22'%3E%3Cpath d='M6 11.5l3.2 3.2L16 7.8' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat;border:0;mask:none;-webkit-mask:none}
.wpd-scope .wpd-hero__checks li::after{content:none}
@media (min-width:1101px){
.wpd-scope .wpd-diensten__diensten-foto{position:sticky;top:130px;align-self:start}
}
.wpd-veiligheid .wp-block-button__link{white-space:nowrap}
.wpd-veiligheid__vlasbloempje-link a, .wpd-veiligheid__sint-clara-link a{display:inline-flex!important;align-items:center;gap:8px;white-space:nowrap;background:#fff!important;border-radius:999px!important;padding:9px 18px!important;line-height:1.2;color:#a8300c!important;border:0!important;width:auto}
.wpd-scope .wpd-team__kop{display:grid;row-gap:14px;width:100%;justify-self:stretch;max-width:none}
.wpd-scope .wpd-team__titel{max-width:none;margin:0}
.wpd-scope .wpd-team__titel mark{white-space:nowrap}
.wpd-scope .wpd-team__tagline{max-width:52ch;margin:0;width:auto}
.wpd-scope .wpd-veiligheid__case-sint-clara, .wpd-scope .wpd-veiligheid__case-vlasbloempje{margin-top:8px!important}
.wpd-scope .wpd-realisaties__overige{margin-top:0!important;align-self:start}
.wpd-scope .wpd-over__over-video-link, .wpd-scope .wpd-over__over-video-link *{color:#a8300c!important}
.wpd-scope .wp-block-button.watson-btn--primary a.wp-block-button__link{color:#1b1b1b!important}
.wpd-scope .wpd-hero__offerte-kop, .wpd-scope .wpd-hero__offerte-kop *{color:#1b1b1b!important}
.wpd-scope .watson-btn--link .wp-block-button__link, .wpd-scope p:not(.sh-offerte__sub) a:not(.sh-btn), .wpd-scope .watson-list__title{color:#C23C12!important}
.wpd-scope .wpd-over mark, .wpd-scope .wpd-over p mark, .wpd-scope .wpd-over__over-label, .wpd-scope .wpd-faq-nieuws h3 a, .wpd-scope .wpd-faq-nieuws mark{color:#C23C12!important}
.wpd-scope .wpd-over a{color:#C23C12!important}
.wpd-scope .wpd-veiligheid mark, .wpd-scope .wpd-veiligheid h2{color:#1b1b1b!important}
.wpd-scope .wpd-veiligheid__bus-label{background:#1b1b1b!important;color:#fff!important;border-color:#1b1b1b!important}
.wpd-scope [class*="wpd-kosten"] .watson-btn--link .wp-block-button__link{color:#fff!important}
.wpd-scope .watson-eyebrow:not(.wpd-veiligheid__bus-label):not(.wpd-veiligheid__kicker){color:#C23C12!important}
.wpd-scope .wpd-veiligheid__kicker{color:#1b1b1b!important}
.wpd-scope .watson-list__badge{color:#1b1b1b!important}
.wpd-scope .wpd-hero, .wpd-hero{background:#fff!important}
.wpd-scope .wpd-kosten-cijfers__in{align-items:start}
.wpd-scope .sh-intent h3, .wpd-scope .sh-auth h3{color:#333!important}
.wpd-scope .wpd-hero__offerte-kaart{align-self:start!important}
.wpd-scope .sh-authband, .sh-authband{padding-bottom:clamp(120px,14vw,230px)}
.wpd-scope .wpd-kosten-cijfers__in{display:grid!important;grid-template-columns:minmax(0,5fr) minmax(0,7fr)!important;gap:clamp(28px,5vw,64px)!important;align-items:start!important}
.wpd-scope .wpd-kosten-cijfers__in>*{grid-column:auto!important;grid-row:auto!important;margin:0!important;max-width:none!important}
@media (max-width:900px){
.wpd-scope .wpd-kosten-cijfers__in{grid-template-columns:1fr!important}
}
@media (max-width:781px){
.wpd-scope .wpd-hero__missie{display:none!important}
}
.wpd-scope .sh-ctaband .sh-ctastrip p.sh-ctastrip__a a.sh-ctastrip__tel{color:#fff!important}
.sh-risk, .sh-method{background:var(--peach,#fff4ee);padding:40px 0}
.sh-risk__next, .sh-method__cta{margin-top:18px;font-weight:600}
.sh-quoteband{padding:8px 0 24px}
.sh-quotes{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:18px}
.sh-quote{margin: 0;
    background: #fff;
    border-left: 4px solid var(--o,#f28c28);
    border-radius: 14px;
    padding: 24px 20px 20px 48px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    position: relative;
    transition: transform 0.2s ease, box-shadow 0.2s ease;}
.sh-quote::before{content: "“";
    position: absolute;
    left: 12px;
    top: 12px;
    font-size: 60px;
    line-height: 1;
    color: var(--o,#f28c28);
    font-family: serif;
    opacity: 0.3;}
@media (prefers-reduced-motion: no-preference){
.sh-quote:hover{transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0,0,0,0.1);}
}
.sh-quote p{margin: 0 0 12px;
    font-style: italic;
    color: #333;
    font-size: 1.05em;
    position: relative;
    z-index: 1;}
.sh-quote cite{font-style: normal;
    font-weight: 700;
    color: #444;
    display: block;
    font-size: 0.9em;}
.sh-quoteband .sh-quote{max-width:760px;margin:0 auto}
.wpd-scope .wpd-hero, .wpd-hero{background: url('../img/hero-brielenbrug-ploeg.webp') center/cover no-repeat !important;
    position: relative;
    color: #fff !important;}
.wpd-scope .wpd-hero::before{content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.7);
    z-index: 0;}
.wpd-scope .wpd-hero > *{position: relative;
    z-index: 1;}
.wpd-scope .wpd-hero__intro{color: #fff !important;}
.wpd-scope .wpd-hero__checks li{color: #fff !important;}
@media (min-width: 1101px){
.wpd-scope .wpd-hero__offerte-kaart{position: sticky;
        top: 24px;
        margin-bottom: 48px;
        align-self: start !important;}
}
.sh-routes-simple{display: flex;
    flex-wrap: wrap;
    gap: 24px;
    align-items: center;
    margin-top: 24px;}
.sh-routes-link{color: #333;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 4px;}
.sh-risk{padding-bottom: 20px;}
.sh-method{padding-top: 40px;}
.sh-fork__f--compact{padding: 16px;
    margin-bottom: 12px;}
.sh-fork__f--compact input, .sh-fork__f--compact output{padding: 10px 14px;
    font-size: 0.95em;}
.sh-fork__details{margin-bottom: 24px;
    font-size: 0.9em;}
.sh-fork__details summary{cursor: pointer;
    font-weight: 600;
    margin-bottom: 12px;
    color: var(--o, #f28c28);}
.sh-fork__details-content{padding-left: 16px;
    border-left: 2px solid #ddd;}
.sh-fork__details-content p{margin-bottom: 12px;}
.sh-fork__details-content p:last-child{margin-bottom: 0;}
.sh-timeline-sec h2{margin-bottom: 2rem;}
.sh-timeline-sec h2 span{color: var(--o,#f28c28);}
.sh-timeline{list-style: none;
    padding: 0;
    margin: 0 0 40px;
    display: flex;
    flex-direction: column;
    gap: 24px;
    position: relative;}
.sh-timeline::before{content: "";
    position: absolute;
    left: 15px;
    top: 0;
    bottom: 0;
    width: 2px;
    background: #e5e5e5;}
.sh-timeline li{display: flex;
    gap: 16px;
    position: relative;}
.sh-timeline__step{width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--o,#f28c28);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    flex-shrink: 0;
    z-index: 1;
    border: 4px solid var(--peach,#fff4ee);
    margin-top: -4px;}
.sh-timeline__content h3{margin: 0 0 8px;
    font-size: 1.1em;
    color: #333;}
.sh-timeline__content p{margin: 0;
    font-size: 0.95em;
    color: #555;}
@media (min-width: 768px){
.sh-timeline{flex-direction: row;
        gap: 20px;}
.sh-timeline::before{left: 16px;
        right: 16px;
        top: 15px;
        bottom: auto;
        width: auto;
        height: 2px;}
.sh-timeline li{flex-direction: column;
        flex: 1;
        align-items: flex-start;}
.sh-timeline__step{margin-top: 0;
        margin-left: 0;}
.sh-timeline__content{text-align: left;}
}
.wpd-scope .wpd-realisaties__alle{grid-column: 1 / -1;
    justify-content: center;
    margin-top: 32px;}
.sh-timeline > li::before{content:none!important;background:none!important}
.sh-quoteband--free{padding-top: 48px;}
.sh-quote-free{margin: 0 auto;
    text-align: center;
    max-width: 800px;}
.sh-quote-free::before{content: "“";
    display: block;
    font-size: 80px;
    line-height: 1;
    color: var(--o,#f28c28);
    font-family: serif;
    margin-bottom: -16px;}
.sh-quote-free p{font-style: italic;
    font-size: 1.25em;
    color: #333;
    margin-bottom: 16px;}
.sh-quote-free cite{font-style: normal;
    font-weight: bold;
    color: #444;}
.sh-method{margin-bottom: 0 !important; padding-bottom: 40px !important;}
.sh-authband{margin-top: 0 !important; padding-top: 40px !important; background: var(--peach,#fff4ee) !important;}
.wpd-scope .wpd-veiligheid__bus-beeld img, .wpd-scope .wpd-over__over-video-poster img, .wpd-scope .wpd-over__over-video-poster .video-embed{aspect-ratio: 4/5 !important;
    border-radius: 24px !important;
    height: auto !important;
    object-fit: cover !important;}
#hero{padding-bottom:56px!important}

/* >>> live pages: hero photos (generated by client-content/asbitech/build_live.py) */
.sh-case__detail{display:block;margin-top:.25em;font-size:max(.8em,13px);font-weight:600;letter-spacing:0;text-transform:none}
.sh-hero--bg.sh-hero--x-asbest-tegels-kapot-2{background:var(--watson-photo-veil),url('../img/asbest-tegels-kapot-2.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbestsanering-dakrenovatie-golfplaten-01{background:var(--watson-photo-veil),url('../img/projects/asbestsanering-dakrenovatie-golfplaten-01.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbestsanering-blanden-2026-tunnel{background:var(--watson-photo-veil),url('../img/projects/asbestsanering-blanden-2026-tunnel.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbestsanering-blanden-onderbrug-expressweg-02{background:var(--watson-photo-veil),url('../img/projects/asbestsanering-blanden-onderbrug-expressweg-02.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbestsanering-brugge-voormalig-woonzorgcentrum-sint-clara-02{background:var(--watson-photo-veil),url('../img/projects/asbestsanering-brugge-voormalig-woonzorgcentrum-sint-clara-02.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbestsanering-dendermonde-isolatie-basisschool-vlasbloempje-02{background:var(--watson-photo-veil),url('../img/projects/asbestsanering-dendermonde-isolatie-basisschool-vlasbloempje-02.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbestsanering-deurne-brug-02{background:var(--watson-photo-veil),url('../img/projects/asbestsanering-deurne-brug-02.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbestsanering-evergem-appartementsgebouw-elslopark-02{background:var(--watson-photo-veil),url('../img/projects/asbestsanering-evergem-appartementsgebouw-elslopark-02.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbestsanering-hasselt-herkenrode-site-02{background:var(--watson-photo-veil),url('../img/projects/asbestsanering-hasselt-herkenrode-site-02.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbestsanering-kortrijk-unizo-kantoorgebouw-02{background:var(--watson-photo-veil),url('../img/projects/asbestsanering-kortrijk-unizo-kantoorgebouw-02.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbestsanering-sint-amands-carolusschool-02{background:var(--watson-photo-veil),url('../img/projects/asbestsanering-sint-amands-carolusschool-02.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbestsanering-tisselt-brielenbrug-02{background:var(--watson-photo-veil),url('../img/projects/asbestsanering-tisselt-brielenbrug-02.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbitech-verzorgde-de-asbestwerken-voor-nv-monument-vanderke-02{background:var(--watson-photo-veil),url('../img/projects/asbitech-verzorgde-de-asbestwerken-voor-nv-monument-vanderke-02.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-hero-brielenbrug-ploeg{background:var(--watson-photo-veil),url('../img/hero-brielenbrug-ploeg.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-hero-dakpannen{background:var(--watson-photo-veil),url('../img/hero-dakpannen.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-img-6290{background:var(--watson-photo-veil),url('../img/IMG_6290.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-nieuws-vinyl{background:var(--watson-photo-veil),url('../img/nieuws-vinyl.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-shake-roofing{background:var(--watson-photo-veil),url('../img/shake-roofing.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-team-groep{background:var(--watson-photo-veil),url('../img/team-groep.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-werf-blanden-onderbrug{background:var(--watson-photo-veil),url('../img/werf-blanden-onderbrug.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-werf-brielenbrug{background:var(--watson-photo-veil),url('../img/werf-brielenbrug.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-werf-brug-bestelwagens{background:var(--watson-photo-veil),url('../img/werf-brug-bestelwagens.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-werf-deurne-brug{background:var(--watson-photo-veil),url('../img/werf-deurne-brug.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-werf-elslopark{background:var(--watson-photo-veil),url('../img/werf-elslopark.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-werf-houten-dak{background:var(--watson-photo-veil),url('../img/werf-houten-dak.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-werf-kielpark-wilrijk{background:var(--watson-photo-veil),url('../img/werf-kielpark-wilrijk.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-werf-school-vlasbloempje{background:var(--watson-photo-veil),url('../img/werf-school-vlasbloempje.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-werf-sint-clara{background:var(--watson-photo-veil),url('../img/werf-sint-clara.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-werf-unizo-kortrijk{background:var(--watson-photo-veil),url('../img/werf-unizo-kortrijk.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-zaakvoerder-kantoor{background:var(--watson-photo-veil),url('../img/zaakvoerder-kantoor.webp') center/cover no-repeat!important}
/* <<< live pages */

/* >>> mobile hero variants (generated by client-content/asbitech/hero_mobile.py; the same hero rules for phones) */
@media (max-width:781px){
.sh-hero{background:linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)),url(../img/hero-m/hero-dakpannen.webp) 50% 80%/cover no-repeat}
.sh-hero--bg{background: var(--watson-photo-veil), url('../img/hero-m/hero-dakpannen.webp') center center/cover no-repeat !important}
.sh-hero--sanering{background: var(--watson-photo-veil), url('../img/hero-m/asbestsanering-Blanden-onderbrug-expressweg3.webp') center center/cover no-repeat !important}
.sh-hero--platen{background: var(--watson-photo-veil), url('../img/hero-m/werf-houten-dak.webp') center center/cover no-repeat !important}
.sh-hero--premies{background: var(--watson-photo-veil), url('../img/hero-m/werf-kielpark-wilrijk.webp') center center/cover no-repeat !important}
.sh-hero--vinyl{background: var(--watson-photo-veil), url('../img/hero-m/nieuws-vinyl.webp') center center/cover no-repeat !important}
.sh-hero--professionals{background: var(--watson-photo-veil), url('../img/hero-m/werf-unizo-kortrijk.webp') center center/cover no-repeat !important}
.sh-hero--realisaties{background: var(--watson-photo-veil), url('../img/hero-m/werf-elslopark.webp') center center/cover no-repeat !important}
.sh-hero--bg.sh-hero--x-asbest-tegels-kapot-2{background:var(--watson-photo-veil),url('../img/hero-m/asbest-tegels-kapot-2.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbestsanering-dakrenovatie-golfplaten-01{background:var(--watson-photo-veil),url('../img/hero-m/asbestsanering-dakrenovatie-golfplaten-01.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbestsanering-blanden-2026-tunnel{background:var(--watson-photo-veil),url('../img/hero-m/asbestsanering-blanden-2026-tunnel.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbestsanering-blanden-onderbrug-expressweg-02{background:var(--watson-photo-veil),url('../img/hero-m/asbestsanering-blanden-onderbrug-expressweg-02.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbestsanering-brugge-voormalig-woonzorgcentrum-sint-clara-02{background:var(--watson-photo-veil),url('../img/hero-m/asbestsanering-brugge-voormalig-woonzorgcentrum-sint-clara-02.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbestsanering-dendermonde-isolatie-basisschool-vlasbloempje-02{background:var(--watson-photo-veil),url('../img/hero-m/asbestsanering-dendermonde-isolatie-basisschool-vlasbloempje-02.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbestsanering-deurne-brug-02{background:var(--watson-photo-veil),url('../img/hero-m/asbestsanering-deurne-brug-02.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbestsanering-evergem-appartementsgebouw-elslopark-02{background:var(--watson-photo-veil),url('../img/hero-m/asbestsanering-evergem-appartementsgebouw-elslopark-02.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbestsanering-kortrijk-unizo-kantoorgebouw-02{background:var(--watson-photo-veil),url('../img/hero-m/asbestsanering-kortrijk-unizo-kantoorgebouw-02.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-asbitech-verzorgde-de-asbestwerken-voor-nv-monument-vanderke-02{background:var(--watson-photo-veil),url('../img/hero-m/asbitech-verzorgde-de-asbestwerken-voor-nv-monument-vanderke-02.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-hero-brielenbrug-ploeg{background:var(--watson-photo-veil),url('../img/hero-m/hero-brielenbrug-ploeg.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-hero-dakpannen{background:var(--watson-photo-veil),url('../img/hero-m/hero-dakpannen.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-img-6290{background:var(--watson-photo-veil),url('../img/hero-m/IMG_6290.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-nieuws-vinyl{background:var(--watson-photo-veil),url('../img/hero-m/nieuws-vinyl.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-shake-roofing{background:var(--watson-photo-veil),url('../img/hero-m/shake-roofing.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-team-groep{background:var(--watson-photo-veil),url('../img/hero-m/team-groep.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-werf-blanden-onderbrug{background:var(--watson-photo-veil),url('../img/hero-m/werf-blanden-onderbrug.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-werf-brielenbrug{background:var(--watson-photo-veil),url('../img/hero-m/werf-brielenbrug.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-werf-brug-bestelwagens{background:var(--watson-photo-veil),url('../img/hero-m/werf-brug-bestelwagens.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-werf-deurne-brug{background:var(--watson-photo-veil),url('../img/hero-m/werf-deurne-brug.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-werf-elslopark{background:var(--watson-photo-veil),url('../img/hero-m/werf-elslopark.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-werf-houten-dak{background:var(--watson-photo-veil),url('../img/hero-m/werf-houten-dak.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-werf-kielpark-wilrijk{background:var(--watson-photo-veil),url('../img/hero-m/werf-kielpark-wilrijk.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-werf-sint-clara{background:var(--watson-photo-veil),url('../img/hero-m/werf-sint-clara.webp') center/cover no-repeat!important}
.sh-hero--bg.sh-hero--x-werf-unizo-kortrijk{background:var(--watson-photo-veil),url('../img/hero-m/werf-unizo-kortrijk.webp') center/cover no-repeat!important}
}
/* <<< mobile hero variants */

/* >>> light direction (client-content/asbitech/light.css, appended by light_layer.py) */
/* Asbitech — design basis = the live site asbitech.eu (Jef, round 2, 2026-10-09).
   Class: client solution (Asbitech only). Appended LAST to css/clients/asbitech-watson.css by
   light_layer.py, so it wins over the generated asbitech-final layers above it.
   Colours, fonts, overlays, form and button treatment are measured on asbitech.eu (computed
   styles, from the Hermes box): orange #EC643D, light orange #F8AF3A (= the theme.json tokens),
   ink #333333, the "0 incidenten" highlight #FF9900, Noto Sans headings / Sofia Sans body,
   white 80% overlay on the hero photo, gradient pills with white text.
   Our own copy stays (no "asbest verwijderen" homepage targeting); only the design and the
   small copy details listed in the round-2 brief come from live.
   Layout primitives (section rhythm, marquee, typographic reviews, mobile actions) are the
   platform ones from css/watson-layout.css. Full-bleed/half-bleed are NOT used here: live
   boxes those photos. */

/* ND9: layout-shift 0.19-0.21 on / at 1440/1366/1280 (browser audit 17/10), 0 on every other page. Cause: the faces of the
   body font (Sofia Sans 400/500/700/800, font-display: swap) arrive one after the other after first paint; until a face
   is there the text is set in system-ui, which is wider, so the intro paragraphs in the hero wrap differently, a bold
   word jumps from one line to the next (about 520 px) and the hero changes height, which moves the card and the
   band below it. Isolated by blocking the font files in a local render: without Sofia Sans the shift is 0.0007;
   without Noto Sans it is unchanged.
   The fix is the platform's usual one: a fallback face sized to the real font (size-adjust = the width of the same text in
   Sofia Sans divided by its width in Arial, measured per weight: 400 0.965, 500 0.970, 700 0.912, 800 0.921), put between
   Sofia Sans and system-ui in the three tokens every body rule reads (they sit in the generated :root, so a rule on body
   alone would reach only 27 of 198 text elements). The faces carry the unicode-range of the Sofia Sans file, so a glyph it lacks (the button arrows) still comes from system-ui.
   Once the font has loaded nothing differs. */
@font-face { font-family: "Sofia Sans Fallback"; src: local("Arial"), local("Arimo"), local("Liberation Sans"); font-weight: 100 450; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; size-adjust: 96.5%; ascent-override: 93.3%; descent-override: 31.1%; line-gap-override: 0%; }
@font-face { font-family: "Sofia Sans Fallback"; src: local("Arial"), local("Arimo"), local("Liberation Sans"); font-weight: 451 599; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; size-adjust: 97%; ascent-override: 92.8%; descent-override: 30.9%; line-gap-override: 0%; }
@font-face { font-family: "Sofia Sans Fallback"; src: local("Arial Bold"), local("Arimo Bold"), local("Liberation Sans Bold"); font-weight: 600 750; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; size-adjust: 91.2%; ascent-override: 98.7%; descent-override: 32.9%; line-gap-override: 0%; }
@font-face { font-family: "Sofia Sans Fallback"; src: local("Arial Bold"), local("Arimo Bold"), local("Liberation Sans Bold"); font-weight: 751 1000; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; size-adjust: 92.1%; ascent-override: 97.7%; descent-override: 32.6%; line-gap-override: 0%; }
:root { --font-body: "Sofia Sans", "Sofia Sans Fallback", system-ui, sans-serif; --bouw-body-font: var(--font-body); --bouw-font-body: var(--font-body); } /* the three tokens every body rule reads (set once in the generated :root) */
body { font-family: var(--font-body); }

/* ND10: layout-shift 0.030 on the service pages (Lighthouse mobile, 29/10, culprits noto-sans-800.woff2 and sofia-sans-500.woff2, i.e. the
   faces that are not preloaded). ND9 above closed the body font; the headings are set in Noto Sans, which had no fallback face, so
   they were laid out in system-ui and moved when the face arrived. Same method as ND9 (size-adjust = width of the same text in Noto
   Sans divided by its width in Arial, measured per weight in Chromium on four Dutch sentences: 400 1.068, 600 1.035, 700 1.061,
   800 1.079; the same measurement reproduces ND9's Sofia Sans numbers within 0.3 points); ascent/descent are Noto Sans' hhea metrics
   (1.069 / 0.293 em) divided by size-adjust, line gap 0 (the font has none). Put between Noto Sans and system-ui in the three tokens
   the heading rules read. Once the font has loaded nothing differs. */
@font-face { font-family: "Noto Sans Fallback"; src: local("Arial"), local("Arimo"), local("Liberation Sans"); font-weight: 100 499; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; size-adjust: 106.8%; ascent-override: 100.1%; descent-override: 27.4%; line-gap-override: 0%; }
@font-face { font-family: "Noto Sans Fallback"; src: local("Arial Bold"), local("Arimo Bold"), local("Liberation Sans Bold"); font-weight: 500 649; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; size-adjust: 103.5%; ascent-override: 103.3%; descent-override: 28.3%; line-gap-override: 0%; }
@font-face { font-family: "Noto Sans Fallback"; src: local("Arial Bold"), local("Arimo Bold"), local("Liberation Sans Bold"); font-weight: 650 749; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; size-adjust: 106.1%; ascent-override: 100.8%; descent-override: 27.6%; line-gap-override: 0%; }
@font-face { font-family: "Noto Sans Fallback"; src: local("Arial Bold"), local("Arimo Bold"), local("Liberation Sans Bold"); font-weight: 750 1000; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; size-adjust: 107.9%; ascent-override: 99.1%; descent-override: 27.2%; line-gap-override: 0%; }
:root { --font-heading: "Noto Sans", "Noto Sans Fallback", system-ui, sans-serif; --bouw-heading-font: var(--font-heading); --bouw-font-heading: var(--font-heading); }
h1, h2, h3, h4 { font-family: var(--font-heading); } /* the generated sheet sets these four with a literal "Noto Sans", system-ui list that would bypass the token */

body {
	--asb-o: #EC643D;          /* live primary */
	--asb-lo: #F8AF3A;         /* live light orange */
	--asb-ink: #333333;        /* live text */
	--asb-hl: #FF9900;         /* live "0 incidenten" */
	--asb-deep: #4a1403;       /* dark red for text on the orange gradient: >=4.6:1 on #EC643D, 8:1 on #F8AF3A (measured) */
	--asb-ot: #C23C12;         /* orange as TEXT: 5.3:1 on white, 4.7:1 on the peach/tint bands. #EC643D and #F8AF3A are fills, bars and borders only (AA, F07/F11) */
	--asb-on-brand: #1b1b1b;   /* text on the coral/amber gradient: 5.3:1 on #EC643D, 9.2:1 on #F8AF3A */
	--asb-grad: linear-gradient(to right, #EC643D 0%, #F8AF3A 51%, #EC643D 100%); /* live buttons */
	--asb-tint: color-mix(in srgb, #EC643D 3%, #fff);
	--asb-line: color-mix(in srgb, #EC643D 22%, #fff);
	--watson-primary-ink: var(--asb-ot);  /* engine tokens (prose links, .watson-accent, call button, menu toggle) take the AA orange; plain #EC643D text is 3.25:1 */
	--watson-ink: #333333;
	--watson-ink-soft: #555555;
	--watson-header-h: 114px;   /* top bar 38 + header 76 */
	--watson-trust-h: 120px;
	--watson-section-space: clamp(44px, 3vw + 30px, 80px);
	--watson-section-space-s: clamp(20px, 1.5vw + 14px, 32px);
	--watson-photo-veil: linear-gradient(rgba(255, 255, 255, .8), rgba(255, 255, 255, .8)); /* live: one even white layer */
	--watson-photo-veil-mobile: var(--watson-photo-veil);
}
@media (max-width: 781px) {
	body { --watson-header-h: 98px; }
}
.wpd-page { overflow-x: clip; }
.sh-sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

/* ---------- AA round 2 / 2b (pixel-measured 2026-10-11) — folded in from the generated bundle ----------
   These four rules were hand-edited into the middle of css/clients/asbitech-watson.css (the part
   build_home.py rewrites wholesale), so the next producer run would have silently dropped them.
   Hero tel pill / form submit: ink on the pill and deep red on white. Subpage photo heroes sit outside
   .wpd-scope, so the generic pill rules still won there: white on the orange gradient was 2.06:1; ink on
   the gradient is 5.3:1 on #EC643D and 9.2:1 on #F8AF3A. Ghost pills keep ink on white. ---------- */
.wpd-scope .wpd-hero__missie .wp-block-button__link { color: #1b1b1b !important; }
:is(#f-hero, #f-sluit) .sh-btn--white { color: var(--asb-deep) !important; }
.sh-hero--bg .sh-btn--orange,
.sh-hero--bg .sh-btn--dark,
.sh-hero--bg .wp-block-button.watson-btn--primary a.wp-block-button__link { color: #1b1b1b !important; }
.sh-hero--bg :is(.sh-btn--ghost, .sh-btn--line) { color: var(--asb-ink) !important; box-shadow: inset 0 0 0 2px var(--asb-ink) !important; }

/* ---------- header like live: white, no hairline, orange menu links ---------- */
.sh-header { box-shadow: none !important; border-bottom: 0 !important; }
.sh-nav a { color: var(--asb-ot) !important; font-weight: 400 !important; font-size: 17px !important; }
.sh-nav a[aria-current], .sh-nav a:hover { border-bottom-color: var(--asb-o) !important; }
/* F10-NAV (browser audit): the French labels make the nav 821px wide in the 773px between logo and CTA, so the first
   item sat 16px (up to 118px at 1101px) UNDER the logo. The same row, set a little tighter for the longer labels
   ("Centre d'expertise amiante" is 26 characters). Measured: logo-to-first-item >= 16px and nav-to-CTA >= 16px at
   every width from 1101 to 1920. */
html:lang(fr) .sh-nav a { font-size: 16px !important; }
html:lang(fr) .sh-nav ul { gap: 4px 14px; }
@media (max-width: 1219px) {
	html:lang(fr) .sh-main__in { gap: 18px 16px; }
	html:lang(fr) .sh-nav ul { gap: 4px 10px; }
	html:lang(fr) .sh-nav a { font-size: 15px !important; }
}

/* ---------- N03 (browser audit): the header really sticks ----------
   The bundle puts `position: sticky` on .sh-header, but WordPress renders the template part as
   <header class="wp-block-template-part"> and that wrapper holds nothing but this header, so it is
   exactly as tall (114px; 98px on phones) and the sticky element has zero travel: at scrollY 1500 the
   header sat at top -1500 on all 32 loads. The stickiness belongs on the wrapper, which has the page
   as its containing block. A negative `top` lets the 38px (34px) top bar scroll away and keeps the
   main row with the "Gratis offerte" CTA, which also buys back height on 720-768px laptops.
   Client solution; the trigger for a platform "sticky header part" contract is a second client whose
   header part brings its own <header>. */
:root {
	--asb-topbar-h: 38px;
	--watson-header-sticky-h: 76px;   /* what stays on screen: the main row */
	/* the engine's breadcrumb bar (css/design-system.css) lines up with this site's own container (.sh-wrap) */
	--watson-gutter: var(--g);
	--watson-content-w: var(--w);
}
@media (max-width: 781px) {
	:root { --asb-topbar-h: 34px; --watson-header-sticky-h: 64px; }
}
html { scroll-padding-top: calc(var(--watson-header-sticky-h) + var(--wp-admin--admin-bar--height, 0px) + 16px); }
.wp-site-blocks > header.wp-block-template-part {
	position: sticky;
	top: calc(var(--wp-admin--admin-bar--height, 0px) - var(--asb-topbar-h));
	z-index: 50;
}
.sh-header { position: relative; }
/* N03b (review round 2, replaced 30/10): the open phone menu used to be an absolutely positioned card under the Menu button that
   this block kept inside the viewport. It is the engine's menu sheet now (css/watson-layout.css section 16, js/watson-ui.js): a full-width
   sheet under the header row that scrolls inside itself, a dimmed page that does not scroll, "Sluiten" for the toggle, the quote button
   inside it. Nothing of the old card is left to keep in step. */

/* ---------- N04 (browser audit): the aside form and a persistent quote CTA at every width ----------
   The aside is 952px tall (form card + person card) and was stuck at top:130px, which put its submit
   button 182px under an 844px viewport. It now fits below the sticky header and scrolls inside itself
   when the viewport is shorter than the card. The upload field stays in the closing offer band; the
   aside drops it on viewports up to 900px high so the submit stays in view on laptops. */
.sh-aside {
	top: calc(var(--watson-header-sticky-h, var(--watson-header-h)) + var(--wp-admin--admin-bar--height, 0px) + 16px);
	max-height: calc(100svh - var(--watson-header-sticky-h, var(--watson-header-h)) - var(--wp-admin--admin-bar--height, 0px) - 32px);
	overflow-y: auto;
	overscroll-behavior: contain;
	scrollbar-width: thin;
}
@media (max-height: 900px) {
	.sh-aside .sh-upload { display: none; }
}
/* The client hides the nav, the header CTA and the aside at 1100px and below, but the engine only shows
   the phone action bar up to 781px: 782-1100px (tablets, a laptop at 125% scaling) had no persistent
   quote CTA at all. The bar now covers the whole band the header CTA is missing in. */
@media (min-width: 782px) and (max-width: 1100px) {
	.sh-sticky.watson-mobile-actions {
		display: grid;
		grid-template-columns: 1fr 1fr;
		position: fixed;
		inset-inline: 0;
		inset-block-end: 0;
		z-index: 70;
		box-shadow: 0 -4px 20px rgba(0, 0, 0, .2);
	}
	:root:has(.watson-mobile-actions) { --watson-bottom-offset: var(--watson-mobile-bar-h); }   /* 30/10: the engine's one number for what the bar covers (css/watson-layout.css s8) */
	body:has(.watson-mobile-actions) { padding-block-end: var(--watson-bottom-offset); }
}

/* ---------- section rhythm: padding on the band, never on inner wrappers ---------- */
.wpd-scope > .watson-band {
	padding-block: var(--watson-band-pt, var(--watson-section-space)) var(--watson-band-pb, var(--watson-section-space)) !important;
	margin-block: 0 !important;
}
.wpd-scope > .watson-band > :is([class*="__in"], .sh-wrap),
.wpd-scope > .watson-band > .sh-wrap > :is(section, .sh-auth, .sh-timeline-sec):first-child {
	padding-block: 0 !important;
	margin-block: 0 !important;
}
.wpd-scope > .watson-band > .sh-wrap > :last-child,
.wpd-scope > .watson-band > [class*="__in"] > :last-child { margin-block-end: 0 !important; }
.wpd-scope .watson-surface--paper { background: #fff !important; }
.wpd-scope .watson-surface--tint { background: var(--asb-tint) !important; }
.wpd-scope .sh-tiles { padding-bottom: 0; }

/* ---------- colours like live: orange headings, light-orange accent word, #333 text ---------- */
.wpd-scope :is(h2, .wp-block-heading:not(h1):not(h3):not(h4)) { color: var(--asb-o); }
/* F07/F11 (browser audit): one colour role for orange and amber. #EC643D (3.25:1) and #F8AF3A (1.9:1) are
   fills, bars and borders; text that is orange uses --asb-ot (#C23C12). This layer used to colour accent
   words amber (1.88:1 on white, 1.67:1 on peach), which also undid the AA fixes of the generated layers,
   and it did so only under .wpd-scope on the NL home, so subpages and the FR home got other tones.
   Unscoped: every accent word on every page is the same colour. */
h2 :is(span:not([class]), mark),
mark.watson-accent,
.sh-band h2 > span:not([class]) {
	color: var(--asb-ot) !important;
	background: none !important;
	-webkit-text-fill-color: currentColor;
}
.wpd-scope h3, .wpd-scope h3 * { color: var(--asb-ink); }
.wpd-scope .wpd-faq-nieuws h3 a, .wpd-scope .wpd-faq h3 { color: var(--asb-ot) !important; }
.wpd-scope :is(.watson-btn--link .wp-block-button__link, p:not(.sh-offerte__sub) a:not(.sh-btn), .watson-list__title, .wpd-over mark, .wpd-faq mark, .wpd-faq a, .wpd-over a, .wpd-over__over-label, .wpd-faq-nieuws mark) { color: var(--asb-ot) !important; }
.wpd-scope .watson-eyebrow:not(.wpd-veiligheid__bus-label):not(.wpd-veiligheid__kicker) { color: var(--asb-ot) !important; }
.wpd-scope .sh-fork__details > summary { color: var(--asb-ot); }
.wpd-scope :is(.wpd-faq-nieuws__datum-regelgeving, .wpd-faq-nieuws__datum-vinyl, .wpd-faq-nieuws__datum-prijs) { color: #595959 !important; }

/* buttons like live: gradient pill, soft shadow, never black; ink text (F11: white was 1.9-3.25:1) */
.wpd-scope .sh-btn--dark,
.wpd-scope a.sh-btn--dark,
.wpd-scope .sh-fork a.sh-btn--dark,
.wpd-scope .sh-btn--orange,
.wpd-scope .wp-block-button.watson-btn--primary a.wp-block-button__link {
	background: var(--asb-grad) !important;
	background-size: 200% auto !important;
	color: var(--asb-on-brand) !important; /* white on this gradient was 1.9-3.25:1; ink is 5.3:1 on #EC643D, 9.2:1 on #F8AF3A */
	border: 0 !important;
	border-radius: 24px !important;
	font-weight: 400 !important;
	box-shadow: 0 5px 20px rgba(0, 0, 0, .15) !important;
	transition: background-position .4s;
}
.wpd-scope :is(.sh-btn--dark, .sh-btn--orange, .watson-btn--primary a):hover { background-position: right center !important; }
.wpd-scope :is(.sh-btn--ghost, .sh-btn--line) {
	background: #fff !important;
	color: var(--asb-ot) !important;
	box-shadow: inset 0 0 0 2px var(--asb-o) !important;
	border: 0 !important;
}

/* a text link instead of a pill (round 2, point 7): the SECOND route under the intent cards. The first one is the page's one button there (it carried
   the same rule until 30/10, so the primary and the secondary route looked the same: the rule names the link, never every `a` of the container) */
.wpd-scope .sh-routes-simple a.sh-routes-link {
	background: none !important;
	box-shadow: none !important;
	padding: 0 !important;
	min-height: 0 !important;
	color: var(--asb-ot) !important;
	font-weight: 700 !important;
	text-decoration: underline !important;
	text-underline-offset: 4px;
	border-radius: 0 !important;
}

/* navigation cards (intent / auth) keep the asbitech-final look: white with a hairline.
   N08 (browser audit): unscoped - these were .wpd-scope rules, so the same card was white on the NL home and
   peach on every subpage and on the FR home. */
.sh-intent__card { background: #fff !important; box-shadow: inset 0 0 0 1.5px var(--asb-line) !important; }
.sh-auth li { background: #fff; box-shadow: inset 0 0 0 1.5px var(--asb-line); }

/* ---------- hero like live: one even 80% white layer over the photo ---------- */
.wpd-scope .wpd-hero,
.wpd-hero {
	/* round 3: option (b) two layers — near-solid white behind the text column, ~50% on the right —
	   over the calmer Brielenbrug worksite photo (Asbitech banner, crew in helmets).
	   Measured on rendered pixels (tools: pxcontrast.mjs): body text >= 10:1 at the worst pixel.
	   F07 (browser audit): the veil behind the text is .97 (phones .96): the orange H1 words are at the 3.26:1
	   ceiling of #EC643D on white, so the photo may not bleed through there (at .94/.90 the worst pixels read 2.7-2.9:1). */
	background:
		linear-gradient(90deg, rgba(255, 255, 255, .97) 0%, rgba(255, 255, 255, .97) 50%, rgba(255, 255, 255, .5) 64%, rgba(255, 255, 255, .5) 100%),
		url('../img/a936dc00-1f13-4b84-89c7-9634e17586ad.webp') 50% 78% / cover no-repeat !important;
	color: var(--asb-ink) !important;
}
@media (max-width: 781px) {
	.wpd-scope .wpd-hero,
	.wpd-hero {
		/* phones: the text spans the full width, so one even near-solid layer; the photo is the phone variant (hero_mobile.py, ~34 KB instead of 96 KB) */
		background: linear-gradient(rgba(255, 255, 255, .96), rgba(255, 255, 255, .96)), url('../img/hero-m/a936dc00-1f13-4b84-89c7-9634e17586ad.webp') 60% 78% / cover no-repeat !important;
	}
}
.wpd-scope .wpd-hero::before { content: none !important; }
.wpd-scope #hero { padding-block: clamp(16px, 2.2vh, 32px) !important; }
.wpd-scope .wpd-hero__in { padding-block: 0 !important; }
.wpd-scope .wpd-hero :is(p, li, .wpd-hero__intro, .wpd-hero__intro *) { color: var(--asb-ink) !important; text-shadow: none !important; }
/* live H1: light orange / orange two-tone */
.wpd-scope .wpd-hero__h1 { color: var(--asb-o) !important; }
.wpd-scope .wpd-hero__h1 mark.watson-accent { display: table !important; }
.wpd-scope .wpd-hero .asb-incidenten { color: #C23C12 !important; } /* AA round 4: #FF9900 on near-white is 2.09:1; #C23C12 is 5.3:1 on white, ~4.6:1 on the veil (pixel-measured 2026-10-11) */
.wpd-scope .wpd-hero__belofte { padding-block: 0 !important; row-gap: 16px !important; }
.wpd-scope .wpd-hero__intro p { margin: 0; }
/* ND9: the generated measure is 58ch, and 1ch is the width of "0" in whatever font is on screen: 10.7 px in the fallback,
   9.9 px in Sofia Sans, so the intro column was 621 px wide until the font arrived and 572 px after, the text re-wrapped
   and the card, centred against that column, moved. In em the measure does not depend on the font: 33.64em at 17px is the
   571.88 px the page has always ended up with. */
.wpd-scope .wpd-hero__intro { max-width: 33.64em; }
.wpd-scope .wpd-hero__intro p + p { margin-block-start: .5em; }
@media (min-width: 782px) {
	.wpd-scope .wpd-hero__belofte { grid-column: 1 / span 7 !important; align-self: center !important; }
	.wpd-scope .wpd-hero__offerte-kaart {
		grid-column: 9 / span 4 !important;
		align-self: center !important;
		margin: 0 !important;
		position: relative !important;
		top: auto !important;
		padding: 28px 32px !important;
		row-gap: 14px !important;
	}
}
/* live form card: light orange -> orange gradient, centred heading, white-lined fields.
   F24 (browser audit): the field, placeholder, note and submit rules below were scoped to .wpd-scope (the NL
   home only), so the closing form on the FR home and on every subpage fell back to the generated
   transparent field on the gradient. They key on the form ids now, so a form looks the same wherever it sits. */
.wpd-scope .wpd-hero__offerte-kaart { --watson-surface-ref: #F8AF3A; background: linear-gradient(#F8AF3A 0%, #EC643D 100%) !important; border-radius: 24px !important; }   /* the surface declares its lightest stop; ink holds on both ends (tools/check_surface_contrast.py) */
.wpd-scope .wpd-hero__offerte-kop,
.wpd-scope .wpd-hero__offerte-kop * { color: var(--asb-on-brand) !important; text-align: center !important; font-size: clamp(24px, 1vw + 14px, 30px) !important; line-height: 1.15; margin: 0 !important; }
:is(#f-hero, #f-sluit) { gap: 14px; }
:is(#f-hero, #f-sluit) .sh-field :is(input[type=text], input[type=email], input[type=tel], textarea) {
	background: rgba(255, 255, 255, .18) !important;
	border: 1px solid #fff !important;
	border-radius: 3px !important;
	color: var(--asb-deep) !important; /* white text/placeholders on the gradient were 1.9:1 at the top; deep red is 4.6:1 on #EC643D, 8:1 on #F8AF3A */
	font-size: 15px !important;
	padding: 8px 14px !important;
	min-height: 40px;
}
:is(#f-hero, #f-sluit) textarea { height: 96px; resize: vertical; }
:is(#f-hero, #f-sluit) ::placeholder { color: var(--asb-deep); opacity: 1; }
:is(#f-hero, #f-sluit) .sh-consent label,
:is(#f-hero, #f-sluit) :is(.sh-form__note, .sh-help, .sh-upload label) { color: var(--asb-deep) !important; }
:is(#f-hero, #f-sluit) .bouw-form-consent { margin: 2px 0 0; font-size: 12.5px; line-height: 1.4; color: #2E0C02 !important; font-weight: 600; } /* AA round 4: --asb-deep (#4A1403) on the mid-gradient is 4.01:1; #2E0C02 is ~5:1 (pixel-measured round 2) */
:is(#f-hero, #f-sluit) button[type=submit] {
	background: #fff !important;
	color: #C23C12 !important; /* AA round 4b: --asb-o (#EC643D) on white is 3.25:1; #C23C12 is 5.3:1 (pixel-measured 2026-10-11) */
	border: 3px solid var(--asb-o) !important;
	border-radius: 24px !important;
	font-size: 17px !important;
	font-weight: 800 !important;
	padding-block: 8px !important;
	box-shadow: none !important;
}
@media (max-width: 781px) {
	.wpd-scope #hero { padding-block: 20px 28px !important; }
	.wpd-scope .wpd-hero__in { row-gap: 22px !important; }
}

/* ---------- trust bar: centered label, one line of logos (marquee on phones) ----------
   N05 (browser audit): this block was scoped to .wpd-scope, which only the NL home has, so the FR home and
   the 49 subpage trust bars kept the generated bridge rule `.wpd-klanten__logorij{display:flex!important;
   flex-wrap:nowrap!important}` + `>*{width:auto!important}`: the track became a max-content flex item
   (1354px in a 1120px bar) and overflow:hidden cut 2 of 10 logos. Unscoped, the same rules now apply to
   every trust bar. The track needs an explicit width because the bridge's `width:auto!important` on its
   children beats the engine's `width:max-content`: max-content on phones (a seamless loop: the keyframe
   shift is half the track), auto from 782px up (wraps inside the bar, duplicates hidden). The mobile
   rules for .sh-trust that used to be hand-edited into the generated bundle (the marquee overrides at
   the old L6378 and L6511-6516, a duplicate @keyframes) are gone: the engine's marquee does this now. */
.wpd-scope > .wpd-klanten { --watson-band-pt: var(--watson-section-space-s); --watson-band-pb: var(--watson-section-space-s) !important; border-block-end: 1px solid var(--asb-line); }
.wpd-scope .wpd-klanten__in { display: block !important; }
.wpd-scope .wpd-klanten .sh-trust__l { text-align: center; margin: 0 0 12px !important; }
.wpd-klanten__logorij.is-style-watson-marquee { display: block !important; --watson-marquee-logo-h: 30px; --watson-marquee-gap: clamp(28px, 3vw, 44px); }
.wpd-klanten__logorij.is-style-watson-marquee > .watson-marquee__track { width: max-content !important; }
.wpd-klanten__logorij .watson-marquee__track > figure { max-width: none !important; }
.wpd-klanten__logorij .watson-marquee__track img { height: var(--watson-logo-h, var(--watson-marquee-logo-h)) !important; width: auto !important; max-width: 112px !important; aspect-ratio: auto !important; }
@media (min-width: 782px) {
	.wpd-klanten__logorij.is-style-watson-marquee { --watson-marquee-logo-h: 28px; }
	.wpd-klanten__logorij.is-style-watson-marquee:not(.watson-marquee--always) > .watson-marquee__track { width: auto !important; }
}
/* reduced motion: the engine lets the row be swiped; the phone mask/overflow rules must not undo that */
@media (prefers-reduced-motion: reduce) {
	.wpd-klanten__logorij.is-style-watson-marquee { overflow-x: auto; }
}

/* ---------- reviews: typography, no boxes, no italic grey ---------- */
.wpd-scope .sh-quote.watson-testimonial,
.wpd-scope .sh-quote-free.watson-testimonial {
	background: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 46px 0 0 !important;
	transform: none !important;
	max-width: none;
}
.wpd-scope .sh-quote-free.watson-testimonial { max-width: 760px; margin-inline: auto !important; text-align: center; }
.wpd-scope :is(.sh-quote, .sh-quote-free).watson-testimonial::before {
	content: "\201C" !important;
	position: absolute !important;
	top: 0 !important;
	left: -3px !important;
	display: block;
	margin: 0 !important;
	font: 700 72px/1 Georgia, "Times New Roman", serif !important;
	color: var(--asb-o) !important;
	opacity: 1 !important;
}
.wpd-scope .sh-quote-free.watson-testimonial::before { left: 50% !important; transform: translateX(-50%); }
.wpd-scope :is(.sh-quote, .sh-quote-free).watson-testimonial p {
	font-style: normal !important;
	color: var(--asb-ink) !important;
	font-size: clamp(17px, .4vw + 15px, 20px) !important;
	line-height: 1.55;
	margin: 0 0 10px !important;
}
.wpd-scope .sh-quote-free.watson-testimonial p { font-size: clamp(20px, .8vw + 16px, 26px) !important; }
.wpd-scope :is(.sh-quote, .sh-quote-free).watson-testimonial cite { color: var(--watson-ink-soft) !important; font-weight: 700; font-style: normal; }
.wpd-scope .sh-quotes.watson-testimonials { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: clamp(24px, 4vw, 56px); }

/* ---------- Kosten en premies: worksite photo under a white layer (50% left orange text at 2.4:1 on the photo; F07) ----------
   30/10 (visual audit): the fence's dark bars and warning signs ran behind the text column and the link on a phone. The layer is calmer
   where the text is: .9 white behind the text column, .72 only on the far side of the photo (desktop); one even .9 on a phone, where the
   form card covers the rest. */
.wpd-scope .wpd-kosten-cijfers.watson-surface--photo { --asb-kosten-veil: linear-gradient(rgba(255, 255, 255, .9), rgba(255, 255, 255, .9)); }
@media (min-width: 901px) {
	.wpd-scope .wpd-kosten-cijfers.watson-surface--photo { --asb-kosten-veil: linear-gradient(90deg, rgba(255, 255, 255, .92) 0%, rgba(255, 255, 255, .88) 40%, rgba(255, 255, 255, .72) 100%); }
}
.wpd-scope .wpd-kosten-cijfers.watson-surface--photo {
	/* the photo is set here, not via --watson-photo: a relative url() inside a custom property
	   resolves against the stylesheet that USES it (css/watson-layout.css), not this one */
	background: var(--asb-kosten-veil), url('../img/projects/asbestsanering-deurne-brug-02.webp') 50% 50% / cover no-repeat !important;
	color: var(--asb-ink) !important;
}
.wpd-scope .wpd-kosten-cijfers :is(p, li, label, span:not(.sh-btn)) { color: var(--asb-ink) !important; }
.wpd-scope .wpd-kosten-cijfers :is(h2, h2 *) { -webkit-text-fill-color: currentColor; }
.wpd-scope .wpd-kosten-cijfers h2 { color: var(--asb-ot) !important; } /* the heading sits on the photo, not on white: #EC643D measured 2.4:1 there */
.wpd-scope [class*="wpd-kosten"] .watson-btn--link .wp-block-button__link {
	color: var(--asb-ink) !important; /* a link on the photo: ink (pixel median 4.4-4.7:1 in the AA orange, <4.5) */
	background: none !important;
	border-color: currentColor !important;
}
.wpd-scope .wpd-kosten-cijfers__kosten-acties { flex-direction: column !important; flex-wrap: nowrap !important; align-items: flex-start !important; gap: 18px !important; height: auto !important; }
.wpd-scope .sh-fork { background: #fff; box-shadow: 0 10px 34px rgba(51, 51, 51, .12) !important; border: 1.5px solid var(--asb-line) !important; }

/* ---------- Wetgeving like live "Onze diensten / Specifieke asbestverwijdering":
   ink type on the orange gradient (white was 1.8-2.7:1, F11), boxed photo, text links instead of pills ---------- */
/* Round 8 (B1) / round 9 (R9-1): the text on this surface is not chosen here, it is DERIVED (css/watson-layout.css 1b): the
   surface declares the colour of its worst place (--watson-surface-ref = the lightest stop of the gradient) and the engine
   gives the text colour that holds on it. This is the site's one orange look: the coral -> amber gradient of the hero offer
   card and of the "Vragen? Of een offerte nodig?" band. White is 3.25:1 on #EC643D and 1.88:1 on #F8AF3A (normal text needs
   4.5:1, large text 3:1: it fails at the amber end), so the derivation says near-black, and that near-black is the ink the other
   orange surfaces use (#1b1b1b: 5.30:1 on #EC643D, 9.17:1 on #F8AF3A). Round 8 had put a deeper orange here so that white
   passed; it exists nowhere else on the site and is gone again. tools/check_surface_contrast.py reads --watson-surface-ref and
   every stop of the background of this rule and prints both candidates. */
.wpd-scope .wpd-veiligheid {
	--watson-surface-ref: #F8AF3A;
	background: linear-gradient(#EC643D 0%, #F8AF3A 100%) !important;
}
/* the fallback (a browser without relative colours) is the ink of the other orange surfaces */
.wpd-scope .wpd-veiligheid :is(h2, h2 *, h3, h3 *, .wpd-veiligheid__intro, .wpd-veiligheid__intro *, .wpd-veiligheid__kicker, p, .sh-case__detail) { color: var(--watson-on-surface, var(--asb-on-brand)) !important; -webkit-text-fill-color: currentColor; opacity: 1; }
/* A link in a paragraph of this surface (A3) keeps ONE underline, in the text colour: the underline is the text-decoration only.
   The second line it used to show was a border-bottom of the approved static design (.wpd-veiligheid p a{border-bottom:2px}),
   which light_layer.py now removes from the generated part (R9-2). A link in a heading is a quiet link (finish.py gives it
   .watson-quiet): a title at rest, an underline on hover and focus. */
.wpd-scope .wpd-veiligheid p a:not(.wp-block-button__link) { color: var(--watson-on-surface, var(--asb-on-brand)) !important; text-decoration: underline; text-decoration-thickness: .08em; text-underline-offset: .2em; }
/* the keyboard focus of a quiet link is a ring, not only an underline (engine 12 gives the underline) */
.watson-quiet:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; border-radius: 2px; }
.wpd-scope .wpd-veiligheid__busfoto { margin: 0 !important; align-self: start !important; position: relative !important; }
.wpd-scope .wpd-veiligheid__bus-beeld { margin: 0 !important; }
.wpd-scope .wpd-veiligheid__bus-beeld img,
.wpd-scope .wpd-scope .wpd-veiligheid__bus-beeld img { border-radius: 24px !important; aspect-ratio: 4 / 5 !important; height: auto !important; width: 100% !important; object-fit: cover; object-position: 30% 50% !important; }
/* "Kwaliteit gegarandeerd": the label on the photo, as a white pill (round 3) */
.wpd-scope .wpd-veiligheid__bus-label {
	position: absolute !important;
	left: 20px; bottom: 20px;
	margin: 0 !important;
	padding: 10px 20px !important;
	background: #fff !important;
	border: 0 !important;
	border-radius: 24px !important;
	box-shadow: 0 5px 20px rgba(0, 0, 0, .2) !important;
	color: var(--asb-ot) !important;
	-webkit-text-fill-color: currentColor;
	font-size: clamp(15px, .6vw + 11px, 18px) !important;
	letter-spacing: .08em;
	text-shadow: none !important;
}
/* case links + Wetgeving: buttons again, as on live (round 3) — white pill, orange text; one row,
   sized to their text so they never overlap the neighbouring case. A label longer than its column wraps inside the pill
   instead of running out of it (ND1: the French "Découvrez la réalisation" in the 205px column of a 390px viewport sat
   1px beyond the screen, hidden by the page's overflow-x: clip): the pill and the button around it may shrink to the
   column, whatever the language or the length of the label. */
.wpd-scope .wpd-veiligheid :is(.wpd-veiligheid__vlasbloempje-link, .wpd-veiligheid__sint-clara-link, .wpd-veiligheid__knoppen) a,
.wpd-scope .wpd-veiligheid .wp-block-button .wp-block-button__link.wp-element-button,
.wpd-scope .wpd-veiligheid .wp-block-button__link {
	display: inline-flex !important;
	align-items: center;
	gap: 6px;
	background: #fff !important;
	color: var(--asb-ot) !important;
	border: 0 !important;
	border-radius: 24px !important;
	padding: 8px 18px !important;
	min-height: 0 !important;
	font-weight: 700 !important;
	letter-spacing: 0 !important;
	white-space: normal !important;
	overflow-wrap: break-word;
	text-align: center;   /* a label that wraps inside its pill centres its lines (a one-line pill shrinks to its text, so this only shows when it wraps) */
	width: auto !important;
	max-width: 100%;
	text-decoration: none !important;
	box-shadow: 0 5px 20px rgba(0, 0, 0, .15) !important;
}
.wpd-scope .wpd-veiligheid :is(.wpd-veiligheid__vlasbloempje-link, .wpd-veiligheid__sint-clara-link, .wpd-veiligheid__knoppen),
.wpd-scope .wpd-veiligheid :is(.wpd-veiligheid__vlasbloempje-link, .wpd-veiligheid__sint-clara-link, .wpd-veiligheid__knoppen) .wp-block-button { min-width: 0; max-width: 100%; }
@media (min-width: 782px) {
	.wpd-scope .wpd-veiligheid__busfoto { grid-row: 1 / span 4 !important; }
	.wpd-scope .wpd-veiligheid__case-sint-clara { margin-block-start: 8px !important; }
}
@media (max-width: 781px) {
	.wpd-scope .wpd-veiligheid__bus-beeld img { aspect-ratio: 4 / 3 !important; }
}

/* ---------- closing offer band: one component on every page (F05, F24) ----------
   It is the same markup 75 times but was styled three ways because the fixes hung on .wpd-scope (the NL
   home only): white "Vragen?" on the home (1.9:1 at the top of the gradient), amber on amber on the
   subpages (1.07:1: the unscoped accent rule hit this span too), a reversed gradient on the FR home, and
   the phone link in the engine's prose-link orange (1.5:1). Now: one gradient, ink text for the heading,
   the accent span, the sub line and the phone link (5.3:1 on #EC643D, 9.2:1 on #F8AF3A), boxed photo. */
.sh-band.sh-offerte { --watson-surface-ref: #F8AF3A; background: linear-gradient(#F8AF3A 0%, #EC643D 100%) !important; }
.sh-band.sh-offerte :is(h2, h2 *, .sh-offerte__sub, .sh-offerte__sub a) { color: var(--asb-on-brand) !important; background: none !important; -webkit-text-fill-color: currentColor; }
.sh-band.sh-offerte .sh-offerte__sub a { text-decoration: underline; text-underline-offset: 3px; }
.sh-offerte__foto img { border-radius: 30px !important; aspect-ratio: 460 / 545 !important; height: auto !important; max-height: none !important; width: 100%; max-width: 460px; object-fit: cover; object-position: 50% 0; }   /* media.py cuts the portrait to 460x545: shown at or below that, never stretched (30/10) */
.sh-offerte__in { align-items: center !important; }
#f-sluit ::placeholder { color: var(--asb-deep); opacity: 1; }
#f-sluit :is(.sh-help, .sh-upload label, .sh-upload__list, .watson-file__name) { color: var(--asb-deep) !important; }
#f-sluit .sh-upload input[type=file] { color: var(--asb-deep); background: rgba(255, 255, 255, .15) !important; border-color: rgba(255, 255, 255, .7) !important; }

/* ---------- root causes of the empty strips ---------- */
.wpd-scope .wpd-realisaties__alle { margin-top: clamp(20px, 2vw, 32px) !important; }
.wpd-scope .wpd-team__in { padding-block: 0 !important; }
.wpd-scope .wpd-team__portretten > * { transform: none !important; margin-block-start: 0 !important; }
.wpd-scope .wpd-diensten__diensten-routes { row-gap: clamp(28px, 3vw, 40px) !important; margin-block-start: 8px !important; }
.wpd-scope .wpd-diensten__diensten-routes > .watson-list__item { margin-block-start: 0 !important; transform: none !important; }

/* ---------- no black chrome on phones ---------- */
.watson-mnav > summary.watson-menu-toggle { padding: 9px 18px; font-weight: 800; }
.sh-sticky.watson-mobile-actions > a[href] { font-size: 19px; }

/* ---------- readable copy on the home ---------- */
.wpd-scope :is(.wpd-over__over-tekst, .wpd-over__over-intro, .wpd-faq-nieuws__nieuws-text) > p { margin: 0 !important; }
.wpd-scope :is(.wpd-over__over-tekst, .wpd-over__over-intro, .wpd-faq-nieuws__nieuws-text) > p + p { margin-block-start: .8em !important; }
.wpd-scope :is(.wpd-over, .wpd-diensten, .wpd-faq-nieuws) p strong { color: var(--asb-ink); }

/* ---------- subpages: same white 80% layer over the hero photos, live colours ----------
   AA round 3 (2026-10-11): on the ~80% white veil the live two-tone fails WCAG —
   #EC643D on the veil is 2.5:1, #F8AF3A is 1.4:1 (large text needs 3:1). The live
   site keeps the two-tone on its dark overlay; on the light veil both tones go to
   readable dark tones: .a1 (live accent) = #C23C12 (4.0:1 on the worst-case veil),
   .a2/base = var(--asb-ink) #333 (9.6:1). Unscoped on purpose: subpage content has
   no .wpd-scope wrapper. ---------- */
/* two-tone H1 on a plain (white) hero: the generated .a1 is amber (1.88:1); same accent colour as everywhere else */
.sh-hero h1 .a1 { color: var(--asb-ot); }
.sh-hero h1 .a2 { color: var(--asb-ink); } /* #EC643D is 2.9:1 on the peach hero; the photo heroes below already use ink here */
.sh-hero--bg :is(h1, p, li) { color: var(--asb-ink) !important; text-shadow: none !important; }
.sh-hero--bg h1 { color: var(--asb-ink) !important; }
.sh-hero--bg h1 .a1 { color: #C23C12 !important; }
.sh-hero--bg h1 :is(.a2, span:not(.a1), mark, em) { color: var(--asb-ink) !important; }
.breadcrumb-item a { color: var(--asb-ot) !important; }

/* ---------- FR homepage ----------
   The unscoped "FR fallbacks" that lived here (AA round 3) existed because /fr/ had no .wpd-scope wrapper,
   so every scoped override missed it. /fr/ now has the same wpd-page wpd-scope wrapper as the NL home
   (N06), and gets the scoped rules like the NL page does; the fallbacks are gone, so FR and NL can
   no longer drift apart in colour. ---------- */

/* ---------- round 3: video plays in place (the figure shrank to 0 once the poster img was replaced) ---------- */
.wpd-scope .wpd-over__over-video-poster { width: 100% !important; display: block !important; }
.wpd-scope .wpd-over__over-video-poster .video-embed { width: 100% !important; }
.wpd-scope .wpd-over__over-video-poster .video-embed:has(iframe) { aspect-ratio: 16 / 9 !important; }

/* ---------- round 3: sticky media column next to the long "over" text (platform watson-sticky-media) ---------- */
@media (min-width: 900px) {
	.wpd-scope .wpd-over__over-media.watson-sticky-media { position: sticky !important; top: 104px; align-self: start !important; }
}

/* ---------- round 3: intent cards lift on hover (platform watson-hover-lift; off under reduced motion) ----------
   N08: the engine class is opt-in per card, so build_static.py now puts it on every .sh-intent__card (it used to
   be hand-added to the two home pages only); the ring survives the engine's own shadow. */
.sh-intent__card.watson-hover-lift:is(:hover, :focus-within) { box-shadow: inset 0 0 0 1.5px var(--asb-line), 0 14px 34px rgba(51, 51, 51, .12) !important; }

/* ---------- round 3: footer with an "Asbest saneren" column ---------- */
@media (min-width: 900px) {
	.sh-footer__in { grid-template-columns: 1.3fr 1fr 1fr 1.1fr !important; gap: 40px !important; }
}
.wpd-scope .wpd-veiligheid p.wpd-veiligheid__bus-label { color: var(--asb-ot) !important; -webkit-text-fill-color: var(--asb-ot); }

/* ---------- AA round 4 (2026-10-11): pixel-measured FAILs after round 3 ----------
   1. NL+FR hero-call pill: on NL the scoped gradient-pill rule (0,4,1) still beats the
      round-3 unscoped ink rule; on FR the pill has no gradient bg (that rule is
      .wpd-scope-scoped) and falls back to the theme's dark button (ink on dark 1.59:1).
      One unscoped rule with the gradient + ink text beats both. Ink on the gradient is
      5.3:1 on #EC643D, 9.2:1 on #F8AF3A (pixel-measured).
   2. NL offerte-kop: a white rule with specificity >= (0,2,1) beats the round-3 unscoped
      ink rules on NL (FR passes via those). Scoped ink rule restores it.
   3. NL hero checks: a link inside .wpd-hero__checks li inherits the live accent
      #EC643D on white (3.25:1); #C23C12 is 5.3:1. ---------- */
.wpd-hero .wpd-hero__missie .wp-block-button.watson-btn--primary a.wp-block-button__link {
	background: var(--asb-grad) !important;
	color: #1b1b1b !important;
	border-radius: 24px !important;
}
.wpd-scope .wpd-hero__offerte-kaart .wpd-hero__offerte-kop,
.wpd-scope .wpd-hero__offerte-kaart .wpd-hero__offerte-kop * { color: #1b1b1b !important; }
.wpd-scope .wpd-hero__checks li a { color: #C23C12 !important; }

/* ---------- shared components that sit in the article column (F15, F16, F27, F28) ----------
   One generated rule - "D6: .sh-sec ul, .sh-sec ol { display: flow-root }" - used to flatten every list in a
   section, which beat the component lists (team grid, auth cards, timeline). light_layer.py now narrows that
   selector to prose lists (class-less or .wp-block-list, no .sh-* component class, not inside .sh-auth), so
   those components get their own display back. The timeline and the CTA strip below were designed for a
   1140px band and are given a shape that follows their CONTAINER, not the viewport: the article column is
   658-722px wide on every desktop width. */

/* F28 timeline: a rail with the steps beside it by default; the row only where the container is wide enough
   (home, FR home: 1056-1140px). `ul.sh-timeline > li` outranks `.sh-article ul li` (padding-left 30px), which
   used to put the rail 31px beside the circles; `ul.sh-timeline` outranks the viewport-keyed row at 768px. */
.sh-timeline-sec { container-type: inline-size; }
ul.sh-timeline { display: flex; flex-direction: column; gap: var(--tl-gap, 24px); padding: 0; }
ul.sh-timeline > li { display: flex; flex-direction: row; flex: none; align-items: flex-start; gap: 16px; padding-left: 0; margin: 0; }
.sh-timeline__step { margin-top: -4px; margin-left: 0; }
/* Round 8 (B7): the connector belongs to a STEP, not to the list. The list used to draw ONE rail over its whole height
   (::before, top 0 to bottom 0), so the line ran on past the last circle (5 of 5, 3 of 3, 4 of 4) and began above the
   first. Now every step but the last draws the line from the centre of its circle to the centre of the next one, behind
   the circles: step one has no line coming in, the last step has none going out, and a list of one has none at all. The
   same rule for the rail (column) and the row (container >= 900px). Measure (circle 32px with its 4px ring, gap --tl-gap):
   column: down from the circle's centre (12px below the item's top, the circle sits 4px high) to the next circle's centre;
   row: right from the circle's centre (16px) to the next circle's centre (item width + gap + 16px). */
.sh-timeline::before { content: none !important; }
ul.sh-timeline > li:not(:last-child)::after {
	content: ""; position: absolute; z-index: 0; background: #e5e5e5;
	left: 15px; width: 2px; top: 12px; bottom: calc(-1 * (var(--tl-gap, 24px) + 12px));
}
@container (min-width: 900px) {
	ul.sh-timeline { flex-direction: row; gap: 20px; --tl-gap: 20px; }
	ul.sh-timeline > li { flex-direction: column; flex: 1; }
	.sh-timeline__step { margin-top: 0; }
	ul.sh-timeline > li:not(:last-child)::after { left: 16px; right: calc(-1 * (var(--tl-gap, 20px) + 16px)); width: auto; top: 15px; bottom: auto; height: 2px; }
}

/* F27 dark CTA strip: the text column wants room, so the actions wrap under it as soon as the strip is narrower
   than ~830px (it was 287px of text beside a 370px button + phone row inside the 722px article); a strip
   in a CTA band inside the article spans the article; in a two-column block it spans both columns. */
@media (min-width: 782px) {   /* from 782px the strip is a row; on phones it is a column, where a flex-basis is a HEIGHT */
	.sh-ctastrip p:not(.sh-ctastrip__a) { flex: 1 1 400px; }
}
.sh-article .sh-ctaband { padding: 0; background: none; }
.sh-article .sh-ctaband > .sh-wrap { width: auto; margin-inline: 0; }
/* F27 (review rounds 2 and 3): a strip in a two-column grid spans both columns. On /premies/ the approved source put the strip
   BETWEEN the two sections, which left both 345px sections one per row beside an empty cell. build_static.py now emits the strip
   after the last section (tools/check_layout_contract.py child_order), so the sections sit side by side and the strip closes the
   grid, and the DOM order is the visual order. No grid-auto-flow:dense: it would put a later section above an earlier strip on
   screen while focus and reading order stay the other way round (WCAG 2.4.3). */
.sh-2col > .sh-ctastrip { grid-column: 1 / -1; }

/* ---------- N07b (browser audit): a button label may wrap ----------
   .sh-btn is inline-flex + white-space:nowrap with no max-width (the approved static design never
   met a 390px column with a 45-character label): "Vraag een offerte voor verwijdering + nieuw dak"
   was 380px wide from x=48 and stuck 38px out of the phone. Scoped to <main>: the header CTA lives
   in the header part, outside <main>, and must stay one line (its FR label is longer than the NL one,
   and a shrinkable CTA would wrap to two lines in a nav row that is already tight). ---------- */
main .sh-btn { white-space: normal; max-width: 100%; text-align: center; text-wrap: balance; }

/* ---------- F30 (browser audit): the item for the page you are on ----------
   A row of sibling links (the intent chips, the three routes) keeps its item for the current page, marked
   aria-current and without a link (finish.py neutralise_self_links). It reads as "you are here", so it
   must not react like a link. ---------- */
.sh-chips a[aria-current="page"], .sh-routes a[aria-current="page"] { cursor: default; }
.sh-chips a[aria-current="page"]:hover { background: #fff; }
.sh-routes a[aria-current="page"] { color: var(--asb-ink); }
.sh-routes a[aria-current="page"]:hover { text-decoration: none; }

/* ---------- F13 (browser audit): a project page shows its own photo, and says which strip is whose ----------
   The lead photo of a realisatie is content now: the full width of the article column, in the photo's own
   proportions up to a height cap (a portrait phone photo would otherwise be 960px tall). The strip of OTHER
   projects under the page gets a heading, so it no longer reads as this project's gallery. ---------- */
.sh-article .sh-fig--lead { float: none; width: 100%; max-width: none; margin: 0 0 clamp(20px, 3vw, 32px); }
.sh-article .sh-fig--lead img { display: block; width: 100%; height: auto; max-height: min(70vh, 640px); aspect-ratio: auto; object-fit: cover; }
.sh-strip-head { padding-top: clamp(32px, 4vw, 56px); }
.sh-strip-head h2 { margin: 0; }

/* =====================================================================================================================
   ROUND 6 (browser audit 15/10) — the design polish the judge released, one rule per measured finding.
   Class: client solution (the .sh-* vocabulary is this site's). The numbers are the ones the audit measured on the preview
   (1440x900, article column 742px), reproduced on a local render of the same CSS before the change.
   ===================================================================================================================== */

/* F02 / F03 / F21: two columns only where each can hold a figure AND the text beside it.
   /sanering/ and /premies/ put two sections side by side inside the 742px article column: two columns of 355px, an H2 of 38px
   over 3-4 lines, an H3 of 26px over 5-6 lines and a 149x112 float with 166px of text beside it. The columns now stack until a
   column can be 560px wide (a container of 1152px, which the page grid never gives the article: it is 658-742px). By
   construction no float sits in a container below 560px, so no float needs to become a block image: on phones the bundle already
   makes it one (max-width 781px). The CTA strip keeps spanning every column (grid-column 1 / -1 above). */
.sh-2col { grid-template-columns: repeat(auto-fit, minmax(min(100%, 560px), 1fr)); }

/* F34: the one portrait figure (/over-ons/, 3:4) floated at the width of a landscape one: 312x416 with 391px of text beside it.
   A portrait is taller than the paragraph that wraps it, so it takes a smaller share: 267x356, 435px of text. Phones keep the
   bundle's full-width block image. */
@media (min-width: 782px) {
	.sh-article .sh-fig--tall { width: min(36%, 340px); }
}

/* F26: a heading is set off from the block it heads by one step of a spacing scale, not by whatever the next block's margin
   happens to be. Inside a section the heading met its paragraph at 0px (the audit: 24 headings under 8px on /sanering/, 18 on
   /veiligheid/, 14 on /wetgeving/): the article's `> * + *` rhythm only reaches the article's own children. The step follows the
   heading's level and never goes below 8px; vertical margins collapse, so a block that already has more space above keeps it. */
:root { --asb-gap-s: 8px; --asb-gap-m: 12px; --asb-gap-l: 16px; }
.sh-article :is(.sh-sec, .sh-details__content) > h2 { margin-bottom: var(--asb-gap-l); }
.sh-article :is(.sh-sec, .sh-details__content) > h3 { margin-bottom: var(--asb-gap-m); }
.sh-article :is(.sh-sec, .sh-details__content) > h4 { margin-bottom: var(--asb-gap-s); }
.sh-article ol.sh-dossier h3 { margin-bottom: var(--asb-gap-s) !important; }   /* the bundle pins these at 6px with !important */
.sh-case > div, .sh-auth li { gap: var(--asb-gap-s); }   /* the cards' own title-to-text rhythm was 6px: the same minimum */
.sh-fork h2 { margin-bottom: var(--asb-gap-s) !important; }   /* the price calculator's title: 6px, pinned with !important in the bundle */

/* F20: one accordion. The page carried two: details.sh-faq (hairlines, an amber square, 18px/800) and details.sh-details (a white box
   with 8px corners, a text "+" and a 17px/700 title), and the box held an H2 of 38px under its 17px title. The FAQ is the approved
   design, so the box takes its shape: same markup (details > summary), same look. Inside a panel the headings step down one level
   (H2 24px, H3 20px, H4 17.5px) so the content never out-shouts the title of the panel it sits in. */
details.sh-details { background: none; border: 0; border-top: 1px solid #e6dcd6; border-radius: 0; margin: 0; overflow: visible; }
details.sh-details:last-of-type { border-bottom: 1px solid #e6dcd6; }
details.sh-details > summary { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 16px 4px; background: none; font: 800 18px/1.3 "Noto Sans", sans-serif; color: var(--dark); }
details.sh-details > summary :is(h2, h3) { margin: 0; font: inherit; color: inherit; display: block; }
details.sh-details > summary::after { content: "+"; position: static; transform: none; flex: none; width: 32px; height: 32px; display: grid; place-items: center; background: var(--a); color: var(--ink); font-size: 22px; line-height: 1; }
details.sh-details[open] > summary { color: var(--ot); }
details.sh-details[open] > summary::after { content: "\2212"; background: var(--o); }
details.sh-details > .sh-details__content { padding: 0 4px 18px; border-top: 0; }
.sh-article .sh-details__content h2 { font-size: clamp(21px, 1vw + 12px, 24px); }
.sh-article .sh-details__content h3 { font-size: clamp(18px, .6vw + 13px, 20px); }
.sh-article .sh-details__content h4 { font-size: 17.5px; }

/* =====================================================================================================================
   ROUND 8 (Jef's walk-through in Safari, 21/10) - design and layout, one rule per finding (B1-B10).
   Class: client solution (the .sh-* / .wpd-* vocabulary is this site's); the mechanisms they lean on are engine CSS
   (css/watson-layout.css 1b/1c, css/concept-sections.css). B1 (on-surface) and B7 (timeline connectors) sit where the
   rules they replace sat, above.
   ===================================================================================================================== */

/* ---------- B2: buttons never touch ----------
   The engine sets the floor (--watson-btn-gap, 20px) for core button rows. These two rows are .sh-btn flex rows of the
   approved static design: the quote button and the phone button of the price calculator were 10px apart, those in the
   hero of every subpage 12px. */
.sh-fork__cta, .sh-hero__cta, .sh-ctastrip__a, .sh-method__cta { gap: var(--watson-btn-gap, 20px); }
/* two button rows that follow each other in one column keep the gap between them (a grid cell does not collapse margins) */
.wpd-scope .wpd-veiligheid :is(.wpd-veiligheid__vlasbloempje-link, .wpd-veiligheid__sint-clara-link) + * { margin-block-start: var(--watson-btn-gap, 20px); }

/* ---------- B3: the review block has the same space above as below, and the same side inset as the band under it ----------
   The quotes sat 40px (list margin) + 18px under the steps, the next band starts 73px under the button: the quotes
   "stuck" to the block above. The band's own side padding (32px, 20px on a phone) also set the whole block 20px in from
   the band under it on a phone (x 36 against 16). One value for the space (the band's own padding, minus the 11px the
   quote mark's line box already has above its ink) and no side padding: the .sh-wrap carries the inset. */
.wpd-scope .sh-band.sh-method { padding-inline: 0; }   /* the home's band only: on a subpage the band is a tinted frame in the article column and keeps its own side padding (round 8 took it away there: the quote card touched the frame, R9-3) */
.sh-method .sh-timeline-sec > ul.sh-timeline { margin-bottom: 0; }
.sh-method .sh-quotes { margin-top: calc(var(--watson-section-space) - 11px); }

/* ---------- B4: the phone number of the contact card is never cut ----------
   Safari gave the text column of the card a width of 85px (a flex item with no flex-basis, sized to its shortest word)
   and broke the number over two lines, which read as "cut off". The text column takes what is left of the card, and
   a number is one unit: it never breaks in the middle (nowrap), and it shrinks (clamp) before it would not fit. */
.sh-person { container-type: inline-size; }
.sh-person p { flex: 1 1 0; min-width: 0; }
.sh-person a { white-space: nowrap; font-size: clamp(14px, 6.2cqi, 17px); overflow-wrap: normal; }
main a[href^="tel:"] { white-space: nowrap; }   /* a phone number is one unit wherever it sits (the closing band's line broke it after "472" on a phone) */

/* ---------- B5/B10: the form is one compact component on every page ----------
   The labels moved INTO the fields (placeholder) like the hero form; they stay in the DOM as real labels (.sh-sr, see
   finish.py compact_forms) so a screen reader still hears them, and the file field keeps its visible label (a file
   input cannot carry a placeholder). The aside (f-aside) and the contact page (f-contact) get the field look the hero
   and the closing form had, the four forms the same gap. */
:is(#f-hero, #f-sluit, #f-aside, #f-contact) { gap: 10px; }
:is(#f-aside, #f-contact) .sh-field :is(input[type=text], input[type=email], input[type=tel], textarea) {
	background: rgba(255, 255, 255, .18) !important;
	border: 1px solid #fff !important;
	border-radius: 3px !important;
	color: var(--asb-deep) !important;
	font-size: 15px !important;
	padding: 8px 14px !important;
	min-height: 40px;
}
:is(#f-aside, #f-contact) textarea { height: 84px; resize: vertical; }
:is(#f-aside, #f-contact) ::placeholder { color: var(--asb-deep); opacity: 1; }
:is(#f-hero, #f-sluit, #f-aside, #f-contact) .sh-field { margin: 0; }
:is(#f-sluit, #f-aside, #f-contact) .sh-upload { margin-top: 2px; }
:is(#f-sluit, #f-aside, #f-contact) .sh-upload label { font-size: 14px; margin-bottom: 4px; }
:is(#f-sluit, #f-aside, #f-contact) .sh-upload input[type=file] { padding: 6px 10px; }
:is(#f-sluit, #f-aside, #f-contact) .sh-help { font-size: 12.5px; line-height: 1.35; margin-top: 4px; }
#f-sluit textarea { height: 84px; }
.sh-aside .sh-card { padding: 18px 20px; }
.sh-aside .sh-card h2 { margin-bottom: 8px; }
#f-aside textarea { height: 72px; }
:is(#f-aside, #f-contact) :is(.sh-help, .sh-upload label, .watson-file__name) { color: var(--asb-deep) !important; }
/* the closing band: the photo sits beside the form at its own ratio (it was stretched to the form's height, 30/10: that enlarged a 545 px portrait to 648 px) */
@media (min-width: 782px) {
	.sh-offerte__in > .sh-offerte__foto { align-self: center; }
	.sh-offerte__foto > * { margin: 0; min-width: 0; }
}

/* ---------- B6: the space above a heading is the same for every heading of one level ----------
   h3 had 1.5em (39px) above it: as much as the 37px between two sections, so a subheading looked like a new section; the
   steps list brought its own 40px margin on top of the section gap (~100px before the next H2, the others ~53px). A subheading is
   set off by one step (1em); a list is a block like a paragraph: it carries no margin of its own. */
.sh-article :is(.sh-sec, .sh-details__content) > h3 { margin-top: 1em; }
.sh-article :is(.sh-sec, .sh-details__content) > h4 { margin-top: .9em; }
.sh-article ul.sh-timeline { margin-bottom: 0; }
.sh-article .sh-sec > :has(> ul.sh-timeline) + * { margin-top: var(--asb-gap-l); }   /* what follows a list is one paragraph gap away (it was the list's own 40px) */
.sh-article .sh-sec > :last-child { margin-bottom: 0; }
.sh-article .sh-sec > ul:last-child > li:last-child { margin-bottom: 0; }   /* the last item's own margin made the gap before the next section 44px instead of 37px */

/* ---------- B8/B9: the photo band and the photo strip of a page (engine: css/concept-sections.css) ----------
   Band: the source photos are 700px wide; a 1440px full-bleed band enlarged them 2.1x. The band is a box of the content
   width with the cards' corner radius and a 16:9 crop (1.6x). Strip of realisation cards (the ones with a caption that
   links: 55 pages, three per strip): three cards next to each other in the content width (about 365px wide, 4:3) instead
   of three 463x617 screens. The galleries of a project page (no caption, up to 12 photos) keep their large 3:4 format
   (F13: a project page shows its werf, not a thumbnail row) but take the corner radius, which now belongs to the
   figure: the dark fallback and the scrim no longer show behind the rounding (the engine side of B9). */
:root {
	--wc-band-maxw: min(100% - 2 * var(--sh-gutter, 24px), 1140px);
	--wc-band-radius: 24px;
	--wc-band-height: auto;
	--wc-strip-radius: 24px;
}
.wc-strip:has(figcaption) {
	--wc-strip-maxw: min(100% - 2 * var(--sh-gutter, 24px), 1140px);
	--wc-strip-ratio: 4 / 3;
	--wc-strip-gap: 20px;
}
.wc-band img { aspect-ratio: 16 / 9; }
@media (max-width: 860px) {
	.wc-band img { aspect-ratio: 4 / 3; }
}

/* =====================================================================================================================
   ROUND 9 (Jef reviewed the deployed round 8)
   ===================================================================================================================== */

/* R9-4: "Waar zit het asbest?" cards (.sh-intent, on the home, 9 subpages and their French twins): nothing clips text.
   The card was `display:flex; flex-direction:column; overflow:hidden` + a radius, and the engine's hover lift moves it with a
   transform. The clip was there for one reason only, the rounding of the photo's top corners; a clip that sits on a transformed,
   rounded box that holds wrapping text is the one place where WebKit and any under-estimated height cut text at the card's edge.
   Not reproduced on the preview (19 widths from 320 to 2560 in Chromium and WebKit, hover included, and with a card given
   three times its text and six extra chips: scrollHeight == clientHeight everywhere), so the cause is stated as the only clipping
   mechanism the component had, and it is removed: the photo carries the corners, the card clips nothing, and neither child can
   shrink below its content. */
.sh-intent__card { overflow: visible; }
.sh-intent__card > img { border-radius: var(--r, 20px) var(--r, 20px) 0 0; flex: none; }
.sh-intent__card > .sh-intent__b { flex: 0 0 auto; }

/* =====================================================================================================================
   ROUND 12 (Jef 27/10): calmer footer, icons for the networks, a cookie statement, contact first
   ===================================================================================================================== */

/* Footer: the networks are icons (engine pattern .watson-social, css/watson-v3.css). The ink is the footer's own; the 44px target
   and the visually hidden name come from the engine. */
.sh-footer .sh-social { display: flex; flex-wrap: wrap; gap: 4px; margin: 10px 0 0 -10px; }
.sh-footer .sh-social a { color: var(--ink); }
.sh-footer .sh-social a:hover { color: var(--ot); background: transparent; }

/* The bottom bar carries the legal line, the legal pages and the credit; the 'Wettelijk' column is gone from the footer.
   Calmer (Jef 27/10): a soft orange-to-yellow gradient in the family of the contact form's (the client's own tokens, lightened with white, not new
   colours), small light text in the client's text ink, the four legal links on one line, the credit as two small logos.
   Contrast: the ink is --asb-ink (#333333); on the darkest point of the gradient (the orange end) it is 5.75:1 (pixel-sampled along the whole bar
   in a browser, PR body), AA needs 4.5:1. */
.sh-footer__bar {
	background: linear-gradient(90deg, color-mix(in srgb, var(--asb-o) 62%, #fff), color-mix(in srgb, var(--asb-lo) 62%, #fff));
	color: var(--asb-ink); font-size: 13px; font-weight: 500; line-height: 1.4; padding: 10px 0;
}
.sh-footer__bar :is(p, li, a) { color: var(--asb-ink); font-weight: 500; }
.sh-footer__bar a:hover { color: var(--asb-ink); }   /* the footer's generic hover colour (orange text) is 2.5:1 on this bar; the underline is the hover cue */
.sh-footer__barin { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0 32px; }
.sh-footer__barin p { margin: 0; }
.sh-footer__legal { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: nowrap; gap: 0 22px; white-space: nowrap; }
.sh-footer__legal a { display: inline-block; padding: 6px 0; }
.sh-footer__legal .sh-footer__consent { appearance: none; background: none; border: 0; margin: 0; padding: 6px 0; font: inherit; color: inherit; text-decoration: inherit; cursor: pointer; }
.sh-footer__legal .sh-footer__consent:hover { text-decoration: underline; }
.sh-footer__legal .sh-footer__consent:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.sh-footer__credit { flex: 1 0 100%; display: flex; align-items: center; gap: 8px; padding-top: 2px; }
.sh-footer__credit a { display: inline-flex; align-items: center; padding: 4px 2px; text-decoration: none; }
.sh-footer__logo { height: 22px; width: auto; opacity: .72; transition: opacity .15s; }
.sh-footer__credit a:hover .sh-footer__logo, .sh-footer__credit a:focus-visible .sh-footer__logo { opacity: 1; }
.sh-footer__sep { opacity: .5; }
@media (max-width: 900px) {
	.sh-footer__legal { flex-wrap: wrap; white-space: normal; gap: 0 18px; }
	.sh-footer__legal a { padding: 8px 0; }
}

/* The columns: headings lighter (smaller, a lighter weight), links one weight down, more air between the lines and the blocks. */
.sh-footer__in { padding-block: 64px 48px; row-gap: 36px; }
.sh-footer .sh-eyebrow { font-size: 12.5px; font-weight: 600; letter-spacing: .1em; margin: 0 0 14px; }
.sh-footer :is(.sh-flist, .sh-social) { gap: 9px; line-height: 1.4; }
.sh-footer .sh-flist a { font-weight: 500; }

/* A row of project photos is introduced by a heading (layout contract: card_rows_have_heading). Same rhythm as the
   'Andere realisaties' head the project pages already carried. */
.sh-strip-head { padding-top: clamp(32px, 4vw, 56px); padding-bottom: 8px; }

/* Cookie statement: a table of the cookies that are set, readable on a phone (the table scrolls inside its own box). */
.sh-article .wp-block-table { overflow-x: auto; margin: 0 0 1.4em; }
.sh-article .wp-block-table table { min-width: 560px; }
.sh-article th { border: 1px solid #e6dcd6; padding: 8px 10px; text-align: left; background: #faf5f1; }

/* Contact first: the contact details and the form are the first thing on /contact/, no hero band above them. The trust bar under them
   starts inside the first screen on a 1366x850 and a 1280x800 desktop (measured, the PR says by how much): the breadcrumb already gives
   the space above, the block needs little below, and the form box is one compact component (Jef 27/10). */
.sh-contact--first { padding-top: clamp(8px, 1.4vw, 18px); padding-bottom: clamp(24px, 3vw, 36px); }
.sh-contact--first h1 { margin: 0 0 .4em; }
.sh-contact--first .sh-formbox { padding: 22px clamp(20px, 2.4vw, 30px) 24px; }
.sh-contact--first .sh-formbox h2 { font-size: 26px; line-height: 1.2; margin: 0 0 12px; }
.sh-contact--first #f-contact { gap: 8px; }
.sh-contact--first #f-contact textarea { height: 64px; }
.sh-contact--first #f-contact .sh-help { margin-top: 2px; }
.sh-contact--first #f-contact .sh-upload label { margin-bottom: 2px; }
.sh-contact--first #f-contact .sh-upload input[type=file] { padding: 3px 10px; }
.sh-contact--first #f-contact .sh-upload__list:empty { margin: 0; }
/* wide screens: the button and the consent line share one row (the form was 618px tall; the trust bar sat below the first screen) */
@media (min-width: 1100px) {
	.sh-contact--first #f-contact { grid-template-columns: auto minmax(0, 1fr); column-gap: 16px; align-items: center; }
	.sh-contact--first #f-contact > :not(.sh-btn):not(.bouw-form-consent) { grid-column: 1 / -1; }
	.sh-contact--first #f-contact .bouw-form-consent { margin: 0; font-size: 12px; line-height: 1.35; }
}
/* The details column has no labels: phone and e-mail sit directly under each other (one paragraph), then the address with the route
   link, then the VAT line. */
.sh-facts--compact { gap: 14px; font-size: 18px; }
.sh-facts--compact h2 { margin: 0; }
.sh-facts--compact p { line-height: 1.45; }
.sh-facts--compact a[href^="tel:"], .sh-facts--compact a[href^="mailto:"] { display: inline-block; padding: 1px 0; }

/* ---------- Round 12b (Jef 27/10): the gap before "Waar zit het asbest?" and the measure of two section intros ----------
   Gap: the article grid (.sh-page) carries its own padding-bottom (clamp(40px, 6vw, 80px)) and the white band that follows it (.sh-intent)
   carries a padding-top of the section rhythm (clamp(48px, 6vw, 88px)): two paddings on white, one after the other, 168px of nothing at 1720px
   (not the sidebar: the aside is shorter than the article, and no spacer or margin is involved). The band's own padding IS the rhythm,
   so the grid gives its bottom padding up where that white band follows (a coloured band keeps it: the article must not touch a colour).
   Measure: .sh-intent__sub was capped at 60ch (592px of a 1140px content width, the right half empty); it takes up to 75ch.
   The engine balances every heading (text-wrap: balance, css/critical.css), which broke "Waarom u ons uw gebouw toevertrouwt" at half its
   width in a column that nearly fits it; these two section headings fill the line instead (pretty keeps a single word off the last line). */
.sh-page:has(+ .sh-intent) { padding-bottom: 0; }
.sh-intent__sub { max-width: 75ch; }
:is(.sh-auth, .sh-intent) h2 { text-wrap: pretty; }

/* ---------- round 13 (30/10, visual & UI/UX audit of the preview): what is this client's own ----------
   The patterns the audit found in the ENGINE (accordion, menu sheet, file field, logo sizing, the consent banner, the bottom offset) are fixed
   there (css/watson-layout.css sections 6, 8, 15-17, inc/consent-banner.php, js/watson-ui.js); these are the values this client gives them and the
   rules that were this client's own. */

/* F1: the eyebrow of a project card is the first thing of the TEXT column. The two horizontal cards (Elslopark, Blanden) place their children by
   named grid areas that did not know the tag: auto-placement put it under the photo (desktop) or after the link (phone). It has its own area now,
   above the title, in the same column as the title. */
.wpd-scope :is(.wpd-realisaties__elslopark, .wpd-realisaties__blanden) { grid-template-areas: "photo" "tag" "title" "text" "more"; }
.wpd-scope :is(.wpd-realisaties__elslopark, .wpd-realisaties__blanden) > .sh-case__tag { grid-area: tag; }
@media (min-width: 782px) {
	.wpd-scope :is(.wpd-realisaties__elslopark, .wpd-realisaties__blanden) { grid-template-areas: "photo tag" "photo title" "photo text" "photo more"; grid-template-rows: auto auto auto 1fr; }
}

/* F6: the Blanden photo is a 700x525 landscape. The card cuts it to 4:5 beside the text (desktop: 255 px wide, a crop of what it holds); stacked on a tablet
   the same 4:5 stretched it to 1.7x its pixels. Stacked, it keeps its own ratio. */
@media (max-width: 781px) {
	.wpd-scope .wpd-realisaties__blanden-foto img { aspect-ratio: 4 / 3 !important; max-width: 700px; }
}

/* F2: the FAQ is the engine's accordion; these are Asbitech's tokens. The question is the orange of the headings (AA on the peach panel), the mark is
   the brand yellow with ink on it (white on it was 1.9:1). */
.wpd-faq-nieuws .watson-accordion {
	--watson-accordion-title-ink: var(--asb-ot);
	--watson-accordion-mark: #F8AF3A;
	--watson-accordion-mark-ink: var(--asb-ink);
	--watson-accordion-title-size: clamp(1.0625rem, .4vw + 1rem, 1.25rem);
}

/* F8: the quote button inside the phone menu is the site's orange button (the engine's sheet gives it the brand fill, which is not what this
   client's buttons are: ink on the gradient, 5.3:1 and 9.2:1). */
details.watson-mnav .watson-mnav__cta a.sh-btn--orange { background: var(--asb-grad); color: var(--asb-on-brand); box-shadow: 0 5px 20px rgba(0, 0, 0, .15); }
details.watson-mnav[open] > ul .sh-mnav__extra { border-top: 1px solid var(--asb-line); }

/* F5: the team portraits are cut (media.py) to the same 460x545 frame: head and chest above the wall banner. They are shown in that ratio and never
   larger than the file. */
.wpd-scope .wpd-team__portretten img { width: 100%; max-width: 460px; height: auto; }

/* F4: the callout under the video is a link now: a link is underlined (house style: underline = a link, nothing else). */
.wpd-over__over-video-link a { text-decoration: underline; text-underline-offset: 3px; }
/* <<< light direction */

/* Tables in restored articles stay inside the column on phones. */
.sh-table{width:100%;table-layout:fixed;overflow-wrap:anywhere}

/* Cookie banner: decline stays a readable one-click button, quieter than accept. */
.watson-consent .watson-consent__btn[data-watson-consent-choice="necessary"]{background:transparent;color:#333;border-color:rgba(51,51,51,.28);font-weight:500}
.watson-consent .watson-consent__btn[data-watson-consent-choice="necessary"]:hover{border-color:rgba(51,51,51,.55)}
.watson-consent .watson-consent__btn[data-watson-consent-choice="all"]{background:var(--o);border-color:var(--o);color:var(--ink)}
.watson-consent .watson-consent__btn[data-watson-consent-choice="all"]:hover{background:#f07a58;border-color:#f07a58}

/* ---------- WI-1438: menuknop verbergen op desktop ----------
   De engine-regels voor de mobiele sheet (details.watson-mnav in engine/css/watson-layout.css) verbergen de knop
   nergens op desktop; de oude regel `.sh-mnav{display:none}` (en zijn media-query) richt zich op de oude klasse en
   raakt details.watson-mnav niet. Hier: zelfde gedrag voor de nieuwe klasse — weg op desktop, sheet op mobile. */
details.watson-mnav{display:none}
@media (max-width:1100px){
details.watson-mnav{display:block}
}

/* ---------- WI-1438: vacaturepagina's (body.watson-page-jobs*) ----------
   De pagina's uit content/{nl,fr}/jobs*.html krijgen een eigen variant: geen trustbar, geen offerteblok, geen
   Jochen-aside, en geen pointers naar het verwijderde #offerte-anchor (headerknop, sticky balk, mobiele sheet).
   De body class komt uit de engine (inc/design-layer.php: watson-page-<manifest key>); jobs/werfleider en
   jobs/asbestverwijderaar geven watson-page-jobswerfleider / watson-page-jobsasbestverwijderaar, dus dit
   attribuutselector dekt overview + alle detailpagina's in beide talen. */
body[class*="watson-page-jobs"] .sh-sticky,
body[class*="watson-page-jobs"] .sh-header a[href="#offerte"],
body[class*="watson-page-jobs"] .watson-mnav__cta{display:none}
/* geen telefoonnummer van Jochen (0472 06 02 46) op de vacaturepagina's — in de gedeelde chrome (topbar, footer) via deze regel */
body[class*="watson-page-jobs"] a[href="tel:+32472060246"]{display:none}
/* de aside is uit de bron verdwenen: één kolom */
body[class*="watson-page-jobs"] .sh-page{grid-template-columns:minmax(0,1fr)}
body[class*="watson-page-jobs"] .sh-article{max-width:820px}

/* kernfeiten-strip onder de hero (eigen variant, foto uit clients/asbitech/img via sh-hero--x-*) */
.sh-kernfeiten{padding-block:clamp(28px,4vw,48px) 0}
.sh-kernfeiten .sh-stats{margin:0}

/* vacaturekaarten in de overview */
.sh-jobs-list{display:grid;gap:14px;margin-top:1.4em}
.sh-article ul.sh-jobs-list li{padding-left:0;margin:0}
.sh-jobs-list li::before{display:none}
.sh-jobs-list li a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;background:#fff;border:1px solid var(--asb-line);border-radius:var(--r);color:var(--dark);font:800 19px "Noto Sans",sans-serif;text-decoration:none;transition:box-shadow var(--transition-base,200ms),transform var(--transition-base,200ms)}
.sh-jobs-list li a::after{content:"→";font-weight:800;color:var(--o)}
.sh-jobs-list li a:hover{box-shadow:0 12px 30px rgba(0,0,0,.12);transform:translateY(-2px)}

/* kernfeiten van één vacature (detailpagina, door gen-job-pages.py gegenereerd) als tegels bovenaan het artikel */
.sh-job-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;padding:22px 24px;margin:0 0 1.6em;background:var(--peach);border-radius:var(--r);list-style:none}
.sh-article ul.sh-job-facts li{padding:12px 16px;margin:0;background:#fff;border-radius:var(--r-sm,8px)}
.sh-job-facts li::before{display:none}
.sh-job-facts li strong{display:block;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--ot);margin-bottom:2px}

/* sollicitatieband onderaan (vervangt het offerteblok; #sollicitatie is het doel van de Solliciteer-knop) */
.sh-sollicitatie{background:var(--peach)}
.sh-sollicitatie__in{max-width:760px;margin-inline:auto;text-align:center}
.sh-sollicitatie__in .sh-btn{margin-top:8px}
