/* ==========================================================================
   AQF Theme — base + Header / Footer Builder styles.
   Values set in the Customizer are added inline after this file.
   ========================================================================== */

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

html { -webkit-text-size-adjust: 100%; }
body {
	margin: 0;
	color: var(--aqf-text, #374151);
	background-color: var(--aqf-site-bg, #fff);
	font-family: var(--aqf-body-font, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif);
	line-height: 1.7;
	-webkit-font-smoothing: antialiased;
	overflow-wrap: break-word;
}
a { color: var(--aqf-accent, #2563eb); transition: color .2s ease; }
a:hover { color: var(--aqf-accent-hover, #1d4ed8); }
img, video { max-width: 100%; height: auto; }
:focus-visible { outline: 2px solid var(--aqf-accent, #2563eb); outline-offset: 2px; }

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}
.skip-link:focus {
	clip: auto;
	clip-path: none;
	height: auto;
	width: auto;
	top: 8px;
	left: 8px;
	z-index: 100000;
	padding: 12px 18px;
	background: #fff;
	color: #111;
	box-shadow: 0 0 0 2px currentColor;
}

.site { position: relative; min-height: 100vh; display: flex; flex-direction: column; overflow-x: clip; }
.site-content { flex: 1 0 auto; }

.aqf-container {
	width: 100%;
	max-width: var(--aqf-container, 1200px);
	margin-left: auto;
	margin-right: auto;
	padding-left: var(--aqf-gutter, 20px);
	padding-right: var(--aqf-gutter, 20px);
}

.aqf-align-left { text-align: left; justify-content: flex-start; }
.aqf-align-center { text-align: center; justify-content: center; }
.aqf-align-right { text-align: right; justify-content: flex-end; }

.aqf-placeholder {
	display: inline-block;
	padding: 4px 8px;
	font-size: 12px;
	border: 1px dashed currentColor;
	opacity: .7;
}

.aqf-icon { display: block; width: 1em; height: 1em; flex-shrink: 0; }

/* --------------------------------------------------------------------------
   Header
   -------------------------------------------------------------------------- */

.aqf-header {
	position: relative;
	z-index: 99;
	width: 100%;
	--aqf-sticky-top: 0px;
	transition: box-shadow .2s ease;
}
.admin-bar .aqf-header { --aqf-sticky-top: 32px; }
@media (max-width: 782px) {
	.admin-bar .aqf-header { --aqf-sticky-top: 46px; }
}
@media (max-width: 600px) {
	/* The admin bar scrolls away on small screens. */
	.admin-bar .aqf-header { --aqf-sticky-top: 0px; }
}

.aqf-header-row { transition: background-color .2s ease; }
.aqf-header-row .aqf-container { position: relative; }

.aqf-header-row__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}
.aqf-header-row__inner.has-center {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
}

.aqf-zone {
	display: flex;
	align-items: center;
	gap: 18px;
	min-width: 0;
}
.aqf-zone--right { justify-content: flex-end; margin-left: auto; }
.aqf-zone--center { justify-content: center; }
.has-center .aqf-zone--right { margin-left: 0; }
.aqf-zone:empty { display: none; }
.has-center .aqf-zone:empty { display: flex; }

/* Logo */
.aqf-site-branding { display: flex; align-items: center; gap: 12px; min-width: 0; }
.aqf-site-branding .custom-logo-link { display: block; line-height: 0; }
.aqf-site-branding .custom-logo-link img { display: block; height: auto; max-width: 100%; }
.aqf-site-branding .site-title { margin: 0; font-weight: 700; line-height: 1.2; }
.aqf-site-branding .site-title a { text-decoration: none; color: inherit; }
.aqf-site-branding .site-description { margin: 2px 0 0; font-size: 13px; opacity: .75; line-height: 1.3; }

/* Menus — shared */
.aqf-menu,
.aqf-menu .sub-menu { list-style: none; margin: 0; padding: 0; }
/* Menu rules target the menu's own items only (".menu > li > a"), never links of content
   placed inside a menu item, such as an Elementor mega menu template. */
.aqf-menu > li > a,
.aqf-menu .sub-menu > li > a { text-decoration: none; }

/* Horizontal menus (desktop) with dropdowns */
.aqf-nav--horizontal .aqf-menu { display: flex; flex-wrap: wrap; align-items: center; }
.aqf-nav--horizontal .aqf-menu > li { position: relative; }
.aqf-nav--horizontal .aqf-menu > li > a {
	position: relative;
	display: flex;
	align-items: center;
	gap: 4px;
	padding: 10px 14px;
	color: inherit;
	line-height: 1.4;
	transition: color .2s ease, background-color .2s ease;
}
.aqf-menu-caret { display: inline-flex; }
.aqf-menu-caret .aqf-icon { width: 16px; height: 16px; }
.aqf-nav--horizontal .sub-menu {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 50;
	min-width: 200px;
	padding: 8px 0;
	border-radius: 6px;
	box-shadow: 0 12px 32px rgba(0, 0, 0, .12);
	opacity: 0;
	visibility: hidden;
	translate: 0 8px;
	transition: opacity .18s ease, translate .18s ease, visibility .18s;
}
.aqf-nav--horizontal .sub-menu .sub-menu { top: -8px; left: 100%; }
.aqf-nav--horizontal li:hover > .sub-menu,
.aqf-nav--horizontal li:focus-within > .sub-menu {
	opacity: 1;
	visibility: visible;
	translate: none;
}
.aqf-nav--horizontal .sub-menu > li { position: relative; }
.aqf-nav--horizontal .sub-menu > li > a {
	display: flex;
	align-items: center;
	gap: 0 4px;
	padding: 8px 18px;
	font-size: 14px;
	line-height: 1.4;
}
.aqf-nav--horizontal .sub-menu .aqf-menu-caret { margin-left: auto; transform: rotate(-90deg); }
/* Keep the last dropdowns on screen. */
.aqf-zone--right .aqf-nav--horizontal .aqf-menu > li:last-child > .sub-menu { left: auto; right: 0; }
.aqf-zone--right .aqf-nav--horizontal .aqf-menu > li:last-child .sub-menu .sub-menu { left: auto; right: 100%; }

/* Vertical menus (off-canvas / mobile) */
.aqf-nav--vertical { width: 100%; }
.aqf-nav--vertical .aqf-menu > li,
.aqf-nav--vertical .aqf-menu .sub-menu > li {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	border-bottom: 1px solid #e5e7eb;
}
.aqf-nav--vertical .aqf-menu > li > a,
.aqf-nav--vertical .aqf-menu .sub-menu > li > a {
	flex: 1;
	display: block;
	padding: 12px 0;
	color: inherit;
	font-weight: 500;
}
.aqf-nav--vertical .sub-menu {
	display: none;
	flex-basis: 100%;
	padding-left: 16px;
}
.aqf-nav--vertical .sub-menu > li:last-child { border-bottom: 0; }
.aqf-nav--vertical .sub-menu > li > a { font-weight: 400; font-size: .95em; }
.aqf-nav--vertical li.is-open > .sub-menu { display: block; border-top: 1px solid #e5e7eb; border-color: inherit; }
.aqf-submenu-toggle {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: 0;
	border: 0;
	background: none;
	color: inherit;
	cursor: pointer;
}
.aqf-submenu-toggle .aqf-icon { width: 22px; height: 22px; transition: transform .2s ease; }
.aqf-submenu-toggle[aria-expanded="true"] .aqf-icon { transform: rotate(180deg); }

/* Buttons */
.aqf-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 10px 22px;
	border: 2px solid transparent;
	font-weight: 600;
	line-height: 1.3;
	text-decoration: none;
	white-space: nowrap;
	transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}
.aqf-button--outline { background: transparent; }

/* HTML */
.aqf-html > :first-child { margin-top: 0; }
.aqf-html > :last-child { margin-bottom: 0; }

/* Search */
.aqf-search { position: relative; }
.aqf-search-toggle,
.aqf-search__submit {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 6px;
	border: 0;
	background: none;
	color: inherit;
	cursor: pointer;
}
.aqf-search__form { display: flex; align-items: center; }
.aqf-search__input {
	min-width: 0;
	width: 220px;
	padding: 9px 12px;
	border: 1px solid #d1d5db;
	border-radius: 6px;
	font: inherit;
	font-size: 14px;
	color: #111827;
	background: #fff;
}
.aqf-search--inline .aqf-search__submit { margin-left: -40px; color: #6b7280; }
.aqf-search--inline .aqf-search__input { padding-right: 40px; }
.aqf-search--icon .aqf-search__form {
	position: absolute;
	top: calc(100% + 10px);
	right: 0;
	z-index: 60;
	padding: 10px;
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 12px 32px rgba(0, 0, 0, .15);
	opacity: 0;
	visibility: hidden;
	transform: translateY(6px);
	transition: opacity .18s ease, transform .18s ease, visibility .18s;
}
.aqf-search--icon.is-open .aqf-search__form { opacity: 1; visibility: visible; transform: none; }
.aqf-search--icon .aqf-search__submit { color: #374151; }
.aqf-zone--left .aqf-search--icon .aqf-search__form { right: auto; left: 0; }
.aqf-offcanvas .aqf-search__form,
.aqf-offcanvas .aqf-search__input { width: 100%; }

/* Social */
.aqf-social {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.aqf-social__link { display: flex; color: inherit; transition: color .2s ease, opacity .2s ease; }
.aqf-social--brand .aqf-social__link:hover { opacity: .8; }

/* Mobile toggle */
.aqf-menu-toggle {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 6px;
	border: 2px solid transparent;
	border-radius: 6px;
	background: none;
	font: inherit;
	font-weight: 600;
	cursor: pointer;
	line-height: 1;
}
.aqf-menu-toggle--fill,
.aqf-menu-toggle--outline { padding: 6px 10px; }
.aqf-menu-toggle__open { display: inline-flex; }
.aqf-menu-toggle__close { display: none; }
.aqf-menu-toggle[aria-expanded="true"] .aqf-menu-toggle__open { display: none; }
.aqf-menu-toggle[aria-expanded="true"] .aqf-menu-toggle__close { display: inline-flex; }

/* Off-canvas / popup */
.aqf-offcanvas { visibility: hidden; }
.aqf-offcanvas.is-open { visibility: visible; }
.aqf-offcanvas__content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 20px;
	padding: 8px 24px 32px;
}
.aqf-offcanvas__head { display: flex; justify-content: flex-end; padding: 12px 12px 0; }
.aqf-offcanvas__close {
	display: flex;
	padding: 8px;
	border: 0;
	background: none;
	cursor: pointer;
}
.aqf-offcanvas__close .aqf-icon { width: 26px; height: 26px; }

.aqf-offcanvas--flyout,
.aqf-offcanvas--fullscreen {
	position: fixed;
	inset: 0;
	z-index: 100000;
}
.aqf-offcanvas__overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, .5);
	opacity: 0;
	transition: opacity .25s ease;
}
.aqf-offcanvas.is-open .aqf-offcanvas__overlay { opacity: 1; }

.aqf-offcanvas--flyout .aqf-offcanvas__panel {
	position: absolute;
	top: 0;
	bottom: 0;
	width: 320px;
	max-width: 88vw;
	overflow-y: auto;
	box-shadow: 0 0 40px rgba(0, 0, 0, .2);
	transition: transform .3s ease;
}
.aqf-offcanvas--flyout.aqf-offcanvas--right .aqf-offcanvas__panel { right: 0; transform: translateX(100%); }
.aqf-offcanvas--flyout.aqf-offcanvas--left .aqf-offcanvas__panel { left: 0; transform: translateX(-100%); }
.aqf-offcanvas--flyout.is-open .aqf-offcanvas__panel { transform: none; }

.aqf-offcanvas--fullscreen .aqf-offcanvas__panel {
	position: absolute;
	inset: 0;
	overflow-y: auto;
	opacity: 0;
	transform: scale(.98);
	transition: opacity .25s ease, transform .25s ease;
}
.aqf-offcanvas--fullscreen.is-open .aqf-offcanvas__panel { opacity: 1; transform: none; }
.aqf-offcanvas--fullscreen .aqf-offcanvas__content { max-width: 640px; margin: 0 auto; }

.aqf-offcanvas--dropdown {
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	display: none;
}
.aqf-offcanvas--dropdown.is-open { display: block; }
.aqf-offcanvas--dropdown .aqf-offcanvas__panel {
	max-height: calc(100vh - 120px);
	overflow-y: auto;
	box-shadow: 0 16px 32px rgba(0, 0, 0, .12);
}
.aqf-offcanvas--dropdown .aqf-offcanvas__content { padding-top: 16px; }

body.aqf-offcanvas-open { overflow: hidden; }

/* --------------------------------------------------------------------------
   Footer
   -------------------------------------------------------------------------- */

.aqf-footer { margin-top: auto; }
.aqf-footer-row__grid { display: grid; gap: 32px; }
.aqf-footer-col { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.aqf-footer-col > .aqf-element { width: 100%; }
.aqf-footer p { margin: 0 0 .75em; }
.aqf-footer p:last-child { margin-bottom: 0; }
.aqf-copyright { font-size: .95em; }

.aqf-footer-menu { display: flex; flex-wrap: wrap; gap: 20px; margin: 0; padding: 0; list-style: none; }
.aqf-footer-nav.aqf-align-center .aqf-footer-menu { justify-content: center; }
.aqf-footer-nav.aqf-align-right .aqf-footer-menu { justify-content: flex-end; }
.aqf-footer-nav--vertical .aqf-footer-menu { flex-direction: column; gap: 8px; }
.aqf-footer-nav--vertical.aqf-align-center .aqf-footer-menu { align-items: center; }
.aqf-footer-nav--vertical.aqf-align-right .aqf-footer-menu { align-items: flex-end; }
.aqf-footer-menu a { text-decoration: none; }
.aqf-footer-menu a:hover { text-decoration: underline; }

.aqf-social--footer.aqf-align-center { justify-content: center; }
.aqf-social--footer.aqf-align-right { justify-content: flex-end; }

.aqf-footer .widget { margin-bottom: 24px; }
.aqf-footer .widget:last-child { margin-bottom: 0; }
.aqf-footer .widget-title { margin: 0 0 12px; font-weight: 600; line-height: 1.3; }
.aqf-footer .widget ul { margin: 0; padding: 0; list-style: none; }
.aqf-footer .widget li { margin-bottom: 6px; }

@media (max-width: 921px) {
	.aqf-footer .aqf-footer-row .aqf-footer-row__grid:not(.aqf-footer-cols-1) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 544px) {
	.aqf-footer .aqf-footer-row .aqf-footer-row__grid:not(.aqf-footer-cols-1) { grid-template-columns: minmax(0, 1fr); }
	.aqf-footer-col { text-align: center; }
	.aqf-footer-col .aqf-social,
	.aqf-footer-col .aqf-footer-menu { justify-content: center; }
}

/* --------------------------------------------------------------------------
   Header extras: alternate logos, reveal, account, cart, widgets
   -------------------------------------------------------------------------- */

.aqf-alt-logo { display: none; line-height: 0; }
.aqf-alt-logo img { display: block; height: auto; max-width: 100%; }
.aqf-header.is-stuck .has-sticky-logo > .custom-logo-link,
.aqf-header.is-stuck .has-sticky-logo > .aqf-alt-logo--transparent { display: none; }
.aqf-header.is-stuck .aqf-alt-logo--sticky { display: block; }

.aqf-header--reveal { transition: transform .3s ease, box-shadow .2s ease; }
.aqf-header--reveal.is-hidden { transform: translateY(-100%); }

.aqf-account { display: inline-flex; align-items: center; gap: 6px; color: inherit; font-weight: 500; text-decoration: none; }
.aqf-account .aqf-icon { width: 22px; height: 22px; }

.aqf-cart { position: relative; }
.aqf-cart__link { display: inline-flex; color: inherit; text-decoration: none; }
.aqf-cart__inner { position: relative; display: inline-flex; align-items: center; gap: 8px; }
.aqf-cart .aqf-icon { width: 24px; height: 24px; }
.aqf-cart__count {
	position: absolute;
	top: -7px;
	left: 14px;
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	border-radius: 9px;
	font-size: 11px;
	font-weight: 700;
	line-height: 18px;
	text-align: center;
}
.aqf-cart__total { margin-left: 8px; font-size: 14px; font-weight: 600; }
.aqf-cart__dropdown {
	position: absolute;
	top: 100%;
	right: 0;
	z-index: 60;
	width: 330px;
	margin-top: 12px;
	padding: 18px;
	border-radius: 8px;
	background: #fff;
	color: #111827;
	box-shadow: 0 12px 32px rgba(0, 0, 0, .15);
	opacity: 0;
	visibility: hidden;
	translate: 0 8px;
	transition: opacity .18s ease, translate .18s ease, visibility .18s;
}
.aqf-cart__dropdown::before { content: ""; position: absolute; left: 0; right: 0; top: -14px; height: 14px; }
.aqf-cart.has-dropdown:hover .aqf-cart__dropdown,
.aqf-cart.has-dropdown:focus-within .aqf-cart__dropdown { opacity: 1; visibility: visible; translate: none; }
.aqf-zone--left .aqf-cart__dropdown { right: auto; left: 0; }

.aqf-header-widget .widget { margin: 0; }
.aqf-header-widget .widget-title { margin: 0 0 6px; font-size: 14px; }

/* Mega menu */
.aqf-nav--horizontal .aqf-menu > li.aqf-mega { position: static; }
.aqf-nav--horizontal .aqf-menu > li.aqf-mega.aqf-mega--auto { position: relative; }
.aqf-nav--horizontal .aqf-menu > li.aqf-mega > .sub-menu {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 6px 24px;
	left: var(--aqf-gutter, 20px);
	right: var(--aqf-gutter, 20px);
	width: auto !important;
	padding: 24px;
}
.aqf-nav--horizontal .aqf-menu > li.aqf-mega--full > .sub-menu { left: 50%; right: auto; width: 100vw !important; transform: translateX(-50%); border-radius: 0; padding-left: max(24px, calc((100vw - var(--aqf-container, 1200px)) / 2 + var(--aqf-gutter, 20px))); padding-right: max(24px, calc((100vw - var(--aqf-container, 1200px)) / 2 + var(--aqf-gutter, 20px))); }
.aqf-nav--horizontal .aqf-menu > li.aqf-mega--auto > .sub-menu { left: 0; right: auto; width: max-content !important; }
.aqf-nav--horizontal .aqf-menu > li.aqf-mega--cols-2 > .sub-menu { grid-template-columns: repeat(2, minmax(160px, 1fr)); }
.aqf-nav--horizontal .aqf-menu > li.aqf-mega--cols-3 > .sub-menu { grid-template-columns: repeat(3, minmax(160px, 1fr)); }
.aqf-nav--horizontal .aqf-menu > li.aqf-mega--cols-5 > .sub-menu { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.aqf-nav--horizontal .aqf-menu > li.aqf-mega--cols-6 > .sub-menu { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.aqf-nav--horizontal .aqf-mega .sub-menu .sub-menu {
	position: static;
	min-width: 0;
	width: auto !important;
	padding: 0;
	box-shadow: none;
	background: transparent !important;
	opacity: 1;
	visibility: visible;
	translate: none;
}
.aqf-nav--horizontal .aqf-mega .sub-menu > li > a { padding: 7px 0; }
.aqf-nav--horizontal .aqf-mega .sub-menu .aqf-menu-caret { display: none; }
.aqf-nav--horizontal .aqf-mega-heading > a { font-weight: 700; font-size: 13px; letter-spacing: .05em; text-transform: uppercase; }
.aqf-nav--horizontal .aqf-mega-hide-title > a { display: none; }
.aqf-nav--horizontal .sub-menu > li > a { flex-wrap: wrap; }
.aqf-menu-desc { display: block; flex-basis: 100%; margin-top: 2px; font-size: 12px; font-weight: 400; opacity: .7; }
.aqf-nav--horizontal .aqf-menu > li > a .aqf-menu-desc { display: none; }
.aqf-menu-label {
	display: inline-block;
	margin-left: 6px;
	padding: 2px 6px;
	border-radius: 4px;
	font-size: 10px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: .03em;
	text-transform: uppercase;
	vertical-align: middle;
}

/* --------------------------------------------------------------------------
   Site & content layout
   -------------------------------------------------------------------------- */

.aqf-site-boxed,
.aqf-site-padded,
.aqf-style-boxed { background-color: var(--aqf-outer-bg, #f3f4f6); }
.aqf-site-boxed #page { max-width: var(--aqf-boxed-width, 1280px); margin: 0 auto; background-color: var(--aqf-site-bg, #fff); box-shadow: 0 0 40px rgba(0, 0, 0, .06); }
.aqf-site-boxed .aqf-header[class*="aqf-header--"] { margin-left: auto; margin-right: auto; max-width: var(--aqf-boxed-width, 1280px); }
.aqf-site-padded #page { margin: var(--aqf-padded, 24px); min-height: calc(100vh - 2 * var(--aqf-padded, 24px)); border-radius: 10px; background-color: var(--aqf-site-bg, #fff); }
.aqf-style-boxed.aqf-site-full #page { background: transparent; }
@media (max-width: 768px) {
	.aqf-site-padded #page { margin: 0; border-radius: 0; min-height: 100vh; }
}

.aqf-content-container { padding-top: var(--aqf-content-spacing, 56px); padding-bottom: var(--aqf-content-spacing, 56px); }
.aqf-layout-narrow .aqf-content-container { max-width: calc(var(--aqf-narrow, 760px) + 2 * var(--aqf-gutter, 20px)); }
.aqf-layout-full .aqf-content-container { max-width: none; padding: 0; }
.aqf-content-row { display: flex; align-items: flex-start; gap: var(--aqf-sidebar-gap, 48px); }
.content-area { flex: 1 1 auto; width: 100%; min-width: 0; }
#secondary { flex: 0 0 var(--aqf-sidebar-width, 28%); min-width: 0; }
.aqf-sidebar-left .aqf-content-row { flex-direction: row-reverse; }
.aqf-sticky-sidebar #secondary { position: sticky; top: 32px; }
.admin-bar.aqf-sticky-sidebar #secondary { top: 64px; }
@media (max-width: 921px) {
	.aqf-content-row { flex-direction: column !important; }
	#secondary { flex-basis: auto; width: 100%; position: static !important; }
}

.aqf-style-boxed .aqf-entry,
.aqf-style-boxed .comments-area,
.aqf-style-boxed .aqf-author-box,
.aqf-style-boxed .aqf-related,
.aqf-style-boxed .aqf-post-nav,
.aqf-style-boxed .page-header,
.aqf-style-boxed .no-results,
.aqf-style-boxed .aqf-404,
.aqf-style-boxed #secondary .widget {
	padding: 40px;
	border: 0;
	border-radius: 10px;
	background-color: var(--aqf-content-bg, #fff);
}
.aqf-style-boxed .aqf-card { background-color: var(--aqf-content-bg, #fff); }
.aqf-style-boxed #secondary .widget { padding: 28px; }
@media (max-width: 544px) {
	.aqf-style-boxed .aqf-entry,
	.aqf-style-boxed .comments-area,
	.aqf-style-boxed .page-header,
	.aqf-style-boxed .aqf-404 { padding: 24px; }
}

/* --------------------------------------------------------------------------
   Typography & content
   -------------------------------------------------------------------------- */

h1, h2, h3, h4, h5, h6 {
	margin: 0 0 .6em;
	color: var(--aqf-heading, #111827);
	font-family: var(--aqf-heading-font, inherit);
}
p { margin: 0 0 1.4em; }
.entry-content > :first-child { margin-top: 0; }
.entry-content > :last-child { margin-bottom: 0; }
.entry-content h2, .entry-content h3, .entry-content h4 { margin-top: 1.6em; }
.entry-content a:not(.wp-block-button__link):not(.aqf-btn) { text-decoration: underline; text-underline-offset: 2px; }
blockquote { margin: 1.6em 0; padding: .4em 0 .4em 1.4em; border-left: 4px solid var(--aqf-accent, #2563eb); font-size: 1.1em; }
blockquote p:last-child { margin-bottom: 0; }
pre { overflow: auto; padding: 18px; border-radius: 8px; background: #f3f4f6; font-size: .9em; }
code, kbd { padding: 2px 5px; border-radius: 4px; background: #f3f4f6; font-size: .9em; }
pre code { padding: 0; background: none; }
hr { margin: 2.4em 0; border: 0; border-top: 1px solid var(--aqf-border, #e5e7eb); }
table { width: 100%; margin: 0 0 1.6em; border-collapse: collapse; }
th, td { padding: 10px 12px; border: 1px solid var(--aqf-border, #e5e7eb); text-align: left; }
figure { margin: 0 0 1.6em; }
figcaption, .wp-caption-text { margin-top: 8px; font-size: .875em; opacity: .75; text-align: center; }
.alignleft { float: left; margin: .3em 1.6em 1em 0; }
.alignright { float: right; margin: .3em 0 1em 1.6em; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.aqf-sidebar-none:not(.aqf-layout-full) .entry-content > .alignfull { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); }
.aqf-sidebar-none:not(.aqf-layout-full) .entry-content > .alignwide {
	--aqf-wide: min(calc(var(--aqf-container, 1200px) - 2 * var(--aqf-gutter, 20px)), calc(100vw - 2 * var(--aqf-gutter, 20px)));
	width: var(--aqf-wide);
	max-width: none;
	margin-left: calc(50% - var(--aqf-wide) / 2);
}

/* Forms */
input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"],
input[type="number"], input[type="tel"], input[type="date"], textarea, select {
	max-width: 100%;
	padding: 10px 14px;
	border: 1px solid var(--aqf-border, #d1d5db);
	border-radius: 6px;
	background: #fff;
	color: #111827;
	font: inherit;
	line-height: 1.4;
}
input:focus, textarea:focus, select:focus { border-color: var(--aqf-accent, #2563eb); outline: 2px solid var(--aqf-accent, #2563eb); outline-offset: -1px; }
textarea { width: 100%; }

/* Buttons */
.aqf-btn,
.wp-block-button__link,
.wp-element-button,
input[type="submit"],
input[type="button"],
input[type="reset"],
button[type="submit"]:not(.aqf-search__submit) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .5em;
	padding: var(--aqf-btn-padding, 12px 24px);
	border: 0;
	border-radius: var(--aqf-btn-radius, 6px);
	background-color: var(--aqf-btn-bg, #2563eb);
	color: var(--aqf-btn-color, #fff);
	font-family: inherit;
	font-size: var(--aqf-btn-size, 15px);
	font-weight: var(--aqf-btn-weight, 600);
	line-height: 1.3;
	text-decoration: none;
	cursor: pointer;
	transition: background-color .2s ease, color .2s ease;
}
.aqf-btn:hover,
.wp-block-button__link:hover,
.wp-element-button:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
button[type="submit"]:not(.aqf-search__submit):hover {
	background-color: var(--aqf-btn-hover-bg, #1d4ed8);
	color: var(--aqf-btn-hover-color, #fff);
}
.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-background) { background: transparent; color: var(--aqf-btn-bg, #2563eb); box-shadow: inset 0 0 0 2px currentColor; }

/* Search form (widget / 404) */
.search-form { display: flex; gap: 8px; max-width: 100%; }
.search-form label { flex: 1; }
.search-form .search-field { width: 100%; }

/* Widgets */
.widget { margin-bottom: 36px; }
.widget:last-child { margin-bottom: 0; }
.widget-title { margin-bottom: 14px; font-size: 18px; }
#secondary .widget ul { margin: 0; padding: 0; list-style: none; }
#secondary .widget li { padding: 7px 0; border-bottom: 1px solid var(--aqf-border, #e5e7eb); }
#secondary .widget li:last-child { border-bottom: 0; }
#secondary .widget a { text-decoration: none; }

/* --------------------------------------------------------------------------
   Blog
   -------------------------------------------------------------------------- */

.page-header { margin-bottom: 36px; }
.page-title { margin: 0; }
.archive-description { margin-top: 10px; opacity: .85; }

.aqf-posts { display: grid; gap: 32px; }
.aqf-posts--grid.aqf-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.aqf-posts--grid.aqf-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.aqf-posts--grid.aqf-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 921px) {
	.aqf-posts--grid.aqf-cols-3, .aqf-posts--grid.aqf-cols-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
	.aqf-posts--grid[class*="aqf-cols-"] { grid-template-columns: minmax(0, 1fr); }
}

.aqf-card { display: flex; flex-direction: column; margin: 0; overflow: hidden; border-radius: 10px; background-color: var(--aqf-content-bg, #fff); }
.aqf-card--border .aqf-card { border: 1px solid var(--aqf-border, #e5e7eb); }
.aqf-card--shadow .aqf-card { box-shadow: 0 8px 28px rgba(17, 24, 39, .08); }
.aqf-card--plain .aqf-card { border-radius: 0; background: none; }
.aqf-card--plain .aqf-card__image { border-radius: 10px; }
.aqf-card--plain .aqf-card__body { padding: 18px 0 0; }
.aqf-card__image { display: block; overflow: hidden; line-height: 0; }
.aqf-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.aqf-card:hover .aqf-card__image img { transform: scale(1.04); }
.aqf-ratio-16-9 { aspect-ratio: 16 / 9; }
.aqf-ratio-3-2 { aspect-ratio: 3 / 2; }
.aqf-ratio-4-3 { aspect-ratio: 4 / 3; }
.aqf-ratio-1-1 { aspect-ratio: 1; }
.aqf-card__body { display: flex; flex: 1; flex-direction: column; gap: 10px; padding: 22px 24px 26px; }
.aqf-card .entry-header { display: flex; flex-direction: column; gap: 8px; }
.aqf-card .entry-title { margin: 0; font-size: 1.3rem; }
.aqf-card .entry-title a { color: inherit; text-decoration: none; }
.aqf-card .entry-title a:hover { color: var(--aqf-accent, #2563eb); }
.entry-summary p { margin: 0; }
.aqf-read-more { margin-top: auto; padding-top: 6px; font-weight: 600; text-decoration: none; }
.aqf-posts--list .aqf-card.has-image { flex-direction: row; }
.aqf-posts--list .aqf-card__image { flex: 0 0 38%; }
.aqf-posts--classic .aqf-card__body { padding: 28px 32px 32px; }
.aqf-posts--classic .aqf-card .entry-title { font-size: 1.75rem; }
@media (max-width: 600px) {
	.aqf-posts--list .aqf-card.has-image { flex-direction: column; }
}

.aqf-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: 14px; color: #6b7280; }
.aqf-meta a { color: inherit; text-decoration: none; }
.aqf-meta a:hover { color: var(--aqf-accent, #2563eb); }

.aqf-pagination .nav-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; margin-top: 48px; }
.aqf-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	height: 42px;
	padding: 0 14px;
	border: 1px solid var(--aqf-border, #e5e7eb);
	border-radius: 6px;
	color: inherit;
	text-decoration: none;
}
.aqf-pagination .page-numbers.current,
.aqf-pagination a.page-numbers:hover { border-color: var(--aqf-accent, #2563eb); background-color: var(--aqf-accent, #2563eb); color: #fff; }
.aqf-pagination .page-numbers.dots { border: 0; }
.aqf-ajax-pagination.is-enhanced .aqf-pagination { display: none; }
.aqf-load-more { display: flex; margin: 48px auto 0; }
.aqf-ajax-pagination[data-type="infinite"] .aqf-load-more { display: none; }
.aqf-ajax-pagination.is-loading .aqf-load-more { opacity: .6; pointer-events: none; }

/* Single */
.aqf-entry .entry-header { margin-bottom: 28px; }
.aqf-entry .entry-title { margin-bottom: 12px; }
.aqf-entry__image { margin: 0 0 32px; }
.aqf-entry__image img { display: block; width: 100%; border-radius: 10px; }
.entry-footer { margin-top: 32px; }
.aqf-tags a {
	display: inline-block;
	margin: 0 6px 6px 0;
	padding: 4px 12px;
	border: 1px solid var(--aqf-border, #e5e7eb);
	border-radius: 999px;
	color: inherit;
	font-size: 13px;
	text-decoration: none;
}
.aqf-tags a:hover { border-color: var(--aqf-accent, #2563eb); color: var(--aqf-accent, #2563eb); }
.page-links { margin-top: 24px; font-weight: 600; }

.aqf-author-box { display: flex; align-items: flex-start; gap: 20px; margin-top: 48px; padding: 28px; border: 1px solid var(--aqf-border, #e5e7eb); border-radius: 10px; }
.aqf-author-box img { flex-shrink: 0; border-radius: 50%; }
.aqf-author-box__label { margin: 0 0 2px; font-size: 12px; letter-spacing: .06em; text-transform: uppercase; opacity: .6; }
.aqf-author-box__name { margin: 0 0 6px; font-size: 1.2rem; }
.aqf-author-box__name a { color: inherit; text-decoration: none; }
.aqf-author-box__bio { margin: 0; }

.aqf-post-nav .nav-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-top: 48px; }
.aqf-post-nav .nav-next { grid-column: 2; text-align: right; }
.aqf-post-nav a { display: block; height: 100%; padding: 18px 20px; border: 1px solid var(--aqf-border, #e5e7eb); border-radius: 10px; color: inherit; text-decoration: none; }
.aqf-post-nav a:hover { border-color: var(--aqf-accent, #2563eb); }
.aqf-post-nav__label { display: block; font-size: 13px; opacity: .6; }
.aqf-post-nav__title { display: block; font-weight: 600; }
.aqf-style-boxed .aqf-post-nav { padding: 0; background: none; }

.aqf-related { margin-top: 56px; }
.aqf-related__title { font-size: 1.4rem; }
.aqf-related__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 24px; }
.aqf-related__image { display: block; aspect-ratio: 16 / 9; overflow: hidden; border-radius: 8px; }
.aqf-related__image img { width: 100%; height: 100%; object-fit: cover; }
.aqf-related__name { margin: 12px 0 4px; font-size: 1.05rem; }
.aqf-related__name a { color: inherit; text-decoration: none; }
.aqf-related__date { font-size: 13px; opacity: .6; }

/* Comments */
.comments-area { margin-top: 56px; }
.comment-list, .comment-list .children { margin: 0; padding: 0; list-style: none; }
.comment-list { margin-bottom: 40px; }
.comment-list .children { padding-left: 32px; }
.comment-body { padding: 22px 0; border-bottom: 1px solid var(--aqf-border, #e5e7eb); }
.comment-author { display: flex; align-items: center; gap: 12px; font-weight: 600; }
.comment-author img { border-radius: 50%; }
.comment-author .says { display: none; }
.comment-metadata { margin: 2px 0 10px 60px; font-size: 13px; }
.comment-metadata a { color: #6b7280; text-decoration: none; }
.comment-content, .comment-body .reply { margin-left: 60px; }
.comment-reply-link { font-size: 13px; font-weight: 600; text-decoration: none; }
.comment-form p { margin-bottom: 16px; }
.comment-form label { display: block; margin-bottom: 6px; font-weight: 600; }
.comment-form input:not([type="checkbox"]):not([type="submit"]) { width: 100%; }
.comment-form-cookies-consent label { display: inline; font-weight: 400; }

/* --------------------------------------------------------------------------
   Title bar, breadcrumbs, 404
   -------------------------------------------------------------------------- */

.aqf-title-bar { position: relative; overflow: hidden; }
.aqf-title-bar__bg { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; object-fit: cover; }
.aqf-title-bar.has-image::before { content: ""; position: absolute; inset: 0; z-index: 1; }
.aqf-title-bar__inner { position: relative; z-index: 2; }
.aqf-title-bar--center { text-align: center; }
.aqf-title-bar__title { margin: 0; color: inherit; }
.aqf-title-bar__desc { margin-top: 10px; opacity: .85; }
.aqf-title-bar__desc p { margin: 0; }

.aqf-breadcrumbs { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; font-size: 14px; }
.aqf-title-bar--center .aqf-breadcrumbs { justify-content: center; }
.aqf-breadcrumbs a { color: inherit; opacity: .8; text-decoration: none; }
.aqf-breadcrumbs a:hover { opacity: 1; text-decoration: underline; }
.aqf-breadcrumbs__sep { opacity: .5; }
.content-area > .aqf-breadcrumbs { margin: 0 0 24px; color: #6b7280; }

.aqf-404 { padding: 40px 0; text-align: center; }
.aqf-404__code { margin: 0; color: var(--aqf-accent, #2563eb); font-size: clamp(80px, 18vw, 160px); font-weight: 800; line-height: 1; opacity: .18; }
.aqf-404 .search-form { max-width: 480px; margin: 24px auto; }

/* --------------------------------------------------------------------------
   Scroll to top, reading progress, custom layouts
   -------------------------------------------------------------------------- */

.aqf-scroll-top {
	position: fixed;
	bottom: 24px;
	z-index: 9990;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 0;
	cursor: pointer;
	box-shadow: 0 6px 20px rgba(0, 0, 0, .18);
	opacity: 0;
	visibility: hidden;
	translate: 0 12px;
	transition: opacity .25s ease, translate .25s ease, visibility .25s;
}
.aqf-scroll-top--right { right: 24px; }
.aqf-scroll-top--left { left: 24px; }
.aqf-scroll-top.is-visible { opacity: 1; visibility: visible; translate: none; }
.aqf-scroll-top .aqf-icon { width: 22px; height: 22px; }

.aqf-progress { position: fixed; top: 0; left: 0; right: 0; z-index: 100001; height: 3px; pointer-events: none; }
.admin-bar .aqf-progress { top: 32px; }
@media (max-width: 782px) {
	.admin-bar .aqf-progress { top: 46px; }
}
.aqf-progress__bar { display: block; width: 0; height: 100%; background-color: var(--aqf-accent, #2563eb); }

.aqf-custom-layout { width: 100%; }

/* --------------------------------------------------------------------------
   Accessibility & print
   -------------------------------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}
@media print {
	.aqf-header, .aqf-footer, #secondary, .aqf-scroll-top, .aqf-progress, .comments-area, .aqf-related, .aqf-post-nav { display: none !important; }
}
