.elementor-kit-12{--e-global-color-primary:#F07D00;--e-global-color-secondary:#777878;--e-global-color-text:#777878;--e-global-color-accent:#F07D00;--e-global-color-fc22a41:#FF0606;--e-global-color-acb0a66:#F07D00;--e-global-color-bd7f267:#FFFFFF;--e-global-color-fe57d1b:#F1F0F0;--e-global-color-5e29cf0:#009FE3;--e-global-color-d900e70:#763364;--e-global-color-8e058df:#D7AF00;--e-global-color-db1ec1d:#FFFFFF;--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-font-style:italic;--e-global-typography-cf87369-font-weight:600;--e-global-typography-86953e1-font-size:16px;--e-global-typography-2167751-font-size:18px;--e-global-typography-2c2901c-font-size:23px;--e-global-typography-2c2901c-font-weight:900;color:var( --e-global-color-text );font-family:"Figtree", Sans-serif;font-size:16px;}.elementor-kit-12 button,.elementor-kit-12 input[type="button"],.elementor-kit-12 input[type="submit"],.elementor-kit-12 .elementor-button{background-color:var( --e-global-color-acb0a66 );font-weight:bold;text-decoration:none;color:var( --e-global-color-bd7f267 );border-radius:0px 0px 0px 0px;padding:10px 20px 10px 20px;}.elementor-kit-12 button:hover,.elementor-kit-12 button:focus,.elementor-kit-12 input[type="button"]:hover,.elementor-kit-12 input[type="button"]:focus,.elementor-kit-12 input[type="submit"]:hover,.elementor-kit-12 input[type="submit"]:focus,.elementor-kit-12 .elementor-button:hover,.elementor-kit-12 .elementor-button:focus{background-color:var( --e-global-color-acb0a66 );color:var( --e-global-color-bd7f267 );}.elementor-kit-12 e-page-transition{background-color:#FFBC7D;}.elementor-kit-12 a{color:var( --e-global-color-accent );}.elementor-kit-12 a:hover{color:var( --e-global-color-accent );}.elementor-kit-12 h1{color:var( --e-global-color-text );font-size:45px;font-weight:900;font-style:italic;}.elementor-kit-12 h2{color:var( --e-global-color-primary );font-size:25px;font-weight:700;}.elementor-kit-12 h3{color:var( --e-global-color-primary );font-size:23px;font-weight:700;}.elementor-kit-12 h4{color:var( --e-global-color-primary );font-size:22px;font-weight:700;}.elementor-kit-12 h5{color:var( --e-global-color-primary );font-size:21px;font-weight:700;}.elementor-kit-12 h6{color:var( --e-global-color-primary );font-size:20px;font-weight:700;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;--container-default-padding-top:0em;--container-default-padding-right:0em;--container-default-padding-bottom:0em;--container-default-padding-left:0em;}.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:991px){.elementor-kit-12 h1{font-size:36px;}.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 */h1.entry-title {
    display: none!important;
}

.grecaptcha-badge {
    opacity: 0!important;
}

.jet-listing-dynamic-link__link {
    justify-content: flex-start!important;
}

.aiosrs-rating-wrap {
    display: none;
}

li {
    margin-left: -20px;
}

a {
    -webkit-text-underline-position: under;
    -ms-text-underline-position: below;
    text-underline-position: under;
    text-decoration-thickness: inherit;

}

.witte-link a {
    color: white!important;
}

.secundaire-button .elementor-button {
 
 }

.witte-button {
    
}

@media (min-width: 768px){
.sectie {
    padding: 0 32px;
}}

@media (max-width: 767px){
.sectie {
    padding: 0 20px;
 
}}

.elementor-widget .elementor-icon-list-item, .elementor-widget .elementor-icon-list-item a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    font-size: inherit;
}

@media (max-width: 767px){
.geen-absolute-mobiel {
    position: unset!important;
}}


/* =====================
   Schuine knoppen
   ===================== */
.knop-schuin .elementor-button {
  width: fit-content !important;
  clip-path: polygon(10px 0, 100% 0, calc(100% - 10px) 100%, 0% 100%);
}

.knop-schuin-grijs .elementor-button {
  width: fit-content !important;
  clip-path: polygon(10px 0, 100% 0, calc(100% - 10px) 100%, 0% 100%);
   background-color: #777878 !important;
}


.knop-schuin-pijl .elementor-button {
  width: fit-content !important;
  clip-path: polygon(10px 0, 100% 0, calc(100% - 10px) 100%, 0% 100%);
}

.knop-schuin-pijl .elementor-button .elementor-button-text::after {
  content: ">";
  margin-left: 8px;
}


.knop-schuin-pijl-grijs .elementor-button {
  width: fit-content !important;
  clip-path: polygon(10px 0, 100% 0, calc(100% - 10px) 100%, 0% 100%);
  background-color: #777878 !important;
}

.knop-schuin-pijl-grijs .elementor-button .elementor-button-text::after {
  content: ">";
  margin-left: 8px;
}

.knop-underline-pijl .elementor-button {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  color: #777878;
  text-decoration: underline;
}

.knop-underline-pijl .elementor-button .elementor-button-text::after {
  content: " >";
  letter-spacing: 6px;
}

.knop-underline-pijl .elementor-button:hover {
  background: transparent !important;
  color: #777878 !important;
  text-decoration: underline !important;
}


.pijl-icon-schuin {
  clip-path: polygon(10px 0, 100% 0, calc(100% - 10px) 100%, 0% 100%);
}

.knop-schuin-pijl-wit .elementor-button {
  width: fit-content !important;
  clip-path: polygon(10px 0, 100% 0, calc(100% - 10px) 100%, 0% 100%);
  background-color: #FFFFFF !important;
}

.knop-schuin-pijl-wit .elementor-button .elementor-button-text::after {
  content: ">";
  margin-left: 8px;
}


/* =====================
   Schuine Container opmaak
   ===================== */
@media (min-width: 991px) {

/* header */
.header-plaatje-schuin {
  clip-path: polygon(130px 0, 100% 0, 100% 100%, 0% 100%);
}

.header-tekst-schuin{
  clip-path: polygon(100px 0, 100% 0, calc(100% - 100px) 100%, 0% 100%);
}

/* content element */

.content-tekst-schuin{
  clip-path: polygon(85px 0, 100% 0, calc(100% - 85px) 100%, 0% 100%);
}

.content-plaatje-rechts-schuin {
  clip-path: polygon(100px 0, 100% 0, 100% 100%, 0% 100%);
}

.content-plaatje-links-schuin {
  clip-path: polygon(0 0, 100% 0, calc(100% - 100px) 100%, 0% 100%);
}

/* contact element */
.contact-tekst-schuin{
  clip-path: polygon(115px 0, 100% 0, calc(100% - 115px) 100%, 0% 100%);
}

.contact-plaatje-schuin {
  clip-path: polygon(130px 0, 100% 0, calc(100% - 130px) 100%, 0% 100%);
}

/* project listing schuin element */
.project-listing-tekst{
  clip-path: polygon(115px 0, 100% 0, calc(100% - 115px) 100%, 0% 100%);
}

.project-listing-plaatje{
  clip-path: polygon(115px 0, 100% 0, calc(100% - 115px) 100%, 0% 100%);
}

.content-tekst-schuin-alt{
  clip-path: polygon(115px 0, 100% 0, calc(100% - 115px) 100%, 0% 100%);
}

.content-plaatje-rechts-schuin-alt {
  clip-path: polygon(100px 0, 100% 0, 100% 100%, 0% 100%);
}


}   


/* =====================
   Tabellen opmaak
   ===================== */

/* Basis tabel */
.standaard-tabel table {
  width: 100% !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
}
 
/* --- HEADER --- */
.standaard-tabel table thead tr {
  background-color: #F07D00 !important;
}
 
.standaard-tabel table thead tr th,
.standaard-tabel table thead tr td {
  background-color: #F07D00 !important;
  color: #ffffff !important;
  font-weight: 700 !important;
    font-size: 17px;
  padding: 12px 16px !important;
  border: 1px solid #d96e00 !important;
  text-align: left !important;
}
 
/* --- BODY RIJEN --- */
.standaard-tabel table tbody tr:nth-child(odd) td {
  background-color: #ffffff !important;
  color: inherit !important;
}
 
.standaard-tabel table tbody tr:nth-child(even) td {
  background-color: #ffffff !important;
  color: inherit !important;
}
 
.standaard-tabel table tbody td {
  padding: 10px 16px !important;
  border: 1px solid #e0e0e0 !important;
}
 
/* --- ELEMENTOR HOVER UITZETTEN --- */
.standaard-tabel table tbody tr:hover td {
  background-color: inherit !important;
  color: inherit !important;
}

/* --- HORIZONTALE SCROLL --- */
.standaard-tabel {
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch;
}


/* =====================
   Formulieren opmaak
   ===================== */

/* Positie-context voor de schuine rand */
.skewed-form .elementor-field-type-text,
.skewed-form .elementor-field-type-email,
.skewed-form .elementor-field-type-tel,
.skewed-form .elementor-field-type-number,
.skewed-form .elementor-field-type-select,
.skewed-form .elementor-field-type-date,
.skewed-form .elementor-field-type-time,
.skewed-form .elementor-field-type-url {
    position: relative;
}

/* Schuine nep-border via pseudo-element */
.skewed-form .elementor-field-type-text::after,
.skewed-form .elementor-field-type-email::after,
.skewed-form .elementor-field-type-tel::after,
.skewed-form .elementor-field-type-number::after,
.skewed-form .elementor-field-type-select::after,
.skewed-form .elementor-field-type-date::after,
.skewed-form .elementor-field-type-time::after,
.skewed-form .elementor-field-type-url::after {
    content: '';
    position: absolute;
    left: 10px;
    right: 10px;
    bottom: 0;
    height: 47px;
    border: 1px solid #F07D00;
    transform: skewX(-13deg);
    pointer-events: none;
    z-index: 0;
}

/* Originele border verwijderen */
.skewed-form .elementor-field-type-text .elementor-field-textual,
.skewed-form .elementor-field-type-email .elementor-field-textual,
.skewed-form .elementor-field-type-tel .elementor-field-textual,
.skewed-form .elementor-field-type-number .elementor-field-textual,
.skewed-form .elementor-field-type-select .elementor-field-textual,
.skewed-form .elementor-field-type-date .elementor-field-textual,
.skewed-form .elementor-field-type-time .elementor-field-textual,
.skewed-form .elementor-field-type-url .elementor-field-textual {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    background: transparent !important;
    position: relative;
    z-index: 1;
}

/* Schuine button met rechte tekst */
.skewed-form .elementor-field-type-submit .elementor-button {
    transform: skewX(-13deg);
}

.skewed-form .elementor-field-type-submit .elementor-button-text {
    display: inline-block;
    transform: skewX(13deg);
}



/* =====================
  Meerkeuze in formulier (uitklapvelden per productlijn)
   ===================== */

.cp-productkeuze {
    --cp-oranje: #F07D00;   /* rand, open veld en tellers */
    --cp-veldhoogte: 47px;  /* zelfde hoogte als de invoervelden */
    width: 100%;
}

/* Uitklapveld per productlijn: zelfde hoogte, schuinte en rand als de invoervelden.
   !important omdat het thema knoppen bij hover en focus anders roze/eigen kleuren geeft;
   zo is er geen hover-effect. */
.elementor-form .cp-productkeuze button.cp-lijn {
    -webkit-appearance: none;
    appearance: none;
    display: block;
    width: calc(100% - 10px);
    height: var(--cp-veldhoogte);
    margin: 0 5px 8px; /* schuine hoeken vallen gelijk met de velden erboven */
    padding: 0 18px !important;
    transform: skewX(-13deg);
    background: transparent !important;
    border: 1px solid var(--cp-oranje) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: inherit !important;
    font: inherit;
    font-size: 15px;
    line-height: 1.2;
    text-align: left;
    text-transform: none;
    letter-spacing: normal;
    cursor: pointer;
}

/* Open productlijn: gevuld zoals de Verzenden-knop */
.elementor-form .cp-productkeuze button.cp-lijn.is-open {
    background: var(--cp-oranje) !important;
    color: #fff !important;
    font-weight: 600;
}

.elementor-form .cp-productkeuze button.cp-lijn:focus-visible {
    outline: 2px solid var(--cp-oranje);
    outline-offset: 3px;
}

/* Inhoud van het veld weer recht zetten: naam links, aantal en pijltje rechts */
.cp-lijn-binnen {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    height: 100%;
    transform: skewX(13deg);
}

.cp-lijn-naam {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cp-lijn-rechts {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}

/* "2 gekozen" */
.cp-lijn-aantal {
    font-size: 13px;
    font-weight: 400;
    color: var(--cp-oranje);
}

.cp-lijn.is-open .cp-lijn-aantal {
    color: #fff;
}

/* Pijltje: omlaag als dicht, omhoog als open */
.cp-lijn-pijl {
    width: 8px;
    height: 8px;
    border-right: 2px solid var(--cp-oranje);
    border-bottom: 2px solid var(--cp-oranje);
    transform: translateY(-2px) rotate(45deg);
    transition: transform .2s ease;
}

.cp-lijn.is-open .cp-lijn-pijl {
    border-color: #fff;
    transform: translateY(2px) rotate(-135deg);
}

/* Producten onder het open veld, in twee kolommen */
.cp-lijnpaneel {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 24px;
    margin: 0 10px 12px 0;
    padding: 6px 20px 8px;
}

.cp-lijnpaneel[hidden] {
    display: none !important;
}

.cp-lijnpaneel .elementor-field-option {
    margin: 0;
}

/* Maximum bereikt: overige producten grijs en niet aanklikbaar */
.cp-lijnpaneel .elementor-field-option.is-uit {
    opacity: .45;
}

.cp-lijnpaneel .elementor-field-option.is-uit label {
    cursor: not-allowed;
}

/* Regel onder de velden: "3 van maximaal 10 producten gekozen" */
.cp-max-melding {
    margin: 2px 10px 0 5px;
    font-size: 13px;
}

.cp-max-melding.is-max {
    color: var(--cp-oranje);
    font-weight: 600;
}

/* Mobiel: producten in één kolom, iets compacter */
@media (max-width: 767px) {
    .elementor-form .cp-productkeuze button.cp-lijn {
        font-size: 14px;
        padding: 0 14px !important;
    }

    .cp-lijnpaneel {
        grid-template-columns: 1fr;
        padding: 4px 14px 8px;
    }
}


/* =====================
   Vinkjes en keuzerondjes in huisstijl (hele website)
   Aangevinkt: oranje vlak met wit vinkje / oranje rondje
   !important omdat de Elementor-site-instellingen en het formulier-widget
   anders hun eigen breedte, hoogte, rand en achtergrond op velden zetten.
   ===================== */
 
input[type="checkbox"],
input[type="radio"] {
    -webkit-appearance: none !important;
    appearance: none !important;
    display: inline-block !important;
    box-sizing: border-box !important;
    flex: 0 0 14px !important;
    align-self: center !important;
    width: 14px !important;
    min-width: 14px !important;
    max-width: 14px !important;
    height: 14px !important;
    min-height: 14px !important;
    max-height: 14px !important;
    margin: 0 4px 0 3px !important;
    padding: 0 !important;
    vertical-align: -2px;
    background: #fff center / 100% 100% no-repeat !important;
    border: 1px solid #767676 !important;
    box-shadow: none !important;
    cursor: pointer;
}
 
input[type="checkbox"] {
    border-radius: 2px !important;
}
 
input[type="radio"] {
    border-radius: 50% !important;
}
 
/* Aangevinkt vakje: oranje met wit vinkje */
input[type="checkbox"]:checked {
    background-color: #F07D00 !important;
    border-color: #F07D00 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}
 
/* Gekozen rondje: oranje rand met oranje stip */
input[type="radio"]:checked {
    background-color: #F07D00 !important;
    border-color: #F07D00 !important;
    box-shadow: inset 0 0 0 3px #fff !important;
}
 
/* Niet beschikbaar (bijv. maximum aantal producten bereikt) */
input[type="checkbox"]:disabled,
input[type="radio"]:disabled {
    cursor: not-allowed;
}
 
/* Focusrand bij bedienen met het toetsenbord oranje i.p.v. blauw */
input[type="checkbox"]:focus-visible,
input[type="radio"]:focus-visible {
    outline: 2px solid #F07D00 !important;
    outline-offset: 2px;
}



/* =====================
  Volgende en vorige knoppen in formulier
   ===================== */

/* Knop zelf recht houden, eigen achtergrond/rand weg */
.skewed-form .e-form__buttons__wrapper__button-next,
.skewed-form .e-form__buttons__wrapper__button-previous {
    position: relative;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
    z-index: 1;
}

/* Schuine gevulde vorm erachter */
.skewed-form .e-form__buttons__wrapper__button-next::before,
.skewed-form .e-form__buttons__wrapper__button-previous::before {
    content: '';
    position: absolute;
    inset: 0;
    background: #F07D00;
    border: 1px solid #F07D00;
    transform: skewX(-13deg);
    z-index: -1;
    pointer-events: none;
}


/* =====================
   Nepknop voor listing
   ===================== */

.listing-knop-schuin-pijl {
  display: inline-block;
  width: fit-content;
  background-color: #F07D00;
  color: #fff;
  font-weight: bold !important;
  font-size: 15px !important;
  padding: 8px 18px;
  clip-path: polygon(10px 0, 100% 0, calc(100% - 10px) 100%, 0% 100%);
  margin: 0;
  white-space: nowrap;
  pointer-events: none;
  user-select: none;
}

.listing-knop-schuin-pijl::after {
  content: ">";
  margin-left: 5px;
}


.listing-knop-underline-pijl {
  display: inline-block;
  width: fit-content;
  background: transparent;
  border: none;
  padding: 0;
  margin: 0;
  color: #777878;
  font-weight: bold;
  text-decoration: underline;
  white-space: nowrap;
  pointer-events: none;
  user-select: none;
}

.listing-knop-underline-pijl::after {
  content: " >";
  letter-spacing: 6px;
}


.listing-knop-schuin-pijl-custom {
  display: inline-block;
  width: fit-content;
  color: #fff;
  font-weight: bold !important;
  font-size: 15px !important;
  padding: 8px 18px;
  clip-path: polygon(10px 0, 100% 0, calc(100% - 10px) 100%, 0% 100%);
  margin: 0;
  white-space: nowrap;
  pointer-events: none;
  user-select: none;
}

.listing-knop-schuin-pijl-custom::after {
  content: ">";
  margin-left: 5px;
}


.listing-knop-schuin {
  display: inline-block;
  width: fit-content;
  background-color: #F07D00;
  color: #fff;
  font-weight: bold !important;
  font-size: 15px !important;
  padding: 8px 18px;
  clip-path: polygon(10px 0, 100% 0, calc(100% - 10px) 100%, 0% 100%);
  margin: 0;
  white-space: nowrap;
  pointer-events: none;
  user-select: none;
}



/* =====================
   FAQ – schuine balken (JetTabs Accordion)
   Werkt op alle JetTabs-accordions op de site,
   ===================== */

/* Ruimte tussen de vragen */
.elementor-widget-jet-accordion .jet-accordion__item {
  margin: 0 0 8px !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* De vraag: grijze balk met schuine kanten */
.elementor-widget-jet-accordion .jet-toggle__control {
  position: relative;
  z-index: 0;
  display: flex;
  align-items: center;
  padding: 9px 32px 9px 44px !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* De schuine balk zelf. Richtlijn: 1px opzij per 4px hoogte.
   skewX(-14.04deg) = atan(1/4), dus de verhouding klopt bij elke
   hoogte, ook als een vraag op mobiel over twee regels loopt. */
.elementor-widget-jet-accordion .jet-toggle__control::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 6px;
  right: 6px;
  background: #F1F0F0;
  transform: skewX(-14.04deg);
}

/* Vraagtekst */
.elementor-widget-jet-accordion .jet-toggle__label-text {
  font-size: 17px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  color: #4d4d4d !important;
}

/* Standaard plus/min-icoon verbergen */
.elementor-widget-jet-accordion .jet-toggle__label-icon {
  display: none !important;
}

/* Pijltje dicht: > */
.elementor-widget-jet-accordion .jet-toggle__control::before {
  content: "";
  position: absolute;
  left: 20px;
  top: 50%;
  width: 7px;
  height: 7px;
  border-right: 2px solid #4d4d4d;
  border-bottom: 2px solid #4d4d4d;
  transform: translateY(-50%) rotate(-45deg);
  transition: transform .2s ease;
}

/* Pijltje open: v */
.elementor-widget-jet-accordion .jet-toggle.active-toggle > .jet-toggle__control::before,
.elementor-widget-jet-accordion .jet-toggle__control[aria-expanded="true"]::before {
  transform: translateY(-70%) rotate(45deg);
}

/* Antwoord: platte tekst onder de balk, gelijk met de vraagtekst */
.elementor-widget-jet-accordion .jet-toggle__content {
  background: transparent !important;
  border: 0 !important;
}

.elementor-widget-jet-accordion .jet-toggle__content-inner {
  padding: 12px 32px 10px 44px !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
  color: #555 !important;
  background: transparent !important;
}/* End custom CSS */