/*
==============================================================
  custom.css 
==============================================================
*/

/* ==========================================================================
   Author's custom styles
   ========================================================================== */
*{
    outline:none
}

.tc-intro-wrapper-over-ons, .intro-pages {
    display: block; /* of flex, afhankelijk van je layout */
    opacity: 1;     /* AOS regelt opacity alleen als init goed gaat */
}

html,
button,
input,
select,
textarea{
    font-size: 19px;
    color: #212348;
	font-family: 'Arkta';
    font-weight: 400;
}

body{
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.SumoSelect > .CaptionCont{
    color: #212348;
	font-family: 'Arkta' !important;
    font-weight: 400;
/*    height: auto !important;*/
}

.SumoSelect{
	width: 100%;
}

.SumoSelect > .CaptionCont {
/*	padding-top: 6px;*/
	min-height: 27px;

}

.SumoSelect img{
	width: auto;
}

/* ===== CKEditor-compatible base (keep together) ===== */

html {
    font-size: 16px;
    font-family: 'Arkta';
    font-weight: 400;
	color: #212348;
	-moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing:  antialiased;
    overscroll-behavior-y: none;
}

/* MAIN TYPO */

p {
    margin: 1em 0;
    padding:0;
	font-size: 19px;
	font-weight: 400;
    line-height: 1.6;
}

p.tc-medium-text{

	font-size:23px;
	font-weight: 400;
    line-height: 1.35;
}

p.tc-large-text{

	font-size:28px;
	font-weight: 400;
    line-height: 1.35;
}

p.tc-extra-large-text{
	font-size:36px;
	font-weight: 400;
    line-height: 1.35;
}

strong{
    font-weight: 600;
}

h1 {
	font-weight: 600;
	font-size:36px;
    margin-bottom: 45px;
}

h2 {
	font-weight: 600;
	font-size: 36px;
	/*margin-bottom:40px;*/
}

h3 {
	font-weight: 600;
	font-size: 30px;
}

h4 {
	font-weight: 600;
	font-size: 26px;
}

h1 strong, h2 strong, h3 strong, h4 strong{
    font-weight: 700;
}

strong.tc-extra-strong{
    font-weight: 700;
}

.tc-color-purple{
    color: #C467A5;
}

.tc-bg-color-purple{
    background-color: #C467A5;
}

.tc-bg-color-navy-blue{
	background-color: #212348;
}

.tc-bg-color-yellow{
    background-color: #FCF6BD;
}

.tc-color-white{
    color: #fff;
}

a {
	color:#212348;
	text-decoration:none;
}

a:hover {
	text-decoration:none;
	color:#C467A5;
}

a.btn{
    margin-right: 20px;
    margin-bottom: 10px;
}

a.btn:last-of-type{
     margin-right: 0;
}

a.btn, .btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border-radius: 23px;
  overflow: hidden;
  text-decoration: none;
  font-size: 22px;
  font-weight: 700;
  cursor: pointer;
  z-index: 1;
  padding-right: 15px;
  white-space: nowrap;

  /* default background state */
  --btn-bg-width: 0%;
  --btn-bg-width-hover: 100%;
}

/* shared background layer */
a.btn::before, .btn::before {
  content: "";
  position: absolute;
  inset: 0;
  width: var(--btn-bg-width);
  border-radius: 23px;
  z-index: -1;
  transition: width 0.5s ease;
}

/* hover logic once */
a.btn:hover::before, .btn:hover::before {
  width: var(--btn-bg-width-hover);
}

/* shared icon */
a.btn::after, .btn::after {
  content: "";
  order: -1;
  width: 50px;
  height: 50px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 70px;
  border-radius: 23px;
  flex-shrink: 0;
  background-image: url("/img/arrow_dark_blue.svg");
  margin-bottom: 1px;

}

.btn::after, a.btn.btn-small::after {
  width: 40px;
  height: 40px;
  background-size: 50px;
  border-radius: 18px;
}

.btn, a.btn.btn-small {
    font-size: 20px;
    border-radius: 18px;
}

.btn-small::before{

    border-radius: 18px;
}

a.btn-purple {
  color: #212348;
}

a.btn-purple::before, .btn::before {
  background-color: #C467A5;
}

a.btn-purple::after, .btn::after {
  background-color: #C467A5;
  /*background-image: url("/img/arrow_dark_blue.svg");*/
}

a.btn-purple:hover::after, .btn:hover::after {
  /*background-image: url("/img/arrow_yellow.svg");*/
}

.btn-yellow::before, a.btn-yellow::before {
    background-color: #FCF6BD;
}

.btn-yellow::after, a.btn-yellow::after {
  background-color: #FCF6BD;
  background-image: url("/img/arrow_dark_blue.svg");
}

/* no hover text change */
.btn-yellow:hover, a.btn-yellow:hover {
  color: #212348;
}

.btn.tc-show-more {
  min-width: 200px;
}

ul.tc-arrow-ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);


    width: 50px;
    height: 50px;

    background-image: url("/img/tc_pijl_paars.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 35px;

    border-radius: 23px;
}

ul.tc-arrow-ul li{
	list-style: none;
    position: relative;
    padding-left: 60px;
}

ul.tc-arrow-ul > li > a{
	color: #212348 !important;
	font-weight: 700;
    font-size: 25px;
}

ul.tc-arrow-ul li strong{
	color: #212348 !important;
	font-weight: 700;
    font-size: 21px;
}

ul.tc-arrow-ul li a:hover{
	color: #C467A5;
}

ul:not(.tc-arrow-ul):not(.tc-footer-menu-list):not(#main-nav):not(#default-nav):not(.tc-footer-menu-list-privacy) {
  margin-left: 20px;
}

.tc-3-clicks-container{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
}

.tc-3-clicks-container h2{
    margin: 0.6em 0 0.3em 0;
    line-height: 1.2em;
}

.tc-dot {
    background-color: #C467A5;
    width: 53px;
    height: 53px;
    border-radius: 47%;
    font-size: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #212348;
    font-weight: 700;
    line-height: 54px;
    padding: 3px 0 0 0px;
    margin: 0;
}

/* ===== CKEditor-compatible base (keep together) end ===== */

div.tc-margin-bottom-60{
    margin-bottom: 60px;
}

div.tc-margin-top-60{
    margin-top: 60px;
}

div.tc-margin-bottom-50{
    margin-bottom: 50px;
}

div.tc-margin-top-50{
    margin-top: 50px;
}

div.tc-margin-bottom-40{
    margin-bottom: 40px;
}

div.tc-margin-top-40{
    margin-top: 40px;
}

div.tc-margin-bottom-30{
    margin-bottom: 30px;
}

div.tc-margin-top-30{
    margin-top: 30px;
}

div.tc-margin-bottom-20{
    margin-bottom: 20px;
}

div.tc-margin-top-20{
    margin-top: 20px;
}

div.tc-margin-bottom-0{
    margin-bottom: 0;
}

div.tc-margin-top-0{
    margin-top: 0;
}

div.tc-margin-left-0{
    margin-left: 0;
}

.tc-nav-arrow{
    width:15px; height: 10px;
}

#tc-quote-wrapper.tc-margin-bottom-60{
    margin-bottom: 60px;
}

.tc-intro-wrapper-2-columns a:not(.btn), .tc-content-wrapper a:not(.btn), .tc-intro-wrapper a:not(.btn), #dialog a:not(.btn) {
        color: #C467A5;
}

.tc-intro-wrapper-2-columns a:not(.btn):hover, .tc-content-wrapper a:not(.btn):hover, .tc-intro-wrapper a:not(.btn):hover, #dialog a:not(.btn):hover {
        color: #C467A5;
        text-decoration: underline;
}

.noscroll {
    overflow: hidden;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*PLACEHOLDER*/
::-webkit-input-placeholder { / WebKit, Blink, Edge /
color: #666;
} :-moz-placeholder { / Mozilla Firefox 4 to 18 /
color: #666;
}
::-moz-placeholder { / Mozilla Firefox 19+ /
color: #666;
} :-ms-input-placeholder { / Internet Explorer 10-11 /
color: #666;
}
::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #a2a2a2;
    font-size: 100%;
	font-weight: 400;
    opacity: 1; /* Firefox */
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: #666;
}

::-ms-input-placeholder { /* Microsoft Edge */
    color: #666;
    font-size: 100%;
	font-weight: 400;
}

.placeholder{
    color: #666 !important;
    font-size: 100%;
	font-weight: 400;
}

.bold{
    font-weight: 700;
}
.semiBold{
	font-weight: 600;
}
.regular{
	font-weight: 400;
}

/*UC PAGE*/

#uc-block{
	display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #fff;
    height: 80vh;
    justify-content: center;
	position: relative;
}
#uc-logo img{
	width: 450px;
}
#round-logo{
	width: 160px;
	height: auto; /* Maintain aspect ratio */
  	animation: rotateAnimation 8s infinite linear;
}

.submenu-indicator {
    position: absolute; /* of fixed als je wilt dat het altijd zichtbaar blijft */
    top: 10px;
    right: 10px;
    color: #C467A5; /* paars */
    font-weight: bold;
    font-size: 16px;
    z-index: 999;
}

.tc-profile-image.active {
    cursor: pointer;
}

.tc-profile-text-visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

.mobile-only{
	display: none;
}

.sm-btn{
	display: inline-block;
    border-radius: 50%;
	margin: 5px 2px;
    font-size: 24px;
}

.hamburger.is-open .menui{
	background-color: #FFF;
}

#tc-main-nav-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
}

#tc-submenu-carousel{
	width: 100%;
	display: flex;
	align-content: center;
	align-items: center;
	font-weight: 700;
    padding: 0 0 30px 0;
}

#tc-submenu-carousel .slick-slide {
    position: relative;
    /*margin-right: 20px;*/
    width: auto;
    /*padding: 15px 15px;*/

}

#tc-submenu-carousel .slick-slide a:hover {
    color: #C467A5;
}

#tc-clients-carousel .slick-slide img:hover {
    transform: scale(1.2);
}

#tc-submenu-carousel .slick-slide:not(:last-child)::after {
    content: '';
    position: absolute;
    right: -10px; /* plaats het tussen de slides */
    top: 50%;
    transform: translateY(-50%);
    /*width: 8px;*/
    height: 8px;
    background-color: #C467A5; /* kleur van het bolletje */
    border-radius: 50%;


}

.carousel-item{
	font-size: 20px;
    display: flex;
    align-items: center;
}

.carousel-item-dot{
    display: inline-flex;
    width: 45px;
    line-height: 10px;
    justify-content: center;
    align-items: center;
    color: #C467A5;
    font-size: 45px;
    margin-top: 1px;
}

#tc-clients-carousel {
    width: 100%;
    font-weight: 700;
	padding-bottom: 40px;
	background-color: #212348;
}

#tc-clients-carousel .slick-slide {
    display: inline-block; /* laat Slick zijn breedtes berekenen */
    text-align: center;    /* center de inhoud */
}

#tc-clients-carousel .carousel-item img {
    display: block;
    margin: 0 auto;
	height: 200px;
	width: 200px;
}

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;

}

#tc-clients-carousel .slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    /*display: none;*/
    width: auto !important;
    padding: 15px 85px;
}

.videowrapper:not(#tc-video-banner .videowrapper) {
    width: 119.1%;
      margin-left: -9.4%;
      position: relative;
      padding-bottom: 67.1%;
      overflow: hidden;
}

.slick-slide a {
    display: flex;
    justify-content: space-evenly;
	font-size: 45px;
	width: max-content;

	color: #212348;
}

.slick-slider .slicktrack{
	display: flex;
	align-items: center;
}

#tc-submenu-carousel .carousel-item {
    display: flex;
    justify-content: center;
    align-items: center;
}

#tc-submenu-carousel .carousel-item a {
    white-space: nowrap;       /* voorkomt wrappen */
    display: inline-block;
}

.tc-project-nav-link{

    display: inline-flex;
    align-items: center;
	gap: 5px;
}

.tc-project-nav-link span{
    font-size: 16px;
}

.tc-project-nav-link span:first-of-type{
    white-space: nowrap;
}

.tc-project-title h1{
    margin-bottom: 20px;
}

.tc-project-nav{
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    width: 100%;
}

.tc-projects-grid-item-media {
	display: flex;
	justify-content: center;
    width: 100%;
}

.tc-projects-grid-item-media-bg{
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 100%;
    aspect-ratio: 4 / 3;
}

.tc-projects-grid-item-info{
	padding-top: 20px;
}

.tc-projects-grid-item-info h4{
	color: #000;
	padding-bottom: 4px;
	font-size: 22px;
    font-weight: 700;
    margin: 0;
}

.tc-projects-grid-item-info-text p{
     font-size: 16px;
     line-height: 1.4em;
}

.projectNav{
	display: inline-flex;
	align-items: center;
	gap: 5px;
}

.tc-filters-title{
    width: 100%;
	font-weight: 700;
}

.tc-filters-title p{
	font-weight: 700;
    font-size: 22px;
    margin: 0.5em 0;
}

.tc-filters {
	display: flex;
	flex-direction: row;
	margin-top: 100px;
	margin-left: 15px;
	padding-bottom: 20px;
    gap: 30px;
}

.tc-filters-left {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
    width: 65%;
    gap: 5px;
}

.tc-filters-right{

    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
    width: 35%;
    gap: 5px;
}
.tc-filters-content{
	display: block;
}

.categoryFilters {
	width: 70%
}

.categoryFilters p{
	font-size: 15px;

}
.dot{
    color: #C467A5;
}

.tc-category-span-alt {
  display: inline-block;
  padding: 6px 14px 5px 14px;
  border-radius: 15px;
  background: rgb(196, 103, 165, 0.3);
  color: #000;
  font-size: 15px;
  margin-bottom: 5px;
  font-weight: 400;

}

.tc-sector-span-alt {
    display: inline-block;
    padding: 6px 14px 5px 14px;
    border-radius: 15px;
	background: rgb(54, 158, 143, 0.3);
	color: #000;
    font-size: 15px;
    margin-bottom: 5px;
	font-weight: 400;
}

.tc-category-span {
    background: rgb(196, 103, 165);
    display: inline-block;
    padding: 6px 14px 5px 14px;
    border-radius: 15px;
    color: #fff;
    font-size: 15px;
    font-weight: 400;
	margin: 4px 1px;
}

.tc-category-span {
    cursor: pointer;
    opacity: 1; /* standaard niet-actief */
    transition: opacity 0.3s;
}

.tc-category-span.active {
    opacity: 1; /* actieve filter volledig zichtbaar */
    color: #FFF; /* eventueel een andere kleur voor actieve filter */
}

.tc-sector-span {
    background: #369E8F;
	display: inline-block;
    padding: 6px 14px 5px 14px;
    border-radius: 15px;
    color: #fff;
    font-size: 15px;
    font-weight: 400;
	margin: 4px 1px;

}

.tc-sector-span {
    cursor: pointer;
    opacity: 1; /* standaard niet-actief */
    transition: opacity 0.3s;
}

.tc-sector-span.active {
    opacity: 1; /* actieve filter volledig zichtbaar */
    /*font-weight: bold;*/
    color: #FFF; /* eventueel een andere kleur voor actieve filter */
}

/* ONS TEAM */

.content-ons-team {
	background-color: #C467A5;
	height: auto;
}

.content-ons-team h2{
	color: #FFF;
	padding: 50px 0px 0px 100px;
	font-size: 25px;
}

.tc-employee-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
    width: 104%;
    margin-left: -2%;
}

#tc-employee-image {
    position: relative;
    width: 40%;   /* pas aan naar wens */
    height: auto;
    border-radius: 50%;
    overflow: hidden;
    margin-top: -30px;
}

.tc-employee-dialog{
    display: flex;
    align-items: flex-start;
    position: relative;
}

.tc-employee-content{
    width: 60%;
}

#tc-employee-image .st4{
	fill: #C467A5;
}

.tc-employee-intro{
    /*margin-left: 80px;*/
}

.tc-employee-info{
    margin-top: 40px;
}

.tc-employee-info p{
    font-weight: 700;
    color: #C467A5;
}

.tc-employee-info a{
    color: #C467A5;

    font-weight: 700;
}

.tc-employee-name{
    /*color: #C467A5;*/
}

.invalid{
	background-color: #fff !important;
	border-color: #E5060A !important;
}

/* SLA tabel */
.tc-sla-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 2rem 0; }

.tc-sla-table { width: 100%; border-collapse: collapse; font-size: 0.95rem; }
.tc-sla-table th, .tc-sla-table td { padding: 12px 16px; text-align: left; border-bottom: 1px solid #dde6e8; vertical-align: middle; }
.tc-sla-table thead tr { background-color: #212348; color: #ffffff; }
.tc-sla-table thead th { font-weight: 600; }
.tc-sla-table tbody tr:nth-child(even) { background-color: #f4f9fa; }
.tc-sla-table tbody tr:hover { background-color: #C1DEE1; transition: background 0.15s ease; }
.tc-sla-table td:first-child { font-weight: 500; color: #212348; }
.tc-sla-table .col-highlight { background-color: #212348; color: #ffffff; text-align: center; font-weight: 600; }
.tc-sla-table tbody td.col-highlight { background-color: #eef4f5; color: #212348; text-align: center; }
.tc-sla-table .tag-best-effort { color: #9b9b9b; font-style: italic; }
.tc-sla-price { font-weight: 700; color: #C467A5; }
.tc-sla-note { font-size: 0.85rem; color: #666; margin-top: 1rem; }

@media (max-width: 640px) {
  .tc-sla-table thead { display: none; }
  .tc-sla-table tr { display: block; border: 1px solid #dde6e8; border-radius: 6px; margin-bottom: 1rem; padding: 0.5rem; }
  .tc-sla-table td { display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid #eee; padding: 8px 10px; }
  .tc-sla-table td:last-child { border-bottom: none; }
  .tc-sla-table td::before { content: attr(data-label); font-weight: 600; color: #212348; flex: 0 0 50%; margin-right: 1rem; font-size: 0.85rem; }
  .tc-sla-table td:first-child { background-color: #212348; color: #fff; border-radius: 4px 4px 0 0; justify-content: center; font-size: 1rem; }
  .tc-sla-table td:first-child::before { display: none; }
}

/*LOGO*/

.tc-main-logo {
	cursor:pointer;
    flex-grow: 1;
    flex-basis: 0;
    min-height: 48px;
    align-content: center;
}

.tc-main-logo img {
  transition: all 0.09s ease;
  width: 184px;
  height: 32px;
}

/*.tc-main-logo.small{
    min-width: 250px;
}*/

.tc-main-logo.small img {
  width: 45px;
    height: 32px;
}

.tc-main-logo img:hover{
	transform: scale(1.1);
}

/* MAIN FRAME */
#main-wrapper {
	width:100%;
	max-width:1280px;
	height:100%;
	padding:75px;
	box-sizing:border-box;
	position:relative;
	min-height: calc(100vh - 45px);
}

#ajax-content{
	background-color: transparent;
    flex: 1;
}

.tc-main-wrapper{
	width: 100%;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: auto;
}

.tc-main-wrapper-inner{
	width: 90%;
	max-width: 1920px;
	margin: 0;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    height: auto;
}

.tc-intro-wrapper {
	margin: 50px 8% 50px 8%;
    width: 84%;
}

.tc-intro-wrapper > *{
    max-width: 850px;
}

.tc-align-items-start{
    align-items: start;
}

.tc-intro-wrapper-2-columns {
    display: flex;
    flex-direction: row;
    margin: 20px 0 20px 8%;
    max-width: 1920px;
    gap: 25px;
}

.tc-main-wrapper:has(.tc-intro-wrapper-2-columns):last-of-type,
.tc-main-wrapper:has(.tc-intro-wrapper):last-of-type {
    margin-bottom: 130px;
}

.tc-main-wrapper:has(#map-wrapper){
    margin-top: 100px;
}

margin: 20px 0 130px 8%;

.tc-intro-wrapper-right{
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.tc-intro-wrapper-right img{
    width: 100%;
    height: auto;
}

.tc-intro-wrapper-right img:first-of-type{
    margin-top: 89px;
}

.tc-intro-wrapper-left {
  width: 50%;
}

.tc-intro-wrapper-right {
  width: 50%;
}

.tc-extra-button{
    margin-top: 50px;
}

/*MENU*/

/*ICONS*/

#top-menu #language-wrapper .language-item{
    margin: 1px 5px;
    cursor: pointer;
	display: inline-block;
	box-sizing: border-box;
	padding: 5px 0;
	font-size: 16px;
	text-transform: uppercase;
	width: 24px;
	height: 24px;
	text-align: center;
	border-radius: 12px;
}

#top-menu .language-item.active {
	background-color: #CCC;
}
#top-menu .language-item:hover {
	background-color: #CCC;
}
.isLoggedIn{
	margin-top: 1px;
}

.tc-header{
	position: sticky;
    top: 0;
	width: 100vw;
	background-color: #FFF;
	z-index: 100;
    display: flex;
    align-content: center;
    justify-content: center;
    padding: 0;
}

#tc-header-wrapper{
		width: 90%;
        max-width: 1920px;
        padding: 30px 0;
}

#top-nav-wrapper{
    flex-grow: 1;
    flex-basis: 0;
    display: flex;
    justify-content: flex-end;
}

.main-nav li.menuitem:not(:last-child):after{
	content: "•";
    color: #C467A5;
    font-size: 36px;
    padding-left: 16px;
    line-height: 10px;
    padding-top: 12px;
}

.hamburger {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: 60px;
  cursor: pointer;
  /*position: absolute;*/
  right: 102px;
  top: 37px;
  z-index: 9999;
  background: transparent;
  padding: 10px 0 10px 3px;
  box-sizing: border-box;


}

.hamburger.small {
  top: 5px;
}

/* de bolletjes (startstate) */
.hamburger .menui {
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background-color: #C467A5;
  display: inline-block;
  transition:
    transform .28s cubic-bezier(.2,.9,.3,1),
    opacity .20s ease,
    background-color .18s ease,
    width .22s ease,
    height .22s ease,
    border-radius .22s ease;
  transform-origin: center center;
  pointer-events: auto;
}

.hamburger.is-open{

  margin-left: 3px;

}

/* open state */
.hamburger.is-open .mid-menu {
  opacity: 0;
  transform: scale(0);
  width: 0;
  height: 0;
}

/* top & bottom transformeren naar streepjes en kruisen elkaar vanuit het centrum */
.hamburger.is-open .top-menu,
.hamburger.is-open .bottom-menu {
  width: 40px;       /* streepjes langer */
  height: 5px;       /* streepjes dikker */
  border-radius: 3px;
  background-color: #FFFFFF;
  position: absolute;
  left: 50%;
  top: 50%;
  transform-origin: center center;
  transition: all 0.3s ease;
}

/* top naar diagonaal */
.hamburger.is-open .top-menu {
  transform: translate(-50%, -50%) rotate(45deg);
}

/* bottom naar diagonaal */
.hamburger.is-open .bottom-menu {
  transform: translate(-50%, -50%) rotate(-45deg);
}

/* UNDERLAY (met blauwe kleur voorbeeld) */
#mobilemenu_underlay {
  position: fixed;
  inset: 0;                       /* top:0; left:0; right:0; bottom:0; */
  background: rgba(0,96,255,0.18);/* << blauwe overlay - pas aan naar wens */
  transform: translateY(-100%);
  opacity: 0;
  transition: transform 0.5s ease, opacity 0.5s ease;
  z-index: 90;
  pointer-events: none;
  /* geen visibility hier — zo blijft de transitie werken */
}

/* actief = zichtbaar en klikbaar */
#mobilemenu_underlay.active {
  transform: translateY(0);
  opacity: 1;
  pointer-events: all;
}

/* MENU-CONTAINER */

#menu-container.active {
  transform: translateY(0);
  opacity: 1;
  pointer-events: all;
}

#menu-container {

    position: fixed;
    top: 0;
    right: 0;
    transform: translateY(-100%);
    opacity: 0;
    transition: transform 0.5s ease, opacity 0.5s ease;
    z-index: 100;
    background: #212348; /* pas aan */
    pointer-events: none;
    padding-top: 15px;
	display: none;
	opacity: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	/*gap: 1.2rem;*/
	height: 100vh;
    width: 100vw;
    overflow: scroll;

}

#tc-main-menu {
	position: relative;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 15px;
}

#default-nav {
    display: none !important;
}

#menu-container.active #default-nav {
    display: flex !important;
}

#tc-nav-title {
  color: #C467A5;
  font-weight: 500;
  font-size: 26px;
  display: flex;
  align-items: center;
}

#tc-nav-title span {
  line-height: 1;
  display: block;
}

/* Fix for most browsers */
#tc-nav-title span {
  margin-bottom: 4px;
}

/* Firefox-only: remove the fix */
@supports (-moz-appearance: none) {
  #tc-nav-title span {
    margin-bottom: 0px;
  }
}

#default-nav {
	list-style: none;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 15px;
	padding: 0;
	margin: 0;
	height: 100vh;
	justify-content: space-evenly;
}

#default-nav li.active a{
    color: #FCF6BD !important;
}

#default-nav li a {
	text-decoration: none;
    color: #C467A5;
    transition: color 0.3s;
    font-weight: 500;
	font-size: 85px;
}

#default-nav li a:hover {
	color: #FCF6BD !important;
}

#default-nav li.mobile-only a{
    color: #FFF;
}

#main-nav .menuitem.active a{
    color: #C467A5 !important;
}

.tc-sub-nav{
	padding-left: 80px;
	color: #212348;
	font-size: 20px;
	gap: 20px;
	display: flex;
	flex-direction: column;
	margin: 50px 0;
}

.menuitem .tc-sub-nav{
	display: flex;
	flex-direction: column;
}

.menuitem.active .tc-sub-nav{
	display: block !important;
}

.tc-jobs-container{
    margin: 50px 0;
}

.tc-intro-wrapper-jobs {
	padding-top: 80px;
	padding-bottom: 50px;
	display: flex;
	justify-content: space-evenly;
}

.intro-logo {
    position: absolute;
    right: 0;

    pointer-events: none;
}

.logo-drop{
    z-index: 100;
}

#logo-canvas {
  display: block;
  margin: 0 auto;

}

@keyframes dropBounce {
    0% {
        transform: translateY(-200px);
    }
    60% {
        transform: translateY(30px); /* voorbij de eindpositie voor bounce */
    }
    80% {
        transform: translateY(-10px); /* kleine terugstuiter */
    }
    100% {
        transform: translateY(0); /* eindpositie */
    }
}

/* Submenu pages*/
.intro-submenus{
	width: 70%;
	display: flex;
	flex-direction: column;
    padding-left: 150px;
    padding-top: 60px;
}

.intro-submenus p{
	padding-left: 50px;
}

.tc-intro-wrapper-submenus{
	padding-bottom: 50px;
}

.button-submenus{
	margin-left: 150px;
	margin-top: 50px;
}

.tc-blue-background{
	background-color: rgba(193, 222, 225, 0.3);
	padding: 20px 0px;
}

.projects-wrapper{
	width: 95%;
	margin: 0 auto;
}

.tc-projects-grid-item-info-submenus{
	margin-top: 20px;
}

.tc-projects-grid-item-info-tex
t p{
	font-size: 13px;
	padding-top: 0;
}

.titel h2{
	font-size: 20px;
	padding-bottom: 5px;
}

.tc-projects-grid-item{
    width: 100%;
}

.grid-item-submenus {
  float: left;
  box-sizing:border-box;
  border: 2px solid rgba(255,255,255,0.00);
}

.grid-item-submenus img{
    width:100%;
	display: block;
	height: auto;
}

.grid-item-submenus, .grid-sizer {
	width: 33.333%;
	padding: 20px 5px;
}


.grid-sizer{
	width: 100%;
}
.grid-item-submenus--width1 {
  width: 33.333%;
}

.grid-item-submenus:hover {
  background-color: #FFFFFF;
	transition: 0.5s;
}

.no-hover:hover{
	background-color: #FFF !important;
}

.grid-item-submenus img {
  display: block;
  max-width: 90%;
}

.grid-projects {
    display: flex;
    flex-wrap: wrap;
    gap: 0 1%;
}

.grid-projects + .grid-projects{

}

.grid-item-projects {
    display: block; /* ensures vertical gap works */
    margin-bottom: 1%;
}

.grid-item-projects img {
    width: 100%;
    height: auto;
    display: block;
}

/* 50% items */
.grid-item-projects-width-2 {
    width: calc((100% - 1%) / 2);
}

/* 33% items */
.grid-item-projects-width-1 {
    width: calc((100% - 2%) / 3);
}

/* 66% items */
.grid-item-projects-width-4 {
    width: calc(100% - 1% - ((100% - 2%) / 3));
}

/* full width */
.grid-item-projects-width-3 {
    width: 100%;
}

.grid-item-projects img{
    width: 100%;
    height: auto;
}

.grid-item-projects a{
    display: block;
    width: 100%;
}

/* SUBMENU */

img.submenu-icon {
    width: 30px;
	height: 30px;
	margin-right: 10px;
}

/* TOPMENU */

#topmenu-wrapper{
	background-color: transparent;
}

#top-menu-left{
	display: flex;
	float: right;
	width: 100%;
	padding: 5px;

}
#top-menu{
	float: right;
}

/* PAGE BANNER */

.banner {
	width:100%;

	box-sizing:border-box;
	background-color: transparent;
}

.image-container{
	width: 100%;
}

.banner img {
	width:100%;
	height:auto;
}

.banner + .info-wrapper {
	margin-top: 25px;
}

#tc-video-banner{
    position: relative;
    width: 100%;
    overflow: hidden;
}

#tc-video-banner .videowrapper {
    position: absolute;
    top: 50.0%;
    left: 50.0%;
    width: 100.5%;
    transform: translate(-50%, -50%);
}

#tc-video-banner stream div{
    background-color: #fff !important;
}

#tc-video-banner stream{
    border: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#tc-banner {
    position: relative;
    width: 100%;
    /*overflow: hidden;
    margin: 0 auto;
	margin-bottom: 50px;*/
}

.tc-banner-bgvideo {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: translate(-50%, -50%);
    z-index: 1;
}

.tc-banner-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0);
    z-index: 2;
}

.tc-banner-content {
    position: relative;
    z-index: 3;
    color: #fff;
    text-align: center;
    top: 50%;
    transform: translateY(-50%);
    padding: 0 20px; /* responsive spacing */
}

.tc-banner-content h1 {
    font-size: 2.5rem;
    margin-bottom: 0.5rem;
}

.tc-banner-content p {
    font-size: 1.2rem;
}

/* QUOTE */

#tc-quote-wrapper {
	width:100%;
	display: flex;
	justify-content: center;
	margin: 100px 0 50px 0;
	flex-direction: column;
	box-sizing:border-box;
	text-align:left;
	line-height:27px;
	display: flex;
	flex-direction: column;
}

.tc-white-bullet {
    color: #FFF;
    font-weight: 700;
    padding: 0 8px;
}

#tc-quote-wrapper p.tc-white-bullet {
    font-size: 25px;
    line-height: 0.9;
}

.purple-bullet {
	color: #C467A5;
	font-weight: bold;
	margin: 0 5px;
	display: flex;
	align-items: center;
	font-size: 30px;
}

.tc-quote-sing-purple{
	color: #C467A5;
	font-size: 100px;
	font-weight: 600;
	display: flex;
}

.tc-quote-inner {
	font-size: 30px;
	display: flex;
	justify-content: center;
	padding: 30px;
	flex-direction: column;
    margin: 0 auto;
    max-width: 650px;
}

.tc-quote-name{
    font-weight: 700;
    font-size: 17px;
}

.tc-quote-company{
    font-size: 17px;
}

.title h2{
	color: #C467A5 !important;
	font-size: 30px;
}

.tc-quote-text {
	font-weight: 600;
	color: #FFF;
	font-size: 30px;
	display: flex;
	line-height: 1.5;
	justify-content: center;

}

.tc-quote{
	display: flex;
}

.tc-quote-person{
	color: #C467A5;
	font-size: 25px;
	font-weight: 400;
	display: flex;
	margin-left: 40px;
}

.tc-quote-person1{
	display: flex;
	margin-left: 20px;
}

.tc-quote-person p{
	font-size: 20px;
}

/* PAGE INFO */

.tc-buttons-container{
    width: 100%;
}

.tc-buttons-container-center{
    display: flex;
    justify-content: center;
    margin: 0;
}

.tc-buttons-container-center .btn{
    margin: 25px 0 50px 0;
}

.tc-content-wrapper {
    margin: 50px 8% 50px 8%;
    width: 84%;
    box-sizing: content-box;
}

.tc-content-wrapper.tc-content-wrapper-2 {
    margin: 90px 0;
    width: 100%;
    max-width: inherit;
}

.tc-content-wrapper:not(.tc-content-wrapper-2):not(.tc-content-wrapper-3) > *:not(.media_embed){
    max-width: 1050px;
}

.tc-content-wrapper div:not(.tc-project-nav) p:last-of-type{
    margin-bottom: 0;
}

/* SOCIAL MEDIA */
#sm-icons a {
	padding: 0px 15px;
	text-transform:uppercase;
	font-size:14px;
	color:#69697C;
    text-decoration:none;
}

#sm-icons a:hover {
	color:#519096;
	text-decoration:none;
}

/* FOOTER */

a.btn.btn-purple-footer {
	border-radius: 18px;
	border: none;


	padding: 0 10px 0 0;
	font-size: 20px;
	z-index: 100;
	font-weight: 600;
}

a.btn.btn-purple-footer:hover{
	background-color: transparent;
	color: #212348;
	transition: none !important;
}

.tc-contact-top {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
	gap: 10px;
	font-weight: 700;
	font-size: 23px;
	margin-top: 0;
	margin-bottom: 40px;
}

.tc-contact-company-name {
    font-weight: 700;
    font-size: 20px;
    margin-top: 0px;
}

.tc-contact-address {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
	gap: 10px;
}

.tc-footer-bottom{
    width: 100%;
    display: flex;
    justify-content: flex-end;
}

.tc-footer-image{

        display: flex;
        flex-direction: column;
}

.tc-footer-image img{
    margin-top: 70px;
    margin-bottom: 80px;
    height: 50px;
}

.tc-footer-menu-item {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding-bottom: 15px;
}

.tc-social-footer {
    margin-top: 15px;
    display: flex;
    gap: 8px;
}

#tc-footer-contact {
    float: left;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	font-size: 18px;
	font-weight: 400;
	text-align: left;
    width: 100%;
}

a.tc-footer-menu-title{
	display: flex;
	font-size: 20px;
	font-weight: 700;
}

.tc-footer-menu-list {
	display: flex;
	flex-direction: column;
	list-style: none;

	margin-bottom: 0;
}

.tc-footer-right {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* 3 kolommen = menu-1 */
    gap: 1rem;
    position: relative;
	margin-top: 208px;
	width: 67%;
	text-align: left;
}

.tc-footer-right-mobile{
    display: contents;
}

.tc-footer-left{
	width: 33%;
    display: flex;
    flex-direction: column;
}

.tc-footer-menu-list-privacy{
    display: flex;
    gap: 5px;
    align-items: center;
}

li.tc-footer-menu-item-privacy{
	list-style: none;
    display: inline-block;
    font-size: 12px;
}

#tc-site-footer{
    width:90%;
	max-width: 1920px;
    margin: 0;
	display: flex;
	justify-content: space-between;
    gap: 1rem;
}

.footer-main-nav li.menuitem{
	padding: 5px;
}

.footer-main-nav{
	list-style: none;
	display: flex;
	justify-content: flex-end;
	font-size: small;
}

#site-footer .main-nav{
	list-style: none;
	margin: 35px 0 0 0;
}

#main-nav li.menuitem{
	cursor:pointer;
	text-decoration: none;
	display: inline-flex;

}
#main-nav li.menuitem:hover{
	text-decoration:none;
}

#main-nav li.menuitem:hover > a{
	color: #C467A5;
}

ul.main-nav{

    margin: 1em;
	display: flex;
	justify-content: center;
	gap: 1rem;
	list-style: none;
	margin: 0;
	padding: 0;
	align-items: center;
    font-weight: 500;
    font-size: 26px;
}

/* BACK TO TOP */

/* MAIN FRAME PRINT */

#main-print-wrapper {
	width:100%;
	max-width:600px;
	margin: 0 auto;
	height:100%;
	padding:25px;
	box-sizing:border-box;
	position:relative;
}

#main-print {
	width:100%;
	max-width:600px;
	display:block;
}

#main-print .option-pricing-item {
	padding: 2px 0;
}

/*ISOTOPE*/

#tc-projects-grid {

	width: 100%;
	margin: 25px 0 0 0;
    padding-bottom: 40px;
}

/*#tc-projects-grid:not(:has(*)) {
  display: none;
}*/

#tc-projects-info:empty{
    display: none;
}

#tc-projects-info {
  display: flex;
  width: 100%;
  justify-content: center;
  align-content: center;
  align-items: center;
  height: 200px;

}

.tc-projects-grid-item:hover {
    background-color: rgba(193, 222, 225, 0.3);
}

.tc-projects-grid-item:hover p{
    color: #000;
}

.tc-blue-background .tc-projects-grid-item:hover {
    background-color: #fff;
}

.tc-projects-grid-item {
  float: left;
  box-sizing:border-box;
  border: 2px solid rgba(255,255,255,0.00);
}

.tc-projects-grid-item img{
    width:100%;
	display: block;
	height: auto;
}

.tc-projects-grid-item {
	width: 33.333%;
	padding: 10px;
}


.grid-item--width1 {
  width: 33.333%;
}

.grid-item:hover {
  background-color: rgba(193, 222, 225, 0.5);
  transition: 0.5s;
}

.grid-item--width2 { width: 50%; }
.grid-item--width3 { width: 100%; }

.grid-item--height1 { height: auto;}
.grid-item--height2 { height: auto; }

.grid-item--width4 { width: 66.66%; }
.grid-item--height4 { height: 98%; }


.tc-projects-grid-item img {
  display: block;
   position: relative;
    display: flex;          /* flex voor wrapper */
}

.img-wrapper {
    width: 100%;
    /* hoogte wordt via JS ingesteld op de .grid-item container */
    overflow: hidden;
}

.img-wrapper img,
.img-wrapper video {

    height: auto;      /* behoud aspect ratio */
    display: block;
}

/*toegevoegd om project overzicht weer inorde te krijgen*/
.tc-projects-grid-item-media{
	position: relative;
	display: block;
    width: 100%;
}

/*DATEPICKER*/

.ui-datepicker .ui-datepicker-calendar td a{
	color: #414141;
	background-color: #c4daba;

}

.ui-datepicker .ui-datepicker-calendar td a:hover{
	color: #414141;
	background-color: #93c17e;

}

.ui-widget {
	font-size: 18px;
	font-family: 'Arkta';
	font-weight: 400;

}

.ui-state-active{
	background: #93c17e !important;
}

.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active {
	border: 0px;
}

.ui-datepicker-header.ui-widget-header{
	background-color: #DABDBA
}

.ui-state-hover.ui-datepicker-next-hover,.ui-state-hover.ui-datepicker-prev-hover{
	background-color: #DABDBA;
	border:0;
}

.ui-icon, .ui-widget-content .ui-icon {
	background-image:0;
}

.ui-widget.ui-widget-content{
	border: 0;
	box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.3);
}

.ui-datepicker td span, .ui-datepicker td a {
	padding:  0.43em 0.2em 0.2em;
}

.ui-datepicker table{
	font-size: 17px;
}

/* PROFILE PAGE */

.session_info{
	display: flex;
	position: relative;
	align-items: stretch;
	margin-bottom: 25px;
}

div.cart-item-pickup{
	width: 15%;
}

div.cart-item-price-piece {
	margin-top: 8px;
	margin-left: 5px;
	width: 15%;
}

div.cart-item-price {
	width: 15%;
}

[type="checkbox"]:not(:checked) + label, [type="checkbox"]:checked + label {
    display: block;
    padding-bottom: 20px;
}

.SumoSelect > .CaptionCont {
    border: 1px solid #DDDDDD;
    line-height: normal !important;
}

.max-width{
	width: 550px;
}

.tc-quote-person-projects{
	display: flex;
	margin-left: 40px;
}

.tc-contact-tel{
    margin-top: 35px;
}

/* MEDIA QUERIES SCREEN */

@media only screen and (min-width: 1540px) {

    .tc-intro-wrapper-2-columns {
        margin: 20px 0 20px 13%
    }

    .tc-content-wrapper, .tc-intro-wrapper {
        margin: 50px 13% 50px 13%;
        width: 74%;
    }

    .videowrapper:not(#tc-video-banner .videowrapper) {
        width: 135.2%;
        margin-left: -17.55%;
        padding-bottom: 76.1%;
    }
    

}


@media only screen and (max-width: 1279px) {

    /*top nav*/

    ul.main-nav, #tc-nav-title{
        font-size: 23px;
        gap: 10px;
    }

    .main-nav li.menuitem:not(:last-child)::after{
       /* padding-top: 7px;*/
        padding-left: 10px;
    }


    .main-nav li.menuitem:not(:last-child)::after{
        padding-top: 10px;
    }

}
@media only screen and (max-width: 1100px) {

    /*top nav*/
    ul.main-nav, #tc-nav-title{
        font-size: 18px;
        gap: 8px;
    }

    .main-nav li.menuitem:not(:last-child)::after{
        padding-top: 7px;
        padding-left: 8px;
    }
}

/* Smaller than standard 960 (devices and browsers) */
@media only screen and (max-width: 959px) {

    /*menu*/
    #tc-nav-title span {
      margin-bottom: 2px;
    }

    #tc-nav-title{
        display: none !important;
    }

    @supports (-moz-appearance: none) {
      #tc-nav-title span {
        margin-bottom: 0px;
      }
    }


    #tc-employee-image{
        width: 75%;
    }

    .tc-employee-content{
        width: 100%;
    }


    .mobile-only{
        display: inline-block !important;
    }


    #default-nav li a {
        font-size: 40px;
    }


    #tc-main-nav-wrapper{
        display: none;
    }

    /* main typo */

    p {
        font-size: 18px; /*desktop font-size: 19px;*/
    }

    p.tc-medium-text{

        font-size:21px; /*desktop font-size:23px;*/
    }

    p.tc-large-text{

        font-size:24px; /*desktop font-size:28px;*/
    }

    p.tc-extra-large-text{
        font-size: 32px; /*desktop font-size:36px;*/
    }

    h1 {
        font-size: 32px; /*desktop font-size:36px;*/
        margin-bottom: 30px;
    }

    h2 {
        font-size: 32px; /*desktop font-size: 36px;*/
    }


    h3 {
        font-size: 26px; /*desktop font-size: 30px;*/
    }

    h4 {
        font-size: 24px; /*desktop font-size: 26px;*/
    }

    /*main containers*/

     .tc-content-wrapper {
        margin: 25px 5%;
        width: 90%;
        box-sizing: content-box;
    }

    /*.tc-intro-wrapper-home {
      padding: 50px 5% 25px 5%;
    }*/

    .tc-intro-wrapper-2-columns{
        flex-direction: column;
        margin: 25px 5%;
    }

    .tc-intro-wrapper {
        margin: 25px 5%;
        width: 90%;
    }

    .tc-main-wrapper-inner > div *[style*="margin-left: 80px;"] {
        /*width: calc(100% - 60px);*/
        margin-left: 60px !important;
    }

    .tc-main-wrapper-inner > div *[style*="margin-left: 40px;"] {
        /*width: calc(100% - 40px);*/
        margin-left: 40px !important;
    }


    .tc-intro-wrapper-left{
        width: 100%;
    }

    .tc-intro-wrapper-right{
        width: 100%;
    }

    .tc-sub-nav {
        padding-left: 60px;
    }

    .tc-intro-wrapper-right img:first-of-type{
        margin-top: 0;
    }

    /*top nav*/




    div.tc-margin-top-20, div.tc-margin-top-40, div.tc-margin-top-60{
        margin-top: 0;
    }

    div.tc-margin-bottom-20, div.tc-margin-bottom-40, div.tc-margin-bottom-60{
        margin-bottom: 0;
    }

    /*grid*/

    .tc-projects-grid-item {
	width: 50%;
    }


    /*footer*/

    #tc-footer-contact{
        font-size: 16px;
    }

    #tc-site-footer{
        flex-direction: column;
    }

    .tc-footer-left{
        width: 100%;
        order: 1;
        flex-direction: row;

        flex-wrap: wrap;
    }

    .tc-footer-right{
        width: 100%;
        order: 2;
        margin-top: 20px;
    }

    #tc-footer-contact{
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 1rem;
    }

    #tc-footer-contact :nth-child(2) {
      grid-column: 2 / span 2;
    }


    .tc-footer-image{
        width: 100%;

        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }

    .tc-footer-image img{

        margin-top: 50px;
        margin-bottom: 60px;
        height: 40px;
    }

    .tc-contact-top {
        font-size: 18px;
    }




    .tc-contact-tel {
        margin-top: 8px;
    }

    .tc-contact-top{
        margin-bottom: 5px;
    }

    /*others*/

    .tc-employee-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    tc-3-clicks-container{
        gap: 10px;
    }

    #tc-quote-wrapper {
        margin: 50px 0 35px 0;
    }

    .tc-quote-inner{
        padding-bottom: 10px;
    }

    .tc-quote-sing-purple{
        font-size: 80px;
    }

    .tc-quote-text {
        font-size: 24px;
        max-width: 400px;
    }

    .tc-quote-person p{
        font-size: 20px;
    }

    .tc-quote-person {
      margin-left: 30px;
    }

    #tc-clients-carousel{
        padding-bottom: 25px;
    }

    .slick-slide a, .carousel-item-dot{
        font-size: 36px;
    }




    /*buttons*/

    .btn::after, a.btn::after {

        width: 45px;
        height: 45px;
        background-size: 45px;
        border-radius: 20px;

    }

    .btn, a.btn {
        font-size: 20px;
        border-radius: 20px;
        padding-right: 12px;


    }

    #tc-clients-carousel .carousel-item img {
        height: 150px;
        width: 150px;
    }

    #tc-submenu-carousel{
        padding: 0;
    }

    #tc-projects-grid {

        padding-bottom: 20px;

    }

    .tc-sub-nav {
        gap: 15px;
    }

    ul.tc-arrow-ul li::before {

        width: 35px;
        height: 35px;
        background-size: 30px;

    }

    ul.tc-arrow-ul li a{
        font-size: 18px;
    }

    ul.tc-arrow-ul li{
        padding-left: 45px;
    }

    .videowrapper:not(#tc-video-banner .videowrapper) {
        width: 111.1%;
        margin-left: -5.5%;
        padding-bottom: 62.5%;
    }

}

@media only screen and (max-width: 860px) {
     ul.main-nav{
        display: none;
    }

    .tc-content-wrapper.tc-content-wrapper-2{
        margin: 65px 5%;
        width: 90%;
    }

    .tc-3-clicks-container{
        grid-template-columns: repeat(1, 1fr);
    }

    #tc-header-wrapper {
      padding: 10px 0;
    }

    .slick-slide a, .carousel-item-dot {
        font-size: 32px;
    }

    #tc-clients-carousel .slick-slide {

        padding: 10px 65px;

    }

    .tc-filters{
        margin-top: 30px;
    }


}

/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width: 767px) {

    #tc-quote-wrapper p.tc-white-bullet {
        line-height: 0.5;
    }

    .intro-logo{
        display: none !important;
    }

     #tc-employee-image{
        width: 35%;
    }

    .tc-employee-content{
        width: 65%;
    }

    .tc-employee-dialog{
        margin-top: 20px;
    }

    /*menu*/

    #default-nav li a {
        font-size: 35px;
    }

    p {
        font-size: 18px; /*desktop font-size: 19px;*/
    }

    p.tc-medium-text{

        font-size:20px; /*desktop font-size:23px;*/
    }

    p.tc-large-text{

        font-size:23px; /*desktop font-size:28px;*/
    }

    p.tc-extra-large-text{
        font-size:30px; /*desktop font-size:36px;*/
    }

    h1 {
        font-size:30px; /*desktop font-size:36px;*/
        margin-bottom: 20px;
    }

    h2 {
        font-size: 30px; /*desktop font-size: 36px;*/
    }


    h3 {
        font-size: 24px; /*desktop font-size: 30px;*/
    }

    h4 {
        font-size: 20px; /*desktop font-size: 26px;*/
    }

    /*main structure*/
    .tc-main-wrapper-inner > div *[style*="margin-left: 80px;"] {
        /*width: calc(100% - 40px);*/
        margin-left: 40px !important;
    }

    .tc-main-wrapper-inner > div *[style*="margin-left: 40px;"] {
        /*width: calc(100% - 20px);*/
        margin-left: 20px !important;
    }

    .tc-sub-nav {
        width: 90%;
        padding-left: 40px;
    }

    /*buttons*/

     .btn::after, a.btn::after {

        width: 40px;
        height: 40px;
        background-size: 40px;
        border-radius: 18px;

    }

    .btn, a.btn {
        font-size: 19px;
        border-radius: 18px;
        padding-right: 8px;
    }



    /*grid*/



    /*footer*/

      .tc-footer-right {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0 1rem;
        grid-auto-rows: auto;   /* rows size to content */
        padding-top: 0;
      }

     #tc-footer-contact{
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 0 1rem;
    }

    .tc-footer-right-mobile {
        display: flex;          /* stack left items */
        flex-direction: column;
        gap: 0 1rem;
      }

    #tc-footer-contact :nth-child(2) {
      grid-column: inherit;
    }

    .tc-contact-top{

        margin-bottom: 0;
    }


    .btn::after, a.btn.btn-small::after {
          width: 40px;
          height: 40px;
          background-size: 50px;
          border-radius: 18px;
    }

    .btn, a.btn.btn-small {
        font-size: 20px;
        border-radius: 18px;
    }


    .tc-footer-image img {
        margin-top: 45px;
        margin-bottom: 40px;
    }



    .tc-footer-menu-list-privacy{
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
        margin: 0;
    }

    .tc-footer-menu-list-privacy span{
        display: none;
    }

    .tc-footer-right-column .tc-footer-right-column .tc-footer-menu-list{
        margin-top: 0;
    }


    /*others*/


   #dialog *[style*="margin-left: 80px;"] {
        /*width: calc(100% - 20px);*/
        margin-left: 20px !important;
    }

    #dialog *[style*="margin-left: 40px;"] {
        /*width: calc(100% - 10px);*/
        margin-left: 10px !important;
    }

    .tc-content-wrapper-3{
       width: 90%;
       margin: 25px 5%;
    }

    .tc-filters{
        flex-wrap: wrap;
        gap: 10px;
        margin-top: 30px;
    }

    .tc-filters-left{
        width: 100%;
        gap: 10px 5px;
    }

    .tc-filters-right{
        width: 100%;
        gap: 7px 5px;
    }

    #tc-clients-carousel .carousel-item img {
        height: 110px;
        width: 110px;
    }

    .tc-quote-text {
        font-size: 19px;
    }

    .tc-quote-person p{
        font-size: 17px;
    }

    .slick-slide a, .carousel-item-dot {
        font-size: 34px;
    }

    #tc-clients-carousel .slick-slide {

        padding: 10px 60px;

    }

    li.tc-footer-menu-item-privacy{

        font-size: 16px;
    }



}

/* Mobile Landscape Size to Tablet Portrait (devices and browsers) iPhone Landscape*/
@media only screen and (min-width: 480px) and (max-width: 767px) {

}

@media only screen and (max-width: 600px) {

    .tc-footer-image img {
        margin-top: 40px;
        margin-bottom: 35px;
        height: 39px;
      }

    .tc-employee-dialog{
        flex-direction: column;
        display: flex;
        align-items: center;

    }

     #tc-employee-image{
        width: 60%;
    }

    .tc-employee-content{
        width: 100%;
    }

     /*menu*/

    #default-nav li a {
        font-size: 30px;
    }

    #tc-main-menu{
        gap: 7px;
    }

    .btn, a.btn {
        margin-bottom: 20px;
    }

    .tc-main-logo img{
        width: 150px;
        height: 26px;
    }

    .tc-main-logo.small img {
        width: 35px;
        height: 20px;
    }


      #tc-header-wrapper {
        padding: 5px 0;
      }


    /* main typo */

    p {
        font-size: 18px; /*desktop font-size: 19px;*/
    }

    p.tc-medium-text{

        font-size: 19px; /*desktop font-size:23px;*/
    }

    p.tc-large-text{

        font-size: 22px; /*desktop font-size:28px;*/
    }

    p.tc-extra-large-text{
        font-size: 24px; /*desktop font-size:36px;*/
    }

    h1 {
        font-size: 28px; /*desktop font-size:36px;*/
        margin-bottom: 18px;
    }

    h2 {
        font-size: 28px; /*desktop font-size: 36px;*/
    }

    h3 {
        font-size: 22px; /*desktop font-size: 30px;*/
    }

    h4 {
        font-size: 18px; /*desktop font-size: 26px;*/
    }

    /*others*/

    .tc-projects-grid-item {
        width: 100%;
    }


    .tc-employee-grid {
        grid-template-columns: repeat(1, 1fr);
        max-width: 400px;
        margin: 0 auto;
    }

     .tc-quote-sing-purple{
        font-size: 80px;
    }

    .slick-slide a {
        font-size: 32px;
    }

    #tc-clients-carousel .slick-slide {

        padding: 10px 50px;

    }

    #tc-footer-contact{
        grid-template-columns: repeat(1, 1fr);
    }

      .tc-contact-address{
        margin-top: 20px;
    }
	.tc-filters-title{
		cursor: pointer;
	}
	/*.tc-filters-content{
		visibility: hidden; 
		height: 0px;
	}*/
	



}

/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) iPhone Portrait*/
@media only screen and (max-width: 479px) {

    /*others*/

    .tc-main-wrapper-inner > div *[style*="margin-left: 80px;"] {
        /*width: calc(100% - 20px);*/
        margin-left: 20px !important;
    }

    .tc-main-wrapper-inner > div *[style*="margin-left: 40px;"] {
        /*width: calc(100% - 10px);*/
        margin-left: 10px !important;
    }

    .tc-sub-nav {
        width: 90%;
        padding-left: 20px;
    }

    /*footer*/

    li.tc-footer-menu-item-privacy{

        font-size: 14px;
    }

    .tc-footer-right{
        font-size: 14px;
    }


    .slick-slide a, .carousel-item-dot {
        font-size: 28px;
    }

    #tc-clients-carousel .slick-slide {

        padding: 10px 40px;

    }


}
