.elementor-kit-57{--e-global-color-primary:#2D2D2D;--e-global-color-secondary:#F55522;--e-global-color-text:#191919;--e-global-color-accent:#F8F8F8;--e-global-color-50b4f44b:#FFFFFF;--e-global-color-248a6999:#191919;--e-global-color-1ae37a3:#636363;--e-global-color-756a5ab8:#FFF;--e-global-color-917fa57:#545454;--e-global-color-6510953:#3C3C3C;color:var( --e-global-color-text );font-family:"Inter", Sans-serif;font-size:17px;font-weight:400;line-height:170%;}.elementor-kit-57 button,.elementor-kit-57 input[type="button"],.elementor-kit-57 input[type="submit"],.elementor-kit-57 .elementor-button{background-color:var( --e-global-color-primary );font-family:"Figtree", Sans-serif;font-size:18px;font-weight:600;color:var( --e-global-color-50b4f44b );border-style:none;border-radius:100px 100px 100px 100px;padding:12px 24px 12px 24px;}.elementor-kit-57 button:hover,.elementor-kit-57 button:focus,.elementor-kit-57 input[type="button"]:hover,.elementor-kit-57 input[type="button"]:focus,.elementor-kit-57 input[type="submit"]:hover,.elementor-kit-57 input[type="submit"]:focus,.elementor-kit-57 .elementor-button:hover,.elementor-kit-57 .elementor-button:focus{background-color:var( --e-global-color-secondary );}.elementor-kit-57 e-page-transition{background-color:#FFBC7D;}.elementor-kit-57 p{margin-block-end:0px;}.elementor-kit-57 a{color:#F55522;}.elementor-kit-57 h1{color:var( --e-global-color-50b4f44b );font-family:"Figtree", Sans-serif;font-size:90px;font-weight:500;line-height:97%;}.elementor-kit-57 h2{color:var( --e-global-color-primary );font-family:"Figtree", Sans-serif;font-size:40px;font-weight:400;line-height:110%;}.elementor-kit-57 h3{color:#191919;font-family:"Figtree", Sans-serif;font-size:25px;font-weight:400;line-height:110%;}.elementor-kit-57 h4{color:var( --e-global-color-text );font-family:"Figtree", Sans-serif;font-size:23px;font-weight:400;line-height:120%;}.elementor-kit-57 h5{color:var( --e-global-color-secondary );font-family:"Figtree", Sans-serif;font-size:25px;font-weight:700;line-height:120%;}.elementor-kit-57 h6{color:var( --e-global-color-text );font-family:"Figtree", Sans-serif;font-size:20px;font-weight:700;line-height:110%;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1440px;}.e-con{--container-max-width:1440px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){margin-block-end:24px;}.elementor-element{--widgets-spacing:24px 24px;--widgets-spacing-row:24px;--widgets-spacing-column:24px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-57 h1{font-size:50px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-57{font-size:14px;line-height:170%;}.elementor-kit-57 h1{font-size:40px;line-height:105%;}.elementor-kit-57 h2{font-size:24px;line-height:110%;}.elementor-kit-57 h3{font-size:20px;line-height:110%;}.elementor-kit-57 h4{font-size:18px;line-height:120%;}.elementor-kit-57 h5{font-size:16px;line-height:120%;}.elementor-kit-57 h6{font-size:18px;}.elementor-kit-57 button,.elementor-kit-57 input[type="button"],.elementor-kit-57 input[type="submit"],.elementor-kit-57 .elementor-button{padding:8px 20px 8px 20px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//*Hero styling*/
.pf-hero .hero-img,
.pf-hero .hero-img img,
.pf-text-container {
    width: 100%;
    height: 740px;
    max-height: 740px;
    object-fit: cover;
}

.pf-hero.smaller .hero-img,
.pf-hero.smaller .hero-img img,
.pf-hero.smaller .pf-text-container {
    height: 430px;
    max-height: 430px;
}

@media only screen and (max-width: 1025px) {
    .pf-hero .hero-img,
    .pf-hero .hero-img img {
        height: 520px;
        max-height: 520px;
    }
    
    .pf-text-container,
    .pf-hero.smaller .pf-text-container {
        height: unset;
        max-height: unset;
    }
}


@media only screen and (max-width: 767px) {
    .pf-hero .hero-img,
    .pf-hero .hero-img img {
        height: 230px;
        max-height: 230px;
    }
    
    .pf-hero.smaller .hero-img,
    .pf-hero.smaller .hero-img img {
        height: 230px;
        max-height: 230px;
    }
    
    .pf-hero h1,
    .pf-hero p {
        color: var(--e-global-color-text);
    }
    
    .pf-text-container {
        position: relative;
    }
}

/*Subheading*/
.subheading {
    color: var(--e-global-color-secondary);
    font-weight: bold;
    font-size: 20px;
    font-family: Figtree;
}

@media only screen and (max-width: 1025px) {
    .subheading {
        font-size: 20px;
    }
}

@media only screen and (max-width: 767px) {
    .subheading {
        font-size: 16px;
    }
}

.border0 img {
    border-radius: 0;
}

h1 span {
    color: var(--e-global-color-secondary);
}

/*Button styling*/
.btn {
    position: relative;
    display: block;
    overflow: hidden;
    width: max-content;
}

.btn a {
    border: 1px solid transparent;
}

.btn:before {
    content: attr(data-text);
    position: absolute;
    top: -100%;
    left: 0;
    text-align: center;
    transition: .4s;
    z-index: 2;
    color: var(--e-global-color-50b4f44b);
    border-radius: 100px;
    padding: 8px 24px 12px;
    pointer-events: none;
    font-weight: 600;
    font-size: 18px;
    font-family: "Figtree", Sans-serif;
}

.btn:hover:before {
    top: 0;
}

.btn .elementor-button-text,
.btn .gform-btn-text {
    transition: .4s;
    transform: translateY(0%);
    display: block;
}

.btn:hover .elementor-button-text,
.btn:hover .gform-btn-text {
    transform: translateY(200%);
}

/*Button arrow*/
.btn.arrow a {
    padding-right: 50px;
}

.btn.arrow a:before,
.btn.arrow a:after {
    content: url("/wp-content/uploads/arrow-right-white.svg");
    position: absolute;
    margin-left: 10px;
    right: 16px;
    top: 12px;
    transition: .5s;
    transform: translateY(0);
}

.btn.arrow:hover a:before {
    transform: translateY(200%);
}

.btn.arrow a:after {
    transform: translateY(-200%);
}

.btn.arrow:hover a:after {
    transform: translateY(0%);
}

/*Button arrow before*/

.btn.arrow a {
    position: relative; 
    padding-right: 50px;
}

.btn.arrow a:before,
.btn.arrow a:after {
    content: url("/wp-content/uploads/arrow-right-white.svg");
    position: absolute;
    right: 16px;
    top: 50%; 
    transition: .5s;
    transform: translateY(-50%); 
}

.btn.arrow:hover a:before {
    transform: translateY(150%); 
    opacity: 0;
}

.btn.arrow-before:hover:before {
    left: 20px;
    top: 0;
}

.btn.arrow a:after {
    transform: translateY(-150%);
    opacity: 0;
}

.btn.arrow:hover a:after {
    transform: translateY(-50%);
    opacity: 1;
}

.btn.arrow-before a {
    position: relative; 
    padding-left: 50px; 
}

.btn.arrow-before a:before,
.btn.arrow-before a:after {
    content: url("/wp-content/uploads/arrow-right-white.svg"); 
    position: absolute;
    left: 16px; 
    top: 50%;
    transition: .5s;
    transform: translateY(-50%);
}

.btn.arrow-before:hover a:before {
    transform: translateY(150%);
    opacity: 0;
}

.btn.arrow-before a:after {
    transform: translateY(-150%);
    opacity: 0;
}

.btn.arrow-before:hover a:after {
    transform: translateY(-50%);
    opacity: 1;
}

/*Button - colours*/
.btn.orange a {
    background: var( --e-global-color-secondary )
}

.btn.orange:hover a {
    background: var(--e-global-color-primary);
}

.btn.border a {
    border: 1px solid var(--e-global-color-primary);
    background: none;
    color: var(--e-global-color-primary);
}

.btn.border a:hover {
    color: white;
    border-color: var(--e-global-color-secondary)
}


.btn.white a {
    background: var(--e-global-color-secondary); 
    color: #fff; 
    border: 1px solid var(--e-global-color-secondary);
}

.btn.white:hover a {
    background: #000; 
    color: #fff;
    border-color: #000;
}

@media only screen and (max-width: 767px) {
    .btn:before {
        padding: 8px 20px 8px 20px !important;
    }
}


/*FAQ*/
.faq details {
    border-top: 0px solid;
}

.faq details .e-n-accordion-item-title {
    padding: 20px 0 !important;
}

.faq details .e-n-accordion-item-title-text {
    font-weight: 400;
    color: var(--e-global-color-primary) !important;
    font-size: 18px !important;
    line-height: 22px !important;
}

.faq details p {
    margin-bottom: 20px !important;
}

.faq .elementor-widget-n-accordion .e-n-accordion-item .e-n-accordion-item-title-icon span>svg {
    fill: transparent !important;
}

.faq span.e-closed {
    display: none !important;
}

.faq span.e-opened {
    display: flex !important;
}

.faq .e-opened {
    transition: 0.3s;
}

.faq summary[aria-expanded="true"] .e-opened {
    transform: rotate(-90deg);
}

.faq summary svg {
    fill: transparent !important;
}

.faq summary[aria-expanded="true"] .e-opened svg circle {
    fill: var(--e-global-color-secondary) !important;
    stroke: var(--e-global-color-secondary) !important; 
}

.faq summary[aria-expanded="true"] .e-opened path {
    stroke: var(--e-global-color-secondary) !important; 
}

.faq .e-n-accordion-item-title-text {
    display: flex;
}

.faq .e-n-accordion-item-title-text::before {
    content: "";
    background-size: 36px;
    position: relative;
    margin-right: 20px;
    left: 0;
    top: 0px;
    width: 36px;
}

/* features */

.features-grid {
  grid-template-rows: auto !important;
}

/* line */

.line {
  position: relative;
  display: inline-block; 
}

.line::after {
  content: "";
  display: block;
  width: 100%;
  height: 2px; 
  background-color: #F55522;
  margin-top: 20px; 
}

/* asterisk */

.orange-asterisk {
  color: #F55522;    
  font-size: 0,9em;     
  position: relative;
}

/* arrow hover */
.icon-hover-arrow .elementor-icon-list-icon {
  transition: transform 0.3s ease;
}

.icon-hover-arrow .elementor-icon-list-item:hover .elementor-icon-list-icon {
  transform: translateX(5px);
}

.orange-text {
  color: #F55522; 
    
}

/* discover more */

.discover-more {
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.discover-more:hover {
    background-color: #f5f5f5; 
}

.discover-more .elementor-widget-image .elementor-widget-container {
    position: relative;
    overflow: hidden;
}

.discover-more .elementor-widget-image img {
    transition: opacity 0.2s ease-in-out;
}

.discover-more .elementor-widget-image .elementor-widget-container::after {
    content: '';
    display: block;
    width: 50px;
    height: 50px;
    background-image: url('https://www.productip.com/wp-content/uploads/up-right-icon-orange.svg');
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transform: translate(-100%, 100%);
    transition: transform 0.3s ease, opacity 0.3s ease;
}

.discover-more:hover .elementor-widget-image img {
    opacity: 0;
}

.discover-more:hover .elementor-widget-image .elementor-widget-container::after {
    opacity: 1;
    transform: translate(0, 0);
}

/*Careers*/
.pf-careers-list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 80px 24px;
}

.pf-careers-list a {
	display: flex;
	flex-direction: column;
}

.pf-careers-list .pf-career-content {
	display: flex;
	flex-direction: column;
	flex: 1;
}

.pf-careers-list .pf-career-thumb img {
    height: 415px;
    object-fit: cover;
    display: block;
    transition: .3s;
}

.pf-career-thumb {
    overflow: hidden
}

.pf-careers-list h3 {
    margin: 25px 0;
}

.pf-career-meta {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    color: var(--e-global-color-text);
    font-size: 15px;
    margin-bottom: 40px;
    margin-top: auto;

}

.pf-career-meta img {
    min-width: 24px;
}

.pf-career-meta-item {
    display: flex;
    align-items: center;
    gap: 12px;
}

.pf-career-readmore {
    font-weight: bold;
    color: var(--e-global-color-text);
    text-align: right;;
    border-top: 1px solid #BDBDBD;
    font-family: Figtree;
    padding-top: 5px;
}

.pf-career-card:hover .pf-career-thumb img {
    transform: scale(1.1)
}

@media only screen and (max-width: 1025px) {
    .pf-careers-list {
        grid-template-columns: 1fr 1fr;
        grid-gap: 60px 24px;
    }
    
    .pf-careers-list .pf-career-thumb img {
        height: 300px;
    }
}

@media only screen and (max-width: 767px) {
    .pf-careers-list {
        grid-template-columns: 1fr;
        grid-gap: 60px 24px;
    }
    
    .pf-careers-list .pf-career-thumb img {
        height: 200px;
    }
    
    .pf-career-meta {
        font-size: 14px;
    }
}

/*Timeline*/
.timeline {
    background-image: url("https://www.productip.com/wp-content/uploads/blackdot.svg");
    background-repeat: repeat-y;
    background-position: center;
    
    max-height: 900px;
    overflow: scroll;
    padding-bottom: 180px;
}

/*.elementor-kit-57:after {*/
/*    content: "";*/
/*    background: linear-gradient(0deg,rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);*/
/*    height: 300px;*/
/*    position: absolute;*/
/*    width: 100%;*/
/*    left: 0;*/
/*    bottom: 0;*/
/*}*/

div.timeline-block {
    padding: 36px 44px;
    background: #F8F8F8;
    position: relative !important;
    width: calc(50% - 200px);
    border-bottom: 1px solid #BDBDBD;
}

div.timeline-block:nth-child(even) {
    margin-left: auto;
}

div.timeline-block:nth-child(odd) {
    position: relative;
}

div.timeline-block img {
    border-radius: 0;
}

div.timeline-block:nth-child(odd):before,
div.timeline-block:nth-child(even):before {
    content: "";
    top: 36px;
    position: absolute;
    width: 24px;
    height: 24px;
    border-radius: 200px;
    z-index: 5;
    background: #BDBDBD;
}

div.timeline-block:nth-child(even):before {
    left: -211px;
}

div.timeline-block:nth-child(odd):before {
    right: -211px;
    margin-left: auto;
}

div.timeline-block:after {
    content: "";
    width: 200px;
    height: 2px;
    background: url(/wp-content/uploads/linestimeline.svg);
    position: absolute;
    top: 46px;
}


div.timeline-block:nth-child(even):after {
    left: -200px;
}

div.timeline-block:nth-child(odd):after {
    right: -200px;
}

.timeline h5 span {
    font-size: 17px;
    font-weight: 500;
    color: #D3D3D3
}

@media only screen and (max-width: 1025px) {
    div.timeline-block {
        padding: 32px 16px;
        width: calc(50% - 50px);
    }
}

@media only screen and (max-width: 767px) {
    .timeline {
        background-position: center left 15px;
        padding: 0 16px 50px 50px;
        max-height: unset;
    }


    div.timeline-block {
        margin-left: unset !important;
        width: 100%;
        padding: 32px 16px;
    }

    div.timeline-block:after {
        display: none;
    }

    div.timeline-block img {
        max-width: 60px;
    }

    .elementor-kit-57:after {
        display: none;
    }
    

    div.timeline-block:nth-child(odd):before,
    div.timeline-block:nth-child(even):before {
        left: -47px;
        right: unset;
    }
}
/* Custom stijling van news slider navigatie */
/* Slider container = basis */
.pf-news-slider{
  position: relative;
  padding-top: 120px; /* <-- ruimte boven slides voor pijlen */
}


/* Navigatie altijd rechtsboven */
.pf-news-slider .pf-news-slider-nav{
  position: absolute;
  top: 20px;
  right: 20px;
  display: flex;
  gap: 20px;
  z-index: 50;
}


/* Knoppen kleiner */
.pf-news-slider .pf-news-slider-button{
  width: 58px;
  height: 58px;
  padding: 0;
  border: 2px solid #cfcfcf;
  background: #fff;
  border-radius: 0;
  display: grid;
  place-items: center;
  cursor: pointer;
  transition: background-color .2s ease, border-color .2s ease;
}


/* Oranje pijl */
.pf-news-slider .pf-news-slider-button .pf-arrow{
  width: 22px;
  height: 22px;
  color: #f05a28;
}


/* Hover effect */
.pf-news-slider .pf-news-slider-button:hover{
  background: #f05a28;
  border-color: #f05a28;
}

.pf-news-slider .pf-news-slider-button:hover .pf-arrow{
  color: #fff;
}


/* Focus zichtbaar */
.pf-news-slider .pf-news-slider-button:focus-visible{
  outline: 2px solid #f05a28;
  outline-offset: 3px;
}


/* Mobile: nog compacter */
@media (max-width: 768px){

  .pf-news-slider{
    padding-top: 70px;
  }

  .pf-news-slider .pf-news-slider-nav{
    top: 12px;
    right: 12px;
    gap: 10px;
  }

  .pf-news-slider .pf-news-slider-button{
    width: 48px;
    height: 48px;
  }

  .pf-news-slider .pf-news-slider-button .pf-arrow{
    width: 18px;
    height: 18px;
  }
}



/* Gravity Forms - input error styling */
.gform_wrapper input[aria-invalid="true"],
.gform_wrapper textarea[aria-invalid="true"],
.gform_wrapper select[aria-invalid="true"] {
  color: #fff !important;
  border-top: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-bottom: 2px solid #F55522 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.gform_wrapper input[aria-invalid="true"]::placeholder,
.gform_wrapper textarea[aria-invalid="true"]::placeholder {
  color: rgba(255,255,255,0.7) !important;
}

/* Forceer input tekst wit (ook bij errors) */
.gform_wrapper input,
.gform_wrapper textarea,
.gform_wrapper select {
  color: #fff !important;
}

/* Label tekst wit maken (ook required sterretje) */
.gform_wrapper .gfield_label,
.gform_wrapper .gfield_label span,
.gform_wrapper label {
  color: #fff !important;
}

/* Validatie boodschap ("This field is required.") wit maken */
.gform_wrapper .gfield_validation_message,
.gform_wrapper .validation_message {
  color: #fff !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
}

/* Error border alleen onderaan oranje */
.gform_wrapper input[aria-invalid="true"],
.gform_wrapper textarea[aria-invalid="true"],
.gform_wrapper select[aria-invalid="true"] {
  border: none !important;
  border-bottom: 2px solid #F55522 !important;
  box-shadow: none !important;
  background: transparent !important;
  color: #fff !important;
}

/* Gravity Forms zet soms rood op de hele field wrapper */
.gform_wrapper .gfield_error {
  background: transparent !important;
  border: none !important;
}

.gform_wrapper.gravity-theme .gform_validation_errors>h2.hide_summary
 { padding-left: 25px !important; }/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('https://www.productip.com/wp-content/uploads/Inter_18pt-Regular.ttf') format('truetype');
}
@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('https://www.productip.com/wp-content/uploads/Inter_18pt-Bold.ttf') format('truetype');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Figtree';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('https://www.productip.com/wp-content/uploads/Figtree-Regular.ttf') format('truetype');
}
@font-face {
	font-family: 'Figtree';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url('https://www.productip.com/wp-content/uploads/Figtree-Medium.ttf') format('truetype');
}
@font-face {
	font-family: 'Figtree';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('https://www.productip.com/wp-content/uploads/Figtree-SemiBold.ttf') format('truetype');
}
@font-face {
	font-family: 'Figtree';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('https://www.productip.com/wp-content/uploads/Figtree-Bold.ttf') format('truetype');
}
/* End Custom Fonts CSS */