/*
Theme Name: Cemah Creative
Theme URI: https://cemahcreative.com
Author: Cemah Creative LLC
Author URI: https://cemahcreative.com
Description: Designed for marketing objectives of service-based B2C small businesses with a focus on usability, accessibility, and performance.
Requires at least: 6.6
Tested up to: 6.5
Requires PHP: 8.1
Version: 4.10.0
*/



/*****************************************************
   General
/****************************************************/
html {
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	-webkit-text-size-adjust: 100%;
	scroll-behavior: smooth;
}

:root .wp-site-blocks > * {
	margin-block-start: 0;
	margin-block-end: 0;
}

*:focus-visible {
	outline-color: var(--wp--custom--focus-color);
	outline-offset: 6px;
}



/*****************************************************
   Layout
/****************************************************/
.is-layout-flex.is-nowrap.has-equal-width-children > * {
	flex-basis: 0;
	flex-grow: 1;
}




/*****************************************************
   Text Classes
/****************************************************/
.has-links-without-decoration a {
	text-decoration: none;
}

.has-links-without-decoration a:hover {
	text-decoration: underline;
}

.is-text-no-wrap,
.is-text-no-wrap > .wp-block-button__link {
	white-space: nowrap !important;
}




/*****************************************************
   Visibility Classes
/****************************************************/
@media screen and (min-width: 768px) {
	.is-hidden-above-mobile {
		display: none;
	}
}

@media screen and (min-width: 1024px) {
	.is-hidden-above-tablet {
		display: none;
	}
}

@media screen and (max-width: 1023px) {
	.is-hidden-below-desktop {
		display: none;
	}
}

@media screen and (max-width: 767px) {
	.is-hidden-below-tablet {
		display: none;
	}
}




/*****************************************************
   Block: Heading
/****************************************************/
:not(.is-layout-flex:not(.is-vertical)) > h2.wp-block-heading:not(:first-child) {
	margin-top: calc(var(--wp--style--block-gap) * 2.25);
}

:not(.is-layout-flex:not(.is-vertical)) > h3.wp-block-heading:not(:first-child) {
	margin-top: calc(var(--wp--style--block-gap) * 1.75);
}

:not(.is-layout-flex:not(.is-vertical)) > h4.wp-block-heading:not(:first-child) {
	margin-top: calc(var(--wp--style--block-gap) * 1.5);
}

:not(.is-layout-flex:not(.is-vertical)) > h5.wp-block-heading:not(:first-child) {
	margin-top: calc(var(--wp--style--block-gap) * 1.5);
}

:not(.is-layout-flex:not(.is-vertical)) > h6.wp-block-heading:not(:first-child) {
	margin-top: calc(var(--wp--style--block-gap) * 1.5);
}





/*****************************************************
   Block: Navigation Submenu
/****************************************************/
.wp-block-navigation-submenu > .wp-block-navigation__submenu-icon {
	height: 0.9em;
	width: 0.9em;
	margin-left: 0.375rem;
}

.wp-block-navigation-submenu > .wp-block-navigation__submenu-icon > svg {
	transition: transform 200ms;
	width: 100%;
	height: 100%;
	opacity: 0.4;
}

.wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle[aria-expanded=true] > svg {
	transform: rotate(180deg);
}

.wp-block-navigation-submenu > .wp-block-navigation-item > a:focus {
	outline-offset: 0.25rem;
	z-index: 2;
	position: relative;
}

.wp-block-navigation-submenu > .wp-block-navigation__submenu-container > .wp-block-navigation-item > a:not(.wp-element-button) {
	padding: 0.75rem;
	line-height: 1.1;
}

.wp-block-navigation.is-horizontal .wp-block-navigation-submenu > .wp-block-navigation__submenu-container > .wp-block-navigation-item {
	font-size: var(--wp--preset--font-size--small);
}

.wp-block-navigation.is-horizontal .wp-block-navigation-submenu > .wp-block-navigation__submenu-container > .wp-block-navigation-item a:not(.wp-element-button):hover {
	background-color: rgba(255,255,255,0.2);
}

.wp-block-navigation.is-horizontal .wp-block-navigation-submenu > .wp-block-navigation__submenu-container.has-base-background-color.has-contrast-color > .wp-block-navigation-item a:not(.wp-element-button):hover {
	background-color: var(--wp--preset--color--contrast);
	color: var(--wp--preset--color--base);
}

.wp-block-navigation.is-horizontal .wp-block-navigation-submenu > .wp-block-navigation__submenu-container.has-base-background-color.has-primary-color > .wp-block-navigation-item a:not(.wp-element-button):hover {
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
}

.wp-block-navigation.is-horizontal .wp-block-navigation-submenu > .wp-block-navigation__submenu-container.has-base-background-color.has-secondary-color > .wp-block-navigation-item a:not(.wp-element-button):hover {
	background-color: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--base);
}

.wp-block-navigation.is-horizontal .wp-block-navigation-submenu > .wp-block-navigation__submenu-container.has-base-background-color.has-tertiary-color > .wp-block-navigation-item a:not(.wp-element-button):hover {
	background-color: var(--wp--preset--color--tertiary);
	color: var(--wp--preset--color--base);
}

.wp-block-navigation.is-horizontal .wp-block-navigation-submenu > .wp-block-navigation__submenu-container {
	min-width: 240px !important;
	top: calc(100% + var(--wp--custom--navigation-submenu-top-offset)) !important;
}

/* needs more specifity to overcome WP defaults */
.wp-block-navigation.is-horizontal .wp-block-navigation-submenu > .wp-block-navigation__submenu-container {
	border: none;
}

.wp-block-navigation.is-horizontal .wp-block-navigation__submenu-container::after {
	content: "";
	position: absolute;
	top: calc(var(--wp--custom--navigation-submenu-top-offset) * -1);
	height: var(--wp--custom--navigation-submenu-top-offset);
	display: block;
	width: 100%;
	right: auto;
	left: 0;
}

.wp-block-navigation.is-horizontal .wp-block-navigation-submenu:nth-last-child(1) > .wp-block-navigation__submenu-container {
	right: 0 !important;
	left: auto !important;
}

.wp-block-navigation.is-horizontal .wp-block-navigation-submenu:nth-last-child(1) > .wp-block-navigation__submenu-container > .wp-block-navigation-item > a {
	justify-content: flex-end;
	text-align: right;
}





/* Style: bubble */
.wp-block-navigation.is-horizontal .wp-block-navigation-submenu.is-style-bubble > .wp-block-navigation__submenu-container {
	padding: 0.5rem;
	left: 0;
	right: auto;
	border-radius: 0.75rem;
	transition-property: height, visibility, opacity, transform;
	transition-duration: 2s, 2s, 200ms, 2s;
	transition-timing-function: cubic-bezier(.27,1,.45,1);
	transition-behavior: allow-discrete;
	transform-origin: 50% 0%;
	transform: scaleY(0);
}

.wp-block-navigation.is-horizontal .wp-block-navigation-submenu.is-style-bubble [aria-expanded=true] + .wp-block-navigation__submenu-container {
	transform: scaleY(1);
	opacity: 1;
	transition-property: visibility, opacity, transform;
	transition-duration: 450ms;

	@starting-style {
		opacity: 0;
		transform: scaleY(0);
	}
}

.wp-block-navigation.is-horizontal .wp-block-navigation-submenu.is-style-bubble > .wp-block-navigation__submenu-container::before {
	content: '';
	width: 1rem;
	height: 1rem;
	left: 2.5rem;
	top: -0.5rem;
	position: absolute;
	display: block;
	transform: rotate(45deg);
	background-color: inherit;
}

.wp-block-navigation.is-horizontal .wp-block-navigation-submenu.is-style-bubble:nth-last-child(1) > .wp-block-navigation__submenu-container::before {
	left: auto !important;
	right: 2.5rem !important;
}

.wp-block-navigation.is-horizontal .wp-block-navigation-submenu.is-style-bubble > .wp-block-navigation__submenu-container > .wp-block-navigation-item > a:not(.wp-element-button) {
	border-radius: 0.375rem;
}


@keyframes cemah__navigation-submenu__style-bubble {
	0% {
		opacity: 0;
		transform: scaleY(0);
		transform-origin: 50% 0%;
	}

	20% {
		opacity: 0;
	}

	100% {
		opacity: 1;
		transform: scaleY(1);
		transform-origin: 50% 0%;
	}
}


.wp-block-navigation.is-vertical .wp-block-navigation__container > .wp-block-navigation-item {
	transition: all 500ms cubic-bezier(.27,1,.45,1), max-height 800ms cubic-bezier(.27,1,.45,1);
	flex-wrap: wrap;
	opacity: 1;
}


.wp-block-navigation.is-vertical:has(.wp-block-navigation-submenu__toggle[aria-expanded=true]) .wp-block-navigation__container > .wp-block-navigation-item:not(:has([aria-expanded=true])) {
	transition: all 500ms cubic-bezier(.27,1,.45,1), max-height 300ms cubic-bezier(.27,1,.45,1);
	opacity: 0;
	transform: scaleY(0);
	transform-origin: 50% 0%;
	height: 0;
	visibility: hidden;
}

.wp-block-navigation.is-vertical .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation-submenu__toggle[aria-expanded=true] {
	font-weight: 700;
	font-size: 0.9em;
	text-transform: uppercase;
	opacity: 0.5;
	margin-left: 1.35rem;
	margin-bottom: 1rem;
}

.wp-block-navigation.is-vertical .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation-submenu__toggle[aria-expanded=false] .wp-block-navigation-item__back-label {
	display: none;
}

.wp-block-navigation.is-vertical .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation-submenu__toggle[aria-expanded=true] .wp-block-navigation-item__label {
	display: none;
}

.wp-block-navigation.is-vertical .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation-submenu__toggle[aria-expanded=true]:hover {
	opacity: 1;
}

.wp-block-navigation.is-vertical .wp-block-navigation__container {
	transition: gap 500ms;
}

.wp-block-navigation.is-vertical .wp-block-navigation__container:has(.wp-block-navigation-submenu__toggle[aria-expanded=true]) {
	gap: 0;
}

.wp-block-navigation.is-vertical .wp-block-navigation-item .wp-block-navigation-submenu__toggle[aria-expanded=true] {
	margin-bottom: 0.375rem;
}

.wp-block-navigation.is-vertical .wp-block-navigation-item .wp-block-navigation-submenu__toggle + .wp-block-navigation__submenu-icon {
	position: absolute;
	transition: transform 600ms;
	right: -0.3em;
	transform: rotate(-90deg);
}

.wp-block-navigation.is-vertical .wp-block-navigation-item .wp-block-navigation-submenu__toggle[aria-expanded=true] + .wp-block-navigation__submenu-icon {
	left: 0.5em;
	top: 0.1em;
	transform: rotate(90deg);
}

.wp-block-navigation.is-vertical .wp-block-navigation__submenu-container {
	background-color: transparent;
	color: inherit;
	border: 0;
	position: relative;
}

.wp-block-navigation.is-vertical .has-child .wp-block-navigation-submenu__toggle[aria-expanded=true]~.wp-block-navigation__submenu-container {
	width: 100%;
	position: relative;
	min-width: 0;
	top: 0;
}

.wp-block-navigation.is-vertical .has-child .wp-block-navigation-submenu__toggle[aria-expanded=true]~.wp-block-navigation__submenu-container .wp-block-navigation-item > a:not(.wp-element-button) {
	padding-left: 0;
}









.wp-block-group.mockup-mosaic {
	gap: 17%;
	height: 600px;
	overflow: hidden;
}

.mockup-mosaic .wp-block-group {
	rotate: 40deg;
	transform: skewY(-10deg) skewX(-20deg) scale(1.5);
	transform-origin: -125% 0%;
}

.mockup-mosaic .wp-block-group img {
	box-shadow: 0 0 35px rgba(0,0,0,0.7);
	border-radius: 5px;
}

.mockup-mosaic .wp-block-group:nth-child(1) figure {
	animation: mosaic 80s alternate infinite linear;
}

.mockup-mosaic .wp-block-group:nth-child(2) figure {
	animation: mosaic2 80s alternate infinite linear;
}

.mockup-mosaic .wp-block-group:nth-child(3) figure {
	animation: mosaic3 80s alternate infinite linear;
}

.mockup-mosaic .wp-block-group:nth-child(4) figure {
	animation: mosaic4 80s alternate infinite linear;
}


@media screen and (max-width: 1199px) {
	.wp-block-group.mockup-mosaic {
		height: 500px;
	}
}

@media screen and (max-width: 811px) {
	.wp-block-group.mockup-mosaic {
		height: 400px;
	}
}

@media screen and (max-width: 599px) {
	.wp-block-group.mockup-mosaic {
		height: 275px;
	}
}

@keyframes mosaic {
	0% {
		translate: 0 -50%;
	}
	100% {
		translate: 0 -200%;
	}
}


@keyframes mosaic2 {
	0% {
		translate: 0 -200%;
	}
	100% {
		translate: 0 -50%;
	}
}

@keyframes mosaic3 {
	0% {
		translate: 0 -50%;
	}
	100% {
		translate: 0 -200%;
	}
}


@keyframes mosaic4 {
	0% {
		translate: 0 -200%;
	}
	100% {
		translate: 0 -50%;
	}
}




#website-header {
	transition: box-shadow 250ms;
}

#website-header > .wp-block-group {
	transition: padding 250ms;
}

#website-header.is-stuck {
	box-shadow: var(--wp--preset--shadow--ui-overlay);
}

#website-header.is-stuck > .wp-block-group {
	padding-top: 1rem !important;
	padding-bottom: 1rem !important;
}




.rating-star-animation > :nth-child(1) {
	animation: rating_star_animation 4s infinite;
}

.rating-star-animation > :nth-child(2) {
	animation: rating_star_animation 4s infinite 100ms;
}

.rating-star-animation > :nth-child(3) {
	animation: rating_star_animation 4s infinite 200ms;
}

.rating-star-animation > :nth-child(4) {
	animation: rating_star_animation 4s infinite 300ms;
}

.rating-star-animation > :nth-child(5) {
	animation: rating_star_animation 4s infinite 400ms;
}

@keyframes rating_star_animation {
	0% {scale: 0.8}
	8% {scale: 1.4}
	10% {scale: 1}
}

.get-started-sticky {
	top: 150px !important;
}

.section--home-industry {
	position: relative;
	z-index: 2;
}


@media screen and (max-width: 767px) {
	.wp-block-image.alignleft {
		float: none;
	}
}




.wp-block-video.has-disabled-controls .cemah-video-a11y-control {
	display: none;
}




:is(#website-header) .wp-block-navigation > .wp-block-navigation-link > .wp-block-navigation-item__content::before {
	content: '';
	display: block;
	position: absolute;
	bottom: -12px;
	left: 50%;
	margin-left: -15px;
	width: 0;
	height: 3px;
	border-radius: 100px;
	background-color: var(--wp--preset--color--primary);
	transition: width 200ms;
}

:is(#website-header) .wp-block-navigation > .wp-block-navigation-link > .wp-block-navigation-item__content:hover::before {
	width: 30px;
}



@media screen and (max-width: 767px) {

	/* Temporary code */
	.wp-block-cover.has-stacked-media-on-mobile > :is(.wp-block-cover__image-background, .wp-block-cover__video-background, .wp-block-cover__slideshow) {
		position: relative;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		width: 100vw;
		aspect-ratio: 4 / 3;
		background-attachment: unset;
	}

	.has-no-min-height-on-mobile {
		min-height: auto !important;
	}

	.has-no-vertical-padding-on-mobile {
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}
}



@media screen and (max-width: 1549px) {
	.home-hero-section .cemah-video-a11y-control {
		right: 30px;
	}

	.home-hero-section {
		overflow: hidden;
	}

	.home-hero-section .wp-block-video {
		margin-right: -1rem !important;
	}
}

@media screen and (max-width: 1209px) {
	.home-value-prop-section .wp-block-group.is-layout-grid {
		gap: 1rem !important;
		justify-items: center;
	}

	.home-value-prop-section .wp-block-group.is-layout-grid > .wp-block-group {
		width: 275px;
	}
}


.home-industry-section {
	position: relative;
	z-index: 2;
}
