.elementor-kit-7{--e-global-color-primary:#1F2424;--e-global-color-secondary:#5C4636;--e-global-color-text:#34383A;--e-global-color-accent:#8A9A8A;--e-global-color-b0da8c1:#F7F2EA;--e-global-color-b00163b:#FFFFFF;--e-global-color-b415cd5:#D8D1C7;--e-global-color-4b454ba:#B7A89A;--e-global-color-869f5d5:#A46F56;--e-global-color-cbed412:#111111;--e-global-typography-primary-font-family:"Playfair Display";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Playfair Display";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Open Sans";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Open Sans";--e-global-typography-accent-font-weight:500;color:var( --e-global-color-text );font-family:"Montserrat", Sans-serif;font-size:17px;font-weight:400;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 a{color:#5C4636;}.elementor-kit-7 a:hover{color:#1F2424;}.elementor-kit-7 h1{color:#5C4636;font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-kit-7 h2{color:#5C4636;font-family:"Cormorant Garamond", Sans-serif;font-size:36px;font-weight:600;}.elementor-kit-7 h3{color:#1F2424;font-family:"Montserrat", Sans-serif;font-size:22px;font-weight:600;}.elementor-kit-7 h4{color:#34383A;}.elementor-kit-7 h5{color:#34383A;}.elementor-kit-7 h6{color:#34383A;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1180px;}.e-con{--container-max-width:1180px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ═══════════════════════════════════════════════════════════
   TBM SCAN — BRAND-ALIGNED STYLES  (Brand Manual v0.2)
   Monochrome-first · warm neutrals · Trust Sage accent
   ═══════════════════════════════════════════════════════════ */

/* Import brand fonts */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600&family=Montserrat:wght@400;500;600&display=swap');

/* ── Brand colour variables ── */
.tbm-scan-page {
  --ink:        #1F2424;  /* Core Ink — body text */
  --charcoal:   #34383A;  /* Charcoal — primary identity */
  --black:      #111111;  /* deep near-black */
  --ivory:      #F7F2EA;  /* Warm Ivory — backgrounds */
  --stone:      #D8D1C7;  /* Soft Stone — borders/dividers */
  --taupe:      #B7A89A;  /* Balanced Taupe — subtle fills */
  --sage:       #8A9A8A;  /* Trust Sage — primary accent */
  --umber:      #5C4636;  /* Deep Umber — headings/warmth */
  --clay:       #A46F56;  /* Muted Clay — sparing emphasis */
  --white:      #FFFFFF;
}

/* ── Page wrapper ── */
.tbm-scan-page .gform_wrapper {
  max-width: 760px;
  margin: 0 auto;
  font-family: 'Montserrat', 'Open Sans', sans-serif;
  color: var(--ink);
}

/* ── Progress bar ── */
.tbm-scan-page .gf_progressbar_wrapper { margin-bottom: 36px; }
.tbm-scan-page .gf_progressbar {
  background-color: var(--stone);
  border-radius: 2px;
  height: 6px;
}
.tbm-scan-page .gf_progressbar_percentage {
  background-color: var(--sage);
  border-radius: 2px;
  height: 6px;
}
.tbm-scan-page .gf_progressbar_title {
  color: var(--charcoal);
  font-family: 'Montserrat', sans-serif;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 10px;
}

/* ── Intro block (Page 1) ── */
.tbm-scan-page .tbm-intro-block {
  background-color: var(--charcoal);
  color: var(--white);
  padding: 32px 36px;
  border-radius: 2px;
  margin-bottom: 36px;
}
.tbm-scan-page .tbm-intro-block p {
  color: var(--white);
  font-family: 'Montserrat', sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.75;
  margin-bottom: 14px;
}
.tbm-scan-page .tbm-intro-lead {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: 26px !important;
  font-weight: 600;
  line-height: 1.3 !important;
  color: var(--white) !important;
  margin-bottom: 18px !important;
}
.tbm-scan-page .tbm-intro-note {
  color: var(--ivory) !important;
  border-left: 2px solid var(--sage);
  padding-left: 16px;
  font-size: 14px !important;
}

/* ── Pillar intro block (Pages 2–7) ── */
.tbm-scan-page .tbm-pillar-intro {
  background-color: var(--ivory);
  border-left: 3px solid var(--sage);
  padding: 22px 26px;
  border-radius: 0 2px 2px 0;
  margin-bottom: 30px;
}
.tbm-scan-page .tbm-pillar-intro p {
  color: var(--ink);
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  line-height: 1.75;
  margin: 10px 0 0 0;
}
.tbm-scan-page .tbm-pillar-label {
  display: block;
  font-family: 'Montserrat', sans-serif;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--umber);
  margin-bottom: 8px;
}

/* ── Field labels ── */
.tbm-scan-page .gfield_label {
  color: var(--charcoal);
  font-family: 'Montserrat', sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 12px;
}

/* ── Text inputs & dropdowns ── */
.tbm-scan-page input[type='text'],
.tbm-scan-page input[type='email'],
.tbm-scan-page select,
.tbm-scan-page textarea {
  border: 1px solid var(--stone);
  border-radius: 2px;
  padding: 12px 16px;
  font-family: 'Montserrat', sans-serif;
  font-size: 15px;
  color: var(--ink);
  background-color: var(--white);
  width: 100%;
  transition: border-color 0.2s ease;
}
.tbm-scan-page input[type='text']:focus,
.tbm-scan-page input[type='email']:focus,
.tbm-scan-page select:focus,
.tbm-scan-page textarea:focus {
  border-color: var(--sage);
  outline: none;
  box-shadow: 0 0 0 1px var(--sage);
}

/* ── Radio button Likert scale ── */
.tbm-scan-page .gfield_radio {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.tbm-scan-page .gfield_radio div,
.tbm-scan-page .gfield_radio .gchoice {
  display: flex;
  align-items: center;
  background: var(--white);
  border: 1px solid var(--stone);
  border-radius: 2px;
  padding: 13px 18px;
  cursor: pointer;
  transition: all 0.15s ease;
}
.tbm-scan-page .gfield_radio div:hover,
.tbm-scan-page .gfield_radio .gchoice:hover {
  background: var(--ivory);
  border-color: var(--sage);
}
.tbm-scan-page .gfield_radio input[type='radio'] {
  width: 18px;
  height: 18px;
  margin-right: 14px;
  accent-color: var(--sage);
  flex-shrink: 0;
}
.tbm-scan-page .gfield_radio label {
  font-family: 'Montserrat', sans-serif;
  font-size: 15px;
  color: var(--ink);
  cursor: pointer;
  margin: 0;
}

/* ── Consent checkbox ── */
.tbm-scan-page .gfield_checkbox div,
.tbm-scan-page .gfield_checkbox .gchoice {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  background: var(--ivory);
  border: 1px solid var(--taupe);
  border-radius: 2px;
  padding: 16px 18px;
}
.tbm-scan-page .gfield_checkbox input[type='checkbox'] {
  width: 18px;
  height: 18px;
  margin-top: 2px;
  accent-color: var(--sage);
  flex-shrink: 0;
}
.tbm-scan-page .gfield_checkbox label {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  line-height: 1.6;
  color: var(--ink);
}

/* ── Navigation buttons ── */
.tbm-scan-page .gform_next_button,
.tbm-scan-page .gform_previous_button,
.tbm-scan-page .gform_button[type='submit'] {
  font-family: 'Montserrat', sans-serif;
  border-radius: 2px;
  padding: 14px 34px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.tbm-scan-page .gform_next_button,
.tbm-scan-page .gform_button[type='submit'] {
  background-color: var(--charcoal);
  color: var(--white);
  border: none;
}
.tbm-scan-page .gform_next_button:hover,
.tbm-scan-page .gform_button[type='submit']:hover {
  background-color: var(--umber);
}
.tbm-scan-page .gform_previous_button {
  background-color: transparent;
  color: var(--charcoal);
  border: 1px solid var(--charcoal);
}
.tbm-scan-page .gform_previous_button:hover {
  background-color: var(--ivory);
}

/* ── Validation errors (Muted Clay, used sparingly) ── */
.tbm-scan-page .gfield_error .gfield_label { color: var(--clay); }
.tbm-scan-page .gfield_error input,
.tbm-scan-page .gfield_error select {
  border-color: var(--clay) !important;
}
.tbm-scan-page .validation_message {
  color: var(--clay);
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  margin-top: 8px;
}

/* ── Field descriptions ── */
.tbm-scan-page .gfield_description {
  color: var(--umber);
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  line-height: 1.6;
  margin-top: 6px;
}

/* ── Confirmation message ── */
.tbm-scan-page .tbm-confirmation,
.tbm-confirmation {
  max-width: 640px;
  margin: 48px auto;
  padding: 48px;
  background: var(--ivory);
  border-top: 3px solid var(--sage);
  border-radius: 2px;
  text-align: center;
}
.tbm-confirmation h2 {
  font-family: 'Cormorant Garamond', Georgia, serif;
  color: var(--charcoal);
  font-size: 32px;
  font-weight: 600;
  margin-bottom: 18px;
}
.tbm-confirm-lead {
  font-family: 'Montserrat', sans-serif;
  font-size: 16px;
  font-weight: 600;
  color: var(--charcoal);
  margin-bottom: 16px;
}
.tbm-confirmation p {
  font-family: 'Montserrat', sans-serif;
  color: var(--ink);
  font-size: 15px;
  line-height: 1.75;
  margin-bottom: 12px;
}
.tbm-confirmation a {
  color: var(--umber);
  text-decoration: underline;
}

/* ── Mobile ── */
@media (max-width: 600px) {
  .tbm-scan-page .tbm-intro-block { padding: 24px 20px; }
  .tbm-scan-page .tbm-intro-lead { font-size: 22px !important; }
  .tbm-scan-page .gform_next_button,
  .tbm-scan-page .gform_button[type='submit'] {
    width: 100%;
    text-align: center;
  }
}

/* ── Ankeroffset: vaste header mag het formulieranker niet afdekken ── */
.tbm-scan-page .gform_anchor,
.tbm-scan-page .gform_wrapper {
  scroll-margin-top: 140px;
}/* End custom CSS */