/**
 * Theme Name:     Hello Elementor CBK
 * Author:         Elementor Team
 * Template:       hello-elementor
 * Text Domain:	   hello-elementor-cbk
 * Description:    Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
 * Author URI:     https://codeblick.de
 */
html {
	scroll-padding-top: 97px;
}

.hyphens-auto {
	@media(max-width: 1024px) {
		hyphens: auto;		
	}
}

.cbk-blue-ultralight {
	color: var(--e-global-color-cadf701);
}

.cbk-custom-background {
	/*background: linear-gradient(112deg, rgba(0, 159, 227, 0) 10.65%, #009fe3 77.67%), #000;*/
	/*background: radial-gradient(57.71% 57.71% at 50% 42.29%, #FFF 50.46%, rgba(255, 255, 255, 0.00) 100%), linear-gradient(180deg, #FFF 45%, rgba(255, 255, 255, 0.00) 100%);-*/
	/*background: radial-gradient(57.71% 57.71% at 50% 42.29%, #fff 50.46%, rgba(255, 255, 255, 0) 100%), linear-gradient(180deg, #fff 45%, rgba(255, 255, 255, 0) 100%) !important;
	background: 
	  	radial-gradient(57.71% 57.71% at 50% 42.29%, rgba(255, 255, 255, 0.6) 50.46%, rgba(255, 255, 255, 0) 100%),
	  	linear-gradient(180deg, #FFFFFF 10%, rgba(255, 255, 255, 0) 100%)!important;*/
	background: 
	  linear-gradient(180deg, #FFFFFF 10%, rgba(255, 255, 255, 0) 100%),
	  radial-gradient(57.71% 57.71% at 50% 42.29%, rgba(255, 255, 255, 0.6) 50.46%, rgba(255, 255, 255, 0) 100%) !important;
	}
}

.cbk-hero-with-background::before{
	background-image: none!important
}

.cbk-hero-with-background::before,
.cbk-hero-with-background > .elementor-background-video-container::before,
.cbk-hero-with-background > .e-con-inner > .elementor-background-video-container::before,
.cbk-hero-with-background > .elementor-background-slideshow::before,
.cbk-hero-with-background > .e-con-inner > .elementor-background-slideshow::before,
.cbk-hero-with-background > .elementor-motion-effects-container > .elementor-motion-effects-layer::before {
    content: none !important;
    background: none !important;
    background-image: none !important;
    background-color: transparent !important;
    display: none !
}

.cbk-custom-bg-dark {
	background: linear-gradient(112deg, rgba(0, 159, 227, 0) 10.65%, #009fe3 77.67%), #1f1f1f;
}

.cbk-badge {
	.elementor-icon-box-content {
		display: flex;
		align-items: center;	
	}
}

.aspect-square {
	@media (max-width: 767px) {
			aspect-ratio: 1 / 1;
	}	
}

.cbk-white-space {
	white-space: nowrap;
}


.cbk-text-block .elementor-widget-container {
	display: flex;
	flex-direction: column;
	gap: 40px;

	p,
	ul {
		margin-bottom: 0;
	}
}

.elementor-icon-wrapper,
.elementor-button-content-wrapper {
	display: flex;
	justify-content: center;
	align-items: center;
}

.elementor-button-icon {
	display: flex;
}

span.elementor-button-icon svg {
	width: 24px;
}

.elementor-widget-icon-box .elementor-icon-box-icon {
	@media (max-width: 767px) {
		display: flex !important;
		align-items: center;
	}
}

.cbk-hero-with-background {
	@media (max-width: 767px) {
		background: none !important;
	}
}

.elementor-widget-container p:last-child {
	margin-bottom: 0 !important;
}

.elementor-button svg {
	transition: all 0.3s;
}

/* Navigation */
header a.elementor-item,
header a.elementor-sub-item {
	display: inline-block;

	&:before {
		content: "";
		position: absolute;
		bottom: 8px;
		left: 0;
		right: 0;
		height: 1px; 
		opacity: 0;
		background-color: #1f1f1f !important;
		transition: opacity 0.3s ease;
		
		@media(min-width: 1025px) {
			left: 16px;
			right: 16px;
		}
	}
	
	&:hover:before,
	&.highlighted:before {
		transition: 0.3s;
		opacity: 1;
	}
}

ul.sub-menu a.elementor-sub-item:before {
	left: 0;
	right: 0;
}

header a.elementor-item.has-submenu {
	padding-right: 32px !important;

	.sub-arrow {
		display: none;
	}

	&:after {
		content: "";
		width: 16px;
		height: 16px;
		top: 16px;
		right: 8px;
		background: url("/wp-content/uploads/arrow-down.svg") center no-repeat;
		background-color: #fff !important;
		background-size: cover;
		opacity: 1 !important;
		
		@media(min-width: 1025px) {
			top: 12px;
		}
	}

	&.highlighted:after {
		transform: rotate(180deg);
		transition: 0.3s;
	}
	
	&:before {
		right: 32px;
	}
}

nav.elementor-nav-menu--dropdown {
	padding: 32px !important;
}

ul.elementor-nav-menu--dropdown {
	padding: 32px !important;

	@media (max-width: 1024px) {
		padding: 0 0 0 16px !important;
	}
}

.elementor-item.has-submenu {
	cursor: pointer;
}

.menu-item-object-custom.menu-item-1898,
.menu-item-object-custom.menu-item-1897 {
	display: block;
	
	@media (min-width: 1025px) {
		display: none !important;
	}
	
}

.menu-item-object-custom.menu-item-1897 a.elementor-item {
	background-color: var(--e-global-color-cadf701) !important;
    font-family: 'Poppins', Sans-serif !important;
    font-size: 18px;
    font-weight: 500 !important;
    text-decoration: none;
    line-height: 120%;
    letter-spacing: -0.18px;
    color: var(--e-global-color-539e674);
    border-radius: 4px !important;
    padding: 14px 24px 14px 24px !important;
	margin-top: 32px !important;
	
	&:before {
		display: none;
	}
}

.menu-item-object-custom.menu-item-1898 a.elementor-item {
	font-family: 'Poppins', Sans-serif !important;
    font-size: 18px;
    font-weight: 500 !important;
    text-decoration: none;
    line-height: 120%;
    letter-spacing: -0.18px;
    color: var(--e-global-color-539e674);
	margin-top: 16px !important;
	padding-left: 32px !important;
	position: relative;
	
	&:before {
		content: "";
		width: 16px;
		height: 16px;
		position: absolute;
		top: 14px;
		left: 8px;
		background: url("/wp-content/uploads/phone-alt.svg") center no-repeat;
		background-color: #fff !important;
		background-size: cover;
		opacity: 1 !important;
	}
}

.cbk-header-cta-buttons {
	@media (max-width: 1232px) {
		display: none !important;
	}
}

/* Table */
.cbk-table {
	display: block;
	max-width: 100%;
	overflow-x: auto;
	margin: 0;
}

.cbk-table .cbk-table-header {
	color: var(--greyscale-black, #1f1f1f);
	font-family: Poppins;
	font-size: 20px;
	font-style: normal;
	font-weight: 600;
	line-height: 140%; /* 28px */
	letter-spacing: 0.1px;
	text-align: left;

	padding: 6px 10px 16px 10px;

	@media (max-width: 767px) {
		font-size: 16px;
	}
}

.cbk-table .cbk-cell-left,
.cbk-table .cbk-cell-right {
	color: var(--greyscale-black, #1f1f1f);
	font-family: Lato;
	font-size: 18px;
	font-style: normal;
	font-weight: 400;
	line-height: 160%; /* 28.8px */
	letter-spacing: 0.09px;
	padding: 10px;

	@media (max-width: 767px) {
		font-size: 14px;
	}
}

.cbk-table .cbk-cell-right {
	width: 100%;
}

.cbk-table .cbk-cell-left {
	vertical-align: middle;

	@media (min-width: 1025px) {
		min-width: 454px;
	}
}

table tbody > tr:nth-child(odd) > .cbk-cell-right {
	border-left: 1px solid #fff;
}

table tbody > tr:nth-child(even) > .cbk-cell-right {
	border-left: 1px solid var(--e-global-color-9be701c);
}

table tbody tr:nth-child(even):hover > td {
	background-color: #fff !important;
}

table tbody > tr:nth-child(odd) > td,
table tbody > tr:nth-child(odd):hover > td {
	background-color: var(--e-global-color-9be701c) !important;
}

.cbk-table th,
.cbk-table tr,
.cbk-table td {
	border-block-start: none !important;
	border: none;
}

/* Accordion */
.elementor-widget-n-accordion.cbk-accordion .e-n-accordion-item-title {
	border-width: 0;
}
.cbk-accordion .e-n-accordion-item[open] > .e-n-accordion-item-title {
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}

.cbk-accordion a {
	color: var(--greyscale-black, #1F1F1F);
	text-decoration: underline !important;
	transition: all .3s;
	
	&:hover {
		color: var(--greyscale-black, #1F1F1F);
	}
}

/* Footer */
footer a:not(.elementor-button) {
	display: inline-flex !important;

	&:before {
		content: "";
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		height: 1px; 
		opacity: 0;
		background-color: #fff !important;
		transition: opacity 0.3s ease;
	}
	
	&:hover:before{
		transition: 0.3s;
		opacity: 1;
	}
	
	&.elementor-item:before {
		bottom: -4px;
		background-color: var(--e-global-color-290cedf) !important;
	}
	
}

#cbk-scroll-to-top {
	cursor: pointer;
	transition: all .3s;
	display: block !important;
	
	&.show {
            opacity: 1;
            transform: translateY(0);
			transition: all .3s;
        }
    &.hide {
            opacity: 0;
            transform: translateY(30px);
		transition: all .3s;
        }
}

.cbk-anchor-box a {
	display: inline-block;
	width: 100%;
	padding: 12px 16px;
}

/* Contact Form */
.cbk-contact-form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px 16px;
	
	label {
		font-family: Poppins;
		font-size: 18px;
		font-style: normal;
		font-weight: 500;
		line-height: 140%;
		letter-spacing: 0.09px;
	}
	
	input[type=email],
	input[type=number],
	input[type=tel],
	input[type=text],
	textarea {
		font-family: Poppins;
		font-size: 18px;
		font-style: normal;
		font-weight: 500;
		line-height: 140%;
		letter-spacing: 0.09px;
		border: 2px solid var(--e-global-color-9be701c);
		background-color: var(--e-global-color-9be701c);
		
		&::placeholder {
			color: var(--e-global-color-290cedf);
		}
		
		&:focus,
		&:focus-visible,
		&:active {
			border: 2px solid var(--e-global-color-cadf701);
			outline: none;
			box-shadow: none;
		}
	}
	
	textarea {
		min-height: 100px;
		height: 100px;
	}
	
	.wpcf7-acceptance .wpcf7-list-item {
		margin: 0;		
	}
	
	.wpcf7-acceptance label {
		display: flex;
		align-items: center;
	}
}

.wpcf7 form .wpcf7-response-output {
		margin-left: 0;
		margin-right: 0;
		font-family: Lato;
	}

.cbk-form-field-half {
  grid-column: span 1;
}

.cbk-form-field-full {
  grid-column: span 2;
}

.cbk-form-field-half,
.cbk-form-field-full {
p {
		margin-bottom: 8px;
	}
}

@media (max-width: 768px) {
  .cbk-contact-form {
    grid-template-columns: 1fr;
  }

  .cbk-form-field-half,
  .cbk-form-field-full {
    grid-column: span 1;
  }
}

.cbk-form-notice,
.cbk-form-required {
	color: var(--greyscale-black, #1F1F1F);
	font-family: Lato;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 120%;
	letter-spacing: 0.08px;
	
	a {
		color: var(--greyscale-black, #1F1F1F);
		text-decoration: underline !important;
		
		&:hover {
			color: var(--greyscale-black, #1F1F1F);
		}
	}
}

.cbk-form-notice {
	margin: 32px 0;
}

input[type=submit].cbk-form-submit {
	display: flex;
	padding: 12px 24px;
	justify-content: center;
	align-items: center;
	gap: 8px;
	color: var(--greyscale-black, #1F1F1F);
	font-family: Poppins;
	font-size: 18px;
	font-style: normal;
	font-weight: 500;
	line-height: 120%;
	letter-spacing: -0.18px;
	border-radius: 4px;
	background-color: var(--e-global-color-cadf701);
	border: 1px solid var(--e-global-color-cadf701);
	transition: all .3s;
	
	&:hover {
		background-color: var(--e-global-color-c4d4c94);
	}
}

.cbk-checkbox {
      display: flex;
      align-items: center;
      font-size: 16px;
}

.cbk-checkbox input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	background-color: white;
	border: 2px solid var(--e-global-color-cadf701);
	width: 20px;
	height: 20px;
	border-radius: 2px;
	margin-right: 10px;
	cursor: pointer;
}

.cbk-checkbox input[type="checkbox"]:checked {
	background-color: var(--e-global-color-cadf701);
	background-image: url('data:image/svg+xml;utf8,<svg fill="white" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M20.285 6.709l-11.32 11.32-5.657-5.657 1.414-1.414 4.243 4.243 9.906-9.906z"/></svg>');
	background-repeat: no-repeat;
	background-position: center;
	background-size: 16px;
}

.wpcf7-not-valid-tip {
	font-size: 12px;
	padding-top: 8px;
}
.cbk-service-subtitle{
	 white-space: pre-line;
}