.elementor-kit-6{--e-global-color-primary:#262626;--e-global-color-secondary:#444444;--e-global-color-text:#444444;--e-global-color-accent:#262626;--e-global-color-swtekst:#444444;--e-global-color-swdonker:#262626;--e-global-color-swvlak:#F2F2F2;--e-global-color-swlijn:#BFBFBF;--e-global-color-swlijnlicht:#E2E2E2;--e-global-color-swscheider:#C9C9C9;--e-global-color-swsubtekst:#666666;--e-global-color-swgroen:#78B928;--e-global-color-swwit:#FFFFFF;--e-global-color-swzwart:#000000;--e-global-color-swveld:#E6E6E6;--e-global-color-swgroenknop:#4C840D;--e-global-color-swfout:#BC0000;--e-global-color-swfocus:#00A2D1;--e-global-typography-primary-font-family:"Univers for Schueco";--e-global-typography-primary-font-size:28px;--e-global-typography-primary-font-weight:400;--e-global-typography-primary-line-height:32px;--e-global-typography-secondary-font-family:"Univers for Schueco";--e-global-typography-secondary-font-size:17px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-line-height:24px;--e-global-typography-text-font-family:"Univers for Schueco";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:30px;--e-global-typography-accent-font-family:"Univers for Schueco";--e-global-typography-accent-font-size:15px;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-line-height:20px;--e-global-typography-swkoph1-font-family:"Univers for Schueco";--e-global-typography-swkoph1-font-size:40px;--e-global-typography-swkoph1-font-weight:400;--e-global-typography-swkoph1-line-height:48px;--e-global-typography-swkoph2-font-family:"Univers for Schueco";--e-global-typography-swkoph2-font-size:28px;--e-global-typography-swkoph2-font-weight:400;--e-global-typography-swkoph2-line-height:32px;--e-global-typography-swtekst-font-family:"Univers for Schueco";--e-global-typography-swtekst-font-size:17px;--e-global-typography-swtekst-font-weight:400;--e-global-typography-swtekst-line-height:30px;--e-global-typography-swaccent-font-family:"Univers for Schueco";--e-global-typography-swaccent-font-size:17px;--e-global-typography-swaccent-font-weight:700;--e-global-typography-swaccent-line-height:24px;--e-global-typography-swknop-font-family:"Univers for Schueco";--e-global-typography-swknop-font-size:15px;--e-global-typography-swknop-font-weight:400;--e-global-typography-swknop-line-height:20px;--e-global-typography-swtabel-font-family:"Univers for Schueco";--e-global-typography-swtabel-font-size:15px;--e-global-typography-swtabel-font-weight:400;--e-global-typography-swtabel-line-height:28px;--e-global-typography-swklein-font-family:"Univers for Schueco";--e-global-typography-swklein-font-size:15px;--e-global-typography-swklein-font-weight:400;--e-global-typography-swklein-line-height:24px;--e-global-typography-swvoet-font-family:"Univers for Schueco";--e-global-typography-swvoet-font-size:14px;--e-global-typography-swvoet-font-weight:400;--e-global-typography-swvoet-line-height:22px;--e-global-typography-swformulier-font-family:"Univers for Schueco";--e-global-typography-swformulier-font-size:18px;--e-global-typography-swformulier-font-weight:400;--e-global-typography-swformulier-line-height:28px;--e-global-typography-swformknop-font-family:"Univers for Schueco";--e-global-typography-swformknop-font-size:16px;--e-global-typography-swformknop-font-weight:700;--e-global-typography-swformknop-line-height:16px;--e-global-typography-swformknop-letter-spacing:1.04px;background-color:#FFFFFF;color:var( --e-global-color-swtekst );font-family:"Univers for Schueco", Helvetica, Arial, sans-serif;font-size:17px;font-weight:400;line-height:30px;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:var( --e-global-color-swdonker );}.elementor-kit-6 h1{color:var( --e-global-color-swdonker );}.elementor-kit-6 h2{color:var( --e-global-color-swdonker );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;--container-default-padding-top:0px;--container-default-padding-right:32px;--container-default-padding-bottom:0px;--container-default-padding-left:32px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:0px;--container-default-padding-right:24px;--container-default-padding-bottom:0px;--container-default-padding-left:24px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:0px;--container-default-padding-right:16px;--container-default-padding-bottom:0px;--container-default-padding-left:16px;}}
/* Start custom CSS *//* Elementor → Site Settings → Custom CSS. Dit bestand is de bron: eerst hier wijzigen, dan overzetten, dan teruglezen.
   ALLEEN dit. Elke regel heeft een reden. Toevoegingen ook in bouw/BESLISSINGEN.md. Waarden = DESIGN-SPEC (niet zelf aanpassen).
   Alles gescoped op eigen klassen; geen Elementor-interne klassen. Versie 2.19 (2026-11-05, gewicht 300 → 400 zoals schueco.com; 2.18 opgeschoond: proef krantenkolommen en PROEF-teksten weg; 2.17 aanvraagformulier opnieuw gemeten op schueco.com: focus, fout, vinkvak; 2.16 proef aanvraagformulier; 2.15 proef tekstlink "Vraag aan →"; 2.14 proef knop "Op aanvraag"; 2.13 2026-10-14, mobiele header zoals schueco.com, iconen Schüco, CAD- en BIM-pagina). */

/* 0) Tokens: koppeling met Global Colors (vaste _id's, zie BOUWPLAN §1). Fallback = DESIGN-SPEC §1.
      Geeft Elementor andere id's, pas dan alleen deze regels aan. */
:root {
  --sw-tekst: var(--e-global-color-swtekst, #444444);
  --sw-donker: var(--e-global-color-swdonker, #262626);
  --sw-vlak: var(--e-global-color-swvlak, #f2f2f2);
  --sw-lijn: var(--e-global-color-swlijn, #bfbfbf);
  --sw-subtekst: var(--e-global-color-swsubtekst, #666666);
  --sw-groen: var(--e-global-color-swgroen, #78b928);
  --sw-wit: var(--e-global-color-swwit, #ffffff);
  --sw-veld: var(--e-global-color-swveld, #e6e6e6); /* formulierveld (schueco.com contactformulier, gemeten 2026-11-02) */
  --sw-groenknop: var(--e-global-color-swgroenknop, #4c840d); /* formulierknop en aangevinkt vak (schueco.com) */
  --sw-fout: var(--e-global-color-swfout, #bc0000); /* foutmelding formulier (schueco.com) */
  --sw-focus: var(--e-global-color-swfocus, #00a2d1); /* toetsenbordfocus formulier (schueco.com) */
}

/* 1) TablePress (alleen tabellen met extra klasse "schueco-tabel"): zebra, geen randen */
.tablepress.schueco-tabel { border: 0; }
.tablepress.schueco-tabel :is(td, th) { border: 0; padding: 10px 20px; font-size: 15px; line-height: 28px; font-weight: 400; color: var(--sw-tekst); } /* 400: schueco.com kent geen light (Univers 430/630, 2026-11-05) */
.tablepress.schueco-tabel thead th { padding: 12px 20px; font-weight: 700; color: var(--sw-donker); background: transparent; border-bottom: 1px solid var(--sw-lijn); } /* 12px = canvas */
.tablepress.schueco-tabel tbody tr:nth-child(odd) td { background: var(--sw-vlak); }
.tablepress.schueco-tabel tbody tr:nth-child(even) td { background: var(--sw-wit); }
.tablepress.schueco-tabel td:first-child { font-weight: 400; } /* systeemnaam */
@media (min-width: 768px) {                                /* uniforme kolommen zoals canvas (grid 2fr 1fr 1fr) */
  .tablepress.schueco-tabel { table-layout: fixed; width: 100%; }
  .tablepress.schueco-tabel thead th:first-child { width: 50%; }
  .tablepress.schueco-tabel thead th:not(:first-child) { width: 25%; }
  .tablepress.schueco-tabel thead th:nth-child(2):last-child { width: 50%; }   /* tabel met één knoppenkolom (BIM): knop op dezelfde plek als de eerste knop elders */
}
.tablepress.schueco-tabel thead tr:first-child th { border-top: 0; } /* Hello reset.css zet hier een lijn (hogere specificiteit) */
.tablepress.schueco-tabel td:not(:first-child):not(:has(a)) { color: var(--sw-subtekst); white-space: nowrap; } /* status, bv. "Op aanvraag" = #666, breekt niet af (besluit) */

/* 2) Link in tabelcel = downloadknop met icoon (SVG als masker). Cel zonder link blijft gewone tekst. */
.tablepress.schueco-tabel td a { display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px; border: 1px solid var(--sw-lijn); background: var(--sw-wit); color: var(--sw-donker); font-size: 15px; line-height: 20px; font-weight: 400; text-decoration: none; transition: color .2s, border-color .2s; }
.tablepress.schueco-tabel td a::before { content: ""; flex: none; width: 15px; height: 15px; background: currentColor; -webkit-mask: var(--dl-icon) center / contain no-repeat; mask: var(--dl-icon) center / contain no-repeat;
  --dl-icon: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M8 2v8M4.5 6.8 8 10.3l3.5-3.5M2.5 13.5h11'/></svg>"); }
.tablepress.schueco-tabel td a:is(:hover, :focus-visible) { color: var(--sw-groen); border-color: var(--sw-groen); }

/* 3) "Vraag aan →" als tekstlink, geen knop (plugin v1.5, klasse sw-aanvraag; verzoek Serge). Pijl = SVG-masker zoals het download-icoon, maar na de tekst. Hover/focus: groen (regel hierboven) + onderstreept. */
.tablepress.schueco-tabel td a.sw-aanvraag { padding: 0; border: 0; background: transparent; min-width: 0; white-space: nowrap; }
.tablepress.schueco-tabel td a.sw-aanvraag::before { content: none; }
.tablepress.schueco-tabel td a.sw-aanvraag::after { content: ""; flex: none; width: 15px; height: 15px; background: currentColor; -webkit-mask: var(--pijl) center / contain no-repeat; mask: var(--pijl) center / contain no-repeat;
  --pijl: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M2.5 8h11M9 3.5 13.5 8 9 12.5'/></svg>"); }
.tablepress.schueco-tabel td a.sw-aanvraag:is(:hover, :focus-visible) { text-decoration: underline; }

/* 4) Anker-scroll. Smooth alleen als de gebruiker geen "minder beweging" vraagt (toegankelijkheid).
      Offset onder de sticky header: 230px desktop (canvas; besluit "canvas volledig"). Mobiel/tablet gemeten 2026-10-14.
      Te testen: doet Elementor de smooth-scroll/offset al zelf (Nav Menu-ankers), verwijder dan wat dubbel is. */
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }
html { scroll-padding-top: 230px; }
@media (max-width: 1024px) { html { scroll-padding-top: 135px; } } /* tablet: header 111px (rij 1 + sectiebalk) + 24 */
@media (max-width: 767px) { html { scroll-padding-top: 129px; } }  /* mobiel: header 105px + 24 */

/* 5) Header (Theme Builder). Klassen staan op de containers/widgets in Elementor.
      Container heeft geen backdrop-filter- of clip-path-instelling; de Nav Menu heeft geen apart gewicht voor "actief". */
.sw-badge { clip-path: polygon(0 0, calc(100% - 18px) 0, 100% 50%, calc(100% - 18px) 100%, 0 100%); } /* pijlvorm badge */
.sw-schaduw-onder { clip-path: inset(0 0 -40px 0); }       /* schaduw rij 2 alleen naar beneden */
.submenu-glas { background: rgba(255,255,255,.8); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); } /* glas */
body .sw-submenu.elementor-element .elementor-nav-menu .elementor-item.elementor-item-active { font-weight: 700; } /* actief anker vet; specifiek genoeg t.o.v. widget-typografie */
.sw-envelop .elementor-icon-wrapper { display: flex; }                                   /* envelop (SVG Schüco) zonder extra regelhoogte, verticaal gecentreerd in de rij */
@media (max-width: 1024px) {                               /* mobiel + tablet: sectiebalk zoals schueco.com (besluit 2026-10-14; BOUWPLAN §4.2) */
  .sw-sectiebalk.submenu-glas { background: var(--sw-donker); -webkit-backdrop-filter: none; backdrop-filter: none; } /* sectiebalk donker */
  .sw-sectiebalk { overflow-x: clip; }                                                      /* begrenst het tikvlak hieronder (geen zijwaartse scroll) */
  .sw-sectiebalk .sw-submenu .elementor-menu-toggle::after { content: ""; position: absolute; inset: -6px -100vw; } /* hele balk (ook de paginatitel links van het icoon) opent het sectiemenu */
  .sw-sectiebalk .sw-submenu .elementor-nav-menu--dropdown .elementor-nav-menu { display: grid; gap: 8px; padding: 16px; background: var(--sw-wit); } /* secties als losse knoppen */
  .sw-sectiebalk .sw-submenu .elementor-nav-menu--dropdown a { border: 1px solid var(--sw-donker); } /* knop met rand */
  :is(.sw-hamburger, .sw-submenu) .elementor-menu-toggle svg { display: block; }            /* eigen SVG-icoon (Schüco) zonder extra regelhoogte: rijen 60/45 */
}
@media (min-width: 768px) and (max-width: 1024px) {        /* tablet: zijruimte 24 i.p.v. 16 (besluit zijruimte) */
  .sw-sectiebalk .sw-submenu .elementor-nav-menu--dropdown .elementor-nav-menu { padding: 16px 24px; }
}
@media (max-width: 767px) {                                /* mobiel (BOUWPLAN §3.6 A) */
  .tablepress.schueco-tabel { table-layout: fixed; width: 100%; }                          /* vaste kolommen: knoppen in alle tabellen exact onder elkaar (verzoek Serge) */
  .tablepress.schueco-tabel thead th:not(:first-child) { width: 102px; }                  /* knoppenkolommen vast; naamkolom krijgt de rest */
  .tablepress.schueco-tabel thead th:nth-child(2):last-child { width: 118px; }            /* één knoppenkolom (BIM): knop "IFC/RVT" is 103px */
  .tablepress.schueco-tabel :is(td, th), .tablepress.schueco-tabel thead th { padding: 10px 6px; } /* tabel past op 360–390px */
  .tablepress.schueco-tabel td a { padding: 6px 10px; min-width: 86px; justify-content: center; } /* alle knoppen even breed */
  .tablepress.schueco-tabel td:not(:first-child):not(:has(a)) { white-space: normal; }    /* "Op aanvraag" past (88px); alleen "In behandeling" breekt */
  .tablepress.schueco-tabel td a .sw-ext { display: none; }                               /* knop "DWG" i.p.v. "DWG.ZIP" (verzoek Serge); aria-label blijft volledig (plugin v1.3) */
  .tablepress.schueco-tabel td a.sw-aanvraag::after { display: none; }                   /* "Vraag aan →" (94px) past niet in de knoppenkolom (90px ruimte); zonder pijl wel op één regel */
  .tablepress.schueco-tabel td a.sw-aanvraag { text-decoration: underline; }             /* zonder pijl herkenbaar als link (niet alleen door kleur) */
  .tablepress.schueco-tabel td:first-child { hyphens: auto; overflow-wrap: anywhere; } /* lange namen (bv. "(vliesgevelsysteem)") naast DWG.ZIP-knop: tabel past op 390px */
}

/* 6) Aanvraagformulier in pop-up 410 (klasse sw-aanvraag-popup) zoals het contactformulier van schueco.com/nl (gemeten 2026-11-02; opnieuw na opmerking Serge).
      Elementor Form heeft geen instelling voor veldhoogte/-padding, label in het veld, focus-, fout- of vinkvakstijl. Kleuren/fonts via de widget (globals). */
.sw-aanvraag-popup .elementor-field-group:not(.elementor-field-type-acceptance) { position: relative; }   /* ankerpunt voor het label in het veld */
.sw-aanvraag-popup .elementor-field-group:not(.elementor-field-type-acceptance) input.elementor-field { height: 56px; min-height: 56px; padding: 0 24px; border: 0; border-radius: 0; box-shadow: none; } /* veld 56px, tekst in het midden, 24px vanaf links; geen schaduwrand van Elementor */
.sw-aanvraag-popup .elementor-field-group textarea.elementor-field { min-height: 160px; padding: 24px; border: 0; border-radius: 0; box-shadow: none; } /* opmerking: 160px hoog, 24px rondom */
.sw-aanvraag-popup .elementor-field-group:not(.elementor-field-type-acceptance) > .elementor-field-label { position: absolute; top: 14px; left: 24px; z-index: 1; display: flex; pointer-events: none; } /* label in het veld; flex zodat er geen spatie voor het sterretje komt */
.sw-aanvraag-popup .elementor-field-group:is(:focus-within, :has(.elementor-field:not(:placeholder-shown))) > .elementor-field-label { top: 6px; font-size: 11px; line-height: 11px; } /* bij focus of ingevuld: klein bovenin (11px, 6px) */
@media (prefers-reduced-motion: no-preference) { .sw-aanvraag-popup .elementor-field-group > .elementor-field-label { transition: top .2s, font-size .2s; } }
.sw-aanvraag-popup .elementor-mark-required .elementor-field-label::after { padding-left: 0; }           /* "Naam*" zonder spatie */
.sw-aanvraag-popup .elementor-field-group .elementor-field:focus { outline: none; }                      /* geen lijn of rand bij klikken; veld blijft grijs */
.sw-aanvraag-popup .elementor-field-group .elementor-field:focus-visible { outline: 2px solid var(--sw-focus); } /* toetsenbordfocus: blauwe rand 2px */
.sw-aanvraag-popup.sw-aanvraag-popup .elementor-field-group.elementor-error .elementor-field { box-shadow: inset 0 -2px 0 var(--sw-fout); } /* fout: rode lijn 2px onder het veld (dubbele klasse wint van "geen schaduwrand") */
.sw-aanvraag-popup.sw-aanvraag-popup .elementor-field-group.elementor-error .elementor-field-label { color: var(--sw-fout); } /* fout: label rood (dubbele klasse wint van de labelkleur van de widget) */
.sw-aanvraag-popup .elementor-field-group .elementor-message { flex-basis: 100%; margin: 0; padding-top: 8px; font-size: 14px; line-height: 14px; } /* "Verplicht veld" 14px, 8px onder het veld (ook onder het vinkvak) */
.sw-aanvraag-popup .elementor-message::before { content: none; }                                          /* geen icoon voor de melding (schueco.com) */
.sw-aanvraag-popup .elementor-field-type-acceptance input[type="checkbox"] { appearance: none; -webkit-appearance: none; display: inline-block; flex: none; width: 32px; height: 32px; margin: 0 16px 0 0; vertical-align: middle; border: 2px solid var(--sw-veld); background: var(--sw-veld) center / 20px no-repeat; cursor: pointer; } /* vinkvak 32px, 16px tot de tekst */
.sw-aanvraag-popup.sw-aanvraag-popup.sw-aanvraag-popup.sw-aanvraag-popup .elementor-field-type-acceptance input[type="checkbox"]:checked { border-color: var(--sw-groenknop); background-color: var(--sw-groenknop); background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M3 8.5 6.5 12 13 4.5'/></svg>"); } /* aangevinkt: groen met wit vinkje (vier keer de klasse: wint van de veldkleur die de widget op alle velden zet) */
.sw-aanvraag-popup .elementor-field-type-acceptance .elementor-error input[type="checkbox"] { border-color: var(--sw-fout); } /* fout: rode rand om het vak (Elementor zet de foutklasse op de optie) */
.sw-aanvraag-popup.sw-aanvraag-popup.sw-aanvraag-popup .elementor-field-type-acceptance .elementor-error label { color: var(--sw-fout); } /* fout: tekst bij het vak rood (wint van de tekstkleur van de widget) */
.sw-aanvraag-popup .elementor-field-type-acceptance .elementor-field-option { display: flex; flex-wrap: wrap; align-items: center; } /* vak + tekst op één lijn, melding eronder */
.sw-aanvraag-popup .elementor-field-type-acceptance .elementor-field-option label { flex: 1; min-width: 0; } /* tekst naast het vak, ook op mobiel */
.sw-aanvraag-popup .elementor-field-type-acceptance input[type="checkbox"]:focus-visible { outline: 2px solid var(--sw-focus); outline-offset: 2px; }
.sw-aanvraag-popup .elementor-button:focus-visible { outline: none; border-color: var(--sw-focus); }      /* knop: blauwe rand bij toetsenbordfocus *//* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Univers for Schueco';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: url('https://www.schuecoworkspace.nl/wp-content/uploads/2026/11/univers-for-schueco-430-regular.woff2') format('woff2');
}
@font-face {
	font-family: 'Univers for Schueco';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://www.schuecoworkspace.nl/wp-content/uploads/2026/11/univers-for-schueco-630-bold.woff2') format('woff2');
}
/* End Custom Fonts CSS */