/* ============================================================
   DEECKE header
   ============================================================ */

:root{
	--dk-container: 1200px;
	--dk-blue:      #0090D6;
	--dk-blue-dark: #007BB8;
	--dk-grey:      #E9EBEC;
	--dk-line:      #D6DADD;
	--dk-text:      #111315;
	--dk-muted:     #4A5054;
	--dk-h:         104px;   /* header height */
}

/* ---------- shell ---------- */
.dk-header{
	position: relative;
	z-index: 900;
	width: 100%;
	background: #fff;               /* full-width background */
	border-bottom: 1px solid var(--dk-line);
}
.dk-header__inner{
	max-width: var(--dk-container); /* content stays at 1200 */
	margin: 0 auto;
	padding: 0px;
	height: var(--dk-h);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 32px;
}

.dk-logo{ display:flex; align-items:center; flex:0 0 auto; }
.dk-logo__img{ display:block; max-height:40px; width:auto; height:auto; }

/* ---------- menu ---------- */
.dk-menu{
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	gap: 30px;
}
.dk-item{ position: relative; }
.dk-has-mega{ position: static; }   /* so the mega can span the header */

.dk-link{
	display: inline-flex;
	align-items: center;
	gap: 7px;
	background: none;
	border: 0;
	padding: 0 0 4px;
	margin: 0;
	font: inherit;
	font-size: 15px;
	font-weight: 400;               /* regular — never bold */
	line-height: 1.2;
	letter-spacing: .01em;
	color: var(--dk-text);
	text-decoration: none;
	cursor: pointer;
	border-bottom: 2px solid transparent;
	transition: color .18s ease, border-color .18s ease;
}
.dk-link:hover,
.dk-link:focus-visible{ color: var(--dk-blue); }

.dk-item.is-current > .dk-link,
.dk-item.is-open    > .dk-link{ border-bottom-color: var(--dk-text); }

.dk-caret{ transition: transform .22s ease; }
.dk-item.is-open > .dk-link .dk-caret{ transform: rotate(180deg); }

/* ---------- standard dropdown ---------- */
.dk-sub{
	position: absolute;
	top: 100%;
	left: -22px;
	min-width: 200px;
	margin: 0;
	padding: 4px 22px;
	list-style: none;
	background: #fff;
	box-shadow: 0 14px 34px rgba(0,0,0,.10);
	opacity: 0;
	visibility: hidden;
	transform: translateY(6px);
	transition: opacity .18s ease, transform .18s ease, visibility .18s;
}
.dk-item.is-open > .dk-sub{ opacity:1; visibility:visible; transform:translateY(0); }

.dk-sub__link{
	display: block;
	padding: 14px 0;
	font-size: 15px;
	font-weight: 400;
	color: var(--dk-text);
	text-decoration: none;
	white-space: nowrap;
	transition: color .16s ease;
}
.dk-sub__item + .dk-sub__item > .dk-sub__link{ border-top: 1px solid var(--dk-line); }
.dk-sub__link:hover{ color: var(--dk-blue); }

.dk-sub--lang{ left:auto; right:-22px; min-width:150px; }

/* ---------- mega menu (Contact us) ---------- */
.dk-mega{
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;                    /* full width of the viewport */
	background: #fff;
	border-top: 1px solid var(--dk-line);
	box-shadow: 0 22px 40px rgba(0,0,0,.10);
	opacity: 0;
	visibility: hidden;
	transform: translateY(6px);
	transition: opacity .2s ease, transform .2s ease, visibility .2s;
}
.dk-mega[hidden]{ display:block; }  /* hidden attr only guards no-JS */
.dk-item.is-open > .dk-mega{ opacity:1; visibility:visible; transform:translateY(0); }

.dk-mega__inner{
	max-width: var(--dk-container); /* container inside the full-width panel */
	margin: 0 auto;
	padding: 0px;
	display: grid;
	grid-template-columns: 300px 1fr;
	align-items: stretch;
}

/* left panel — gradient bottom (white) to top (#E9EBEC) */
.dk-mega__aside{
	background: linear-gradient(to top, #FFFFFF 0%, var(--dk-grey) 100%);
	border-right: 1px solid var(--dk-line);
	padding: 56px 5px;
	display: flex;
	align-items: flex-start;
}
.dk-mega__aside-title{
	display: inline-flex;
	align-items: center;
	gap: 14px;
	font-size: 34px;
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -.01em;
	color: var(--dk-text);
}

.dk-mega__body{ padding: 44px 0 44px 48px; }
.dk-mega__title{
	margin: 0 0 14px;
	font-size: 38px;
	font-weight: 400;
	line-height: 1.1;
	color: var(--dk-text);
}
.dk-mega__lead{
	margin: 0 0 22px;
	max-width: 600px;
	font-size: 17px;
	line-height: 1.5;
	color: var(--dk-text);
}
.dk-mega__req{
	margin: 0 0 14px;
	font-size: 14px;
	color: var(--dk-muted);
}

/* ---------- form ---------- */
.dk-form{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 18px 24px;
}
.dk-form__col{ display:flex; flex-direction:column; gap:18px; min-width:0; }
.dk-form__col--message{ gap:0; }

.dk-field{
	width: 100%;
	background: var(--dk-grey);
	border: 1px solid var(--dk-line);
	border-radius: 0;
	padding: 18px 16px;
	font: inherit;
	font-size: 15px;
	font-weight: 400;
	color: var(--dk-text);
	outline: none;
	transition: border-color .16s ease, background .16s ease;
}
.dk-field::placeholder{ color: var(--dk-text); opacity: 1; }
.dk-field:focus{ border-color: var(--dk-blue); background:#fff; }
.dk-field.is-error{ border-color:#C0392B; }
.dk-field--area{ flex:1; min-height:100%; resize:vertical; }

.dk-form__actions{
	grid-column: 1 / -1;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 18px;
}
.dk-form__msg{ margin:0; font-size:14px; color:var(--dk-muted); }

.dk-send{
	display: inline-flex;
	align-items: center;
	gap: 12px;
	min-width: 114px;
	justify-content: center;
	padding: 20px 26px;
	border: 0;
	border-radius: 0;
	background: var(--dk-blue);
	color: #fff;
	font: inherit;
	font-size: 15px;
	font-weight: 400;
	cursor: pointer;
	transition: background .18s ease;
}
.dk-send:hover{ background: var(--dk-blue-dark); }
.dk-send[disabled]{ opacity:.6; cursor:default; }

.dk-hp{ position:absolute!important; left:-9999px; width:1px; height:1px; opacity:0; }

/* ---------- burger / overlay ---------- */
.dk-burger{
	display: none;
	flex-direction: column;
	justify-content: center;
	gap: 5px;
	width: 34px;
	height: 34px;
	padding: 0;
	border: 0;
	background: none;
	cursor: pointer;
}
.dk-burger span{ display:block; height:2px; width:24px; background:var(--dk-text); transition:transform .2s ease, opacity .2s ease; }
.dk-burger[aria-expanded="true"] span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.dk-burger[aria-expanded="true"] span:nth-child(2){ opacity:0; }
.dk-burger[aria-expanded="true"] span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

.dk-overlay{
	position: fixed;
	inset: 0;
	background: rgba(0,0,0,.35);
	z-index: 800;
}
.dk-overlay[hidden]{ display:none; }

/* ---------- responsive ---------- */
@media (max-width: 1100px){
	.dk-mega__inner{ grid-template-columns: 240px 1fr; }
	.dk-mega__body{ padding-left: 34px; }
}

@media (max-width: 991px){
	:root{ --dk-h: 78px; }

	.dk-burger{ display:flex; }

	.dk-nav{
		position: absolute;
		top: 100%;
		left: 0;
		width: 100%;
		max-height: calc(100vh - var(--dk-h));
		overflow-y: auto;
		background: #fff;
		border-top: 1px solid var(--dk-line);
		box-shadow: 0 20px 40px rgba(0,0,0,.12);
		display: none;
	}
	.dk-header.is-mobile-open .dk-nav{ display:block; }

	.dk-menu{
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		padding: 8px 20px 24px;
	}
	.dk-item{ border-bottom: 1px solid var(--dk-line); }
	.dk-link{
		width: 100%;
		justify-content: space-between;
		padding: 18px 0;
		border-bottom: 0;
	}
	.dk-item.is-current > .dk-link{ color: var(--dk-blue); }

	.dk-sub,
	.dk-mega{
		position: static;
		width: auto;
		opacity: 1;
		visibility: visible;
		transform: none;
		box-shadow: none;
		border-top: 0;
		padding: 0;
		display: none;
	}
	.dk-item.is-open > .dk-sub,
	.dk-item.is-open > .dk-mega{ display:block; }

	.dk-sub{ padding: 0 0 10px 14px; }
	.dk-sub__item + .dk-sub__item > .dk-sub__link{ border-top:0; }
	.dk-sub__link{ padding:11px 0; }

	.dk-mega__inner{ display:block; padding:0 0 22px; max-width:none; }
	.dk-mega__aside{ display:none; }
	.dk-mega__body{ padding: 6px 0 0; }
	.dk-mega__title{ font-size:26px; }
	.dk-mega__lead{ font-size:15px; }

	.dk-form{ grid-template-columns: 1fr; }
	.dk-field--area{ min-height:150px; }
	.dk-form__actions{ justify-content:flex-start; flex-wrap:wrap; }
}

@media (prefers-reduced-motion: reduce){
	.dk-header *{ transition: none !important; }
}

/* ---- reset Elementor / theme button styling inside the header ---- */
.dk-header button,
.dk-header .dk-toggle,
.dk-header .dk-burger{
	-webkit-appearance: none;
	appearance: none;
	background: none !important;
	background-color: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--dk-text);
	padding: 0;
	margin: 0;
	font: inherit;
	text-transform: none;
	letter-spacing: normal;
}

.dk-header .dk-toggle{
	font-size: 15px;
	font-weight: 400;
	padding: 0 0 4px;
	border-bottom: 2px solid transparent !important;
}
.dk-header .dk-item.is-current > .dk-toggle,
.dk-header .dk-item.is-open > .dk-toggle{
	border-bottom-color: var(--dk-text) !important;
}

.dk-header .dk-burger{ display: none; }
@media (max-width: 991px){
	.dk-header .dk-burger{ display: flex; }
}

/* the Send button keeps its blue */
.dk-header .dk-send{
	background: var(--dk-blue) !important;
	color: #fff !important;
	padding: 20px 26px !important;
}
.dk-header .dk-send:hover{ background: var(--dk-blue-dark) !important; }

/* ---- toggle: force flex layout + kill Elementor hover color ---- */
.dk-header .dk-toggle{
	display: inline-flex !important;
	align-items: center;
	gap: 7px;
}
.dk-header .dk-toggle .dk-caret{ margin-left: 2px; }

.dk-header .dk-link,
.dk-header .dk-toggle{ color: var(--dk-text) !important; }

.dk-header .dk-link:hover,
.dk-header .dk-link:focus,
.dk-header .dk-link:focus-visible,
.dk-header .dk-toggle:hover,
.dk-header .dk-toggle:focus,
.dk-header .dk-toggle:focus-visible,
.dk-header .dk-item.is-open > .dk-toggle{
	color: var(--dk-blue) !important;
	background: none !important;
}

/* ---- mega: gradient bleeds to the left edge of the screen ---- */
.dk-mega{ overflow: hidden; }

.dk-mega__aside{
	position: relative;
	background: none;
	border-right: 0;
}
.dk-mega__aside::before{
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	width: 100vw;
	background: linear-gradient(to top, #FFFFFF 0%, var(--dk-grey) 100%);
	border-right: 1px solid var(--dk-line);
	z-index: 0;
}
.dk-mega__aside-title{ position: relative; z-index: 1; }