/*
Theme Name: Kadence Child
Theme URI: https://www.kadencewp.com/kadence-theme/
Template: kadence
Author: Kadence WP
Author URI: https://www.kadencewp.com/
Description: Kadence Theme is a lightweight yet full featured WordPress theme for creating beautiful fast loading and accessible websites, easier than ever. It features an easy to use drag and drop header and footer builder to build any type of header in minutes. It features a full library of gorgeous starter templates that are easy to modify with our intelligent global font and color controls. With extensive integration with the most popular 3rd party plugins, you can quickly build impressive ecommerce websites, course websites, business websites, and more.
Tags: translation-ready,accessibility-ready,two-columns,right-sidebar,left-sidebar,footer-widgets,blog,custom-logo,custom-background,custom-menu,rtl-language-support,editor-style,threaded-comments,custom-colors,featured-images,wide-blocks,full-width-template,theme-options,e-commerce
Version: 1.4.4.1771166412
Updated: 2026-02-15 14:40:12

*/

/* Header logo – align with nav row, even spacing */
#main-header .site-header-row .site-branding,
#masthead .site-header-row .site-branding {
	display: flex;
	align-items: center;
}
.site-branding a.brand {
	display: flex !important;
	align-items: center;
}
.site-branding a.brand img {
	margin: 8px;
	display: block;
	height: auto;
	object-fit: contain;
}

/* Footer – full-bleed edge to edge (no white gutters) */
#colophon.site-footer {
	box-sizing: border-box;
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	position: relative;
	left: 0;
	right: 0;
	margin-top: 0;
	margin-bottom: 0;
	padding: 0;
	overflow-x: clip;
	box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.07);
	transition: box-shadow 0.3s ease;
}
/* Kadence paints row background on .site-footer-row-container-inner (max-width centered) – stretch so color reaches viewport edges */
.site-footer .site-top-footer-wrap .site-footer-row-container-inner,
.site-footer .site-middle-footer-wrap .site-footer-row-container-inner,
.site-footer .site-bottom-footer-wrap .site-footer-row-container-inner {
	max-width: none !important;
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}
#colophon.site-footer::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: linear-gradient(90deg, var(--global-palette1, #2c6dff) 0%, var(--global-palette2, #f37021) 100%);
	opacity: 0.9;
	pointer-events: none;
	z-index: 1;
}
#colophon.site-footer:hover {
	box-shadow: 0 -6px 28px rgba(0, 0, 0, 0.09);
}

/* No outer wrap padding – it exposed #colophon (often white) as a “margin”; .site-container handles horizontal contain */
.site-footer-wrap {
	padding: 0;
	margin: 0;
}

/* Footer links – hover / focus micro-interactions */
.site-footer a:not(.button):not(.wp-block-button__link):not(.wp-element-button) {
	transition: color 0.2s ease, opacity 0.2s ease, transform 0.2s ease;
}
.site-footer a:not(.button):not(.wp-block-button__link):not(.wp-element-button):hover {
	opacity: 1;
}
.site-footer .footer-navigation-wrap a,
.site-footer .footer-navigation a {
	position: relative;
	display: inline-block;
}
.site-footer .footer-navigation-wrap a::after,
.site-footer .footer-navigation a::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: currentColor;
	transform: scaleX(0);
	transform-origin: center;
	transition: transform 0.22s ease;
	opacity: 0.85;
}
.site-footer .footer-navigation-wrap a:hover::after,
.site-footer .footer-navigation a:hover::after {
	transform: scaleX(1);
}

/* Footer widgets – subtle title / link motion */
.site-footer .widget-title,
.site-footer .wp-block-heading {
	transition: color 0.2s ease;
}
.site-footer .widget ul li a {
	position: relative;
	transition: color 0.2s ease;
}
.site-footer .widget ul li a::before {
	content: "";
	position: absolute;
	left: -0.5em;
	top: 0.15em;
	bottom: 0.15em;
	width: 2px;
	background: var(--global-palette1, #2c6dff);
	border-radius: 2px;
	transform: scaleY(0);
	transition: transform 0.2s ease;
}
.site-footer .widget ul li a:hover::before {
	transform: scaleY(1);
}

/* Social icons in footer */
.site-footer .footer-social-wrap a,
.site-footer a[class*="social"] {
	transition: transform 0.2s ease, opacity 0.2s ease;
}
.site-footer .footer-social-wrap a:hover,
.site-footer .footer-widget-area.footer-social a:hover {
	transform: translateY(-2px) scale(1.05);
	opacity: 1;
}

/* Sticky menu above hero */
#masthead,
.kadence-sticky-header.item-is-fixed,
.item-is-fixed {
	z-index: 999 !important;
}

/* Blog archive + singular WordPress pages — Kadence uses .post-archive-hero-section vs .page-hero-section (same markup: overlay + ::before) */
.post-archive-hero-section.entry-hero,
.page-hero-section.entry-hero {
	position: relative;
	width: 100%;
	padding: clamp(80px, 10vw, 150px) 0;
	text-align: center;
	overflow: hidden;
	background: transparent;
	display: flex;
	align-items: center;
	justify-content: center;
}

.post-archive-hero-section .entry-hero-container-inner,
.page-hero-section .entry-hero-container-inner {
	position: relative;
	width: 100%;
	min-height: 180px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: transparent;
}

/* Background image layer (Shopify CDN — Edmonton Beds store files) */
.post-archive-hero-section .entry-hero-container-inner::before,
.page-hero-section .entry-hero-container-inner::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	background-image: url("https://cdn.shopify.com/s/files/1/0639/0906/8879/files/Okotoks-1024ParadigmCarbon_1200x.jpg?v=1755571489");
	background-size: cover;
	background-position: center;
	opacity: 0.5;
	animation: eb-kb-header-blog 25s infinite alternate ease-in-out;
}

@keyframes eb-kb-header-blog {
	0% { transform: scale(1); }
	100% { transform: scale(1.15); }
}

/* Burgundy gradient tint overlay (lighter so more of the photo shows through) */
.post-archive-hero-section .hero-section-overlay,
.page-hero-section .hero-section-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
	background: linear-gradient(180deg, rgba(77, 0, 19, 0.38) 0%, rgba(26, 0, 7, 0.52) 100%) !important;
	mix-blend-mode: multiply;
	opacity: 1 !important;
}

/* Content layer */
.post-archive-hero-section .hero-container,
.page-hero-section .hero-container {
	position: relative;
	z-index: 3;
	width: 90%;
}

/* Breadcrumb styling */
.post-archive-hero-section .kadence-breadcrumbs,
.page-hero-section .kadence-breadcrumbs {
	font-family: 'Montserrat', sans-serif;
	font-size: clamp(10px, 1.2vw, 13px);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 2px;
	color: #FBFCF8;
	margin-bottom: 0.5em;
	line-height: 1;
}

.post-archive-hero-section .kadence-breadcrumbs a,
.page-hero-section .kadence-breadcrumbs a {
	color: #FBFCF8;
	text-decoration: none;
	opacity: 0.8;
}

.post-archive-hero-section .kadence-breadcrumbs a:hover,
.page-hero-section .kadence-breadcrumbs a:hover {
	opacity: 1;
}

/* Title styling */
.post-archive-hero-section .archive-title,
.post-archive-hero-section .page-title,
.page-hero-section .archive-title,
.page-hero-section .page-title {
	color: #FBFCF8 !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: clamp(28px, 5vw, 68px) !important;
	font-weight: 900 !important;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	margin: 0 !important;
}

/* Title accent bar */
.post-archive-hero-section .entry-header::after,
.page-hero-section .entry-header::after {
	content: "";
	display: block;
	width: 60px;
	height: 4px;
	background: #F37021;
	margin: 1em auto 0;
}

/* Archive description */
.post-archive-hero-section .archive-description,
.page-hero-section .archive-description {
	color: rgba(251, 252, 248, 0.9);
	font-family: 'Montserrat', sans-serif;
	font-size: clamp(14px, 1.5vw, 18px);
	margin-top: 1em;
}

/* Our Blog page — .eb-blog-hero-block (Elementor HTML): Shopify CDN image + same overlay as archive hero */
.eb-blog-hero-block {
	position: relative;
	overflow: hidden;
}

.eb-blog-hero-block::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background-image: url("https://cdn.shopify.com/s/files/1/0639/0906/8879/files/Okotoks-1024ParadigmCarbon_1200x.jpg?v=1755571489");
	background-size: cover;
	background-position: center;
	opacity: 0.5;
	animation: eb-kb-header-blog 25s infinite alternate ease-in-out;
}

.eb-blog-hero-block::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(180deg, rgba(77, 0, 19, 0.38) 0%, rgba(26, 0, 7, 0.52) 100%);
	mix-blend-mode: multiply;
	pointer-events: none;
}

.eb-blog-hero-content {
	position: relative;
	z-index: 2;
}

@media (prefers-reduced-motion: reduce) {
	.eb-blog-hero-block::before {
		animation: none;
		transform: none;
	}
}

/* Custom Elementor HTML: .eb-hero-block — same Shopify CDN photo + tint on every page that uses this class */
.eb-hero-block {
	position: relative;
	overflow: hidden;
}

.eb-hero-block::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background-image: url("https://cdn.shopify.com/s/files/1/0639/0906/8879/files/Okotoks-1024ParadigmCarbon_1200x.jpg?v=1755571489");
	background-size: cover;
	background-position: center;
	opacity: 0.5;
	animation: eb-kb-header-blog 25s infinite alternate ease-in-out;
}

.eb-hero-block::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(180deg, rgba(77, 0, 19, 0.38) 0%, rgba(26, 0, 7, 0.52) 100%);
	mix-blend-mode: multiply;
	pointer-events: none;
}

.eb-hero-block .eb-hero-content {
	position: relative;
	z-index: 2;
}

@media (prefers-reduced-motion: reduce) {
	.eb-hero-block::before {
		animation: none;
		transform: none;
	}
}

/* ========== Header & menu polish (glassmorphism) ========== */
#main-header .site-header-row,
#masthead .site-header-row {
	position: relative;
	background: rgba(255, 255, 255, 0.88);
	border-bottom: 1px solid rgba(255, 255, 255, 0.5);
	box-shadow: 0 2px 20px rgba(0, 0, 0, 0.06);
	transition: box-shadow 0.25s ease, background 0.25s ease;
}
@supports ((-webkit-backdrop-filter: blur(6px)) or (backdrop-filter: blur(6px))) {
	#main-header .site-header-row,
	#masthead .site-header-row {
		background: rgba(255, 255, 255, 0.85);
		-webkit-backdrop-filter: blur(6px);
		backdrop-filter: blur(6px);
	}
}
#main-header .site-header-row:hover,
#masthead .site-header-row:hover {
	background: rgba(255, 255, 255, 0.82);
}
#main-header .site-header-row::before,
#masthead .site-header-row::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: linear-gradient(90deg, var(--global-palette1, #2c6dff) 0%, var(--global-palette2, #F37021) 100%);
	opacity: 0.85;
}
#main-header .site-header-row:hover,
#masthead .site-header-row:hover {
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
}

/* Menu padding – keep menu from touching top/bottom of bar */
#main-header .header-navigation .header-menu-container,
#masthead .header-navigation .header-menu-container {
	padding: 0.75rem 0;
}

/* Tighter spacing between top-level menu items */
#main-header .header-navigation .header-menu-container > ul > li.menu-item > a,
#masthead .header-navigation .header-menu-container > ul > li.menu-item > a {
	padding-left: 0.35em !important;
	padding-right: 0.35em !important;
}
#main-header .header-navigation .header-menu-container > ul > li.menu-item:not(:last-child),
#masthead .header-navigation .header-menu-container > ul > li.menu-item:not(:last-child) {
	margin-right: 0.15em;
}
.rtl #main-header .header-navigation .header-menu-container > ul > li.menu-item:not(:last-child),
.rtl #masthead .header-navigation .header-menu-container > ul > li.menu-item:not(:last-child) {
	margin-right: 0;
	margin-left: 0.15em;
}

/* Top-level menu items – all caps, icon, smaller responsive size, bolder, glass hover */
#main-header .header-navigation .header-menu-container > ul > li.menu-item > a,
#masthead .header-navigation .header-menu-container > ul > li.menu-item > a {
	display: inline-flex;
	align-items: center;
	gap: 0.4em;
	font-size: clamp(0.75rem, 0.65rem + 0.28vw, 0.98rem);
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	padding-top: 0.2em;
	padding-bottom: 0.2em;
	border-radius: 999px;
	transition: color 0.2s ease, transform 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
	position: relative;
}
#main-header .header-navigation .header-menu-container > ul > li.menu-item > a::before,
#masthead .header-navigation .header-menu-container > ul > li.menu-item > a::before {
	content: "";
	display: inline-block;
	width: 0.4em;
	height: 0.4em;
	border-radius: 50%;
	background: currentColor;
	opacity: 0.9;
	flex-shrink: 0;
	transition: opacity 0.2s ease, transform 0.2s ease;
}
#main-header .header-navigation .header-menu-container > ul > li.menu-item > a:hover::before,
#masthead .header-navigation .header-menu-container > ul > li.menu-item > a:hover::before {
	opacity: 1;
	transform: scale(1.15);
}
#main-header .header-navigation .header-menu-container > ul > li.menu-item > a:hover,
#masthead .header-navigation .header-menu-container > ul > li.menu-item > a:hover {
	color: #c00;
	transform: translateY(-1px);
	background: rgba(255, 255, 255, 0.5);
	-webkit-backdrop-filter: blur(4px);
	backdrop-filter: blur(4px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}
#main-header .header-navigation .header-menu-container > ul > li.current-menu-item > a,
#masthead .header-navigation .header-menu-container > ul > li.current-menu-item > a {
	color: var(--global-palette1, #2c6dff);
}
#main-header .header-navigation .header-menu-container > ul > li.current-menu-item > a:hover,
#masthead .header-navigation .header-menu-container > ul > li.current-menu-item > a:hover {
	color: #c00;
}
#main-header .header-navigation .header-menu-container > ul > li.menu-item > a:active,
#masthead .header-navigation .header-menu-container > ul > li.menu-item > a:active {
	transform: translateY(0);
	transition-duration: 0.1s;
}
#main-header .header-navigation .header-menu-container > ul > li.menu-item > a::after,
#masthead .header-navigation .header-menu-container > ul > li.menu-item > a::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0.5em;
	right: 0.5em;
	height: 2px;
	background: currentColor;
	transform: scaleX(0);
	transform-origin: center;
	transition: transform 0.25s ease;
	border-radius: 1px;
}
#main-header .header-navigation .header-menu-container > ul > li.menu-item > a:hover::after,
#masthead .header-navigation .header-menu-container > ul > li.menu-item > a:hover::after,
#main-header .header-navigation .header-menu-container > ul > li.current-menu-item > a::after,
#masthead .header-navigation .header-menu-container > ul > li.current-menu-item > a::after {
	transform: scaleX(1);
}

/* Invisible hit area in the gap so hover isn’t lost moving to submenu */
#main-header .header-navigation .header-menu-container > ul > li.menu-item-has-children::after,
#masthead .header-navigation .header-menu-container > ul > li.menu-item-has-children::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 100%;
	height: 0.75rem;
	z-index: 999;
}

/* Submenu – solid background, align with parent, sit clearly below top row */
#main-header .header-navigation ul ul.sub-menu,
#main-header .header-navigation ul ul.submenu,
#masthead .header-navigation ul ul.sub-menu,
#masthead .header-navigation ul ul.submenu {
	top: calc(100% + 0.25rem);
	left: 0;
	min-width: 200px;
	border-radius: 12px;
	/* Allow nested (third-level) dropdowns to render outside second-level panel. */
	overflow: visible;
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.08);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
	transition: opacity 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
	transform-origin: top left;
}

/* Keep hover chain stable for dropdown parents */
#main-header .header-navigation .header-menu-container > ul > li.menu-item-has-children,
#masthead .header-navigation .header-menu-container > ul > li.menu-item-has-children {
	position: relative;
	overflow: visible;
}
#main-header .header-navigation ul ul li.menu-item > a:active,
#masthead .header-navigation ul ul li.menu-item > a:active {
	background: rgba(0, 0, 0, 0.06);
}
#main-header .header-navigation ul li:hover > ul.sub-menu,
#main-header .header-navigation ul li:hover > ul.submenu,
#main-header .header-navigation ul li.menu-item--toggled-on > ul.sub-menu,
#main-header .header-navigation ul li.menu-item--toggled-on > ul.submenu,
#masthead .header-navigation ul li:hover > ul.sub-menu,
#masthead .header-navigation ul li:hover > ul.submenu,
#masthead .header-navigation ul li.menu-item--toggled-on > ul.sub-menu,
#masthead .header-navigation ul li.menu-item--toggled-on > ul.submenu {
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

/* Submenu items – hover effect (no layout shift) */
#main-header .header-navigation ul ul li.menu-item > a,
#masthead .header-navigation ul ul li.menu-item > a {
	position: relative;
	transition: background 0.2s ease;
}
#main-header .header-navigation ul ul li.menu-item > a::before,
#masthead .header-navigation ul ul li.menu-item > a::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: var(--global-palette1, #2c6dff);
	transform: scaleY(0);
	transform-origin: center;
	transition: transform 0.2s ease;
	border-radius: 0 2px 2px 0;
}
#main-header .header-navigation ul ul li.menu-item > a:hover,
#masthead .header-navigation ul ul li.menu-item > a:hover {
	background: rgba(0, 0, 0, 0.04);
}
#main-header .header-navigation ul ul li.menu-item > a:hover::before,
#masthead .header-navigation ul ul li.menu-item > a:hover::before {
	transform: scaleY(1);
}

/* Third-level submenu – aligns with parent submenu item, to the right */
#main-header .header-navigation ul ul ul.sub-menu,
#main-header .header-navigation ul ul ul.submenu,
#masthead .header-navigation ul ul ul.sub-menu,
#masthead .header-navigation ul ul ul.submenu {
	top: 0;
	left: 100%;
	z-index: 1001;
}
.rtl #main-header .header-navigation ul ul ul.sub-menu,
.rtl #main-header .header-navigation ul ul ul.submenu,
.rtl #masthead .header-navigation ul ul ul.sub-menu,
.rtl #masthead .header-navigation ul ul ul.submenu {
	left: auto;
	right: 100%;
}

/* Submenu edge (right-aligned) – keep alignment */
#main-header .header-navigation ul ul.sub-menu.sub-menu-edge,
#main-header .header-navigation ul ul.submenu.sub-menu-edge,
#masthead .header-navigation ul ul.sub-menu.sub-menu-edge,
#masthead .header-navigation ul ul.submenu.sub-menu-edge {
	left: auto;
	right: 0;
}

/* Ensure child submenu items can open their own submenus on desktop. */
#main-header .header-navigation ul ul li.menu-item-has-children,
#masthead .header-navigation ul ul li.menu-item-has-children {
	position: relative;
	overflow: visible;
}
#main-header .header-navigation ul ul li:hover > ul.sub-menu,
#main-header .header-navigation ul ul li:hover > ul.submenu,
#main-header .header-navigation ul ul li:focus-within > ul.sub-menu,
#main-header .header-navigation ul ul li:focus-within > ul.submenu,
#main-header .header-navigation ul ul li.menu-item--toggled-on > ul.sub-menu,
#main-header .header-navigation ul ul li.menu-item--toggled-on > ul.submenu,
#masthead .header-navigation ul ul li:hover > ul.sub-menu,
#masthead .header-navigation ul ul li:hover > ul.submenu,
#masthead .header-navigation ul ul li:focus-within > ul.sub-menu,
#masthead .header-navigation ul ul li:focus-within > ul.submenu,
#masthead .header-navigation ul ul li.menu-item--toggled-on > ul.sub-menu,
#masthead .header-navigation ul ul li.menu-item--toggled-on > ul.submenu {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
	transform: translateY(0) !important;
}

/* Switch to hamburger earlier when viewport is narrow so menu doesn’t overflow */
/* "Menu" label in front of hamburger */
.mobile-toggle-open-container .menu-toggle-open {
	display: inline-flex;
	align-items: center;
	gap: 0.35em;
}
.mobile-toggle-open-container .menu-toggle-open::before {
	content: "Menu";
	font-weight: 600;
	font-size: 0.95em;
}

@media screen and (max-width: 1150px) {
	#main-header {
		display: none !important;
	}
	#mobile-header {
		display: block !important;
	}
}
@media screen and (min-width: 1151px) {
	#main-header {
		display: block !important;
	}
	#mobile-header {
		display: none !important;
	}
}

