/*  =================================================================
    0.0 :ROOT ~ overwrites or extras (if needed)
================================================================== */
    :root {
        --row-width: 1200px; /* max-width */
        --font-poppins: 'Poppins', sans-serif;
        --font-fira: 'Fira Sans', sans-serif;		
        --font-weight: 400;
		
		--swiper-theme-color: rgba(255,255,255,0.6);
		--clr-white-fa8: #fa8844;
		--clr-white-7e2: #eee7e2;
		
        --clr-orange: #f37225;
        --clr-green: #5cba47;
        --clr-green_l: #7fc66d;
        --clr-beach: #fef8f4;
        
        --clr-grey-f9f: #f9f9f9;
        --clr-grey-f5f: #f5f5f5;
        --clr-grey-e5e: #e5e5e5;
        --clr-grey-e7e: #e7e7e5;
		--clr-grey-ec7: #eceff7;
        --clr-grey-ced: #ced0cf;
		--clr-grey-c7c: #c7c7c7;
        --clr-grey-585: #585c5d;
        --clr-grey-282: #282b2e;
        --clr-grey-d5d: #d5d5d5;
        
        --clr-red: #d83030;
    }

	._xl-only {
		display: none;
	}
	.hide-for-mobile {display: none !important;}
	.show-for-mobile {display: block !important;}
	
	.bg-silver_f5f {
		background-color: var(--clr-grey-f5f);
	}
    .bg-beach {
        background-color: var(--clr-beach);
    }
	.bg-orange {
        background-color: var(--clr-orange);
    }
	.bg-orange p,
	.bg-orange a {
		color: var(--clr-white);
    }

	.color-orange {
		color: var(--clr-orange)
	}
	.color-green {
		color: var(--clr-green)
	}
	.color-grey_e7e {
		color: var(--clr-grey-e7e)
	}
    .color-grey_ced {
		color: var(--clr-grey-ced)
	}
    .color-grey_585 {
		color: var(--clr-grey-585)
	}
    .color-grey_282 {
		color: var(--clr-grey-282)
	}
	
	[class*=" ri-"], [class^=ri-],
	[class*=" material-symbols-"], [class^=material-symbols-] {
		vertical-align: bottom;
	}

/*  =================================================================
    1.0 STANDARDS
================================================================== */
	body {
		overflow-y: scroll;
	}
	body, h1, h2, h3, h4, h5, h6, p, ul, ol, label, a, .button, button, input, textarea, address {
        font-family: var(--font-fira);
		color: var(--clr-grey-585);
    }
    section {
		padding: 50px 20px 50px 20px;
	}
	section.padded {
		padding-top: 100px;
	}

    /*#siteContainer {
        padding-top: 130px;
    }*/
	main.row, .row.outer {
        padding-left: 20px;
        padding-right: 20px;
    }
	main.row {
		margin-bottom: 20px;
	}
	main.row .content {
		margin-bottom: 130px;
	}
	main.row.padded {
		padding-top: 40px;
	}
	
	.swiper-wrapper {
		height: auto;
	}
	

/*  1.1 Grid Rework
    -------------------------------------------------------------- */
    .gridFrame {
        grid-gap: 20px;
    }
	.gridFrame.noGap {
        grid-gap: 0;
    }
	.gridFrame.jobs {
        row-gap: 40px;
    }

/*  1.2 Clearfix
    -------------------------------------------------------------- */
    .clear, .clearall, .clearfix {
        clear: both;
    }

/*  1.3 Panel stylings
    -------------------------------------------------------------- */
	.panel {
		width: 100%;
		display: block;
		margin: 0 auto;
		background-color: var(--clr-grey-f5f);
		border: 1px solid var(--clr-grey-585);
		padding: 14px;
		padding-bottom: 13px;
		font-size: 16px;
		line-height: 23px;
		margin-bottom: 20px;
	}
	.panel p {
		color: var(--clr-grey-585);
		margin: 0 !important;
	}
	.panel a {
		text-decoration: underline;
	}
	.panel.alert, 
    .panel.notice, 
    .panel.success {
		text-align: center;
	}
	
	.panel.alert {
		border-color: #cc3300;
		background-color: #ff9966;
	}
	.panel.alert p {
		color: #cc3300;
	}
	.panel.notice {
		border-color: #ff9966;
		background-color: #ffcc00;
	}
	.panel.notice p {
		color: #ff9966;
	}
	.panel.success {
		border-color: #cfcfcf;
		background-color: #f5f5f5;
	}
	.panel.success p {
		color: #585c5d;
	}
	

/*  1.4 Text stylings
    -------------------------------------------------------------- */
    h1, h2, h3, h4, h5, h6 {
        color: var(--clr-orange);
		text-transform: uppercase;
        margin-bottom: 10px;
    }
    h1, header blockquote {
		font-weight: 600;
		font-size: 32px /*40px*/;
        line-height: 40px /*50px*/;
	}
	h2 {
		text-transform: none;
		font-size: 26px;
		line-height: 26px;
		padding: 7px 0;
		font-weight: 500;
		word-break: break-word;
	}
	h2.floated {
		position: relative;	
		/*padding-right: 200px;*/
	}
	h3 {
		font-size: 20px;
		font-weight: 500;
		line-height: 30px;
		text-transform: none;
	}

    p, li {
		font-size: 16px;
		line-height: 24px;
    }
	
	.WYSIWYG p, .WYSIWYG ul, .WYSIWYG ol {
		margin-bottom: 24px;
    }
	.WYSIWYG p.noM, .WYSIWYG ul.noM, .WYSIWYG ol.noM {
		margin-bottom: 0;
    }
	.WYSIWYG p.parWithIcon i, .addrIcon i {
		color: var(--clr-orange);
	}
	.WYSIWYG p.parWithIcon,
	.addrIcon {
		position: relative;
		padding-left: 24px;
	}
	.WYSIWYG p.parWithIcon i,
	.addrIcon i {
		position: absolute;
		left: 0;
		top: 0;
		line-height: 24px;
	}
	
	
	.WYSIWYG h3 i[class*=" ri-"], .WYSIWYG h3 i[class^=ri-],
	.WYSIWYG li i[class*=" ri-"], .WYSIWYG li i[class^=ri-],
	.WYSIWYG h3 span[class*=" material-symbols-"], .WYSIWYG h3 span[class^=material-symbols-],
	.WYSIWYG li span[class*=" material-symbols-"], .WYSIWYG li span[class^=material-symbols-] {
		color: var(--clr-orange);
		font-size: 20px;
		width: 24px;
		text-align: center;
		line-height: 24px;
	}
	.WYSIWYG h3 i[class*=" ri-"], .WYSIWYG h3 i[class^=ri-],
	.WYSIWYG h3 span[class*=" material-symbols-"], .WYSIWYG h3 span[class^=material-symbols-] {
		color: var(--clr-orange);
		font-size: 20px;
		width: 24px;
		text-align: center;
		line-height: 24px;
	}
	.WYSIWYG h3 i[class*=" ri-"], .WYSIWYG h3 i[class^=ri-],
	.WYSIWYG li i[class*=" ri-"], .WYSIWYG li i[class^=ri-] {
		display: inline-block;
	}

/*  =================================================================
    x.0 NAV
================================================================== */
    nav {
        position: sticky;
        left: 0;
        top: 0;
        z-index: 996;
        width: 100%;
        background-color: var(--clr-white);
		border-bottom: 5px solid var(--clr-orange);
    }
    nav .locGroups {
        text-align: center;
        line-height: 0;
        font-size: 0;
		position: relative;
		z-index: 1;
        /*border-bottom: 1px solid var(--clr-grey-ced);*/
    }
    nav .locGroups a {
        display: inline-block;
        position: relative;
        padding: 8px 16px;
        line-height: 18px;
        font-size: 12px;
        background-color: var(--clr-grey-f5f);
        color: var(--clr-grey-585);
        border-top: 0;
        margin-bottom: -1px;
        overflow: hidden;
		width: 100%;
		max-width: /*calc(50% - 10px)*/50%;
    }
    nav .locGroups a.active {
        background-color: var(--clr-green);
        color: var(--clr-white);
		font-weight: 600;
    }
    nav .locGroups a.active:after {
        content: '';
        position: absolute;
        left: 50%;
        bottom: -4px;
        width: 8px;
        height: 8px;
        border: 8px solid var(--clr-white);
        border-top: transparent;
        border-left: transparent;
        border-right: transparent;
        -webkit-transform: rotate(-45deg);
    }
    nav .locGroups a:not(:first-of-type) {
        margin-left: -1px;
    }
	
	.searchForm {
		background-color: var(--clr-white);
		position: absolute;
		border: 1px solid var(--clr-grey-ec7);
		padding: 2px;
	}
	nav .searchForm {
		right: 10px;
		top: 16px;
		width: calc(25% - 20px);
	}
	.searchForm.complaints {
		right: 0px;
		top: 50%;
		-webkit-transform: translateY(-50%) translateZ(0);
				transform: translateY(-50%) translateZ(0);
		width: 300px;
		text-align: left;
		font-size: 0;
		line-height: 0;
		border-color: var(--clr-orange);
		padding: 5px 2px 4px;
	}
	nav .searchForm .closeBTN {
		display: none;
	}
	.searchForm input {
		width: calc(100% - 30px);
		display: inline-block;
		line-height: 24px;
		padding: 4px 8px 2px 8px;
		border: 0;
		background-color: transparent;
		font-size: 14px;
	}
	.searchForm input::-webkit-input-placeholder {
        color: var(--clr-grey-ced);
    }
    .searchForm input::-moz-placeholder {
        color: var(--clr-grey-ced);
    }
    .searchForm input:-ms-input-placeholder {
        color: var(--clr-grey-ced);
    }
    .searchForm input:-moz-placeholder {
        color: var(--clr-grey-ced);
    }
	.searchForm button {
		display: inline-block;
		width: 30px;
		padding: 0;
		border: 0;
		background-color: transparent;
		text-align: center;
		line-height: 30px;
		font-size: 16px;
		color: var(--clr-grey-585);
	}
	.searchForm.complaints button {
		color: var(--clr-orange);
	}
	
	/*	SEARCH opened state
		-------------------------------------------- */
	nav .searchForm.showed {
		z-index: 1;
		width: 100%;
		right: 0;
		top: -51px;
		border: 0;
		padding: 49px 20px;
		height: 128px;
	}
	nav .searchForm.showed .closeBTN {
		display: block;
		position: absolute;
		right: 5px;
		top: 5px;
		width: 30px;
		height: 30px;
		font-size: 20px;
		text-align: center;
		line-height: 30px;
		background-color: #d00;
		color: var(--clr-white);
	}
	nav .searchForm.showed input,
	nav .searchForm.showed button {
		border: 1px solid var(--clr-grey-ec7);
	}
	nav .searchForm.showed input {
		border-right: 0;
	}	
	nav .searchForm.showed button {
		border-left: 0;
	}
	
    .nav {
        padding-top: 18px;
        text-align: left;
        font-size: 0;
        line-height: 0;
        vertical-align: bottom;
    }
	.nav.smallPad {
        padding-top: 6px;
    }
    .nav .logo-link {
        display: inline-block;
        max-width: 375px;
        padding-bottom: 16px;
		float: left;
		margin-left: -10px;
    }
    .nav .logo-link img {
        width: auto;
        height: 55px;
		display: none;
    }
	.nav .logo-link img.noMob,
    .nav .logo-link img.mobile {
		display: inline;
    }
	.nav .logo-link.kite {
		margin-left: 0;
		padding-bottom: 6px;
	}
	.nav .logo-link.kite img {
		height: 75px;
    }
	
	.nav .mobileBTN {
		position: absolute;
		right: 10px;
		top: 50%;
		width: 40px;
		height: 40px;
		margin-top: -20px;
		background-color: var(--clr-orange);
		font-size: 20px;
		line-height: 40px;
		text-align: center;
	}
	.nav .mobileBTN.search {
		display: none;
		right: 60px;
		background-color: var(--clr-green);
	}
	.nav .mobileBTN i {
		color: var(--clr-white);
	}
	.nav .mobileBTN.search i {
		color: var(--clr-white);
	}
	.nav ul {
		display: none;
		position: absolute;
		left: 0;
		top: 100%;
		background-color: black;
	}
    .nav ul li {
        position: relative;
        display: inline-block;
        font-size: 12px;
        line-height: 30px;
        text-transform: uppercase;
        padding: 0 10px;
		vertical-align: top;
    }
    .nav ul li i {
        position: relative;
		display: inline-block;
		font-size: 18px;
		line-height: 40px;
		float: right;
		margin-left: 5px;
		color: var(--clr-orange);
    }
    .nav ul a {
		cursor: pointer;
        color: var(--clr-orange);
        padding: 5px 0;
        float: left;
        font-weight: 500;
    }
	
    .nav > ul > li.active,
	.nav > ul > li.active > a {
        background-color: var(--clr-orange);
        font-weight: 600;
    }
    .nav > ul > li.active > i,
    .nav > ul > li.active > a,
    .nav > ul > li.active > a i {
        color: var(--clr-white);
    }

    .nav ul ul {
		background-color: var(--clr-orange);
		display: none;
		position: absolute;
		left: 0;
		top: 100%;
		padding: 3px 0 0 0;
		max-width: none;
		width: fit-content;
		box-shadow: inset 0 0 0 3px var(--clr-orange);
		border-top: 2px solid var(--clr-orange);
    }
    .nav ul ul li,
    .nav ul ul a {
        display: block;
        width: 100%;
        float: none;
        font-size: 13px;
        line-height: 21px;
		white-space: nowrap;
		text-transform: none;
    }
	.nav ul ul a {
		color: var(--clr-white);
	}
    .nav ul ul li:not(:last-of-type) {
        border-bottom: 1px solid var(--clr-white-fa8);
    }
	
	/*	NAV opened state
		-------------------------------------------- */
	.nav ul.showed {
		display: block;
        position: absolute;
		left: 0;
		top: 100%;
		width: 100%;
		height: calc(100vh - 128px);
		background-color: var(--clr-orange);
		padding: 10px 0;
		overflow-y: auto;
		padding-bottom: 50px;
    }
    .nav ul.showed li {
        display: block;
		font-size: 14px;
    }
    .nav ul.showed li:not(:last-of-type) {
        border-bottom: 1px solid var(--clr-white-fa8);
    }
	.nav ul.showed a {
		display: block;
		float: none;
		color: var(--clr-white);
	}
    .nav ul.showed li i {
        position: absolute;
		right: 10px;
		top: 0;
		color: var(--clr-white);
    }
	.nav ul ul.opened {
		display: block;
		display: block;
		width: 100%;
		position: relative;
		left: auto;
		top: auto;
	}


/*  =================================================================
    x.0 HEADER
================================================================== */
    header {
        margin-bottom: 40px;
        font-size: 0;
        line-height: 0;
		overflow: hidden;
    }
    header img {
        height: 280px;
        object-fit: cover;
        object-position: center;
    }
	.home header img,
	header.home img,
	header.bigHdr img	{
		height: 560px;
	}
	header h1,
	header blockquote {
        color: var(--clr-white);
        width: var(--row-width);
        position: absolute;
        left: 10px;
        bottom: 100px;
        margin: 0;
        margin-left: 0;
        padding-left: /*30px*/10px;
        padding-right: 10px;
		text-transform: none;
		letter-spacing: -2px;
		max-width: 320px;
		z-index: 11;
    }
	.home header h1,
	header.home h1,
	header.home blockquote {
        bottom: 150px;
    }
	header blockquote {
		border: 0;
	}
	header .lineButton {
		/*position: relative;
		background-color: var(--clr-green);
		color: var(--clr-white);
		padding: 5px 20px;
		font-size: 16px;
		line-height: 30px;*/
		position: absolute;
		left: 10px;
		top: calc(100% + 20px);
		cursor: pointer;
		letter-spacing: 0;
	}
	header .lineButton label,
	header .lineButton i {
		cursor: pointer;
		font-weight: 400;
		color: var(--clr-white);
	}
	header .lineButton label {
		display: inline-block;
		margin-right: 125px;
	}
	.home header .lineButton img,
	header.home .lineButton img {
		height: 60px;
		width: auto;
		/*position: absolute;
		left: 106px;
		bottom: 3px;*/
		display: inline;
	}
	/*header .lineButton:before {
		content: '';
		width: 50vw;
		position: absolute;
		right: 100%;
		top: 0;
		height: 100%;
		background-color: var(--clr-orange);
	}*/

    header .top-info  {
        padding: 6px 0 4px 0;
    }
    header .top-info p {
        font-weight: 500;
		font-size: 0;
		line-height: 0;
    }
	header .top-info p,
    header .top-info a {
        color: var(--clr-orange);
    }
    header .top-info strong {
        font-weight: 600;
		text-transform: uppercase;
    }
    header .top-info s {
        opacity: 0.5;
		text-decoration: none;
    }
	header .top-info strong,
    header .top-info s,
    header .top-info a {
        display: inline-block;
        line-height: 30px;
		vertical-align: top;
		margin-right: 20px;
		font-size: 16px;
    }
	.home header .btnIcon,
	header.home .btnIcon {
		position: absolute;
		right: 90px;
		top: -220px;
		z-index: 1;
	}
	.home header .btnIcon img,
	header.home .btnIcon img {
		max-width: 200px;
		height: auto;
		/*-webkit-filter: drop-shadow(0px 0px 5px rgba(0,0,0,0.5));
				filter: drop-shadow(0px 0px 5px rgba(0,0,0,0.5));*/
	}
	
	.swiper-button-next, .swiper-button-prev {
		display: none;
	}


/*  =================================================================
    x.0 SIDEBAR
================================================================== */
	details summary {
		list-style: none !important;
	}
	details summary::-webkit-details-marker {
		display: none !important;
	}
	
	.carrousel iframe {
		display: none;
	}
	
    .carrousel details {
        padding: 0 15px;
        padding-top: 0;
        background-color: var(--clr-grey-f5f);
		overflow: hidden;
    }
	h2.floated > details,
	h2.floated .details {
		/*position: absolute;
		right: 0;
		top: 0;
        padding: 0;
		z-index: 1;*/
		margin-top: 10px;
		display: block;
    }
	h2.floated .details {
		font-size: 0;
		line-height: 0;
		text-align: left;
    }
	h2.floated details {
        padding: 0;
        background-color: var(--clr-beach);
		width: 226px
    }
	h2.floated .details details {
		display: inline-block;
		text-align: left;
		vertical-align: top;
		margin-bottom: 10px;
    }
	h2.floated details.left,
	h2.floated details.right {
		width: fit-content;
		min-width: 210px
    }
	h2.floated details.left {
		min-width: 255px;
		margin-right: 20px;
    }
	h2.floated details:before {
		display: none;
		content: 'Filter op:';
		position: absolute;
		right: 100%;
		top: 0;
		line-height: 40px;
		padding-right: 10px;
		width: fit-content;
		text-transform: none;
		white-space: nowrap;
		font-size: 14px;
		color: var(--clr-grey-585);
		font-weight: 400;
    }
	h2.floated details.right:before {
		content: '';
    }
    .carrousel details > summary {
        list-style: none;
        position: relative;
        width: calc(100% + 30px);
        margin-left: -15px;
        line-height: 40px;
        font-size: 15px;
        background-color: var(--clr-green);
        border-bottom: 1px solid var(--clr-green_l);
        color: var(--clr-white);
    }
    h2.floated details > summary {
        list-style: none;
		font-size: 14px;
		padding: 5px 15px 3px;
		line-height: 32px;
		background-color: var(--clr-beach);
		color: var(--clr-orange);
		cursor: pointer;
		text-transform: none;
		width: 100%;
    }
    .carrousel details > summary i {
        width: 40px;
        text-align: center;
        border-right: 1px solid var(--clr-green_l);
        margin-right: 10px;
        display: inline-block;
        font-size: 22px;
    }
    h2.floated details > summary i {
        float: right;
		margin-left: 10px;
    }

    .carrousel details[open] {
        padding-bottom: 15px;
    }
    .carrousel details[open] > summary {
		font-weight: 600;
        margin-bottom: 15px;
    }
    .carrousel details[open] > summary i {
		font-weight: 400;
    }

    .carrousel details > summary::after,
    .carrousel details[open] > summary::after {
        position: absolute;
        right: 0;
        width: 40px;
        text-align: center;
        font-size: 20px;
        
        font-family: 'remixicon' !important;
        font-style: normal;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        vertical-align: bottom;
    }
    .carrousel details > summary::after {
		content: "\f492";		
	}
	.carrousel details[open] > summary::after {
		content: "\f498";
	}

    .carrousel details p {
		font-size: 14px;
		line-height: 20px;
	}
    h2.floated details p {
		width: 100%;
		display: block;
		padding: 5px 0 0 0;
		border: 0px solid var(--clr-orange);
		border-top: 0;
	}
	.carrousel details p,
	.carrousel details p a {
		color: var(--clr-grey-585);
	}
	h2.floated details p a {
		padding: 5px 15px 4px;
		text-transform: none;
		color: var(--clr-orange);
		display: block;
		font-size: 14px;
		line-height: 22px;
	}
	h2.floated details p a:not(:last-of-type) {
		border-bottom: 1px solid var(--clr-white-7e2);
	}
	
	.carrousel details p a {
		text-decoration: none;
	}
	.carrousel details p.loc {
		margin-left: -15px;
	}
	.carrousel details p.loc a {
		line-height: 32px;
	}
	.carrousel details p.loc a i {
		font-size: 20px;
		display: inline-block;
		width: 40px;
		text-align: center;
		color: var(--clr-green);
	}
	.carrousel details p span {
        display: block;
        color: var(--clr-green);
		text-decoration: none !important;
		border: 0;
        font-size: 26px;
        font-weight: 700;
        margin-bottom: 20px;
    }
	.carrousel details p span a {
        color: var(--clr-green);
		text-decoration: none !important;
    }
    
   /* mobile sidefix */
   .carrousel.mobileTouch {
    /*opacity: 0.2;*/
    z-index:100000;
    position: fixed;
    right: -240px;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 280px;
    -webkit-transition: all linear 500ms;
            transition: all linear 500ms;
   }
   .carrousel.mobileTouch.out {
    right: 0;
    /*width: 100 */
   }
   .carrousel.mobileTouch details p.loc {
    max-height: 240px;
    overflow-y: auto;
  }
   /*.carrousel details {
    pointer-events: none;
   }*/ 
    
	
	.conditions details,
	.conditions a.button,
	.areas a.button {
		background-color: var(--clr-beach);
		margin-bottom: 10px;
		width: 100%;
		height: auto;
		display: block;
		font-weight: 600;
	}
	.areas a.button {
		margin-bottom: 10px;
	}
	.conditions details > summary,
	.conditions a.button,
	.areas a.button {
		padding: 0 10px;
		padding-left: 80px;
		line-height: 40px;
		position: relative;
		/*padding-left: 80px;*/
		text-align: left;
		position: relative;
	}
	/*.areas a.button {
		padding-left: 10px;
	}
	.conditions details > summary img,
	.conditions a.button img {
		position: absolute;
		left: 10px;
		top: 10px;
		max-width: 40px;
		border-radius: 20px;
	}*/
	.conditions details summary i,
	.conditions a.button i,
	.areas a.button i {
		/*float: right;
		float: left;
		margin-right: 30px;*/
		font-size: 25px;
		line-height: 40px;
		width: 40px;
		text-align: center;
		position: absolute;
		left: 10px;
		top: 0px;
	}
	/*.areas a.button i {
		float: left;
		margin-right: 30px;
	}*/
	.conditions details p {
		padding: 0 20px 20px 80px;
		font-size: 16px;
		line-height: 32px;
	}
	.conditions details p a {
		display: block;
	}
	.conditions details p a i {
		line-height: 32px;
		/*margin-left: 5px;*/
	}
	.conditions details > summary,
	.conditions details > summary i,
	.conditions a.button,
	.conditions a.button i,
	.areas a.button,
	.areas a.button i,
	.conditions details p a,
	.conditions details p a i  {
		color: var(--clr-orange);
	}


/*  =================================================================
    x.0 CONTENT
================================================================== */
    hr {
        position: relative;
        display: block;
        height: 1px;
        border: 0;
        margin: 1em auto;
        padding: 0;
        background-color: #ccc;
        width: 100%;
        max-width: 50%;
    }
	.news hr {
		margin: 12px auto 16px auto;
		background-color: var(--clr-grey-e5e);
        max-width: none;
	}
	
	.content > .floated:not(:first-of-type) {
		margin-top: 20px;
	}
	
	.WYSIWYG,
	.row.collapsed.WYSIWYG {
		padding: 0;
	}
	.WYSIWYG.noPad {
		padding: 0;
	}
	
	.WYSIWYG .col {
		padding: 0;
	}
	
	.WYSIWYG h1, .WYSIWYG h3, .WYSIWYG h4, .WYSIWYG h5, .WYSIWYG h6,
	.WYSIWYG p,
	.WYSIWYG ol,
	.WYSIWYG ul,
	.WYSIWYG figure {		
		margin-bottom: 20px;
	}
	.WYSIWYG h3,
	.textImg section h3 {
		font-size: 18px;
		line-height: 24px;
		margin-bottom: 0;
	}
	.textImg section h3 {
		color: var(--clr-grey-585);
	}
	
	/*.WYSIWYG*/ p a {
		color: var(--clr-orange);
		text-decoration: underline;
	}
	.jobs h2 small,
	.jobs h3 small {
		font-weight: 400;
	}
	
	p.time {
		color: var(--clr-grey-ced);
		font-size: 14px;
		line-height: 32px;
		margin-bottom: 10px;
	}
	p.time i {
		vertical-align: top;
	}
	
	.WYSIWYG li {
		padding-left: 24px;
		position: relative;
	}
	.WYSIWYG li:before {
		font-family: 'remixicon';
		content: '\f3c1';
		position: absolute;
		left: 0;
		top: 0;
		font-size: 6px;
		text-align: center;
		line-height: 24px;
		width: 24px;
		color: var(--clr-orange);
	}
  .WYSIWYG li a{
    color: var(--clr-orange);
  }
  .WYSIWYG li a:hover{
    color: var(--clr-grey-585);
  }
  
	.button {
		background-color: var(--clr-orange);
		color: var(--clr-white);  
		width: 250px;
		height: 40px;
		line-height: 30px;
		font-size: 15px;
	}
	.button.whatsapp {
		border-radius: 20px;
		background-color: var(--clr-green);
	}
	.button.fakeBtn {
		width: auto;
		padding-left: 30px;
		padding-right: 30px;
	}

	.home .news,
	.news.home {
		padding-bottom: 20px;
	}
	.news article .img {
		position: relative;
		width: 100%;
		padding-bottom: 100%;
		overflow: hidden;
	}
    .therapists figure img,
	.news article img {
        object-fit: cover;
        object-position: center;
    }	
    .therapists figure img {
        height: calc(100vw - 20px);
        margin-bottom: 10px;
    }
	.news article .img {
        margin-bottom: 5px;
    }
	.news article img {
		position:absolute;
		left: 0;
		top: 0;
        width: 100%;
        height: 100%;
    }
	.therapists figure h3, 
	.news article h3 {
        margin-bottom: 0;
    }
	.therapists figure p {
        font-size: 14px;
        line-height: 20px;
    }
    .therapists figure a,
	.news article a,
	.therapists figure p small {
        color: var(--clr-orange);
        font-size: 14px;
        line-height: 20px;
    }
	.therapists figure p small {
		padding-top: 5px;
        display: block;
    }
	.therapists figure p small i {
		vertical-align: baseline;
    }
	h2.floated > a {
		/*float: right;*/
		position: absolute;
		right: 0;
		top: 50%;
		-webkit-transform: translateY(-50%);
				transform: translateY(-50%);
		font-size: 14px;
		padding: 5px 10px 3px;
		line-height: 32px;
		background-color: var(--clr-beach);
		color: var(--clr-orange);
	}
	
	h2.floated > a.xtraMarginRight {
		right: 320px;
	}
	.linkLeft h2.floated {
		padding-left: 207px;
	}
	h2.floated > a.prev {
		right: 121px;
	}
	h2.floated > a.next {
		width: 111px;
	}
	h2.floated > a.prev.disabled,
	h2.floated > a.next.disabled {
		pointer-events: none;
		background-color: #f9f9f9;
		color: var(--clr-grey-d5d);
	}
	h2.floated > a.overview {
		right: auto;
		left: 0;
		background-color: var(--clr-orange);
		color: var(--clr-beach);
	}
	.news .timeText {
		padding-bottom: 4px;
		font-size: 14px;
		line-height: 28px;
		color: var(--clr-orange);
		text-align: left;
	}
	.news .timeText.grey_ced {
		color: var(--clr-grey-ced);
	}
	
	.news .timeText i {
		vertical-align: baseline;
	}
	.news .timeText.links a {
		float: right;
		display: inline-block;
		line-height: 28px;
	}
	.news h3,
	.downloads h3 {
		color: var(--clr-grey-585);
	}
	
	.downloads ul {
		margin-bottom: 20px;
	}
	
	.pagination {
		width: 100%;
		text-align: right;
		font-size: 0;
		line-height: 0;
	}
	.pagination li {
		display: inline-block;
		width: 40px;
		height: 40px;
		font-size: 18px;
		line-height: 40px;
		text-align: center;
		border: 1px solid #e9e9e9;
		margin-left: 10px;
		color: #555;
		font-weight: 600;
	}
	.pagination span {
		background-color: #f8f8f8;
		display: block;
		line-height: 38px;
	}
	.pagination a {
		color: var(--clr-orange);
		display: block;
		line-height: 38px;
	}
	.pagination i {
		vertical-align: bottom;
		font-size: 22px;
	}
	
	.expertises figcaption {
		width: 100%;
		padding: 15px 20px 20px 20px;
		float: left;
	}
	.expertises figcaption p {
		position: relative;
		padding-left: 24px;
		line-height: 24px;
		font-size: 14px;
	}
	.expertises figcaption p:not(.small):before {
		font-family: "remixicon";
		content: "\ef14";
		position: absolute;
		left: 0;
		top: 0;
		display: block;
		width: 24px;
		line-height: 24px;
		text-align: left;
		font-size: 18px;
	}
	
	.expertises figcaption p.small {
		margin-top: -12px;
		color: var(--clr-orange);
	}
	.expertises figcaption p.large {
		margin-top: 40px;
	}
	.expertises figcaption p.last {
		margin-bottom: 0;
	}
	.expertises figcaption p i {
		position: absolute;
		left: 0;
		top: 0;
		display: block;
		width: 24px;
		line-height: 24px;
		text-align: left;
		font-size: 18px;
	}
	.expertises figcaption p:before,
	.expertises figcaption p i,
	.expertises figcaption p b,
	.expertises figcaption p b a {
		color: var(--clr-orange);
		text-decoration: none !important;
	}
	.expertises figcaption a.btn {
		color: var(--clr-orange);
		text-decoration: underline !important;
	}
	
	.letterHighlight {
		margin-left: 10px;
		width: 40px;
		line-height: 30px;
		text-align: center;
		font-size: 20px;
		font-weight: 500;
		display: block;
	}
	
	.areas ul {
		font-size: 0;
		line-height: 0;
		text-align: left;
	}
	.areas ul li {
		display: inline-block;
		font-size: 16px;
		line-height: 32px;
		text-transform: capitalize;
	}
	.areas ul li:not(:last-of-type):after {
		content: '-';
		margin-left: 2px;
		margin-right: 2px;
		color: var(--clr-grey-c7c);
	}
	.areas ul li a,
	.areas ul li span {
		display: inline-block;
		padding: 0 3px;
		text-align: center;
	}
	.areas ul li.active a,
	.areas ul li a.active {
		font-weight: 600;
		color: var(--clr-orange);
	}
	.areas ul li span {
		color: var(--clr-grey-c7c);
	}
	.textImg .card {
		float: left;
		width: 100%;
	}
	.textImg .card:not(:last-of-type) {
		margin-bottom: 20px;
	}
	
	.textImg figure {
		position: relative;
		width: 100%;
		max-width: 20%;
		padding-bottom: 20%;
		float: left;
		border: 1px solid var(--clr-orange);
	}
	.floated.grid._20px.textImg figure {
		margin-bottom: 5px;
	}
	.floated.grid._20px.textImg .grd-item {
		margin: 0 0 40px 0;
	}
	
	.textImg.cols figure {
		max-width: none;
		padding-bottom: 0;
		border: 0;
	}
	.textImg figure img {
		position: absolute;
		left: 50%;
		top: 50%;
		-webkit-transform: translate(-50%,-50%);
				transform: translate(-50%,-50%);
		width: 90%;
		height: 90%;
		object-fit: contain;
	}
	.textImg.cols figure img {
		position: relative;
		left: auto;
		top: auto;
		-webkit-transform: translate(0,0);
				transform: translate(0,0);
		width: 100%;
		height: auto;
		object-fit: contain; 
	}
	.textImg section {
		padding: 0 0 0 20px;
		float: left;
		width: 80%;
	}
	.textImg.cols section {
		padding: 0;
		width: 100%;
	}
	
	.pricing ul li {
		padding: 5px;
		position: relative;
    padding-right:70px;
	}
	.pricing ul li:not(:last-of-type) {
		border-bottom: 1px solid var(--clr-grey-f5f);
	}
	.pricing ul em {
		display: block;
		color: #aaa;
	}
	.pricing ul span {
		position: absolute;
		right: 0;
		top: 5px;
	}
	
	.specs {
		text-align: left;
		font-size: 0;
		line-height: 0;
	}
	.specs li {
		display: inline-block;
		width: 100%;
	}
	.specs a {
		text-decoration: underline;
	}
	
	.contactform li {
		position: relative;
		line-height: 0;
		font-size: 0;
	}
	.contactform label,
	.contactform small,
	.contactform input,
	.contactform select,
	.contactform textarea,
	.contactform button {
		display: inline-block;
		vertical-align: top;
		font-size: 16px;
		line-height: 24px;
		padding: 4px 10px;
		margin-bottom: 10px;
	}
	.contactform .g-recaptcha {
		display: inline-block;
		vertical-align: top;
		margin-bottom: 10px;
	}
	.contactform label {
		padding: 4px 0;
		width: /*300px*/100%;
	}
	.contactform small {
		width: calc(100% - 24px);
		font-size: 14px;
		line-height: 20px;
	}
	.contactform input,
	.contactform select,
	.contactform textarea {
		width: /*calc(100% - 300px)*/100%;
		border: 1px solid var(--clr-grey-d5d);
		color: var(--clr-grey-585);
	}
	.contactform textarea {
		height: 120px;
	}
	.contactform input[type="checkbox"] {
		padding: 0;
		margin: 4px 0;
		width: 24px;
		height: 24px;
		position: relative;
	}
	.contactform input[type="checkbox"]:after {
		content: '';
		position: absolute;
		left: 3px;
		top: 3px;
		width: 16px;
		height: 16px;
		background-color: transparent;
	}
	.contactform input[type="checkbox"]:checked:after {
		background-color: var(--clr-orange);
	}
	.contactform button {
		background-color: var(--clr-orange);
		color: var(--clr-white);
		padding: 10px 30px;
	}
	
	.textView.maxed {
		max-height: 96px;
		overflow: hidden;
	}
	.expandButton {
		color: var(--clr-orange);
		padding: 3px 10px;
		margin-top: 5px;
		background-color: var(--clr-beach);
		line-height: 24px;
		font-size: 14px;
		border-radius: 4px;
	}
	.expandButton  i {
		margin-right: 6px;
	}
	.swiper.storySlide {
		padding-top: 20px;
		margin-top: -40px;
		margin-bottom: 20px;
	}
	.swiper.storySlide .swiper-pagination {
		top: auto;
		bottom: 10px;
	}
	.storyTellers .swiper-slide {
		position: relative;
		background-color: var(--clr-grey-f9f);
		padding: 50px 40px;
		margin: 0;
		text-align: center;
	}
	.storyTellers .swiper-slide i {
		position: absolute;
		left: 50%;
		top: -4px;
		width: 40px;
		height: 40px;
		border: 4px solid var(--clr-white);
		margin-left: -20px;
		line-height: 36px;
		text-align: center;
		color: var(--clr-orange);
		background-color: var(--clr-beach);
	}
	.storyTellers .swiper-slide p {
		font-style: italic;
	}
	
	.storyTellers .swiper-slide cite {
		display: inline-block;
		margin-top: 10px;
	}
	.swiper.storySlide .swiper-pagination-bullet {
		opacity: var(--swiper-pagination-bullet-opacity, 1);
		background: var(--clr-white);
	}
	.swiper.storySlide .swiper-pagination-bullet-active {
		opacity: var(--swiper-pagination-bullet-opacity, 1);
		background: var(--clr-orange);
	}
	

/*  =================================================================
    x.0 FOOTER
================================================================== */
	footer {
		padding: 70px 0 50px;
	}
	.padded {
		padding: 50px 40px 0 40px;
	}
	.bg-orange.padded {
		padding: 80px 60px;
	}
	
	footer hr {
		background-color: var(--clr-white);
	}
	footer h3 {
		font-size: 16px;
	}
	footer p,
	footer li {
		font-size: 14px;
		line-height: 24px;
	}
	footer li a {
		text-decoration: underline;
	}
	
	footer address p:not(.noPad),
	footer .nws li {
		padding-left: 24px;
		position: relative;
	}
	footer .nws li {
		padding-left: 0;
	}
	footer .nws li {
		display: -webkit-box;
		-webkit-box-orient: vertical;
		overflow: hidden;
		text-overflow: ellipsis;
		-webkit-line-clamp: 1;
	}
	footer address i,
	footer .nws li i {
		position: absolute;
		left: 0;
		top: 0;
		display: block;
		width: 24px;
		line-height: 20px;
		text-align: left;
		font-size: 18px;
	}
	footer address i,
	footer .nws li i,
	footer address p b,
	footer address p b a {
		color: var(--clr-orange);
		text-decoration: none !important;
	}
	footer address > p > i:nth-of-type(2) {
		top: 24px;
	}
	footer .col {
		position: relative;
	}
	footer .info {
		padding-top: 20px;
	}
	footer .info p {
		line-height: 40px;
		color: #aaa;
	}
	footer .socials {
		display: inline-block;
		float: right;
	}
	footer .socials a {
		display: inline-block;
		font-size: 32px;
		width: 40px;
		line-height: 40px;
		text-align: center;
		float: left;
		text-decoration: none;
	}
	

/*  =================================================================
    HOVER STATES
================================================================== */
@media (any-hover: hover) {
    
    .nav ul li, .nav ul li i, a, a i, button, header .lineButton svg  {
        -webkit-transition: all 200ms ease-in;
				transition: all 200ms ease-in;
    }
	.nav ul li:hover,
	.nav ul li:focus {
        background-color: var(--clr-orange);
		cursor: pointer;
    }
	.nav ul li:hover a,
	.nav ul li:hover i,
	.nav ul a:hover,
	.nav ul li:focus a,
	.nav ul li:focus i,
    .nav ul li a:hover i,
    .nav ul li:focus a:hover {
        color: var(--clr-white);
	}
	
	/*header .lineButton:hover {
		background-color: var(--clr-orange);
		color: var(--clr-white);
	}
	header .lineButton:hover label,
	header .lineButton:hover i {
		color: var(--clr-white);
	}*/
	
	/*.nav ul ul a:hover {
        background-color: var(--clr-white);
        color: var(--clr-orange);
    }
	.carrousel details p a:hover {
		color: var(--clr-green);
	}
	h2.floated details p a:hover {
        background-color: var(--clr-white);
        color: var(--clr-orange);
	}*/
	
	.carrousel details p a:hover {
		color: var(--clr-green);
	}
	
	.expertises figcaption a.btn:hover,
	.therapists figure a:hover, 
	.news article a:hover {
		color: var(--clr-grey-585);
	}
	
	h2.floated > a:hover {
		background-color: var(--clr-orange);
		color: var(--clr-white);
	}
	
	/*.WYSIWYG*/ p a:hover,
	li a:hover {
		color: var(--clr-orange)
	}
  
	.contactform button:hover,
	.button:hover {
		text-decoration: underline;
	}
	

}

/*  =================================================================
    MEDIA QUERIES
================================================================== */
/* MOBILE */
@media only screen and (min-width: 572px) {

    nav .locGroups a {
		width: auto;
		max-width: none;
    }
    .therapists figure img {
        height: calc((100vw / 3) - 20px);
    }
	
  	.specs li {
  		width: 50%;
  	}
	
	.carrousel iframe {
		display: block;
	}
  
}

@media only screen and (min-width: 572px) and (orientation: landscape) { }

/* IPADS portrait */
@media only screen and (min-width: 768px) and (min-height: 600px) { 

	
	h2.floated > details,
	h2.floated .details {
		position: absolute;
		right: 0;
		top: 0;
        padding: 0;
		z-index: 1;
		margin: 0;
    }
	
	h2.floated .details {
		text-align: right;
    }
	h2.floated .details details {
		margin-bottom: 0;
    }
	h2.floated details:before {
		display: block;
    }
	
	
}

 /* IPADS portrait */
@media only screen and (min-width: 768px) {

	h1, header blockquote {
		max-width:  none;
	}
	
	.carrousel details p {
		width: calc(100% + 30px);
		max-height: 400px;
		overflow-y: auto;
	}

}

/* IPADS landscape AND mini laptops */
@media only screen and (min-width: 960px) {	
	
	.hide-for-mobile {display: block !important;}
	.show-for-mobile {display: none !important;}
	
	main.row, .row.outer {
        padding-left: 10px;
        padding-right: 10px;
    }
	
    h1, header blockquote {
		font-size: 60px;
        line-height: 60px;
	}
	h2 {
		line-height: 40px;
		padding: 0;
	}
	h2.floated > a {
		margin-top: 0;
	}
	h2.floated > a i {
		vertical-align: baseline;
	}
	
	nav .searchForm.evContainer:not(#mainNAV) {
		display: block;
	}
	.nav .mobileBTN {
		display: none;
	}
    .nav .logo-link img {
		display: inline;
    }
    .nav .logo-link img.mobile {
		display: none;
    }
	
	.nav .logo-link {
        float: none;
		margin-left: auto;
    }
    .nav .logo-link img {
        height: 65px;
    }
	.nav ul {
		background-color: transparent;
		display: inline-block;
		position: relative;
		left: auto;
		top: auto;
		width: calc(100% - 375px);
        text-align: left;
        padding-left: 50px;
        vertical-align: bottom;
	}
	.nav ul li:hover ul {
        display: block;
    }
	
	.nav ul a.noLink {
		pointer-events: none !important;
    }
	
	/*.storyTellers .swiper-slide {
		padding: 40px 40px 50px 40px;
	}
	.storyTellers .swiper-slide i {
		top: -20px;
	}*/

	.WYSIWYG.rtl .img {
		order: 2;
	}
	.WYSIWYG.rtl .txt {
		order: 1;
	}
	.news .gridFrame,
	.gridFrame.therapists {
		row-gap: 40px;
	}
	
	.carrousel {
		position: sticky;
		top: 156px;
	}
  
  .contactform label {
		width: 300px;
	}
	.contactform small {
		width: calc(100% - 324px);
	}
	.contactform input,
	.contactform select,
	.contactform textarea {
		width: calc(100% - 300px);
	}
	.contactform button {
		margin-left: 300px;
	}
	
	h2.floated {
		padding-right: 200px;
	}
	
	
}

/* SMALL SCREENS */
@media only screen and (min-width: 1280px) {
	
    nav .locGroups {
		z-index: 0;
    }
	.nav .logo-link {
        max-width: 455px;
    }
	.nav .logo-link img {
        height: 75px;
    }
	
	.nav.smallPad {
        padding-top: 18px;
    }
	.nav .logo-link.kite {
		padding-bottom: 16px;
	}
	.nav .logo-link.kite img {
		height: 115px;
		margin-top: -40px;
    }
	.nav ul {
		width: calc(100% - 395px);
	}
	.nav ul.vlieger {
		width: calc(100% - 210px);
	}	
    .nav ul li {
        font-size: 16px;
		padding: 0 15px;
	}	
	/*.nav ul a {
		padding: 5px 15px;
	}*/
	
	header h1,
	header blockquote {
        position: absolute;
        left: 50%;
        margin-left: -600px;
        /*padding-left: 38px;*/
		max-width: none;
    }
	header .lineButton {
		top: auto;
		bottom: -90px;
		/*left: 38px;*/
	}
	
	.carrousel {
		top: 166px;
	}
    .therapists figure img {
        height: 280px;
    }
}

/* WEIRD HEADER TEXT BREAKPOINT ~ must be paddings or margins */
@media only screen and (min-width: 1340px) { }

/* SMALL SCREENS */
@media only screen and (min-width: 1440px) { }
@media only screen and (min-width: 1600px) { 
	._xl-only {
		display: block;
	}
}
