.elementor-10 .elementor-element.elementor-element-c0009{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-10 .elementor-element.elementor-element-c0006{--display:flex;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-10 .elementor-element.elementor-element-c0020{--display:flex;}.elementor-10 .elementor-element.elementor-element-c0018{--display:flex;}.elementor-10 .elementor-element.elementor-element-c0013{--display:flex;}.elementor-10 .elementor-element.elementor-element-c0015{--display:flex;}.elementor-10 .elementor-element.elementor-element-c0017{--display:flex;}.elementor-10 .elementor-element.elementor-element-c0029{--display:flex;}.elementor-10 .elementor-element.elementor-element-c0028{--display:flex;}.elementor-10 .elementor-element.elementor-element-c0027{--display:flex;}.elementor-10 .elementor-element.elementor-element-c0040{--display:flex;}.elementor-10 .elementor-element.elementor-element-c0039{--display:flex;}.elementor-10 .elementor-element.elementor-element-c0034{--display:flex;}.elementor-10 .elementor-element.elementor-element-c0036{--display:flex;}.elementor-10 .elementor-element.elementor-element-c0038{--display:flex;}.elementor-10 .elementor-element.elementor-element-c0157{--display:flex;}.elementor-10 .elementor-element.elementor-element-c5f562df{--display:flex;}.elementor-10 .elementor-element.elementor-element-4681c294{--display:flex;}.elementor-10 .elementor-element.elementor-element-361e62cf{--display:flex;}.elementor-10 .elementor-element.elementor-element-8c53cf77{--display:flex;}.elementor-10 .elementor-element.elementor-element-35aaed69{--display:flex;}.elementor-10 .elementor-element.elementor-element-384f25b5{--display:flex;}.elementor-10 .elementor-element.elementor-element-18ce2e46{--display:flex;}.elementor-10 .elementor-element.elementor-element-57747fe3{--display:flex;}.elementor-10 .elementor-element.elementor-element-78cf3d13{--display:flex;}.elementor-10 .elementor-element.elementor-element-b495de10{--display:flex;}.elementor-10 .elementor-element.elementor-element-79b01d90{--display:flex;}.elementor-10 .elementor-element.elementor-element-ff7c9ced{--display:flex;}.elementor-10 .elementor-element.elementor-element-886c5a71{--display:flex;}.elementor-10 .elementor-element.elementor-element-98ec2d79{--display:flex;}.elementor-10 .elementor-element.elementor-element-99137c17{--display:flex;}.elementor-10 .elementor-element.elementor-element-cf424d40{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:18px 18px;--row-gap:18px;--column-gap:18px;--flex-wrap:wrap;}.elementor-10 .elementor-element.elementor-element-cf79b552{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-10 .elementor-element.elementor-element-79c20da7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-10 .elementor-element.elementor-element-c9882e57{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-10 .elementor-element.elementor-element-5e418ccf{--display:flex;}.elementor-10 .elementor-element.elementor-element-10a9a9fc{--display:flex;}.elementor-10 .elementor-element.elementor-element-8aa91a7f{--display:flex;}.elementor-10 .elementor-element.elementor-element-0d0076f0{--display:flex;}.elementor-10 .elementor-element.elementor-element-16a87893{--display:flex;}.elementor-10 .elementor-element.elementor-element-1a0f9170{--display:flex;}.elementor-10 .elementor-element.elementor-element-89ac7dd1{--display:flex;}.elementor-10 .elementor-element.elementor-element-5a6e0175{--display:flex;}.elementor-10 .elementor-element.elementor-element-2b14ced3{--display:flex;}.elementor-10 .elementor-element.elementor-element-e3436b86{--display:flex;}.elementor-10 .elementor-element.elementor-element-4fd0191d{--display:flex;}.elementor-10 .elementor-element.elementor-element-a682a636{--display:flex;}.elementor-10 .elementor-element.elementor-element-0e819488{--display:flex;}.elementor-widget-accordion .elementor-accordion-icon, .elementor-widget-accordion .elementor-accordion-title{color:var( --e-global-color-primary );}.elementor-widget-accordion .elementor-accordion-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-accordion .elementor-active .elementor-accordion-icon, .elementor-widget-accordion .elementor-active .elementor-accordion-title{color:var( --e-global-color-accent );}.elementor-widget-accordion .elementor-active .elementor-accordion-icon svg{fill:var( --e-global-color-accent );}.elementor-widget-accordion .elementor-accordion-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-accordion .elementor-tab-content{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-10 .elementor-element.elementor-element-bbf5ed94{--display:flex;}.elementor-10 .elementor-element.elementor-element-318b5c8a{--display:flex;}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-button .elementor-button{letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-accordion .elementor-accordion-title{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-accordion .elementor-tab-content{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-button .elementor-button{letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-10 .elementor-element.elementor-element-cf79b552{--width:100%;}.elementor-10 .elementor-element.elementor-element-79c20da7{--width:100%;}.elementor-10 .elementor-element.elementor-element-c9882e57{--width:100%;}.elementor-widget-accordion .elementor-accordion-title{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-accordion .elementor-tab-content{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(min-width:768px){.elementor-10 .elementor-element.elementor-element-cf424d40{--width:100%;}.elementor-10 .elementor-element.elementor-element-cf79b552{--width:32%;}.elementor-10 .elementor-element.elementor-element-79c20da7{--width:32%;}.elementor-10 .elementor-element.elementor-element-c9882e57{--width:32%;}}@media(max-width:1024px) and (min-width:768px){.elementor-10 .elementor-element.elementor-element-cf79b552{--width:32%;}.elementor-10 .elementor-element.elementor-element-79c20da7{--width:32%;}.elementor-10 .elementor-element.elementor-element-c9882e57{--width:32%;}}/* Start custom CSS */.qf-compare-wrap:not(.qf-compare-v3){display:none !important;}.qf-bonus:not(.qf-bonus-v2){display:none!important}.qf-compare-wrap:not(.qf-compare-v4){display:none!important}

/* =========================================================================
   QUOFO HERO v5 — herontwerp, volledig gescoped onder #hero.
   Elementor zet de layout van een boxed container niet op het element zelf
   maar op de binnenste .e-con-inner (flex-direction, justify-content,
   align-items en gap komen daar uit CSS-variabelen). De kit-CSS zet ze op
   de buitenste container, waar ze niets doen. Bovendien zet Elementor
   .e-con-boxed{text-align:initial}, waardoor elke geneste container de
   centrering van de hero weer opheft. Daarom sturen we hieronder steeds
   de container EN de .e-con-inner aan.
   ========================================================================= */

#hero{
  --qf-measure: 38rem;
  --qf-gutter: clamp(20px, 4vw, 32px);
  display: flex !important;
  padding-block: clamp(64px, 3rem + 3.4vw, 112px) !important;
  padding-inline: var(--qf-gutter) !important;
  text-align: center;
  overflow-x: clip;
}
#hero .e-con-inner{
  max-width: 1200px;
  margin-inline: auto;
  padding-block: 0;
  gap: 0;
  align-items: center;
  text-align: center;
}
#hero .e-con-inner .elementor-widget,
#hero .e-con-inner .e-con{
  width: 100%;
  max-width: var(--qf-measure);
  margin-inline: auto;
}
#hero .qf-shot-wrap{ max-width: none; }

/* verticaal ritme */
#hero .qf-eyebrow  { margin-block-start: 0; }
#hero .qf-h1       { margin-block-start: 16px; }
#hero .qf-lede     { margin-block-start: 20px; }
#hero .qf-actions  { margin-block-start: 28px; }
#hero .qf-fine     { margin-block-start: 16px; }
#hero .qf-shot-wrap{ margin-block-start: clamp(48px, 2rem + 3.4vw, 88px) !important; }

/* eyebrow als klein mono-label */
#hero .qf-eyebrow .elementor-heading-title{
  display: inline-block;
  max-width: 100%;
  font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, monospace;
  font-weight: 600;
  font-size: .6875rem;
  line-height: 1;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #A32700;
  background: #FFE8E0;
  padding: 9px 14px 9px 15px;
  border-radius: 999px;
}

/* kop */
#hero .qf-h1 .elementor-heading-title{
  max-width: none;
  margin-inline: 0;
  font-family: "Bricolage Grotesque", system-ui, sans-serif;
  font-weight: 800;
  font-size: clamp(2.125rem, 1.35rem + 2.9vw, 3.125rem) !important;
  line-height: 1.06 !important;
  letter-spacing: -.028em !important;
  color: #010B0F;
  text-wrap: balance;
}

/* lede */
#hero .qf-lede .elementor-widget-container{ max-width: none; margin-inline: 0; }
#hero .qf-lede p{
  margin: 0;
  max-width: none;
  font-size: clamp(1.0625rem, 1rem + .3vw, 1.1875rem);
  line-height: 1.62;
  color: #25363B;
  text-wrap: pretty;
}

/* fijne regel, duidelijk ondergeschikt, zelfde kolombreedte als de lede */
#hero .qf-fine .elementor-widget-container{ max-width: none; margin-inline: 0; }
#hero .qf-fine p{
  margin: 0;
  max-width: none;
  font-size: .875rem;
  line-height: 1.6;
  color: #536469;
}

/* knoppen */
#hero .qf-actions,
#hero .qf-actions .e-con-inner{
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: stretch !important;
  align-content: center !important;
  gap: 12px !important;
  padding: 0 !important;
  text-align: center;
}
#hero .qf-actions .e-con-inner{ width: 100%; max-width: none; height: auto; margin: 0; }
#hero .qf-actions .elementor-widget{ width: auto; max-width: 100%; margin: 0; display: flex; }
#hero .qf-actions .elementor-widget-container,
#hero .qf-actions .elementor-button-wrapper{ display: flex; width: 100%; }
#hero .qf-b .elementor-button{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-height: 54px;
  padding: 15px 26px;
  border: 1px solid transparent;
  border-radius: 10px;
  font-family: "Archivo", system-ui, sans-serif;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.2;
  text-align: center;
  background-color: #CA3C00;
  color: #FAFCFD;
  box-shadow: 0 12px 24px -14px rgba(163, 39, 0, .55);
  transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
#hero .qf-b .elementor-button:hover{
  background-color: #A32700;
  color: #FAFCFD;
  transform: translateY(-1px);
  box-shadow: 0 16px 28px -14px rgba(163, 39, 0, .6);
}
#hero .qf-b2 .elementor-button{
  background-color: transparent;
  color: #A32700;
  border-color: #F0C4B3;
  box-shadow: none;
}
#hero .qf-b2 .elementor-button:hover{
  background-color: #FFE8E0;
  border-color: #F67D51;
  color: #A32700;
  transform: translateY(-1px);
  box-shadow: none;
}
#hero .qf-b .elementor-button:focus-visible{ outline: 2px solid #010B0F; outline-offset: 2px; }

/* productshot */
#hero .qf-shot-wrap,
#hero .qf-shot-wrap .elementor-widget-container{ width: 100%; }
#hero .qf-shot{
  border-radius: 22px;
  padding: clamp(24px, 1rem + 2.2vw, 52px) clamp(18px, 1rem + 2vw, 44px);
}
#hero .qf-shot-row{ gap: clamp(20px, 1rem + 1.6vw, 40px); }
#hero .qf-arrow:not(:has(svg))::after{
  content: "";
  display: block;
  width: 44px;
  height: 22px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 22' fill='none'%3E%3Cpath d='M2 11h36M32 5l7 6-7 6' stroke='%23F67D51' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

@media (max-width: 1024px){
  #hero .qf-h1{ margin-block-start: 14px; }
  #hero .qf-lede{ margin-block-start: 18px; }
  #hero .qf-actions{ margin-block-start: 26px; }
  #hero .qf-shot-row{ flex-direction: column; align-items: center; gap: 20px; }
  #hero .qf-phone{ flex: 0 0 auto; width: 210px; }
  #hero .qf-chat,
  #hero .qf-doc{ flex: 0 0 auto; width: 100%; max-width: 440px; }
  #hero .qf-arrow{ transform: none; flex: 0 0 auto; flex-direction: row; align-items: center; gap: 10px; }
  #hero .qf-arrow svg,
  #hero .qf-arrow:not(:has(svg))::after{ transform: rotate(90deg); }
}

@media (max-width: 640px){
  #hero{ --qf-measure: 100%; }
  #hero .qf-eyebrow .elementor-heading-title{
    display: block;
    background: none;
    padding: 0;
    border-radius: 0;
    font-size: .625rem;
    letter-spacing: .14em;
    line-height: 1.6;
  }
  #hero .qf-actions,
  #hero .qf-actions .e-con-inner{
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
  }
  #hero .qf-actions .elementor-widget{ width: 100%; }
  #hero .qf-lede p{ line-height: 1.58; }
  #hero .qf-fine p{ font-size: .8125rem; }
  #hero .qf-phone{ width: min(220px, 66%); flex: 0 0 auto; }
  #hero .qf-shot-row{ gap: 22px; }
  #hero .qf-doc{ padding: 18px 18px 20px; }
  #hero .qf-chat{ padding: 14px; }
}/* End custom CSS */