/* 
	Theme Name: BwH 26
	Description: BwH 26 Theme
	Author: BwH
	Template: hello-elementor
	Version: 1.0
	Text Domain: hello-elementor-child
*/

html,
textarea {
	scrollbar-color: #252525 #EEE;
	scrollbar-width: thin;
	scroll-behavior: smooth;
}

html,
body {
	overflow-x: hidden;
}

::selection {
	/* background: rgba(44, 44, 44, 0.2); */
	background: rgba(255, 255, 255, 0);
}

/* common custom parameter */
.hyphens-auto {
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}

.footer-menu-txt-center {
	text-align: center;
}

.mynoscript {
	display: none;
}

.link-mail:hover,
.link-tel:hover {
	color: var(--e-global-color-1003cb4) !important;
}




/* menu */
.hfe-nav-menu__layout-horizontal.hfe-dropdown .hfe-menu-toggle {
	font-size: 30px;
	padding: 0 7px !important;
	border: 4px solid;
	border-radius: 3px;
}
.hfe-nav-menu__layout-horizontal.hfe-nav-menu__submenu-arrow.hfe-dropdown.menu-is-active {
	width: 355px !important;
	position: absolute;
	left: -270px !important;
	border: 1px solid;
}
.hfe-nav-menu__layout-horizontal.hfe-dropdown .sub-menu.sub-menu-open {
	margin: 0px 10px 20px 10px;
}
#menu-light .hfe-nav-menu__layout-horizontal.hfe-dropdown .hfe-menu-toggle {
	border-color: var( --e-global-color-0c0a7d9 );
}
#menu-dark .hfe-nav-menu__layout-horizontal.hfe-dropdown .hfe-menu-toggle {
	border-color: var( --e-global-color-3a86e8d );
}
#menu-dark ul.sub-menu,
#menu-light ul.sub-menu {
	width: fit-content;
}


/* FIX: menu underline */
.hfe-pointer__underline .menu-item.parent a.hfe-menu-item::before,
.hfe-pointer__underline .menu-item.parent a.hfe-menu-item::after {
	height: 0;
}
.hfe-nav-menu .menu-item a.hfe-menu-item:hover::before, 
.hfe-nav-menu .menu-item a.hfe-menu-item:hover::after {
	height: 3px;
} 





/* sections */
.hero-title-sub {
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 2.64px;
}

.hero-title-main {
	line-height: 1.2em;
	letter-spacing: -.8px;
	margin-top: .2em;
}

.hero-title-sub-bottom {
	position: relative;
	right: clamp(-470px, -30vw, -26%);
	top: 6px;
	width: max-content;
}

.responsive-svg {
	max-width: 580px;
	width: 50vw;
	height: auto;
}

.responsive-svg rect {
	fill: transparent;
	stroke: var(--e-global-color-1003cb4);
	stroke-width: 50;
	fill-opacity: 0;
	stroke-opacity: 1
}


/* gallery project accordion */
#gallery-project-accordion .e-n-accordion-item-title {
	justify-content: space-between;
}


/* KTO-NR */
.kto-nr ul {
	list-style: none;
	padding: 0 clamp(0rem, -1.2195rem + 4.878vw, 1.25rem);
	margin-bottom: 0 !important;
}
.kto-nr li {
	margin-bottom: 0.4em;
}


/* office cards */
.box-shadow-cards img {
	box-shadow: 0 0 12px rgba(0,0,0,0.15);
	transition: all .6s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.box-shadow-cards img:hover {
	box-shadow: 0 0px 15px rgba(0,0,0,0.3);
	transform: scale(1.1);
}



/* contact form */
.contactform-hp {
	display: flex;
	flex-direction: column;
	gap: 25px;
}

.section-input {
	display: flex;
	gap: 25px;
}

.input-area,
.txt-area {
	width: 100%;
}

.input-area p,
.txt-area p,
.btn-send p {
	margin: 0;
}

.btn-send p {
	display: flex;
	justify-content: end;
}

.btn-send p .wpcf7-submit {
	order: 2;
}

.btn-send p .wpcf7-spinner {
	order: 1;
	margin: auto 24px;
	background-color: var(--e-global-color-2f09200);
}

.contactform-hp .btn-send input {
	background-color: transparent;
	font-family: var(--e-global-typography-6498773-font-family), Sans-serif;
	font-size: var(--e-global-typography-6498773-font-size);
	font-weight: var(--e-global-typography-6498773-font-weight);
	text-transform: var(--e-global-typography-6498773-text-transform);
	color: var(--e-global-color-fbc2da8);
	padding: 10px 34px 10px 34px;
	border: 2px solid var(--e-global-color-fbc2da8);
	transition: all ease-out .3s;
}

.contactform-hp .btn-send input:hover {
	background: var(--e-global-color-fbc2da8);
	color: #000;
}

#message {
	height: 135px;
}

input:not([type="submit"])::placeholder,
textarea::placeholder {
	font-family: var(--e-global-typography-e3c31c2-font-family), Sans-serif;
	font-size: 14px;
	font-weight: 300;
	color: var(--e-global-color-2f09200);
}

input:not([type="submit"]),
textarea {
	background-color: rgba(255, 255, 255, .85);
	padding: 20px;
	transition: all ease-out .3s;
}

textarea:focus {
	background-color: #fff;
}

input:not([type="submit"]):focus {
	background-color: #fff;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="password"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="url"],
.wpcf7 input[type="date"],
.wpcf7 textarea {
	height: 46px;
	font-weight: 300;
}

.wpcf7-form-control-wrap {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}

.wpcf7 .wpcf7-form-control {
	outline: none;
	border-radius: 0;
	border: 1px solid var(--e-global-color-48d9198);
	font-size: var(--e-global-typography-6498773-font-size);
}

.wpcf7 .wpcf7-form-control:focus-visible,
.wpcf7 .wpcf7-form-control.wpcf7-select:focus {
	border: 1px solid var(--e-global-color-1003cb4) !important;
}

.wpcf7-not-valid-tip {
	font-size: 0.8em !important;
	position: relative;
	top: -9px;
	background: rgba(255, 255, 255, .85);
	width: fit-content;
	padding: 0px 6px;
	right: 15px;
	margin-bottom: -17px;
	text-align: right;
	border: 1px solid #666;
	border-radius: 4px;
	line-height: 15px;
}

/* response output  */
/* error */
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
	border-radius: 5px;
	border: 1px solid #EC4848;
	color: #EC4848;
	padding: 14px 20px 14px;
	text-align: center;
	background: #0000007a;
}

/* warning */
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
	border-radius: 5px;
	border: 1px solid #ffcc6bff;
	color: #ffcc6bff;
	padding: 14px 20px 14px;
	text-align: center;
	background: #0000007a;
}

/* success */
.wpcf7 form.sent .wpcf7-response-output {
	border-radius: 5px;
	border: 1px solid #50A575;
	color: #50A575;
	padding: 14px 20px 14px;
	text-align: center;
	background: #0000007a;
}




/* TWK: txt ul  */
.elementor-widget-text-editor ul {
	margin-bottom: 1em;
}

/* TWK: table */
.table-history table {
	overflow-y: scroll;
	display: block;
	scrollbar-width: thin;
	border: 1px solid var(--e-global-color-7e0348a);
	height: clamp(350px, calc(750px - 25vw), 520px);
	cursor: ns-resize;
}
.table-history td {
	text-align: justify;
	hyphens: auto;
}
.table-history td:nth-child(2n+1) {
	text-align: center;
}


/* Data privacy */
.data-privacy h1,
.data-privacy h2,
.data-privacy h3,
.data-privacy p {
	hyphens: auto;
}

.data-privacy p {
	text-align: justify;
}

.data-privacy p,
.data-privacy a,
.data-privacy a:hover,
.data-privacy ul {
	color: var(--e-global-color-2f09200);
}

.data-privacy ul {
	padding-bottom: 20px;
}




@media only screen and (max-width: 1023px) {
	.table-history table {
		height: 40svh;
	}
}  
@media only screen and (max-width: 767px) {
	.section-input {
		flex-wrap: wrap;
	}
	.table-history table {
		height: 25svh;
	}

	/* TWK: (sub) menu click beahavior */
	#menu-dark .hfe-menu-item,
	#menu-light .hfe-menu-item {
		margin-right: 60px;
		background-color: transparent !important;
	}
	#menu-dark .hfe-has-submenu-container .hfe-menu-item,
	#menu-dark .hfe-has-submenu-container.sub-menu-active .hfe-menu-item,
	#menu-light .hfe-has-submenu-container .hfe-menu-item,
	#menu-light .hfe-has-submenu-container.sub-menu-active .hfe-menu-item {
		background-color: transparent !important;
	}

	#menu-dark .hfe-menu-toggle.sub-arrow.hfe-menu-child-0,
	#menu-light .hfe-menu-toggle.sub-arrow.hfe-menu-child-0 {
		position: relative;
		z-index: -1;
		right: -70px;
	}
	
	#menu-dark .hfe-menu-toggle.sub-arrow.hfe-menu-child-0 {
		color: #fff;
	}

	#menu-light .hfe-menu-toggle.sub-arrow.hfe-menu-child-0 {
		color: #000;
	}

	#menu-dark .menu-item-type-custom.hfe-creative-menu,
	#menu-dark .menu-item-type-post_type.hfe-creative-menu {
		background-color: #000000B2;
	}

	#menu-light .menu-item-type-custom.hfe-creative-menu,
	#menu-light .menu-item-type-post_type.hfe-creative-menu {
		background-color: #ffffffB2;
	}
	#menu-dark .hfe-menu-item:hover {
	color: var(--e-global-color-3a86e8d);
	}
	#menu-light .hfe-menu-item:hover {
	color: var(--e-global-color-48d9198);
	}

}

/* gallery-project */
@media (min-width: 768px) and (max-width: 830px) {
	#gallery-project .gallery-project-item {
		width: 338px;
	}
}
/* menu screen-size adaption */
@media (min-width: 768px) and (max-width: 1479px) {
	.hfe-nav-menu__layout-horizontal .menu-item a.hfe-menu-item {
		padding-top: clamp(0.625rem, -1.375rem + 2.5vw, 0.9375rem) !important;
		padding-bottom: clamp(0.625rem, -1.375rem + 2.5vw, 0.9375rem) !important;
		padding-left: clamp(1.25rem, -2.75rem + 5vw, 1.875rem) !important;
		padding-right: clamp(1.25rem, -2.75rem + 5vw, 1.875rem) !important;
	}

}