/* 
Theme Name: Tikedo
Theme URI: https://tikedo.com
Description: Official theme for Tikedo, created by PubliOne
Author: PubliOne
Author URI: https://publione.it/
Template: hello-elementor
Version: 1.0.11
Text Domain: tikedo
*/


/* -------------------------------------------*/
/* HTML ELEMENTS
/* -------------------------------------------*/
html,
body {
	overflow-x: hidden;
}
body {
	--font-size: 0.9375rem;
	--line-height: 1.6666em;
	font-size: var(--font-size);
	line-height: var(--line-height);
	accent-color: var(--e-global-color-accent);
}
@media (max-width: 767px) {
	body {
		--font-size: 0.875rem;
	}
}
img {
	display: block;
}


/* -------------------------------------------*/
/* ELEMENTOR: COLUMN GAP (DEFAULTS)
/* -------------------------------------------*/
.elementor-column-gap-default > .elementor-column > .elementor-element-populated {
		--gap: 75px;

}
.elementor-column-gap-default > .elementor-column > .elementor-element-populated {
	padding-left: var(--gap);
	padding-right: var(--gap);
}
@media (max-width: 1024px) {
	.elementor-column-gap-default > .elementor-column > .elementor-element-populated {
		--gap: 60px;
	}
}
@media (max-width: 767px) {
	.elementor-column-gap-default > .elementor-column > .elementor-element-populated {
		--gap: 30px;
	}
}


/* -------------------------------------------*/
/* ELEMENTOR SECTION
/* -------------------------------------------*/

/* 
 * Element: 	Elementor Inner Section
 * Description: Make inner section respect aligning options defined in parent section.
 */
.elementor-inner-section {
    display: flex;
    justify-content: inherit;
	align-items: inherit;
}
.elementor-inner-section .elementor-container {
	width: 100%;
	margin-left: 0;
	margin-right: 0;
}


/* -------------------------------------------*/
/* ELEMENTOR: HEADER
/* -------------------------------------------*/

/* Primary nav elements (class: "primary") */
.elementor[data-elementor-type="header"] li.primary {
	font-weight: 700;
}

/* Divider nav element (class: "divider") */
.elementor[data-elementor-type="header"] li.divider {
	pointer-events: none;
	position: relative;
	margin-inline: var(--e-nav-menu-horizontal-menu-item-margin);
	width: 6px;
	color: var(--e-global-color-57576da);
}
.elementor[data-elementor-type="header"] li.divider::before {
	content: "";
	position: absolute;
	top: 50%; left: 50%;
	width: 6px; height: 6px;
	margin: -3px 0 0 -3px;
	border-radius: 6px;
	background: currentColor;
}
.elementor[data-elementor-type="header"] li.divider > a {
	display: none;
}
@media (max-width: 767px) {
	.elementor[data-elementor-type="header"] li.divider {
		display: none;
	}
}


/* -------------------------------------------*/
/* ELEMENTOR: ACCORDION
/* -------------------------------------------*/

/* Vertical rhythm for accordion content */
.elementor-widget-accordion .elementor-tab-content > * + * {
	margin-top: 1em;
}


/* -------------------------------------------*/
/* ELEMENTOR: CUSTOM BUTTON
/*
/* Element: Elementor Button
/* 
/* Class:   .custom
/* -------------------------------------------*/
.elementor-widget-button.custom .elementor-button-link {
	position: relative;
	overflow: hidden;
}
.elementor-widget-button.custom .elementor-button-link::before,
.elementor-widget-button.custom .elementor-button-link::after {
	content: "";
	position: absolute;
	right: 0; bottom: 0;
	width: 100%; height: 0.2em;
	background: currentcolor;
	transition: inherit;
}
.elementor-widget-button.custom .elementor-button-link::before {
	opacity: 0.2;
}
.elementor-widget-button.custom .elementor-button-link:not(:hover)::after {
	transform: translateX(-101%);
}


/* -------------------------------------------*/
/* ELEMENTOR: CHECKBOX
/* -------------------------------------------*/
.elementor-field-option {
	--color: var(--e-global-color-8f7fb0e);
	display: flex;
	align-items: center;
}
.elementor-field-option input[type="checkbox"] {
	appearance: none;
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    margin-right: 10px;
}
.elementor-field-option input[type="checkbox"]:checked {
	background-color: var(--color) !important;
	border-color: var(--color);
	background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.6644 5.25259C21.0772 5.61951 21.1143 6.25158 20.7474 6.66437L10.0808 18.6644C9.89099 18.8779 9.61898 19 9.33334 19C9.04771 19 8.7757 18.8779 8.58593 18.6644L3.2526 12.6644C2.88568 12.2516 2.92286 11.6195 3.33565 11.2526C3.74843 10.8857 4.3805 10.9229 4.74742 11.3356L9.33334 16.4948L19.2526 5.33564C19.6195 4.92286 20.2516 4.88568 20.6644 5.25259Z' fill='%23ffffff'/%3E%3C/svg%3E%0A");
	background-size: cover;
}


/* -------------------------------------------*/
/* ELEMENTOR: FEEDBACK MESSAGES --------------*/
/* -------------------------------------------*/
.elementor-message {
    display: flex;
    justify-content: center;
    align-items: center;
	margin: 0;
	padding: 10px 15px;
}
.elementor-message + .elementor-message {
	margin-top: 15px;
}
.elementor-message-success {
	margin-top: 45px;
	padding: 30px;
	font-size: 1.25em;
    background: var(--e-global-color-325ed62);
    color: #fff;
}
.elementor-message-success::before {
	margin-right: 15px;
	font-size: 1.5em;
}


/* -------------------------------------------*/
/* EFFECT: ROTATING BADGE
/*
/* Element: Elementor Element
/* Class:   .badge
 * Variant: .dot
 * 			.center
/* -------------------------------------------*/
.elementor-element.badge .elementor-widget-container {
	position: relative;
	width: 120px;
	height: 120px;
	padding: 10px;
	margin: 8px;
	animation: badgeRotate var(--transition) linear infinite both paused;
}
.elementor-element.badge::before,
.elementor-element.badge .elementor-widget-container::before,
.elementor-element.badge .elementor-widget-container::after {
	content: "";
	position: absolute;
	top: 50%; left: 50%;
	transform: translate( -50%, -50% );
}
.elementor-element.badge .elementor-widget-container::before,
.elementor-element.badge .elementor-widget-container::after {
	border: 1px solid currentcolor;
    border-radius: 50%;
}
.elementor-element.badge.dot::before {
	width: 45%; height: 45%;
	background: currentcolor;
	opacity: 0.15;
	border-radius: 50%;
}
.elementor-element.badge .elementor-widget-container::before {
	width: calc(100% - 32px); height: calc(100% - 32px);
}
.elementor-element.badge .elementor-widget-container::after {
	width: calc(100% + 16px); height: calc(100% + 16px);
}
.elementor-element.badge.rotating .elementor-widget-container,
.elementor-element.badge.rotating-on-hover:hover .elementor-widget-container{
	animation-play-state: running;
}
@keyframes badgeRotate {
	to { transform: rotate(360deg); }	
}


/* -------------------------------------------*/
/* EFFECT: DRAWING LINES
/*
/* Element: Elementor Section
/* 
/* Class:   .lines
/* Variant: .from-right
/*          .to-bottom
/*          .above
/*          .blue-2 .blue-3 .red .green
/* -------------------------------------------*/
.elementor-section.lines {
	z-index: 1;
	animation-duration: 0s;
}
.elementor-section.lines::before,
.elementor-section.lines::after {
	content: "";
	position: absolute;
	z-index: -1;
	background: var(--e-global-color-accent);
	transition: transform 0.75s linear;
	transition-delay: 0.75s;
}
.elementor-section.lines.above::before,
.elementor-section.lines.above::after {
	z-index: 5;
}
.elementor-section.lines::before {
	bottom: 50%; left: 0;
	width: 50%; height: 4px;
	margin-bottom: -2px;
	transform: scaleX(0);
	transform-origin: left;
}
.elementor-section.lines.from-right::before {
	left: auto; right: 0;
	transform-origin: right;
}
.elementor-section.lines::after {
	bottom: 0; left: 50%;
	width: 4px; height: calc(50% + 2px);
	margin-left: -2px;
	transform: scaleY(0);
	transform-origin: top;
	transition-delay: 1.5s;
}
.elementor-section.lines.animated::before,
.elementor-section.lines.to-bottom.animated::after {
	transform: scale(1);
}
.elementor-section.lines.blue-2::before,
.elementor-section.lines.blue-2::after {
	background: var(--e-global-color-8f7fb0e);
}
.elementor-section.lines.blue-3::before,
.elementor-section.lines.blue-3::after {
	background: var(--e-global-color-4bcc4ed);
}
.elementor-section.lines.red::before,
.elementor-section.lines.red::after {
	background: var(--e-global-color-57576da);
}
.elementor-section.lines.green::before,
.elementor-section.lines.green::after {
	background: var(--e-global-color-325ed62);
}
@media (max-width: 1024px) {
	.elementor-section.lines.to-bottom::before {
		bottom: 120px;
	}
	.elementor-section.lines.to-bottom::after {
		height: calc(120px + 2px);
	}
}
@media (max-width: 767px) {
	.elementor-section.lines.to-bottom::before {
		bottom: 90px;
	}
	.elementor-section.lines.to-bottom::after {
		height: calc(90px + 2px);
	}
}

.elementor-column.lines {
	z-index: 5;
}
.elementor-column.lines::before,
.elementor-column.lines::after {
	content: "";
	position: absolute;
	z-index: -1;
	background: var(--e-global-color-accent);
	transition: transform 0.75s linear;
	transition-delay: 0.75s;
}
.elementor-column.lines.above::before,
.elementor-column.lines.above::after {
	z-index: 5;
}
.elementor-column.lines::before {
	bottom: 50%; left: 0;
	width: 100%; height: 4px;
	margin-bottom: -2px;
	transform: scaleX(0);
	transform-origin: left;
}
.elementor-column.lines.from-right::before {
	left: auto; right: 0;
	transform-origin: right;
}
.elementor-column.lines::after {
	bottom: 0; left: 100%;
	width: 4px; height: calc(50% + 2px);
	margin-left: -2px;
	transform: scaleY(0);
	transform-origin: top;
	transition-delay: 1.5s;
}
.elementor-column.lines.from-right::after {
	left: auto; right: 100%;
}
.elementor-element.animated .elementor-column.lines::before,
.elementor-element.animated .elementor-column.lines.to-bottom::after {
	transform: scale(1);
}
.elementor-column.lines.blue-2::before,
.elementor-column.lines.blue-2::after {
	background: var(--e-global-color-8f7fb0e);
}
.elementor-column.lines.blue-3::before,
.elementor-column.lines.blue-3::after {
	background: var(--e-global-color-4bcc4ed);
}
.elementor-column.lines.red::before,
.elementor-column.lines.red::after {
	background: var(--e-global-color-57576da);
}
.elementor-column.lines.green::before,
.elementor-column.lines.green::after {
	background: var(--e-global-color-325ed62);
}
@media (max-width: 1024px) {
	.elementor-column.lines::before {
		bottom: 0;
		width: 75%;
	}
	.elementor-column.lines.from-right::before {
		left: 0; right: auto;
		transform-origin: left;
	}
}


/* ------------------------------------------------------------*/
/* EFFECT: GROW ON HOVER
/*
/* Element: Elementor Element
/* 
/* Class:   .grow-on-hover
/* ------------------------------------------------------------*/
.elementor-element.grow-on-hover > .elementor-widget-container {
	transition: all .4s ease-in-out;
}
.elementor-element.grow-on-hover:hover > .elementor-widget-container {
    transform: scale(1.1);
}

/* ------------------------------------------------------------*/
/* TWEAKS AND UTILITIES
/* ------------------------------------------------------------*/

/* ------------------------------------------------------------*/
/* Multiply blend mode for image or other element.
/* 
/* Element: Elementor Element
/* Class:   .effect-multiply .effect-multiply-on-hover
/* ------------------------------------------------------------*/
.effect-multiply,
.effect-multiply.effect-multiply-on-hover:hover {
  mix-blend-mode: multiply;
}
.effect-multiply:hover {
  mix-blend-mode: normal;
}

/* ------------------------------------------------------------*/
/* Center element in parent (must have absolute position).
/* 
/* Element: Elementor Element (absolute position)
/* Class:   .desktop-center .desktop-center-v .desktop-center-h
/* 			.tablet-center  .tablet-center-v  .tablet-center-h
/* 			.mobile-center  .mobile-center-v  .mobile-center-h
/* ------------------------------------------------------------*/
@media (min-width: 1025px) {
	.elementor-element.elementor-absolute.desktop-center {
		top: 50%; left: 50%;
		transform: translate(-50%,-50%);
	}
	.elementor-element.elementor-absolute.desktop-center-v {
		left: 50%;
		transform: translateX(-50%);
	}
	.elementor-element.elementor-absolute.desktop-center-h {
		top: 50%;
		transform: translateY(-50%);
	}
}
@media (min-width: 768px and max-width: 1024px) {
	.elementor-element.elementor-absolute.tablet-center {
		top: 50%; left: 50%;
		transform: translate(-50%,-50%);
	}
	.elementor-element.elementor-absolute.tablet-center-v {
		left: 50%;
		transform: translateX(-50%);
	}
	.elementor-element.elementor-absolute.tablet-center-h {
		top: 50%;
		transform: translateY(-50%);
	}
}
@media (max-width: 767px) {
	.elementor-element.elementor-absolute.mobile-center {
		top: 50%; left: 50%;
		transform: translate(-50%,-50%);
	}
	.elementor-element.elementor-absolute.mobile-center-v {
		left: 50%;
		transform: translateX(-50%);
	}
	.elementor-element.elementor-absolute.mobile-center-h {
		top: 50%;
		transform: translateY(-50%);
	}
}
