/*
 * TIN CUP Partners – basisopmaak
 * Algemene stijl voor alle pagina's. Pagina-specifieke kleuren, achtergronden en
 * maten staan in assets/css/pages/*.css (gegenereerd door tools/build.js).
 */

:root {
  --tc-green: #a8bdb3;
  --tc-green-dark: #84a194;
  --tc-green-deep: #697d6b;
  --tc-text: #444444;
  --tc-heading: #636363;
  --tc-row-max: 1200px;
}

/* ---------- reset & typografie ---------- */

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  font-family: 'Lato', Helvetica, Arial, Lucida, sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 2em;
  color: var(--tc-text);
  background: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding-bottom: 10px;
  font-family: 'Lato', Helvetica, Arial, Lucida, sans-serif;
  font-weight: 500;
  line-height: 1em;
  letter-spacing: 1px;
  color: var(--tc-heading);
}
h1 { font-size: 50px; }
h2 { font-size: 26px; }
h3 { font-size: 36px; }
h4 { font-size: 18px; }
h5 { font-size: 26px; }
h6 { font-size: 23px; }
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { color: inherit; }
/* Kleinere koppen in smalle kolommen */
:is(.tc-column_1_3, .tc-column_1_4, .tc-column_1_5, .tc-column_1_6, .tc-column_2_5) h1 { font-size: 26px; }
:is(.tc-column_1_3, .tc-column_1_4, .tc-column_1_5, .tc-column_1_6, .tc-column_2_5) h2 { font-size: 23px; }
:is(.tc-column_1_3, .tc-column_1_4, .tc-column_1_5, .tc-column_1_6, .tc-column_2_5) h3 { font-size: 20px; }
:is(.tc-column_1_3, .tc-column_1_4, .tc-column_1_5, .tc-column_1_6, .tc-column_2_5) h4 { font-size: 18px; }
:is(.tc-column_1_3, .tc-column_1_4, .tc-column_1_5, .tc-column_1_6, .tc-column_2_5) h5 { font-size: 16px; }
:is(.tc-column_1_3, .tc-column_1_4, .tc-column_1_5, .tc-column_1_6, .tc-column_2_5) h6 { font-size: 15px; }
p { margin: 0; padding-bottom: 1em; }
p:last-of-type, p:empty { padding-bottom: 0; }
a { color: var(--tc-green); text-decoration: none; }
strong, b { font-weight: 700; }
img { max-width: 100%; height: auto; border: 0; vertical-align: middle; }
ul, ol { margin: 0; padding: 0; }
iframe { border: 0; }
button { font: inherit; }
input, textarea, select { font-family: inherit; }

.tc-text ul { list-style: disc; padding: 0 0 23px 1em; line-height: 26px; }
.tc-text ol { list-style: decimal; padding: 0 0 23px 1.2em; line-height: 26px; }
.tc-text { word-wrap: break-word; }
.tc-text_inner > p:last-child { padding-bottom: 0; }

/* ---------- secties, rijen, kolommen ---------- */

.tc-section {
  position: relative;
  background-color: #fff;
  background-position: center;
  background-size: cover;
  padding: 0;
}
.tc-section.tc-with_background { background-repeat: no-repeat; }
.tc-section--fixed { position: fixed; top: 0; left: 0; width: 100%; z-index: 99; background: transparent; }

.tc-row {
  position: relative;
  width: 80%;
  max-width: var(--tc-row-max);
  margin: 0 auto;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}
.tc-row_fullwidth { width: 100%; }
.tc-equal_columns { align-items: stretch; }
.tc-row_inner { width: 100%; position: relative; display: flex; flex-wrap: wrap; align-items: flex-start; }
.tc-column, .tc-column_inner { display: flow-root; }

.tc-column {
  position: relative;
  min-height: 1px;
  background-position: center;
  background-size: cover;
  z-index: 2;
}
.tc-column_4_4 { width: 100%; }
.tc-column.tc-last-child, .tc-column:last-child { margin-right: 0 !important; }
.tc-row .tc-column > .tc-module:last-child { margin-bottom: 0; }
.tc-column_empty { min-height: 1px; }

/* standaardgoot is 3 */
.tc-column_3_4 { width: 73.625%; margin-right: 5.5%; }
.tc-column_2_3 { width: 64.833%; margin-right: 5.5%; }
.tc-column_3_5 { width: 57.8%; margin-right: 5.5%; }
.tc-column_1_2 { width: 47.25%; margin-right: 5.5%; }
.tc-column_2_5 { width: 36.7%; margin-right: 5.5%; }
.tc-column_1_3 { width: 29.667%; margin-right: 5.5%; }
.tc-column_1_4 { width: 20.875%; margin-right: 5.5%; }
.tc-column_1_5 { width: 15.6%; margin-right: 5.5%; }
.tc-column_1_6 { width: 12.083%; margin-right: 5.5%; }
.tc-column > .tc-module { margin-bottom: 2.75%; }

/* Kolombreedtes per gootbreedte (gegenereerd) */
.tc-gutters1 .tc-column_4_4, .tc-gutters1.tc-row > .tc-column_4_4 { width: 100%; margin-right: 0%; }
.tc-gutters1 .tc-column_4_4 .tc-module, .tc-gutters1.tc-row > .tc-column_4_4 .tc-module { margin-bottom: 0%; }
.tc-gutters1 .tc-column_3_4, .tc-gutters1.tc-row > .tc-column_3_4 { width: 75%; margin-right: 0%; }
.tc-gutters1 .tc-column_3_4 .tc-module, .tc-gutters1.tc-row > .tc-column_3_4 .tc-module { margin-bottom: 0%; }
.tc-gutters1 .tc-column_2_3, .tc-gutters1.tc-row > .tc-column_2_3 { width: 66.667%; margin-right: 0%; }
.tc-gutters1 .tc-column_2_3 .tc-module, .tc-gutters1.tc-row > .tc-column_2_3 .tc-module { margin-bottom: 0%; }
.tc-gutters1 .tc-column_3_5, .tc-gutters1.tc-row > .tc-column_3_5 { width: 60%; margin-right: 0%; }
.tc-gutters1 .tc-column_3_5 .tc-module, .tc-gutters1.tc-row > .tc-column_3_5 .tc-module { margin-bottom: 0%; }
.tc-gutters1 .tc-column_1_2, .tc-gutters1.tc-row > .tc-column_1_2 { width: 50%; margin-right: 0%; }
.tc-gutters1 .tc-column_1_2 .tc-module, .tc-gutters1.tc-row > .tc-column_1_2 .tc-module { margin-bottom: 0%; }
.tc-gutters1 .tc-column_2_5, .tc-gutters1.tc-row > .tc-column_2_5 { width: 40%; margin-right: 0%; }
.tc-gutters1 .tc-column_2_5 .tc-module, .tc-gutters1.tc-row > .tc-column_2_5 .tc-module { margin-bottom: 0%; }
.tc-gutters1 .tc-column_1_3, .tc-gutters1.tc-row > .tc-column_1_3 { width: 33.333%; margin-right: 0%; }
.tc-gutters1 .tc-column_1_3 .tc-module, .tc-gutters1.tc-row > .tc-column_1_3 .tc-module { margin-bottom: 0%; }
.tc-gutters1 .tc-column_1_4, .tc-gutters1.tc-row > .tc-column_1_4 { width: 25%; margin-right: 0%; }
.tc-gutters1 .tc-column_1_4 .tc-module, .tc-gutters1.tc-row > .tc-column_1_4 .tc-module { margin-bottom: 0%; }
.tc-gutters1 .tc-column_1_5, .tc-gutters1.tc-row > .tc-column_1_5 { width: 20%; margin-right: 0%; }
.tc-gutters1 .tc-column_1_5 .tc-module, .tc-gutters1.tc-row > .tc-column_1_5 .tc-module { margin-bottom: 0%; }
.tc-gutters1 .tc-column_1_6, .tc-gutters1.tc-row > .tc-column_1_6 { width: 16.667%; margin-right: 0%; }
.tc-gutters1 .tc-column_1_6 .tc-module, .tc-gutters1.tc-row > .tc-column_1_6 .tc-module { margin-bottom: 0%; }
.tc-gutters2 .tc-column_4_4, .tc-gutters2.tc-row > .tc-column_4_4 { width: 100%; margin-right: 3%; }
.tc-gutters2 .tc-column_4_4 .tc-module, .tc-gutters2.tc-row > .tc-column_4_4 .tc-module { margin-bottom: 1.5%; }
.tc-gutters2 .tc-column_3_4, .tc-gutters2.tc-row > .tc-column_3_4 { width: 74.25%; margin-right: 3%; }
.tc-gutters2 .tc-column_3_4 .tc-module, .tc-gutters2.tc-row > .tc-column_3_4 .tc-module { margin-bottom: 2.02%; }
.tc-gutters2 .tc-column_2_3, .tc-gutters2.tc-row > .tc-column_2_3 { width: 65.667%; margin-right: 3%; }
.tc-gutters2 .tc-column_2_3 .tc-module, .tc-gutters2.tc-row > .tc-column_2_3 .tc-module { margin-bottom: 2.284%; }
.tc-gutters2 .tc-column_3_5, .tc-gutters2.tc-row > .tc-column_3_5 { width: 58.8%; margin-right: 3%; }
.tc-gutters2 .tc-column_3_5 .tc-module, .tc-gutters2.tc-row > .tc-column_3_5 .tc-module { margin-bottom: 2.551%; }
.tc-gutters2 .tc-column_1_2, .tc-gutters2.tc-row > .tc-column_1_2 { width: 48.5%; margin-right: 3%; }
.tc-gutters2 .tc-column_1_2 .tc-module, .tc-gutters2.tc-row > .tc-column_1_2 .tc-module { margin-bottom: 3.093%; }
.tc-gutters2 .tc-column_2_5, .tc-gutters2.tc-row > .tc-column_2_5 { width: 38.2%; margin-right: 3%; }
.tc-gutters2 .tc-column_2_5 .tc-module, .tc-gutters2.tc-row > .tc-column_2_5 .tc-module { margin-bottom: 3.927%; }
.tc-gutters2 .tc-column_1_3, .tc-gutters2.tc-row > .tc-column_1_3 { width: 31.333%; margin-right: 3%; }
.tc-gutters2 .tc-column_1_3 .tc-module, .tc-gutters2.tc-row > .tc-column_1_3 .tc-module { margin-bottom: 4.787%; }
.tc-gutters2 .tc-column_1_4, .tc-gutters2.tc-row > .tc-column_1_4 { width: 22.75%; margin-right: 3%; }
.tc-gutters2 .tc-column_1_4 .tc-module, .tc-gutters2.tc-row > .tc-column_1_4 .tc-module { margin-bottom: 6.593%; }
.tc-gutters2 .tc-column_1_5, .tc-gutters2.tc-row > .tc-column_1_5 { width: 17.6%; margin-right: 3%; }
.tc-gutters2 .tc-column_1_5 .tc-module, .tc-gutters2.tc-row > .tc-column_1_5 .tc-module { margin-bottom: 8.523%; }
.tc-gutters2 .tc-column_1_6, .tc-gutters2.tc-row > .tc-column_1_6 { width: 14.167%; margin-right: 3%; }
.tc-gutters2 .tc-column_1_6 .tc-module, .tc-gutters2.tc-row > .tc-column_1_6 .tc-module { margin-bottom: 10.588%; }
.tc-gutters3 .tc-column_4_4, .tc-gutters3.tc-row > .tc-column_4_4 { width: 100%; margin-right: 5.5%; }
.tc-gutters3 .tc-column_4_4 .tc-module, .tc-gutters3.tc-row > .tc-column_4_4 .tc-module { margin-bottom: 2.75%; }
.tc-gutters3 .tc-column_3_4, .tc-gutters3.tc-row > .tc-column_3_4 { width: 73.625%; margin-right: 5.5%; }
.tc-gutters3 .tc-column_3_4 .tc-module, .tc-gutters3.tc-row > .tc-column_3_4 .tc-module { margin-bottom: 3.735%; }
.tc-gutters3 .tc-column_2_3, .tc-gutters3.tc-row > .tc-column_2_3 { width: 64.833%; margin-right: 5.5%; }
.tc-gutters3 .tc-column_2_3 .tc-module, .tc-gutters3.tc-row > .tc-column_2_3 .tc-module { margin-bottom: 4.242%; }
.tc-gutters3 .tc-column_3_5, .tc-gutters3.tc-row > .tc-column_3_5 { width: 57.8%; margin-right: 5.5%; }
.tc-gutters3 .tc-column_3_5 .tc-module, .tc-gutters3.tc-row > .tc-column_3_5 .tc-module { margin-bottom: 4.758%; }
.tc-gutters3 .tc-column_1_2, .tc-gutters3.tc-row > .tc-column_1_2 { width: 47.25%; margin-right: 5.5%; }
.tc-gutters3 .tc-column_1_2 .tc-module, .tc-gutters3.tc-row > .tc-column_1_2 .tc-module { margin-bottom: 5.82%; }
.tc-gutters3 .tc-column_2_5, .tc-gutters3.tc-row > .tc-column_2_5 { width: 36.7%; margin-right: 5.5%; }
.tc-gutters3 .tc-column_2_5 .tc-module, .tc-gutters3.tc-row > .tc-column_2_5 .tc-module { margin-bottom: 7.493%; }
.tc-gutters3 .tc-column_1_3, .tc-gutters3.tc-row > .tc-column_1_3 { width: 29.667%; margin-right: 5.5%; }
.tc-gutters3 .tc-column_1_3 .tc-module, .tc-gutters3.tc-row > .tc-column_1_3 .tc-module { margin-bottom: 9.27%; }
.tc-gutters3 .tc-column_1_4, .tc-gutters3.tc-row > .tc-column_1_4 { width: 20.875%; margin-right: 5.5%; }
.tc-gutters3 .tc-column_1_4 .tc-module, .tc-gutters3.tc-row > .tc-column_1_4 .tc-module { margin-bottom: 13.174%; }
.tc-gutters3 .tc-column_1_5, .tc-gutters3.tc-row > .tc-column_1_5 { width: 15.6%; margin-right: 5.5%; }
.tc-gutters3 .tc-column_1_5 .tc-module, .tc-gutters3.tc-row > .tc-column_1_5 .tc-module { margin-bottom: 17.628%; }
.tc-gutters3 .tc-column_1_6, .tc-gutters3.tc-row > .tc-column_1_6 { width: 12.083%; margin-right: 5.5%; }
.tc-gutters3 .tc-column_1_6 .tc-module, .tc-gutters3.tc-row > .tc-column_1_6 .tc-module { margin-bottom: 22.759%; }
.tc-gutters4 .tc-column_4_4, .tc-gutters4.tc-row > .tc-column_4_4 { width: 100%; margin-right: 8%; }
.tc-gutters4 .tc-column_4_4 .tc-module, .tc-gutters4.tc-row > .tc-column_4_4 .tc-module { margin-bottom: 4%; }
.tc-gutters4 .tc-column_3_4, .tc-gutters4.tc-row > .tc-column_3_4 { width: 73%; margin-right: 8%; }
.tc-gutters4 .tc-column_3_4 .tc-module, .tc-gutters4.tc-row > .tc-column_3_4 .tc-module { margin-bottom: 5.479%; }
.tc-gutters4 .tc-column_2_3, .tc-gutters4.tc-row > .tc-column_2_3 { width: 64%; margin-right: 8%; }
.tc-gutters4 .tc-column_2_3 .tc-module, .tc-gutters4.tc-row > .tc-column_2_3 .tc-module { margin-bottom: 6.25%; }
.tc-gutters4 .tc-column_3_5, .tc-gutters4.tc-row > .tc-column_3_5 { width: 56.8%; margin-right: 8%; }
.tc-gutters4 .tc-column_3_5 .tc-module, .tc-gutters4.tc-row > .tc-column_3_5 .tc-module { margin-bottom: 7.042%; }
.tc-gutters4 .tc-column_1_2, .tc-gutters4.tc-row > .tc-column_1_2 { width: 46%; margin-right: 8%; }
.tc-gutters4 .tc-column_1_2 .tc-module, .tc-gutters4.tc-row > .tc-column_1_2 .tc-module { margin-bottom: 8.696%; }
.tc-gutters4 .tc-column_2_5, .tc-gutters4.tc-row > .tc-column_2_5 { width: 35.2%; margin-right: 8%; }
.tc-gutters4 .tc-column_2_5 .tc-module, .tc-gutters4.tc-row > .tc-column_2_5 .tc-module { margin-bottom: 11.364%; }
.tc-gutters4 .tc-column_1_3, .tc-gutters4.tc-row > .tc-column_1_3 { width: 28%; margin-right: 8%; }
.tc-gutters4 .tc-column_1_3 .tc-module, .tc-gutters4.tc-row > .tc-column_1_3 .tc-module { margin-bottom: 14.286%; }
.tc-gutters4 .tc-column_1_4, .tc-gutters4.tc-row > .tc-column_1_4 { width: 19%; margin-right: 8%; }
.tc-gutters4 .tc-column_1_4 .tc-module, .tc-gutters4.tc-row > .tc-column_1_4 .tc-module { margin-bottom: 21.053%; }
.tc-gutters4 .tc-column_1_5, .tc-gutters4.tc-row > .tc-column_1_5 { width: 13.6%; margin-right: 8%; }
.tc-gutters4 .tc-column_1_5 .tc-module, .tc-gutters4.tc-row > .tc-column_1_5 .tc-module { margin-bottom: 29.412%; }
.tc-gutters4 .tc-column_1_6, .tc-gutters4.tc-row > .tc-column_1_6 { width: 10%; margin-right: 8%; }
.tc-gutters4 .tc-column_1_6 .tc-module, .tc-gutters4.tc-row > .tc-column_1_6 .tc-module { margin-bottom: 40%; }

.tc-row .tc-column .tc-module:last-child, .tc-row > .tc-column > .tc-module:last-child { margin-bottom: 0; }

.tc-module { position: relative; background-position: center; background-size: cover; }
.tc-with_border { border: 0 solid #333; }

/* Specialty-secties */
.tc-section_specialty > .tc-row { align-items: stretch; }
.tc-specialty_column > .tc-row_inner { width: 100%; position: relative; display: flex; flex-wrap: wrap; align-items: flex-start; }
.tc-column, .tc-column_inner { display: flow-root; }

/* Parallax-achtergronden */
.tc-parallax_bg_wrap { position: absolute; inset: 0; overflow: hidden; pointer-events: none; z-index: 0; border-radius: inherit; }
.tc-parallax_bg {
  position: absolute; inset: 0;
  background-size: cover; background-position: center; background-repeat: no-repeat;
}
.tc-parallax_css .tc-parallax_bg, .tc-section_parallax .tc-parallax_bg { background-attachment: fixed; }
.tc-parallax_bg_tablet, .tc-parallax_bg_phone { display: none; }
.tc-section_parallax > .tc-row, .tc-section > .tc-row { z-index: 1; }

/* ---------- tekstuitlijning ---------- */

.tc-text_align_left { text-align: left; }
.tc-text_align_center { text-align: center; }
.tc-text_align_right { text-align: right; }
.tc-text_align_justified { text-align: justify; }

/* lichte en donkere achtergronden */
.tc-bg_layout_dark { color: rgba(255, 255, 255, .8); }
.tc-bg_layout_dark h1, .tc-bg_layout_dark h2, .tc-bg_layout_dark h3,
.tc-bg_layout_dark h4, .tc-bg_layout_dark h5, .tc-bg_layout_dark h6 { color: #fff; }

/* ---------- TinCrowd-projectpagina's ---------- */

.tc-project { background: #fff; }
.tc-project-inner { width: 80%; max-width: var(--tc-row-max); margin: 0 auto; }
.tc-project-intro { padding: 210px 0 60px; }
.tc-project-back { display: inline-block; margin-bottom: 30px; font-size: 13px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: var(--tc-green-dark); }
.tc-project-back:hover { color: var(--tc-green-deep); }
.tc-project-text h1 { font-family: 'Lato', Helvetica, Arial, sans-serif; font-weight: 300; text-transform: uppercase; font-size: 50px; letter-spacing: 1px; line-height: 1.1em; color: var(--tc-heading); padding-bottom: 20px; }
.tc-project-text h1 strong { font-weight: 900; }
.tc-project-text h5 { font-size: 15px; font-weight: 400; letter-spacing: 1px; text-transform: uppercase; color: var(--tc-green-deep); line-height: 1.6em; }
.tc-project-text h5 strong, .tc-project-text h5 a { color: var(--tc-green-dark); font-weight: 700; margin-right: .4em; }
.tc-project-text p { font-size: 19px; font-weight: 300; line-height: 1.8em; max-width: 860px; margin-top: 20px; }
.tc-project-quotes { padding: 0 0 60px; }
.tc-quotes { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px; }
.tc-quotes blockquote { margin: 0; padding: 26px 30px; border-left: 3px solid var(--tc-green); background: #f3f6f4;
  font-family: 'Lato', Helvetica, Arial, sans-serif; font-size: 24px; line-height: 1.4em; letter-spacing: 1px; text-transform: uppercase; color: var(--tc-heading); }
.tc-quote-t { font-weight: 900; }
.tc-quote-s { font-weight: 300; }
@media (max-width: 767px) { .tc-quotes { grid-template-columns: 1fr; } .tc-quotes blockquote { font-size: 20px; } }
.tc-project-audio { padding: 0 0 60px; }
.tc-audio { margin: 0 0 20px; padding: 26px 30px; background: #444; color: #fff; }
.tc-audio figcaption { margin-bottom: 14px; font-family: 'Lato', Helvetica, Arial, sans-serif; text-transform: uppercase; letter-spacing: 2px; }
.tc-audio-title { font-weight: 900; font-size: 20px; }
.tc-audio-meta { font-weight: 300; font-size: 16px; opacity: .85; margin-left: .4em; }
.tc-audio audio { display: block; width: 100%; }
.tc-project-media { padding: 0 0 60px; }
.tc-project-video { position: relative; padding-top: 56.25%; background: #000; }
.tc-project-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; }
.tc-project-gallery { padding: 0 0 60px; }
.tc-project-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0; }
.tc-project-grid.is-single { grid-template-columns: 1fr; width: 80%; max-width: var(--tc-row-max); margin: 0 auto; }
.tc-project-grid a { display: block; overflow: hidden; line-height: 0; }
.tc-project-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }
.tc-project-grid a:hover img { transform: scale(1.03); }
.tc-project-nav { padding: 0 0 100px; text-align: center; }
/* zelfde maat, ronding en animatie als de overige knoppen ('Lees meer', 'Laat je inspireren'); gecentreerd */
.tc-portfolio-nav { padding: 60px 0 100px; text-align: center; }
.tc-portfolio-nav .tc-button.tc-project-button { font-size: 14px; font-weight: 500; line-height: 1.7; letter-spacing: 1px; text-transform: uppercase; padding: 10px 30px;
  border: 1px solid rgba(10,0,0,.25); border-radius: 60px; color: var(--tc-green-deep); background: #fff; }
.tc-portfolio-nav .tc-button.tc-project-button:hover, .tc-portfolio-nav .tc-button.tc-project-button:focus-visible { letter-spacing: 3px; }
.tc-project-button { font-size: 15px; letter-spacing: 1px; text-transform: uppercase; border-radius: 50px; padding: .5em 2em; color: var(--tc-green-deep); border-color: var(--tc-green); border-width: 1px; }
@media (max-width: 767px) {
  .tc-project-intro { padding: 150px 0 40px; }
  .tc-project-text h1 { font-size: 32px; }
  .tc-project-grid { grid-template-columns: 1fr; }
}

/* ---------- team (vijf personen) ---------- */

.tc-row.tc-team { display: grid; grid-template-columns: repeat(5, 1fr); }
.tc-row.tc-team > .tc-team-col { width: auto !important; margin: 0 !important; }
.tc-team-col > .tc-module { margin-bottom: 0 !important; }
/* naam onderaan de foto, niet over het gezicht */
.tc-row.tc-team .tc-text.tc-tile, .tc-row.tc-team .tc-text.tc-tile:hover { padding-bottom: 22px !important; }
.tc-team .tc-text.tc-tile { justify-content: flex-end; padding-left: 10px !important; padding-right: 10px !important; }
.tc-team .tc-tile .tc-text_inner h2 { font-size: 15px; letter-spacing: 2px; text-shadow: 0 1px 6px rgba(0, 0, 0, .5); }
@media (max-width: 980px) {
  .tc-row.tc-team { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 600px) {
  .tc-row.tc-team { grid-template-columns: repeat(2, 1fr); }
  .tc-row.tc-team > .tc-team-col:last-child:nth-child(odd) { grid-column: 1 / -1; }
}

/* ---------- portfoliopagina: tegelraster ---------- */

.tc-row.tc-portfolio-grid { display: grid; grid-template-columns: repeat(4, 1fr); grid-auto-rows: 300px; align-items: stretch; width: 100%; max-width: none; }
.tc-portfolio-grid > .tc-tile { height: auto !important; margin: 0 !important; }
.tc-portfolio-grid > .tc-pg-big { grid-column: span 2; grid-row: span 2; }
.tc-portfolio-grid > .tc-pg-wide { grid-column: span 2; }
@media (max-width: 980px) {
  .tc-row.tc-portfolio-grid { grid-template-columns: repeat(2, 1fr); padding: 0; }
}
@media (max-width: 600px) {
  .tc-row.tc-portfolio-grid { grid-template-columns: 1fr; }
  .tc-portfolio-grid > .tc-pg-big, .tc-portfolio-grid > .tc-pg-wide { grid-column: auto; grid-row: auto; }
}

/* ---------- aanvullingen talen gelijktrekken ---------- */

.tc-involved-sec { padding: 50px 0 70px; background: #fff; }
.tc-involved .tc-text_inner, .tc-involved p, .tc-involved div { font-size: 19px; font-weight: 300; line-height: 1.8em; color: #444; }
.tc-involved strong { font-weight: 700; color: #444; }
.tc-involved a, .tc-involved a strong { color: var(--tc-green); font-weight: 700; }
.tc-added-heading { padding: 100px 0; background: #fff; }
.tc-added-heading h2 { font-size: 40px; font-weight: 300; letter-spacing: 3px; text-transform: uppercase; color: var(--tc-heading); line-height: 1em; }
.tc-added-heading h2 strong { font-weight: 700; }
@media (max-width: 767px) { .tc-added-heading { padding: 60px 0; } .tc-added-heading h2 { font-size: 26px; } }

/* ---------- leesbaarheid: lopende tekst iets voller (Lato Regular i.p.v. Light) ---------- */

main .tc-text p, main .tc-text li, main .tc-text_inner > div,
main .tc-testimonial_content, main .tc-testimonial_content p,
main .tc-project-text p, main .tc-involved p, main .tc-involved div { font-weight: 400; }
/* tekst in uitklapblokken groter voor de leesbaarheid (was 14px) */
main .tc-toggle_content, main .tc-toggle_content p, main .tc-toggle_content li { font-size: 17px; line-height: 1.8em; }
@media (max-width: 767px) { main .tc-toggle_content, main .tc-toggle_content p, main .tc-toggle_content li { font-size: 16px; } }

/* ---------- klikbare blokken ---------- */

.tc-module-link { position: absolute; inset: 0; z-index: 5; }
.tc-module-link:focus-visible { outline: 3px solid var(--tc-green); outline-offset: -3px; }

/* ---------- portfoliotegels: titel verticaal in het midden ---------- */

.tc-text.tc-tile { display: flex; flex-direction: column; justify-content: center; padding-top: 0 !important; padding-bottom: 0 !important; }
/* de originele hover-regel (meer ruimte boven de tekst) duwde de kop omlaag: uitgezet */
.tc-row .tc-text.tc-tile, .tc-row .tc-text.tc-tile:hover { padding-top: 0 !important; padding-bottom: 0 !important; }
.tc-tile .tc-text_inner { transition: transform .45s ease; }
.tc-tile:hover .tc-text_inner { transform: translateY(-8px); }
.tc-tile .tc-text_inner > :empty { display: none; }
.tc-row .tc-cta:hover h2, .tc-row .tc-cta:hover h2 * { color: #fff !important; }
.tc-tile .tc-text_inner h2 { padding-bottom: 0; line-height: 1.2em; }

/* ---------- afbeeldingen ---------- */

.tc-image { line-height: 0; margin-left: auto; margin-right: auto; text-align: left; }
.tc-image .tc-image_wrap { display: inline-block; position: relative; max-width: 100%; }
.tc-image img { position: relative; }
.tc-image_sticky { margin-bottom: 0 !important; display: inherit; }
.tc-image_wrap { display: inline-block; position: relative; max-width: 100%; }

/* ---------- knoppen ---------- */

.tc-button_module_wrapper > a { display: inline-block; }
.tc-button_alignment_center { text-align: center; }
.tc-button_alignment_left { text-align: left; }
.tc-button_alignment_right { text-align: right; }
.tc-button {
  position: relative;
  display: inline-block;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.7em !important;
  padding: .3em 1em;
  color: var(--tc-green);
  background-color: transparent;
  background-size: cover;
  background-position: center;
  border: 2px solid;
  border-radius: 3px;
  cursor: pointer;
  transition: all .2s;
}
/* Alle knoppen: vloeiende overgang naar groen bij hover (geen pijltje, geen verspringing) */
.tc-button, .tc-project-button, .tc-contact_submit {
  transition: background-color .4s ease, color .4s ease, border-color .4s ease, letter-spacing .4s ease !important;
}
.tc-button::before, .tc-button::after { display: none !important; content: none !important; }
.tc-section .tc-button:hover, .tc-button:hover, .tc-project-button:hover, .tc-contact_submit:hover,
.tc-button:focus-visible {
  background-color: var(--tc-green) !important;
  background-image: none !important;
  border-color: var(--tc-green) !important;
  color: #fff !important;
}
/* partnerpagina's: contactknop alleen verbreden (geen kleur), social-icoontjes alleen licht omhoog (geen kleur) */
.tc-page-partner main .tc-section .tc-button:hover, .tc-page-partner main .tc-section .tc-button:focus-visible {
  background-color: transparent !important; color: #fff !important; border-color: #fff !important;
  letter-spacing: 3px !important; transform: none !important;
}
.tc-page-partner main .tc-button_module_wrapper a:hover { transform: none !important; }
.tc-page-partner main .tc-social_media_follow li { transition: transform .3s ease !important; }
.tc-page-partner main .tc-social_media_follow li:hover { transform: translateY(-3px) !important; }
.tc-page-partner main .tc-social_media_follow li a.icon:hover { background-color: transparent !important; opacity: 1; }
.tc-page-partner main .tc-social_media_follow li:hover .icon > svg { color: #fff !important; }
/* icoontjes groter binnen dezelfde cirkel */
.tc-page-partner main .tc-social_media_follow li a.icon > svg { transform: scale(1.5); }

/* footer-socials: zelfde als op de partnerpagina's (groter icoon, licht omhoog, geen kleurverandering) */
footer .tc-social_media_follow li { transition: transform .3s ease !important; }
footer .tc-social_media_follow li:hover { transform: translateY(-3px) !important; }
footer .tc-social_media_follow li a.icon, footer .tc-social_media_follow li a.icon:hover { background-color: transparent !important; opacity: 1; }
/* rand van de cirkel blijft wit bij hover (footer en partnerpagina's) */
footer .tc-social_media_follow li.tc-social_icon:hover a.icon, footer .tc-social_media_follow li a.icon:hover,
.tc-page-partner main .tc-social_media_follow li.tc-social_icon:hover a.icon, .tc-page-partner main .tc-social_media_follow li a.icon:hover { border-color: #fff !important; }
footer .tc-social_media_follow li a.icon > svg, footer .tc-social_media_follow li:hover a.icon > svg { color: #fff !important; transform: scale(1.5); }

/* headerknop op de homepage ('Er is altijd een waarom', opent de pop-up): al groen, dus alleen verbreden */
.tc-section .tc-button[data-popup], .tc-section .tc-button[data-popup]:hover { background-color: #84a194 !important; border-color: #84a194 !important; color: #fff !important; }
.tc-section .tc-button[data-popup]:hover { letter-spacing: 3px !important; }

/* ---------- blurbs (icoon + titel) ---------- */

.tc-blurb { text-align: left; }
.tc-blurb_content { max-width: 550px; margin: 0 auto; position: relative; }
.tc-blurb_position_left .tc-blurb_content { display: flex; align-items: flex-start; max-width: none; }
.tc-blurb_position_left .tc-main_blurb_image { flex: 0 0 auto; width: 32px; line-height: 0; }
.tc-blurb_position_left .tc-blurb_container { flex: 1 1 auto; padding-left: 15px; }
.tc-blurb_position_top .tc-main_blurb_image { margin-bottom: 30px; text-align: center; line-height: 0; }
.tc-main_blurb_image .tc-image_wrap { display: inline-block; max-width: 100%; }
.tc-blurb .tc-module_header { font-size: 18px; padding-bottom: 10px; }
.tc-blurb .tc-module_header a { color: inherit; }
.tc-pb-icon {
  display: inline-block;
  position: relative;
  font-size: 96px;
  width: 1em;
  height: 1em;
  line-height: 1;
  color: var(--tc-green);
}
.tc-pb-icon svg { display: block; width: 100%; height: 100%; }
.tc-pb-icon .tc-icon-hover { position: absolute; inset: 0; opacity: 0; transition: opacity .3s; }
.tc-blurb:hover .tc-pb-icon .tc-icon-hover { opacity: 1; }

/* ---------- uitklapblokken ---------- */

.tc-toggle { border: 1px solid #d9d9d9; padding: 20px; transition: background-color .3s; }
.tc-toggle_close { background-color: #f4f4f4; }
.tc-toggle_open { background-color: #fff; }
.tc-toggle_title {
  position: relative;
  cursor: pointer;
  padding: 0 50px 0 0 !important;
  font-size: 16px;
  color: #333;
  line-height: 1em;
}
.tc-toggle_title::before {
  content: "+";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 22px;
  font-weight: 300;
  line-height: 1;
  color: #ccc;
}
.tc-toggle_open .tc-toggle_title::before { content: "\2212"; }
.tc-toggle_content { display: none; padding-top: 20px; position: relative; overflow: hidden; }
.tc-toggle_open .tc-toggle_content { display: block; }
/* uitklapblokken naast elkaar: even hoog */
.tc-toggle { transition: min-height .5s ease, background-color .5s ease; }
.tc-toggle .tc-toggle_title, .tc-toggle .tc-toggle_title::before { transition: color .5s ease; }
.tc-toggle.is-closing .tc-toggle_content { display: block; }
/* kader bij focus alleen tonen bij toetsenbordbediening */
.tc-mouse .tc-toggle_title:focus, .tc-mouse .tc-toggle_title:focus-visible { outline: none; }
.tc-toggle_title:focus-visible { outline: 2px solid var(--tc-green); outline-offset: 4px; }

/* ---------- scheidingslijn ---------- */

.tc-space { box-shadow: none !important; border: 0; height: 23px; }
.tc-divider { position: relative; margin: 0 0 30px 0; }
.tc-divider_internal { display: block; }
.tc-divider::before {
  content: "";
  position: absolute;
  left: 0; top: 0;
  width: 100%;
  height: 1px;
  border-top: 1px solid rgba(0, 0, 0, 0);
  transition: opacity .4s ease-in-out;
}

/* ---------- video ---------- */

.tc-video { position: relative; }
.tc-video_box { position: relative; width: 100%; line-height: 0; }
.tc-video_box iframe, .tc-video_box video { display: block; width: 100%; }
.tc-video_overlay {
  position: absolute; inset: 0; z-index: 3;
  background-size: cover; background-position: center; background-repeat: no-repeat;
  cursor: pointer;
}
.tc-video:not(:has(.tc-video_box)) .tc-video_overlay { display: none; }
.tc-video_overlay_hover { position: absolute; inset: 0; background: rgba(0, 0, 0, 0); transition: background .3s; }
.tc-video_overlay:hover .tc-video_overlay_hover { background: rgba(0, 0, 0, .2); }
.tc-video_play {
  position: absolute; left: 50%; top: 50%;
  width: 80px; height: 80px; margin: -40px 0 0 -40px;
  color: #fff;
}
.tc-video_play svg { width: 100%; height: 100%; }

/* ---------- social media ---------- */

.tc-social_media_follow { list-style: none !important; padding: 0 !important; margin: 0 0 22px 0; display: flex; flex-wrap: wrap; }
.tc-social_media_follow li { display: inline-block; margin: 0 8px 8px 0; }
.tc-social_media_follow li a.icon {
  display: flex; align-items: center; justify-content: center;
  box-sizing: content-box;
  border-radius: 3px;
  color: #fff;
  transition: opacity .3s;
}
.tc-social_media_follow li.tc-with_border a.icon, ul.tc-social_media_follow a.icon { border-style: solid; }
.tc-social_media_follow li a.icon:hover { opacity: .7; }
.tc-social_media_follow li a.icon > svg { display: block; width: 32px; height: 32px; }
.tc-social-facebook a.icon { background-color: #3b5998; }
.tc-social-linkedin a.icon { background-color: #007bb6; }
.tc-social-youtube a.icon { background-color: #a82400; }
.tc-social-instagram a.icon { background-color: #ea2c59; }
.tc-social-twitter a.icon { background-color: #000; }
.tc-social-vimeo a.icon { background-color: #45bbff; }
.tc-social-pinterest a.icon { background-color: #cb2027; }

/* ---------- getuigenissen ---------- */

.tc-testimonial { position: relative; padding: 30px; overflow: hidden; }
.tc-testimonial_portrait { float: left; position: relative; width: 90px; height: 90px; margin-right: 30px; border-radius: 90px; overflow: hidden; background-size: cover; background-position: center; }
.tc-testimonial_portrait::before { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.tc-testimonial_description { display: block; overflow: hidden; }
.tc-testimonial_content p { padding-bottom: 1em; }
.tc-testimonial_author { display: block; margin-top: 32px; font-weight: 700; line-height: 1.8em; }
.tc-testimonial_meta { display: block; }
.tc-testimonial_separator { padding: 0; }
.tc-icon_off::before { display: none; }

/* ---------- portfolio-raster ---------- */

.tc-fullwidth_portfolio .tc-portfolio_items { display: flex; flex-wrap: wrap; }
.tc-fullwidth_portfolio .tc-portfolio_item { position: relative; width: 25%; line-height: 0; overflow: hidden; }
.tc-portfolio_image { position: relative; display: block; }
.tc-portfolio_image img { display: block; width: 100%; height: auto; aspect-ratio: 510 / 382; object-fit: cover; }
.tc-portfolio_image .meta {
  position: absolute; inset: 0;
  background: rgba(0, 0, 0, 0); transition: background-color .45s ease;
}
.tc-portfolio_image .meta > a, .tc-portfolio_image .meta > .tc-nolink {
  position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center;
  padding: 20px; text-align: center; line-height: 1.4; color: #fff;
}
.tc-portfolio_item:hover .meta, .tc-portfolio_item:focus-within .meta { background-color: rgba(0, 0, 0, .4); }
.tc-portfolio_image .meta h3 { transition: transform .45s ease; text-shadow: 0 1px 8px rgba(0, 0, 0, .55); }
.tc-portfolio_item:hover .meta h3, .tc-portfolio_item:focus-within .meta h3 { transform: translateY(-8px); }
.tc-portfolio_image .meta h3,
.tc-fullwidth_portfolio .tc-portfolio_image .meta h3.tc-module_header {
  font-family: 'Lato', Helvetica, Arial, sans-serif; font-weight: 500; font-size: 23px !important;
  text-transform: uppercase; letter-spacing: 2px !important; line-height: 1.2em; color: #fff !important;
  padding-bottom: 0;
}
.tc-portfolio_image .meta .post-meta { display: none; }
.tc-portfolio_image .tc-overlay { display: none; }

/* ---------- contactformulier ---------- */

.tc-contact_form { display: flex; flex-wrap: wrap; justify-content: space-between; }
.tc-contact_field { width: 100%; margin: 0 0 3% 0; padding: 0 !important; position: relative; }
.tc-contact_field_half { width: 48.5%; }
.tc-contact_form_label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.tc-contact_form .input {
  width: 100%;
  padding: 16px;
  border: 0;
  border-radius: 0;
  font-size: 14px;
  color: #999;
  background-color: #eee;
}
.tc-contact_form .input:focus { outline: 2px solid var(--tc-green); color: #3e3e3e; }
.tc-contact_form textarea.input { height: auto; min-height: 150px; resize: vertical; display: block; }
.tc-contact_bottom_container { width: 100%; display: flex; justify-content: flex-end; margin-top: -1.5%; }
.tc-contact_submit { margin-left: auto; }
.tc-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.tc-form-message { width: 100%; margin-bottom: 1em; padding: 12px 16px; background: #f3f6f4; border-left: 3px solid var(--tc-green); }
.tc-form-message.is-error { border-left-color: #c0392b; background: #fbeeee; }

/* ---------- kop: vaste balk, taalkeuze, menu ---------- */

.tc-site-header .tc-section--fixed { pointer-events: none; }
.tc-site-header .tc-section--fixed .tc-row, .tc-site-header .tc-section--fixed a,
.tc-site-header .tc-section--fixed button, .tc-site-header .tc-lang { pointer-events: auto; }
.tc-menu-toggle { display: inline-block; padding: 0; margin: 0; border: 0; background: none; cursor: pointer; line-height: 0; }
.tc-menu-toggle img { display: block; }

.tc-lang { position: relative; display: inline-block; line-height: 0; padding: 7px 0; }
.tc-lang svg { width: 18px; height: 12px; display: block; }
.tc-lang-toggle svg { width: 27px; height: 20px; }
.tc-lang-toggle { padding: 5px 35px 5px 10px; margin: 0; border: 0; background: none; cursor: pointer; }
.tc-lang-menu {
  position: absolute; top: 100%; left: 0;
  list-style: none; margin: 0; padding: 0;
  background: transparent;
  opacity: 0; visibility: hidden; transform: translateY(-4px); transition: all .2s;
  z-index: 10;
}
.tc-lang:hover .tc-lang-menu, .tc-lang.is-open .tc-lang-menu { opacity: 1; visibility: visible; transform: none; }
/* alleen de vlag, even groot als de gekozen taal en recht daaronder */
.tc-lang-menu a { display: block; padding: 5px 35px 5px 10px; line-height: 0; }
.tc-lang-menu a svg { width: 27px; height: 20px; transition: transform .2s; }
.tc-lang-menu a:hover svg, .tc-lang-menu a:focus-visible svg { transform: scale(1.1); }
.tc-lang-menu a span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.tc-menu[hidden] { display: none; }
.tc-menu { position: fixed; inset: 0; z-index: 1000; }
.tc-menu-overlay { position: absolute; inset: 0; background: rgba(11, 11, 11, .8); opacity: 0; transition: opacity .3s; }
.tc-menu-inner {
  position: absolute; top: 0; right: 0; bottom: 0;
  width: min(1400px, calc(100% - 162px));
  overflow-y: auto;
  background: #fff;
  transform: translateX(60px);
  opacity: 0;
  transition: transform .5s ease, opacity .5s ease;
}
.tc-menu.is-open .tc-menu-overlay { opacity: 1; }
.tc-menu.is-open .tc-menu-inner { transform: none; opacity: 1; }
.tc-menu-close {
  position: absolute; top: 0; right: 0; z-index: 5;
  width: 68px; height: 68px; padding: 22px;
  border: 0; color: #fff; background: #000; cursor: pointer;
}
@media (max-width: 980px) { .tc-menu-inner { width: 100%; } }
.tc-menu-close svg { width: 100%; height: 100%; display: block; }
.tc-menu .tc-menu-panel { position: relative; min-height: 100%; }
/* lijn in het menu boven de (omhoog geschoven) gloeilamp leggen, zodat hij doorloopt */
.tc-menu .tc-divider { z-index: 3; }
.tc-menu .tc-image { z-index: 1; }
body.tc-menu-open { overflow: hidden; }

/* ---------- pop-ups ---------- */

.tc-popup[hidden] { display: none; }
.tc-popup { position: fixed; inset: 0; z-index: 1001; display: flex; align-items: center; justify-content: center; padding: 0 20px; }
.tc-popup-overlay { position: absolute; inset: 0; background: rgba(0, 0, 0, .8); opacity: 0; transition: opacity .3s; }
.tc-popup-inner {
  position: relative; width: 100%; max-width: 1200px; max-height: 100vh; overflow-y: auto;
  opacity: 0; transition: opacity .4s;
}
.tc-popup.is-open .tc-popup-overlay, .tc-popup.is-open .tc-popup-inner { opacity: 1; }
.tc-popup-close {
  position: absolute; top: 0; right: 0; z-index: 5;
  width: 44px; height: 44px; padding: 12px;
  border: 0; background: none; color: #fff; cursor: pointer;
}
.tc-popup-close svg { width: 100%; height: 100%; display: block; }
.tc-popup-content > .tc-row { width: 100%; max-width: none; }

/* ---------- lees meer / sluiten ---------- */

.has-readmore .rm-el { display: none !important; }
.has-readmore .rm-el.is-visible { display: block !important; }
.has-readmore .tc-row.rm-el.is-visible { display: flex !important; }
.has-readmore .tc-button_module_wrapper .tc-button.rm-el.is-visible, .has-readmore a.rm-el.is-visible { display: inline-block !important; }
.has-readmore .tc-button.rm-opened { display: none !important; }

/* ---------- animaties ---------- */

[data-anim].tc-anim-wait { will-change: transform, opacity; }

/* ---------- naar boven ---------- */

.tc-to-top {
  position: fixed; right: 0; bottom: 125px; z-index: 99;
  width: 40px; height: 40px; padding: 8px;
  border: 0; border-radius: 5px 0 0 5px;
  color: #fff; background: rgba(0, 0, 0, .4);
  cursor: pointer; opacity: 0; visibility: hidden; transition: all .4s;
}
.tc-to-top.is-visible { opacity: 1; visibility: visible; }
.tc-to-top svg { width: 100%; height: 100%; display: block; }

/* ---------- 404 ---------- */

.tc-404 { min-height: 70vh; display: flex; align-items: center; background: #f3f6f4; }
.tc-404-inner { width: 80%; max-width: var(--tc-row-max); margin: 0 auto; padding: 200px 0 120px; }
.tc-404 h1 { font-family: 'Open Sans', Helvetica, Arial, sans-serif; font-weight: 300; text-transform: uppercase; font-size: 60px; letter-spacing: -1px; line-height: 1; padding-bottom: 30px; }
.tc-404 p { font-size: 19px; font-weight: 300; line-height: 1.8em; max-width: 640px; }
.tc-404 .tc-button { margin-top: 20px; font-size: 14px; color: #fff; background: var(--tc-green); border-color: var(--tc-green); border-radius: 50px; padding: .6em 2em; text-transform: uppercase; letter-spacing: 1px; }
.tc-404 .tc-button:hover { padding: .6em 2.6em .6em 1.4em; }

/* ---------- responsief ---------- */

@media (min-width: 981px) {
  .tc-section_parallax .tc-parallax_bg { background-attachment: fixed; }
}

@media (max-width: 980px) {
  .tc-section { padding: 50px 0; }
  .tc-row { padding: 30px 0; }
  .tc-row, .tc-section_specialty > .tc-row { flex-wrap: wrap; }
  .tc-column, .tc-row .tc-column { width: 100% !important; margin-right: 0 !important; margin-bottom: 30px; }
  .tc-row .tc-column:last-child, .tc-row .tc-column.tc-last-child { margin-bottom: 0; }
  .tc-column > .tc-module { margin-bottom: 30px; }
  .tc-gutters1 .tc-column, .tc-row.tc-gutters1 > .tc-column { margin-bottom: 0; }
  /* Vier kolommen: twee naast elkaar op tablet. */
  .tc-row:has(> .tc-column_1_4:nth-child(4)) > .tc-column_1_4 { width: 47.25% !important; margin-right: 5.5% !important; }
  .tc-row:has(> .tc-column_1_4:nth-child(4)) > .tc-column_1_4:nth-child(2n) { margin-right: 0 !important; }
  .tc-gutters1 .tc-row:has(> .tc-column_1_4:nth-child(4)) > .tc-column_1_4,
  .tc-row.tc-gutters1:has(> .tc-column_1_4:nth-child(4)) > .tc-column_1_4 { width: 50% !important; margin-right: 0 !important; margin-bottom: 0; }
  .tc-fullwidth_portfolio .tc-portfolio_item { width: 50%; }
  .tc-column_empty { display: none; }
  .tc-text_align_center-tablet { text-align: center; }
  .tc-text_align_left-tablet { text-align: left; }
  .tc-parallax_bg { background-attachment: scroll !important; }
  .tc-parallax_bg_tablet_exist .tc-parallax_bg:not(.tc-parallax_bg_tablet) { display: none; }
  .tc-parallax_bg_tablet { display: block; }
}

@media (max-width: 767px) {
  .tc-row:has(> .tc-column_1_4:nth-child(4)) > .tc-column_1_4,
  .tc-gutters1 .tc-row:has(> .tc-column_1_4:nth-child(4)) > .tc-column_1_4,
  .tc-row.tc-gutters1:has(> .tc-column_1_4:nth-child(4)) > .tc-column_1_4 { width: 100% !important; margin-right: 0 !important; }
  .tc-contact_field_half { width: 100%; }
  .tc-fullwidth_portfolio .tc-portfolio_item { width: 100%; }
  .tc-button_alignment_phone_left { text-align: left; }
  .tc-button_alignment_phone_center { text-align: center; }
  .tc-testimonial_portrait { float: none; margin: 0 0 20px; }
  .tc-parallax_bg_phone_exist .tc-parallax_bg:not(.tc-parallax_bg_phone) { display: none; }
  .tc-parallax_bg_phone { display: block; }
}

/* Eigen rijklassen uit de thema-instellingen: kolommen blijven naast elkaar op tablet en telefoon. */
@media (max-width: 980px) {
  .tc-row.tc-row.two-columns > .tc-column.tc-column.tc-column { width: 50% !important; margin-right: 0 !important; margin-bottom: 0; }
  .tc-row.tc-row.three-columns > .tc-column.tc-column.tc-column { width: 33.3% !important; margin-right: 0 !important; margin-bottom: 0; }
  .tc-row.tc-row.four-columns > .tc-column.tc-column.tc-column { width: 25% !important; margin-right: 0 !important; margin-bottom: 0; }
}

/* Schaduwlaag over secties/rijen (binnenschaduw) */
.box-shadow-overlay { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 10; pointer-events: none; }
.tc-section > .box-shadow-overlay ~ .tc-row { z-index: 11; }
.tc-row > .box-shadow-overlay { z-index: 8; }
.has-box-shadow-overlay { position: relative; }

/* Eigen sectieklasse 'header' (partnerpagina's): schermvullend */
.tc-section.header { height: 100vh; }
@media (max-width: 600px) { .tc-section.header { height: 95vh !important; } }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
