/**
 * Base structural CSS.
 */

:root {
	--site-width: 1200px;
	--site-width-wide: 1440px;
	--site-width-narrow: 960px;
	--site-gutter: 20px;
	--site-grid-gap: 16px;
	--frame-border: 25px;
	--frame-radius: 28px;
	--frame-color: #ffffff;
	--default-bg-color-1: #ff0099;
	--default-bg-color-2: transparent;
	--default-bg-image: none;
	--default-bg-gradient: none;
	--header-radius: 22px;
	--header-bg-color: #ffffff;
	--header-bg-alpha: 0;
	--header-bg: rgba(255,255,255,0);
	--header-border: 2px;
	--header-border-color: #ffffff;
	--header-height: 100px;
	--header-compact-scale: 0.8;
	--header-height-compact: calc(var(--header-height) * var(--header-compact-scale));
	--baqflo-header-rendered-height: var(--header-height);
	--baqflo-sticky-offset-extra: var(--site-grid-gap);
	--baqflo-sticky-offset: calc(var(--header-offset-top) + var(--baqflo-header-rendered-height) + var(--baqflo-sticky-offset-extra));
	--full-width-section-offset-multiplier: 0;
	--full-width-section-offset: calc(var(--frame-border) * var(--full-width-section-offset-multiplier));
	--header-offset-top-multiplier: 0;
	--header-offset-top: calc(var(--frame-border) * var(--header-offset-top-multiplier));
	--header-width: min(calc(100% - (var(--site-gutter) * 2)), calc(var(--site-width) + (var(--frame-border) * 2)));
	--button-radius: 9px;
	--font-family-body: "Roboto", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--font-family-heading: "Quicksand", "Roboto", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--body-font-size: 1rem;
	--body-color: #111111;
	--body-hover-color: #ff0099;
	--h1-font-size: clamp(2.3rem, 5vw, 5rem);
	--h2-font-size: clamp(1.9rem, 3.5vw, 3.2rem);
	--h3-font-size: clamp(1.55rem, 2.5vw, 2.25rem);
	--h4-font-size: 1.35rem;
	--h5-font-size: 1.15rem;
	--h6-font-size: 1rem;
	--h1-color: #111111;
	--h2-color: #111111;
	--h3-color: #111111;
	--h4-color: #111111;
	--h5-color: #111111;
	--h6-color: #111111;
	--h1-hover-color: #ff0099;
	--h2-hover-color: #ff0099;
	--h3-hover-color: #ff0099;
	--h4-hover-color: #ff0099;
	--h5-hover-color: #ff0099;
	--h6-hover-color: #ff0099;
	--font-family-navigation: "Quicksand", "Roboto", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--nav-tab-gap: 0.5rem;
	--nav-tab-inline-pad: 0.95rem;
	--nav-tab-block-pad: 0.6rem;
	--nav-tab-min-height: 44px;
	--nav-tab-offset-start: calc((var(--header-radius) * 0.3) + var(--header-radius));
	--nav-tab-overlap: 2px;
	--nav-dropdown-drop: 2px;
	--nav-tab-baseline-offset: -2px;
	--nav-tab-bg: rgba(255, 255, 255, 0.9);
	--nav-tab-bg-hover: rgba(255, 255, 255, 0.98);
	--nav-tab-bg-active: #ffffff;
	--nav-tab-text: var(--text, #18181d);
	--nav-tab-text-active: var(--text, #18181d);
	--nav-dropdown-min-width: 220px;
	--nav-dropdown-radius: 18px;
	--nav-dropdown-bg: #ffffff;
	--nav-dropdown-border: rgba(22, 23, 28, 0.08);
	--nav-dropdown-shadow: 0 18px 36px rgba(0, 0, 0, 0.10);
	--mobile-frame-width: calc(var(--frame-border) * 0.25);
	--mobile-frame-radius: calc(var(--frame-radius) * 0.25);
	--mobile-header-control-height: clamp(48px, 15vw, 72px);
	--mobile-header-gap: var(--mobile-frame-width);
	--mobile-nav-panel-offset: var(--mobile-frame-width);
	--mobile-nav-panel-radius: calc(var(--frame-radius) * 0.65);
	--hero-height: 220px;
	--hero-bg-color: #ffffff;
	--hero-bg-alpha: 0.08;
	--hero-border: 2px;
	--hero-border-color: #ffffff;
	--hero-title-size: clamp(2.3rem, 5vw, 5rem);
	--hero-title-color: #111111;
	--hero-title-min-height: clamp(3.4em, 7vw, 4.8em);
	--hero-radius: 18px;
	--content-card-radius: 18px;
	--hero-bg: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.10));
	--section-radius: var(--content-card-radius);
	--section-border: 2px;
	--section-border-color: #fff;
	--section-bg-color: #ffffff;
	--section-bg-alpha: 0.9;
	--section-bg: rgba(255,255,255,0.9);
	--section-color: #111;
	--footer-radius: 18px;
	--footer-border: 2px;
	--footer-border-color: #111;
	--footer-bg-color: #323232;
	--footer-bg-alpha: 0.88;
	--footer-bg: linear-gradient(
		180deg,
		rgba(50,50,50,0.92),
		rgba(50,50,50,0.84)
	);
	--footer-color: #fff;
	--aside-radius: 18px;
	--aside-border: 2px;
	--aside-border-color: #fff;
	--aside-bg: var(--section-bg);
	--aside-color: #111;
	--footer-link-color: rgba(255, 255, 255, 0.92);
	--footer-link-hover-color: #ffffff;
	--footer-link-gap-row: 0.45rem;
	--footer-link-gap-column: 1rem;

	--header-surface-shadow: 0px 17px 13px -16px rgba(0, 0, 0, 0.2);
	--logo-shadow: 0px 17px 13px -16px rgba(0, 0, 0, 0.2);
	--footer-nav-indent: 1rem;
	--footer-nav-row-gap: 0.55rem;
	--footer-nav-column-gap: 0.75rem;

	--product-card-radius: 20px;
	--product-card-border: 2px;
	--product-card-border-color: rgba(17, 17, 17, 0.08);
	--product-card-bg: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(255,255,255,0.90));
	--product-card-padding: clamp(14px, 1.7vw, 20px);
	--product-card-gap: clamp(12px, 1.4vw, 18px);
	--product-media-radius: 16px;
	--product-title-size: clamp(1.1rem, 1.45vw, 1.35rem);
	--product-price-size: 1.05rem;
	--product-price-color: #111;
	--product-muted-color: rgba(17, 17, 17, 0.68);
	--product-button-radius: 12px;
	--product-button-padding-block: 0.85rem;
	--product-button-padding-inline: 1rem;
	--form-control-radius: 12px;
	--form-control-border-color: rgba(17, 17, 17, 0.16);
	--form-control-bg: rgba(255, 255, 255, 0.96);
	--form-control-color: #111;
	--form-control-focus-color: #ff0099;

	--field-min-height: 48px;
	--field-radius: 12px;
	--field-border-width: 2px;
	--field-border-color: rgba(17, 17, 17, 0.16);
	--field-border-color-hover: rgba(17, 17, 17, 0.32);
	--field-border-color-focus: #ff0099;
	--field-bg: rgba(255, 255, 255, 0.96);
	--field-color: #111;
	--field-placeholder-color: rgba(17, 17, 17, 0.48);
	--field-padding-inline: 0.95rem;
	--field-padding-block: 0.75rem;
	--field-shadow: none;
	--field-focus-ring: 0 0 0 3px rgba(255, 0, 153, 0.12);
	--check-size: 1.15rem;
	--qty-width: 5.5rem;

	--select-arrow-size: 0.65rem;

	--select-arrow-size: 0.65rem;
	--qty-control-size: 48px;
	--qty-control-radius: 12px;
	--qty-control-gap: 0.4rem;
	--qty-control-bg: rgba(255, 255, 255, 0.96);
	--qty-control-border-color: rgba(17, 17, 17, 0.16);
	--qty-control-text-color: #111;
	--qty-control-disabled-bg: rgba(17, 17, 17, 0.06);
	--qty-control-disabled-color: rgba(17, 17, 17, 0.35);

	--sale-badge-size: 100px;
	--sale-badge-offset: 0px;

	--cart-sidebar-width: min(100%, 360px);
	--cart-row-gap: 1rem;
	--cart-image-size: 92px;
	--cart-remove-size: 42px;

	--account-nav-width: min(100%, 280px);
}


*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	line-height: 1.15;
}

body {
	margin: 0;
	font-family: "Quicksand", var(--font-family-body);
	font-weight: 300;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

body {
	font-family: var(--font-family-body);
	font-size: var(--body-font-size);
	color: var(--body-color);
}

a:hover,
a:focus {
	color: var(--body-hover-color);
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: var(--font-family-heading);
}

h1 { font-size: var(--h1-font-size); color: var(--h1-color); }
h2 { font-size: var(--h2-font-size); color: var(--h2-color); }
h3 { font-size: var(--h3-font-size); color: var(--h3-color); }
h4 { font-size: var(--h4-font-size); color: var(--h4-color); }
h5 { font-size: var(--h5-font-size); color: var(--h5-color); }
h6 { font-size: var(--h6-font-size); color: var(--h6-color); }

a:hover h1,
a:focus h1,
h1 a:hover,
h1 a:focus { color: var(--h1-hover-color); }
a:hover h2,
a:focus h2,
h2 a:hover,
h2 a:focus { color: var(--h2-hover-color); }
a:hover h3,
a:focus h3,
h3 a:hover,
h3 a:focus { color: var(--h3-hover-color); }
a:hover h4,
a:focus h4,
h4 a:hover,
h4 a:focus { color: var(--h4-hover-color); }
a:hover h5,
a:focus h5,
h5 a:hover,
h5 a:focus { color: var(--h5-hover-color); }
a:hover h6,
a:focus h6,
h6 a:hover,
h6 a:focus { color: var(--h6-hover-color); }


::selection {
	background-color: #ff0099;
	color: #fff;
}

a,
p a {
	color: #000;
	font-weight: 800;
	text-decoration: underline;
	text-decoration-style: dotted;
	text-decoration-thickness: 2px;
	text-decoration-color: #a8d5ff;
	text-underline-offset: 0.2em;
	-webkit-transition: color 0.2s ease-out;
	-moz-transition: all 0.2s ease-out;
	transition: all 0.2s ease-out;
}

a:hover,
p a:hover {
	color: #f09;
	text-decoration: underline;
	text-decoration-style: dotted;
	text-decoration-thickness: 2px;
	text-decoration-color: #f09;
}

footer.site-footer {
	margin-bottom: calc(var(--site-grid-gap) * 2);
}

footer.site-footer a,
footer.site-footer p a {
	color: var(--footer-link-color);
	font-weight: 600;
	text-decoration: none;
}

footer.site-footer a:hover,
footer.site-footer p a:hover,
footer.site-footer a:focus-visible,
footer.site-footer p a:focus-visible {
	color: var(--footer-link-hover-color);
	text-decoration: none;
}

img {
	max-width: 100%;
	height: auto;
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

body {
	padding: var(--frame-border);
	background-color: var(--default-bg-color-1);
	background-image: var(--default-bg-image), var(--default-bg-gradient);
	background-attachment: fixed, fixed;
	background-position: center center, center center;
	background-size: cover, cover;
	background-repeat: no-repeat, no-repeat;
}


.site-frame {
	--frame-border-calc: calc(var(--frame-border) * 2);
	--frame-radius-calc: calc(var(--frame-border-calc) + var(--frame-radius));
	position: fixed;
	top: calc(var(--frame-border) * -1);
	right: calc(var(--frame-border) * -1);
	bottom: calc(var(--frame-border) * -1);
	left: calc(var(--frame-border) * -1);
	border: solid var(--frame-border-calc) var(--frame-color);
	border-radius: var(--frame-radius-calc);
	background: transparent !important;
	overflow: clip;
	pointer-events: none;
	z-index: 700 !important;
}

#wpadminbar {
	z-index: 701 !important;
}

/* v02.45 iOS Safari frame bleed masks.
 * Extends the fixed frame colour above and below the viewport so rubber-band
 * scroll/composited browser chrome does not reveal page content behind it.
 */
.site-frame::before,
.site-frame::after {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	width: 100%;
	height: 200px;
	background-color: var(--frame-color);
	z-index: 9999;
}

.site-frame::before {
	top: -200px;
}

.site-frame::after {
	bottom: -200px;
}


.site-branding--title-hidden .site-title {
	display: none;
}

.site-branding--description-hidden .site-description {
	display: none;
}



header .site-header__aside {
	border-radius: var(--header-radius);
	border: var(--header-border) solid var(--header-border-color);
	background: var(--header-bg);
	backdrop-filter: blur(12px) saturate(150%);
	-webkit-backdrop-filter: blur(12px) saturate(150%);
	-webkit-box-shadow: var(--header-surface-shadow);
	-moz-box-shadow: var(--header-surface-shadow);
	box-shadow: var(--header-surface-shadow);
}

@media (min-width: 980px) {
	.site-shell {
		padding-top: calc(var(--header-offset-top) + var(--header-height) + var(--site-grid-gap));
	}

	header.site-header {
		top: var(--header-offset-top);
		position: fixed;
		left: 50%;
		transform: translateX(-50%);
		width: var(--header-width);
		max-width: var(--header-width);
		z-index: 40;
		padding: 0 var(--frame-border);
	}

	header.site-header .site-header__inner {
		width: 100%;
		margin-right: 0;
		margin-left: 0;
		align-items: flex-end;
		gap: var(--site-gutter);
	}

	header.site-header .site-branding-wrap {
		flex: 0 0 auto;
		width: auto;
		min-width: 0;
		display: flex;
		align-items: flex-end;
	}

	header.site-header .site-branding {
		flex: 1 1 auto;
		min-width: 0;
		align-items: flex-end;
	}

	header.site-header .site-header__aside {
		width: auto;
		min-width: 0;
		min-height: var(--header-height);
		max-height: var(--header-height);
		justify-content: flex-end;
		overflow: visible;
	}

	header.site-header .site-branding .custom-logo-link {
		display: inline-flex;
		align-items: flex-end;
	}

	header.site-header .site-branding .custom-logo-link img {
		height: var(--header-height);
		width: auto;
		max-width: none;
		-webkit-box-shadow: var(--logo-shadow);
		-moz-box-shadow: var(--logo-shadow);
		box-shadow: var(--logo-shadow);
	}

	header.site-header .site-branding__text {
		display: none;
	}
}



/* v02.45 compact desktop header breakpoint.
 * Prevents the desktop header aside/navigation from colliding with the logo
 * before the mobile header breakpoint takes over.
 */
@media (min-width: 980px) and (max-width: 1099.98px) {
	:root {
		--baqflo-header-rendered-height: var(--header-height-compact);
		--nav-tab-gap: 0.4rem;
		--nav-tab-inline-pad: 0.76rem;
		--nav-tab-block-pad: 0.48rem;
		--nav-tab-min-height: 35px;
		--nav-dropdown-min-width: 190px;
	}

	.site-shell {
		padding-top: calc(var(--header-offset-top) + var(--header-height-compact) + var(--site-grid-gap));
	}

	header.site-header .site-header__inner {
		align-items: flex-end;
		gap: calc(var(--site-gutter) * 0.8);
	}

	header.site-header .site-branding-wrap,
	header.site-header .site-branding,
	header.site-header .site-branding .custom-logo-link {
		height: var(--header-height-compact);
		min-height: var(--header-height-compact);
		max-height: var(--header-height-compact);
	}

	header.site-header .site-branding .custom-logo-link img {
		height: var(--header-height-compact);
	}

	header.site-header .site-header__aside {
		min-height: var(--header-height-compact);
		max-height: var(--header-height-compact);
	}

	header.site-header .site-navigation .menu > li > a,
	header.site-header .site-navigation .sub-menu a,
	header.site-header .header-utility-nav__link {
		font-size: 0.82rem;
	}

	header.site-header .header-utility-nav__icon {
		width: 0.92rem;
		height: 0.92rem;
	}

	header.site-header .header-utility-nav__cart-count {
		min-width: 1.1rem;
		height: 1.1rem;
		font-size: 0.62rem;
	}

	header.site-header .header-search-panel {
		width: min(24rem, calc(100vw - (var(--site-gutter) * 2)));
	}
}
@media (max-width: 979.98px) {
	.site-shell {
		padding-top: var(--site-grid-gap);
	}

	header.site-header {
		position: relative;
		z-index: 40;
	}

	header.site-header .site-header__inner {
		align-items: center;
		flex-direction: row;
		gap: var(--mobile-header-gap);
	}

	header.site-header .site-branding-wrap {
		flex: 1 1 auto;
		width: auto;
		min-width: 0;
		display: flex;
		align-items: center;
	}

	header.site-header .site-branding {
		flex: 1 1 auto;
		min-width: 0;
		align-items: center;
	}

	header.site-header .site-branding__logo,
	header.site-header .site-branding__logo .custom-logo-link {
		display: flex;
		align-items: center;
	}

	header.site-header .site-branding .custom-logo-link img {
		height: var(--mobile-header-height);
		width: auto;
		max-width: none;
	}

	header.site-header .site-branding__text {
		display: none;
	}

	header.site-header .site-header__aside {
		position: relative;
		flex: 0 0 auto;
		width: auto;
		min-width: 0;
		min-height: 0;
		max-height: none;
		padding: 0;
		background: transparent;
		border: 0;
		backdrop-filter: none;
		-webkit-backdrop-filter: none;
		overflow: visible;
	}

	header.site-header .site-navigation {
		position: static;
		justify-content: flex-end;
		align-items: center;
		width: auto;
		min-width: 0;
	}

	header.site-header .site-navigation__toggle {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: var(--mobile-header-height);
		height: var(--mobile-header-height);
		padding: 0 1rem;
		border: 2px solid #fff;
		border-radius: var(--header-radius);
		background: rgba(255, 255, 255, 0.08);
		backdrop-filter: blur(4px) saturate(150%);
		-webkit-backdrop-filter: blur(4px) saturate(150%);
		text-decoration: none;
	}
}

header.site-header .site-branding__logo-mobile {
	display: none;
}

header.site-header .site-branding__logo-default {
	display: inline-flex;
	align-items: inherit;
}

@media (max-width: 979.98px) {
	header.site-header .site-branding__logo-mobile {
		display: flex;
	}

	header.site-header .site-branding__logo--has-mobile-logo .site-branding__logo-default {
		display: none;
	}
}

header.site-header .site-branding .custom-logo-link img {
	transition: transform 0.1s ease-in-out;
}

header.site-header .site-branding .custom-logo-link:hover img {
	transform: scale(1.02);
}

/*
 * Global form controls layer.
 */
input:not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="image"]):not([type="checkbox"]):not([type="radio"]),
select,
textarea,
.search-field,
input[type="search"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="number"],
input[type="password"],
input[type="date"],
input[type="time"],
input[type="month"],
input[type="week"] {
	appearance: none;
	width: 100%;
	min-height: var(--field-min-height);
	padding: var(--field-padding-block) var(--field-padding-inline);
	border: var(--field-border-width) solid var(--field-border-color);
	border-radius: var(--field-radius);
	background: var(--field-bg);
	color: var(--field-color);
	box-shadow: var(--field-shadow);
	transition: border-color 0.18s ease, background-color 0.18s ease, box-shadow 0.18s ease;
}

textarea {
	min-height: 132px;
	resize: vertical;
}

input::placeholder,
textarea::placeholder {
	color: var(--field-placeholder-color);
	opacity: 1;
}

input:not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="image"]):not([type="checkbox"]):not([type="radio"]):hover,
select:hover,
textarea:hover,
.search-field:hover {
	border-color: var(--field-border-color-hover);
}

input:not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="image"]):not([type="checkbox"]):not([type="radio"]):focus,
select:focus,
textarea:focus,
.search-field:focus {
	outline: none;
	border-color: var(--field-border-color-focus);
	box-shadow: var(--field-focus-ring);
}

input[type="checkbox"],
input[type="radio"] {
	appearance: none;
	-webkit-appearance: none;
	width: var(--check-size);
	height: var(--check-size);
	margin: 0 0.55rem 0 0;
	vertical-align: middle;
	border: 2px solid var(--field-border-color);
	background: var(--field-bg);
	box-shadow: none;
	position: relative;
	cursor: pointer;
	transition: border-color 0.18s ease, background-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

input[type="checkbox"] {
	border-radius: 0.35rem;
}

input[type="radio"] {
	border-radius: 50%;
}

input[type="checkbox"]:hover,
input[type="radio"]:hover {
	border-color: var(--field-border-color-hover);
}

input[type="checkbox"]:focus,
input[type="radio"]:focus {
	outline: none;
	border-color: var(--field-border-color-focus);
	box-shadow: var(--field-focus-ring);
}

input[type="checkbox"]:checked,
input[type="radio"]:checked {
	border-color: #111;
	background: #111;
}

input[type="checkbox"]:checked::after {
	content: "";
	position: absolute;
	left: 0.28rem;
	top: 0.08rem;
	width: 0.28rem;
	height: 0.56rem;
	border: solid #fff;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}

input[type="radio"]:checked::after {
	content: "";
	position: absolute;
	inset: 0.24rem;
	border-radius: 50%;
	background: #fff;
}

/*
 * Native select arrow refinement.
 */
select,
.woocommerce .woocommerce-ordering select,
.woocommerce form select {
	width: auto;
	max-width: 100%;
	padding-right: calc(var(--field-padding-inline) + 1.4rem);
	background-image:
		linear-gradient(45deg, transparent 50%, #111 50%),
		linear-gradient(135deg, #111 50%, transparent 50%);
	background-position:
		calc(100% - 1rem) calc(50% - 0.12rem),
		calc(100% - 0.65rem) calc(50% - 0.12rem);
	background-size: var(--select-arrow-size) var(--select-arrow-size), var(--select-arrow-size) var(--select-arrow-size);
	background-repeat: no-repeat;

	background-color: #fff!important;

	border: solid 2px #111!important;
}

/*
 * Native select arrow refinement.
 */
select,
.woocommerce .woocommerce-ordering select,
.woocommerce form select {
	-webkit-appearance: menulist;
	-moz-appearance: auto;
	appearance: auto;
	max-width: 100%;
	padding-right: calc(var(--field-padding-inline) + 1.4rem);
	background-image:
		linear-gradient(45deg, transparent 50%, #111 50%),
		linear-gradient(135deg, #111 50%, transparent 50%);
	background-position:
		calc(100% - 1rem) calc(50% - 0.12rem),
		calc(100% - 0.65rem) calc(50% - 0.12rem);
	background-size: var(--select-arrow-size) var(--select-arrow-size), var(--select-arrow-size) var(--select-arrow-size);
	background-repeat: no-repeat;
}

/* v02.20 active customizer CSS baseline */
.baqflo-preset-viewer.position-bottom-right {
	right: calc(var(--frame-border) * 2);
	bottom: calc(var(--frame-border) * 2);
}

p {
	font-weight: 300;
	line-height: 1.4em;
	color: #555;
	-webkit-font-smoothing: antialiased;
}

.baqflo-preset-viewer {
	transform: scale(0.6);
	transition: transform 0.3s ease-in-out;
	transform-origin: bottom right;
}

.baqflo-preset-viewer:hover {
	transform: scale(1.2);
}

.hero-header h1 {
	text-shadow: 0px 2px 4px rgba(255, 255, 255, 0.3);
}

/* v02.23/v02.29: allow Header Width Mode to truly stretch the fixed header region,
 * with optional frame-based full-width offsets controlled by the Customizer.
 */
@media (min-width: 980px) {
	header.site-header.site-band--mode-full-width {
		left: var(--full-width-section-offset);
		right: var(--full-width-section-offset);
		margin-right: 0;
		margin-left: 0;
		transform: none;
		width: calc(100% - (var(--full-width-section-offset) * 2));
		max-width: calc(100% - (var(--full-width-section-offset) * 2));
		box-sizing: border-box;
	}

	header.site-header.site-band--mode-full-width .site-header__inner {
		width: 100%;
		max-width: none;
	}
}

/* v02.30 mobile frame/header overrides. Desktop remains unchanged. */
@media (max-width: 979.98px) {
	body { padding: var(--mobile-frame-width); }
	.site-frame {
		--frame-border-calc: calc(var(--mobile-frame-width) * 2);
		--frame-radius-calc: calc(var(--frame-border-calc) + var(--mobile-frame-radius));
		top: calc(var(--mobile-frame-width) * -1);
		right: calc(var(--mobile-frame-width) * -1);
		bottom: calc(var(--mobile-frame-width) * -1);
		left: calc(var(--mobile-frame-width) * -1);
	}
	.site-shell { padding-top: calc(var(--mobile-header-control-height) + (var(--mobile-frame-width) * 3)); }
	header.site-header {
		position: fixed;
		top: var(--mobile-frame-width);
		left: var(--mobile-frame-width);
		right: var(--mobile-frame-width);
		width: calc(100% - (var(--mobile-frame-width) * 2));
		max-width: calc(100% - (var(--mobile-frame-width) * 2));
		z-index: 720;
	}
	header.site-header .site-header__inner {
		width: 100%;
		margin: 0;
		align-items: stretch;
		flex-direction: row;
		gap: var(--mobile-header-gap);
	}
	header.site-header .site-branding-wrap {
		flex: 0 1 calc(66.666% - (var(--mobile-header-gap) / 2));
		width: auto;
		min-width: 0;
		display: flex;
		align-items: stretch;
	}
	header.site-header .site-branding { width: 100%; min-width: 0; align-items: stretch; }
	header.site-header .site-branding__logo,
	header.site-header .site-branding__logo .custom-logo-link {
		display: flex;
		align-items: center;
		width: 100%;
	}
	header.site-header .site-branding .custom-logo-link img {
		display: block;
		width: 100%;
		height: var(--mobile-header-control-height);
		max-width: 100%;
		object-fit: contain;
		object-position: left center;
	}
	header.site-header .site-header__aside {
		position: static;
		flex: 1 1 calc(33.333% - (var(--mobile-header-gap) / 2));
		width: auto;
		min-width: 0;
		min-height: 0;
		max-height: none;
		padding: 0;
		background: transparent;
		border: 0;
		box-shadow: none;
		backdrop-filter: none;
		-webkit-backdrop-filter: none;
	}
	header.site-header .site-navigation { position: static; justify-content: flex-end; align-items: stretch; width: 100%; }
	header.site-header .site-navigation__toggle {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 0.55rem;
		width: 100%;
		height: var(--mobile-header-control-height);
		padding: 0 0.85rem;
		border: 2px solid #111;
		border-radius: 999px;
		background: rgba(255,255,255,0.94);
		color: #111;
		font-family: var(--font-family-navigation);
		font-size: clamp(0.82rem, 3vw, 1rem);
		font-weight: 700;
		line-height: 1;
		text-transform: uppercase;
		letter-spacing: 0.02em;
		box-shadow: none;
	}
}

/* v02.46 migrated design refinements from Customizer CSS.
 * These are intentionally additive and preserve the existing theme rules.
 */
.breadcrumbs {
	/* visibility intentionally available for site-level overrides. */
}

.footer-widgets__column--footer-5 {
	text-align: right;
}

div.site-hero__inner {
	border: solid var(--section-border) #111;
}

@media (min-width: 980px) {
	.site-header__aside {
		min-width: 610px !important;
	}
}

#header-search-field {
	border: solid #111 2px !important;
}

@media (max-width: 979.98px) {
	header.site-header .site-navigation.is-menu-open .header-search-panel__form {
		gap: 0.5rem;
		padding: 0;
		background: none;
		box-shadow: none;
	}

	header.site-header .site-navigation.is-menu-open .header-search-panel__submit {
		min-width: 48px !important;
		height: 48px !important;
		min-height: 48px !important;
		padding: 0 1rem !important;
		background: #111 !important;
		color: #fff !important;
		font-size: 0.95rem !important;
		font-weight: 800 !important;
		line-height: 1 !important;
		text-transform: uppercase;
		letter-spacing: 0.02em;
	}

	.baqflo-preset-viewer.position-bottom-right {
		right: calc(var(--frame-border) * 0.5);
		bottom: calc(var(--frame-border) * 0.5);
	}

	.baqflo-preset-viewer,
	.baqflo-preset-viewer:hover {
		transform: scale(1);
	}
}
