/* =========================================================================
   Alexiou — CSS overrides (the ONLY stylesheet, guideline §5)
   All overrides live here. theme.json holds tokens; this file wins the cascade.
   Bump ALEXIOU_VERSION in functions.php on every change to this file.
   ========================================================================= */

/* -------------------------------------------------------------------------
   1. Type role utilities (map to Figma type scale)
   Manrope for everything except tags/captions/eyebrows → JetBrains Mono.
   ------------------------------------------------------------------------- */
:root {
	--alexiou-mono: var(--wp--preset--font-family--jetbrains-mono);
	--alexiou-sans: var(--wp--preset--font-family--manrope);
	/* Topbar 42px + main nav 95px = 137px. Keeps hero below-fold on load. */
	--alexiou-header-h: 137px;
}

.is-style-display {
	font-family: var(--alexiou-sans);
	font-size: var(--wp--preset--font-size--display);
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: -2px;
}

.is-style-lead {
	font-family: var(--alexiou-sans);
	font-size: var(--wp--preset--font-size--lead);
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: -1px;
}

/* Tags / captions / eyebrows / item labels — JetBrains Mono, uppercase */
.is-style-eyebrow,
.is-style-caption,
.is-style-items {
	font-family: var(--alexiou-mono);
	font-weight: 400;
}
.is-style-eyebrow {
	font-size: var(--wp--preset--font-size--caption); /* 12 */
	text-transform: uppercase;
	letter-spacing: 0.08em;
}
.is-style-items {
	font-size: var(--wp--preset--font-size--body); /* 16 */
	text-transform: uppercase;
	letter-spacing: 0.04em;
}
.is-style-caption {
	font-size: var(--wp--preset--font-size--caption); /* 12 */
}

/* Small body text */
.is-style-small {
	font-size: var(--wp--preset--font-size--small);
	letter-spacing: -0.6px;
}

/* -------------------------------------------------------------------------
   2. Full-bleed section pattern (MANDATORY, guideline §5)
   Apply .alexiou-fullbleed to an outer wrapper; inner content caps at 1760.
   NEVER use margin-inline: calc(50% - 50vw) — it breaks WP alignfull.
   ------------------------------------------------------------------------- */
.alexiou-fullbleed {
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
}
.alexiou-fullbleed > .alexiou-fullbleed__inner {
	max-width: var(--wp--style--global--wide-size); /* 1760 */
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
}

/* -------------------------------------------------------------------------
   3. Content container guard (guideline §5)
   Keep the project's fixed 1760 max-width; Gutenberg sometimes reverts to
   1200 — this re-asserts the correct value. Verify on 1920 desktop.
   ------------------------------------------------------------------------- */
.wp-site-blocks .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
	max-width: var(--wp--custom--content-width, 1760px);
}

/* -------------------------------------------------------------------------
   4. Base element polish
   ------------------------------------------------------------------------- */

/* Prevent horizontal scroll from full-bleed 100vw sections when vertical
   scrollbar is visible. clip (not hidden) avoids creating a new scroll
   container, which would break position:sticky. */
html {
	overflow-x: clip;
}

body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

/* Buttons: square, Manrope semibold (matches theme.json button element) */
.wp-block-button__link {
	border-radius: 0;
	font-family: var(--alexiou-sans);
	font-weight: 600;
}

/* -------------------------------------------------------------------------
   5. Responsive / mobile overrides (guideline §5 — also live HERE)
   Design mobile artboard = 390px; regression-test also at 375px.
   ------------------------------------------------------------------------- */
@media (max-width: 781px) {
	.is-style-display { font-size: 44px; letter-spacing: -1px; }
	:root :where(h1) { font-size: 40px; letter-spacing: -1px; }
	:root :where(h2) { font-size: 32px; }
	:root :where(h3) { font-size: 26px; }
}

/* -------------------------------------------------------------------------
   6. Topbar
   ------------------------------------------------------------------------- */
/* Site header — sticky is on the template-part wrapper (avoids left-offset conflict) */
/* z-index 100001: must be above the mobile menu overlay (z-index 100000) */
.wp-site-blocks > .wp-block-template-part:first-child {
	position: sticky;
	top: 0;
	z-index: 100001;
}

.alexiou-site-header {
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	background: var(--wp--preset--color--white);
	border-bottom: 1px solid rgb(217, 217, 217);
	transition: background 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}
/* On scroll: frosted glass.
   backdrop-filter moved to ::before so it does NOT create a stacking context
   on the header itself — which would incorrectly contain the position:fixed
   nav overlay inside the header's box. */
.alexiou-site-header.is-scrolled {
	background: rgba(255, 255, 255, 0.88);
	border-bottom-color: transparent;
	box-shadow: 0 2px 20px rgba(14, 33, 47, 0.1);
}
.alexiou-site-header.is-scrolled::before {
	content: '';
	position: absolute;
	inset: 0;
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	pointer-events: none;
	z-index: -1;
}

/* ─── Topbar — harbor-blue contact strip ─────────────────────────────────── */
.alexiou-topbar {
	background: var(--wp--preset--color--harbor-blue);
}
.alexiou-topbar__inner {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
	padding-block: 14px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.alexiou-topbar__contact {
	display: flex;
	align-items: center;
	gap: 0;
}
.alexiou-topbar__phone-icon {
	display: flex;
	align-items: center;
	color: rgba(255, 255, 255, 0.75);
	margin-right: 8px;
}
.alexiou-topbar__divider {
	display: inline-block;
	width: 1px;
	height: 14px;
	background: rgba(255, 255, 255, 0.35);
	margin-inline: 16px;
	flex-shrink: 0;
}
.alexiou-topbar__phone,
.alexiou-topbar__hours {
	font-family: var(--alexiou-mono);
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: 0;
	color: var(--wp--preset--color--white);
	text-decoration: none;
}
.alexiou-topbar__phone {
	transition: color 0.2s ease;
}
.alexiou-topbar__phone:hover {
	color: var(--wp--preset--color--yellow);
}

/* -------------------------------------------------------------------------
   7. Header main (nav bar)
   ------------------------------------------------------------------------- */
.alexiou-header-main {
	max-width: calc(var(--wp--style--global--wide-size) + 2 * var(--wp--custom--gutter));
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
	height: 95px;
	display: flex;
	align-items: center;
	background: transparent;
	margin-block-start: 0; /* override WP is-layout-flow gap (24px) between topbar and navbar */
}
/* Logo — 2-part lockup: Alexiou wordmark + divider + Kleemann */
.alexiou-logo-wrap {
	flex-shrink: 0;
	line-height: 0;
}
.alexiou-logo {
	display: flex;
	align-items: center;
	gap: 0;
	text-decoration: none;
	height: 78px;
}
.alexiou-logo__primary {
	height: 78px;
	width: auto;
	display: block;
}
.alexiou-logo__divider {
	display: block;
	width: 1px;
	height: 46px;
	background: var(--wp--preset--color--border);
	margin-inline: 16px;
	flex-shrink: 0;
}
.alexiou-logo__kleemann {
	height: 36px;
	width: auto;
	display: block;
}

/* WP Navigation block — centered between logo and CTA */
.alexiou-header-main .wp-block-navigation {
	flex: 1;
	justify-content: center;
}
.alexiou-header-main .wp-block-navigation ul {
	gap: 22px;
}
.alexiou-header-main .wp-block-navigation .wp-block-navigation-item__content {
	font-family: var(--alexiou-mono);
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0;
	color: var(--wp--preset--color--bg-dark);
	text-decoration: none;
	padding: 0;
}
.alexiou-header-main .wp-block-navigation .wp-block-navigation-item__content:hover,
.alexiou-header-main .wp-block-navigation .is-active > .wp-block-navigation-item__content {
	color: var(--wp--preset--color--harbor-blue);
}
.alexiou-header-main .wp-block-navigation .wp-block-navigation-submenu__toggle {
	color: var(--wp--preset--color--bg-dark);
}
.alexiou-header-main .wp-block-navigation .is-active > .wp-block-navigation-submenu__toggle {
	color: var(--wp--preset--color--harbor-blue);
}
/* Remove default WP nav padding/borders */
.alexiou-header-main .wp-block-navigation .wp-block-navigation-item {
	padding: 0;
}

/* CTA button — right side of nav */
.alexiou-nav-cta {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	gap: 16px;
}
.alexiou-nav-cta__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	height: 60px;
	padding-inline: 10px;
	border: 1px solid var(--wp--preset--color--oxblood);
	border-radius: 2px;
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0;
	color: var(--wp--preset--color--oxblood);
	text-decoration: none;
	white-space: nowrap;
	transition: background 0.2s ease, color 0.2s ease;
}
.alexiou-nav-cta__btn:hover {
	background: var(--wp--preset--color--oxblood);
	color: var(--wp--preset--color--white);
}

/* ── Navigation responsive breakpoints ──────────────────────────────────── */

/* ≤ 1600px: right-align nav so it sits close to CTA */
@media (max-width: 1600px) {
	.alexiou-header-main .wp-block-navigation .wp-block-navigation-item__content {
		font-size: 14px;
	}
	.alexiou-site-nav-wrap {
		justify-content: flex-end;
	}
}
/* ≤ 1480px: tighten CTA font */
@media (max-width: 1480px) {
	.alexiou-nav-cta__btn {
		font-size: 12px;
	}
}

/* ≥ 1201px: full desktop — logo + custom nav + CTA all visible (Figma = 1920px) */

/* Hide WP nav block entirely on desktop — site-nav handles it.
   Hiding children only (prev approach) left the flex:1 wrapper in the flow
   and broke the logo/nav/CTA space-between alignment. */
@media (min-width: 1201px) {
	.alexiou-header-main .wp-block-navigation {
		display: none !important;
	}
}

/* 1201–1440px: compress logo + CTA so everything fits without hiding the button */
@media (max-width: 1440px) {
	.alexiou-logo { height: 60px; }
	.alexiou-logo__primary { height: 60px; }
	.alexiou-logo__kleemann { height: 28px; }
	.alexiou-logo__divider { height: 36px; }
	.alexiou-nav-cta__btn { font-size: 11px; padding-inline: 8px; height: 52px; }
}

/* ≤ 1200px: burger only — site-nav-wrap hides, WP nav block shows as burger */
@media (max-width: 1200px) {
	/* Override WP's space-between, then grow the logo to fill remaining space.
	   This reliably pushes search + burger to the right edge:
	   [logo ──── fills all space ────][search][burger] */
	.alexiou-header-main.wp-block-group {
		justify-content: flex-start !important;
	}
	.alexiou-logo-wrap {
		flex: 1 1 auto; /* grow to fill space, shrink if viewport is narrow */
		min-width: 0;
	}
	.alexiou-nav-search {
		flex-shrink: 0;
		margin-left: 0;
	}
	.alexiou-header-main .wp-block-navigation {
		flex: 0 0 auto;
		/* margin-left handled by search button above */
	}
	/* Show hamburger button */
	.alexiou-header-main .wp-block-navigation__responsive-container-open {
		display: flex !important;
		align-items: center;
		justify-content: center;
		width: 44px;
		height: 44px;
		border: 1px solid var(--wp--preset--color--border);
		border-radius: 2px;
		background: transparent;
		color: var(--wp--preset--color--bg-dark);
		cursor: pointer;
		padding: 0;
	}
	/* Hide full nav items when overlay not open */
	.alexiou-header-main .wp-block-navigation__responsive-container:not(.is-menu-open):not(.has-modal-open) {
		display: none !important;
	}
	.alexiou-nav-cta { display: none !important; }
}

/* ── Mobile menu overlay — matches Figma "Mobile — Menu" ── */
.alexiou-header-main .wp-block-navigation__responsive-container.is-menu-open {
	background: rgba(14, 33, 47, 0.92) !important;
	backdrop-filter: blur(10px) !important;
	-webkit-backdrop-filter: blur(10px) !important;
	color: var(--wp--preset--color--white) !important;
	padding: 0 !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
	align-items: stretch !important;
	z-index: 100000;
}
.alexiou-header-main .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog {
	display: flex;
	flex-direction: column;
	min-height: 100%;
	position: relative;
	width: 100%;
	padding: 0 !important;
}
.alexiou-header-main .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	display: flex !important;
	flex-direction: column !important;
	padding: 0 !important;
	flex: 1 !important;
}
.alexiou-header-main .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
	/* Override block's justifyContent:center inline CSS variables */
	--navigation-layout-justify: flex-start !important;
	--navigation-layout-align: flex-start !important;
	justify-content: flex-start !important;
	align-items: stretch !important;
	width: 100% !important;
}
.alexiou-header-main .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	/* Border on item = full-width divider (not indented like padding on the link) */
	border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
}
.alexiou-header-main .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	display: block !important;
	color: #f8f7f4 !important;
	font-family: var(--alexiou-sans) !important;
	font-size: 20px !important;
	font-weight: 400 !important;
	letter-spacing: -1px !important;
	text-transform: none !important;
	text-decoration: none !important;
	text-align: left !important;
	padding: 12px 24px !important;
	border-bottom: none !important;
	line-height: 1.2 !important;
	width: 100% !important;
	box-sizing: border-box !important;
}
.alexiou-header-main .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover {
	color: var(--wp--preset--color--yellow) !important;
}
/* ── Mobile overlay: collapsible submenus ─────────────────────────────────── */

/* Parent has-child item: row layout so label + our toggle arrow are side by side */
/* WP overlay mode sets flex-direction:column — we override for has-child only */
.alexiou-header-main .wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation-item.has-child {
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: center !important;
}
.alexiou-header-main .wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation-item.has-child > .wp-block-navigation-item__content {
	flex: 1 !important;
	min-width: 0 !important;
}
/* WP submenu icon is inside the <a> — we hide it (our JS injects the arrow button) */
.alexiou-header-main .wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation__submenu-icon {
	display: none !important;
}

/* Our injected toggle button (.alexiou-submenu-toggle) */
.alexiou-header-main .alexiou-submenu-toggle {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-shrink: 0 !important;
	width: 48px !important;
	height: 48px !important;
	background: none !important;
	border: none !important;
	color: #f8f7f4 !important;
	cursor: pointer !important;
	padding: 0 !important;
}
.alexiou-header-main .alexiou-submenu-toggle svg {
	transition: transform 0.25s ease !important;
}
.alexiou-header-main .alexiou-submenu-toggle[aria-expanded="true"] svg {
	transform: rotate(180deg) !important;
}

/* Submenu container: full width (wraps below the row), hidden by default.
   Override WP's "always-visible in overlay" rules. */
.alexiou-header-main .wp-block-navigation__responsive-container.is-menu-open
	.has-child .wp-block-navigation__submenu-container {
	display: none !important;
	flex-basis: 100% !important;
	order: 10 !important;
	width: 100% !important;
	min-width: 0 !important;
	position: static !important;
	padding: 0 !important;
	background: rgba(255, 255, 255, 0.06) !important;
}
/* Show when JS adds .alexiou-submenu-open */
.alexiou-header-main .wp-block-navigation__responsive-container.is-menu-open
	.has-child.alexiou-submenu-open .wp-block-navigation__submenu-container {
	display: flex !important;
	flex-direction: column !important;
}

/* Sub-items: indented, slightly smaller, no divider */
.alexiou-header-main .wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation__submenu-container .wp-block-navigation-item {
	border-bottom: none !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	width: 100% !important;
}
.alexiou-header-main .wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	font-size: 17px !important;
	padding: 10px 24px 10px 36px !important;
	color: rgba(248, 247, 244, 0.72) !important;
	font-weight: 400 !important;
}
.alexiou-header-main .wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
	color: var(--wp--preset--color--yellow) !important;
}

/* Close button — fallback position before JS moves it to the white header bar */
.alexiou-header-main .wp-block-navigation__responsive-container-close {
	color: var(--wp--preset--color--text);
	position: absolute;
	top: 13px;
	right: 24px;
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	background: none;
	border: none;
	padding: 0;
	z-index: 10;
}

/* ── Injected mobile menu elements (header.js) ── */

/* Close-button bar at top of overlay (logo now lives in the sticky header above) */
.alexiou-mobile-menu-header {
	background: transparent;
	height: 56px;
	min-height: 56px;
	display: flex;
	align-items: center;
	padding: 0 24px;
	flex-shrink: 0;
	position: relative;
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}
.alexiou-mobile-menu-logo {
	display: flex;
	align-items: center;
	text-decoration: none;
	flex: 1;
	min-width: 0;
}
.alexiou-mobile-menu-logo img {
	height: 48px;
	width: auto;
	display: block;
}
/* Close button repositioned inside the overlay bar (white on dark bg) */
.alexiou-mobile-menu-header .wp-block-navigation__responsive-container-close {
	position: static !important;
	top: auto !important;
	right: auto !important;
	color: white !important;
	flex-shrink: 0;
	margin-left: auto;
	width: 30px;
	height: 30px;
	display: flex !important;
	align-items: center;
	justify-content: center;
}

/* Contact info section */
.alexiou-mobile-menu-footer {
	padding: 24px 24px 16px;
	flex-shrink: 0;
}
.alexiou-mobile-menu-contact {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-bottom: 24px;
}
.alexiou-mobile-menu-contact a,
.alexiou-mobile-menu-contact span {
	font-family: var(--alexiou-sans);
	font-size: 16px;
	font-weight: 400;
	letter-spacing: -0.6px;
	color: white;
	text-decoration: none;
	line-height: 1.2;
}
.alexiou-mobile-menu-contact a {
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* Social icons row */
.alexiou-mobile-menu-social {
	display: flex;
	gap: 8px;
	align-items: center;
}
.alexiou-mobile-menu-social a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border: 0.5px solid var(--wp--preset--color--border);
	flex-shrink: 0;
	color: white;
	transition: border-color 0.2s;
}
.alexiou-mobile-menu-social a:hover {
	border-color: rgba(255, 255, 255, 0.6);
}
.alexiou-mobile-menu-social a svg {
	width: 18px;
	height: 18px;
	fill: white;
	display: block;
}

/* ── Mobile sticky CTA bar — fixed at bottom, oxblood, mobile only ───────── */
.alexiou-sticky-cta {
	display: none;
}
@media (max-width: 768px) {
	.alexiou-sticky-cta {
		display: flex;
		align-items: center;
		justify-content: space-between;
		position: fixed;
		bottom: 0;
		left: 0;
		right: 0;
		z-index: 9990;
		background: var(--wp--preset--color--oxblood);
		height: 60px;
		padding: 0 24px;
		padding-bottom: env(safe-area-inset-bottom, 0px);
		text-decoration: none;
		color: #fff !important;
		font-family: var(--alexiou-mono);
		font-size: 14px;
		letter-spacing: 0.04em;
		text-transform: uppercase;
		transition: opacity 0.2s;
	}
	.alexiou-sticky-cta:hover { opacity: 0.88; }
	.alexiou-sticky-cta svg {
		width: 20px;
		height: 20px;
		stroke: #fff;
		fill: none;
		stroke-width: 2;
		stroke-linecap: round;
		stroke-linejoin: round;
		flex-shrink: 0;
	}
	body { padding-bottom: 60px; }
}

/* CTA bar — harbor-blue, pinned to bottom */
.alexiou-mobile-menu-cta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: var(--wp--preset--color--harbor-blue);
	height: 79px;
	min-height: 79px;
	padding: 0 24px;
	flex-shrink: 0;
	text-decoration: none;
	color: white !important;
	font-family: var(--alexiou-mono);
	font-size: 14px;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	transition: opacity 0.2s;
}
.alexiou-mobile-menu-cta:hover {
	opacity: 0.9;
}
.alexiou-mobile-menu-cta svg {
	width: 20px;
	height: 20px;
	stroke: white;
	fill: none;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
	flex-shrink: 0;
}

/* On desktop the nav container is shown inline — hide injected mobile-only elements */
@media (min-width: 1201px) {
	.alexiou-mobile-menu-header,
	.alexiou-mobile-menu-footer,
	.alexiou-mobile-menu-cta {
		display: none !important;
	}
}

/* -------------------------------------------------------------------------
   8. Hero — Homepage
   ------------------------------------------------------------------------- */
.alexiou-hero {
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	min-height: calc(100vh - var(--alexiou-header-h));
	min-height: calc(100svh - var(--alexiou-header-h));
	background-color: var(--wp--preset--color--bg-dark-blue);
	display: flex;
	flex-direction: column;
	overflow-x: clip; /* changed from hidden so tall content doesn't clip vertically at small viewports */
	margin-block-start: 0;
}
/* Background image — positioned <img> so browsers can use WebP srcset */
.alexiou-hero__bg-img,
.alexiou-hero__bg-video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
	z-index: 0;
	display: block;
}
/* Gradient overlay — transparent top → #20465e bottom (matches Figma) */
.alexiou-hero__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to bottom, rgba(10, 10, 13, 0) 0%, #20465e 100%);
	pointer-events: none;
	z-index: 1;
}
.alexiou-hero__inner {
	position: relative;
	z-index: 2;
	flex: 1;
	max-width: var(--wp--style--global--wide-size);
	width: 100%;
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
	padding-block: 80px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.alexiou-hero__content {
	display: flex;
	flex-direction: column;
	gap: 24px;
	/* Full width — bottom row spans the entire content area */
}

/* Heading: no max-width — <br> in HTML forces the 2-line split */
.alexiou-hero__heading {
	max-width: none;
}

/* Eyebrow tag: JetBrains Mono 14px UPPER, border radius 4px */
.alexiou-hero__eyebrow {
	display: inline-block;
	align-self: flex-start;
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--wp--preset--color--white);
	border: 1px solid rgba(255, 255, 255, 0.4);
	border-radius: 4px;
	padding: 6px 12px;
	line-height: 1;
}

/* Heading: Display 80px Manrope Bold — 2-tone (Figma: line1=#f8f7f4, line2=#fff) */
.alexiou-hero__heading {
	font-family: var(--alexiou-sans);
	font-size: var(--wp--preset--font-size--display);
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: -2px;
	color: var(--wp--preset--color--white);
	margin: 0;
}
.alexiou-hero__heading-line1 {
	color: #f8f7f4;
}
.alexiou-hero__heading-line2 {
	color: #ffffff;
}

/* Thin divider */
.alexiou-hero__divider {
	border: none;
	border-top: 1px solid rgba(255, 255, 255, 0.2);
	margin: 0;
}

/* Bottom row: stats | paragraph | empty */
.alexiou-hero__bottom {
	display: grid;
	grid-template-columns: 1fr 380px 1fr;
	align-items: center;
	gap: 200px;
}
.alexiou-hero__stats {
	display: flex;
	gap: 0;
	list-style: none;
	margin: 0;
	padding: 0;
	flex-shrink: 0;
}
.alexiou-hero__stat {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding-right: 40px;
	border-right: 1px solid rgba(255, 255, 255, 0.15);
}
.alexiou-hero__stat:last-child {
	border-right: none;
	padding-right: 0;
}
.alexiou-hero__stat + .alexiou-hero__stat {
	padding-left: 40px;
}
.alexiou-hero__stat-num {
	font-family: var(--alexiou-sans);
	font-size: 48px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -1px;
	color: var(--wp--preset--color--yellow);
}
.alexiou-hero__stat-label {
	font-family: var(--alexiou-mono);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.4;
	color: #f8f7f4;
	letter-spacing: 0;
	max-width: 130px;
}
.alexiou-hero__paragraph {
	font-family: var(--alexiou-sans);
	font-size: 18px;
	font-weight: 400;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.72);
	letter-spacing: -0.4px;
	margin: 0;
}

/* ── Hero — large desktop (782px – 1700px): collapse 3-col to 2-col ── */
@media (max-width: 1700px) {
	.alexiou-hero__bottom {
		grid-template-columns: 1fr 1fr;
		gap: clamp(40px, 5vw, 100px);
	}
}
/* ── Hero — laptop/tablet (782px – 1330px): paragraph stacks below stats ── */
@media (max-width: 1330px) {
	.alexiou-hero__bottom {
		grid-template-columns: 1fr;
		gap: 28px;
	}
}
/* Hero paragraph: never wider than its container */
.alexiou-hero__paragraph {
	max-width: 90%;
}

/* ── Hero — mobile (390 / 375) ── */
@media (max-width: 781px) {
	.alexiou-hero__inner {
		padding-top: 80px;
		padding-bottom: 56px;
		justify-content: flex-start; /* center-clip fix: tall content starts at top, hero expands */
	}
	.alexiou-hero__heading {
		font-size: 44px;
		letter-spacing: -1px;
		max-width: 100%;
	}
	.alexiou-hero__bottom {
		grid-template-columns: 1fr;
		gap: 32px;
	}
	.alexiou-hero__stats {
		flex-wrap: wrap;
		gap: 0;
		row-gap: 40px;
		justify-content: flex-start;
	}
	.alexiou-hero__stat {
		padding-right: 20px;
	}
	.alexiou-hero__stat + .alexiou-hero__stat {
		padding-left: 20px;
	}
	.alexiou-hero__stat:last-child {
		padding-left: 0;
	}
	.alexiou-hero__stat-num {
		font-size: 32px;
	}
	.alexiou-hero__stat-label {
		font-size: 13px;
	}
}
@media (max-width: 500px) {
	.alexiou-hero__stat + .alexiou-hero__stat {
		padding-left: 12px;
	}
	.alexiou-hero__stat-num {
		font-size: 22px;
	}
	.alexiou-hero__stat-label {
		font-size: 11px;
	}
}
@media (max-width: 420px) {
	.alexiou-hero__stat:last-child {
		padding-left: 0 !important;
	}
}
@media (max-width: 767px) {
	.alexiou-hero__stat:last-child {
		display: none;
	}
}
@media (max-width: 781px) {
	/* Topbar: stack on very small if needed */
	.alexiou-topbar__inner {
		flex-direction: column;
		align-items: flex-start;
		gap: 4px;
		padding-block: 8px;
	}
}

/* -------------------------------------------------------------------------
   9. Stats — Homepage section (04 — Stats)
   Figma: bg #f0f4f8, height 201px, 4 stats, gap 245px, max-width 1472px
   ------------------------------------------------------------------------- */

.alexiou-stats {
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	background: #f0f4f8;
	border-top: 1px solid #d1d1d1;
	border-bottom: 1px solid #d1d1d1;
	margin-block: 0;
	overflow-x: clip; /* prevent 100vw from contributing to page horizontal scroll */
}
.alexiou-stats__inner {
	max-width: 1472px;
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter, clamp(20px, 4vw, 60px));
	padding-block: 47px 72px;
}
.alexiou-stats__grid {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	list-style: none;
	margin: 0;
	padding: 0;
}
/* Left soft-blue bar: 1px × 80px, offset 9px from top — Figma exact */
.alexiou-stats__item {
	display: flex;
	flex-direction: column;
	padding-left: 28px;
	position: relative;
}
.alexiou-stats__item::before {
	content: '';
	position: absolute;
	left: 0;
	top: 9px;
	width: 1px;
	height: 80px;
	background: #6b8596;
}
.alexiou-stats__number {
	font-family: var(--alexiou-sans);
	font-size: clamp(22px, 2.4vw, 36px);
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.5px;
	color: var(--wp--preset--color--harbor-blue);
}
.alexiou-stats__label {
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	line-height: normal;
	color: #6b6b6b;
	letter-spacing: 0;
	margin-top: 20px;
}

/* Stats — laptop: slightly tighter number font — MUST come before narrower breakpoints */
@media (max-width: 1400px) {
	.alexiou-stats__number {
		font-size: clamp(20px, 2.1vw, 30px);
	}
}
/* ── Stats — tablet/mobile (≤940px): single column, centered, no divider ── */
@media (max-width: 940px) {
	.alexiou-stats__inner {
		padding-block: 40px;
		padding-inline: var(--wp--custom--gutter);
	}
	.alexiou-stats__grid {
		display: grid;
		grid-template-columns: 1fr;
		gap: 32px 0;
	}
	.alexiou-stats__item {
		padding-left: 0;
		min-width: 0;
		text-align: center;
	}
	.alexiou-stats__item::before {
		display: none;
	}
	.alexiou-stats__number {
		font-size: 24px;
		overflow-wrap: break-word;
		word-break: break-word;
	}
}

/* -------------------------------------------------------------------------
   10. Services — Homepage section
   ------------------------------------------------------------------------- */
.alexiou-services-hp {
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	background: var(--wp--preset--color--white);
	margin-block: 0;
}
.alexiou-services-hp__inner {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
	padding-block: 119px 80px;
	display: flex;
	flex-direction: column;
	gap: 0;
}

/* Header row: heading left | intro right */
.alexiou-services-hp__header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
.alexiou-services-hp__header-left {
	display: flex;
	flex-direction: column;
	gap: 10px;
	flex: 0 0 auto;
	max-width: 623px;
}
.alexiou-services-hp__eyebrow {
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0;
	color: var(--wp--preset--color--oxblood);
}
.alexiou-services-hp .alexiou-services-hp__heading {
	font-family: var(--alexiou-sans);
	font-size: clamp(32px, 3vw, 48px);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -1px;
	color: var(--wp--preset--color--harbor-blue);
	margin: 0;
}
.alexiou-services-hp__intro {
	font-family: var(--alexiou-sans);
	font-size: 20px;
	font-weight: 400;
	line-height: 1.6;
	color: #4a4a4a;
	letter-spacing: -1px;
	margin: 0;
	max-width: 569px;
}

/* Horizontal rule between header and cards grid */
.alexiou-services-hp__rule {
	border: none;
	border-top: 1px solid #d1d1d1;
	margin: 30px 0;
}

/* 3-col card grid — card 01 double width per design (866px : 422px : 422px) */
/* On hover any card expands to the wide slot; others shrink equally */
.alexiou-services-hp__grid {
	display: grid;
	grid-template-columns: 2.052fr 1fr 1fr;
	gap: 24px;
	list-style: none;
	margin: 0;
	padding: 0;
	transition: grid-template-columns 0.4s ease;
}
.alexiou-services-hp__grid:has(.alexiou-services-hp__card:nth-child(2):hover) {
	grid-template-columns: 1fr 2.052fr 1fr;
}
.alexiou-services-hp__grid:has(.alexiou-services-hp__card:nth-child(3):hover) {
	grid-template-columns: 1fr 1fr 2.052fr;
}
.alexiou-services-hp__card {
	overflow: hidden;
	position: relative;
}
.alexiou-services-hp__card-link {
	display: block;
	position: relative;
	text-decoration: none;
	color: inherit;
}

/* Image fills card — fixed 460px height per Figma */
.alexiou-services-hp__card-img {
	position: relative;
	height: 460px;
	overflow: hidden;
	background: var(--wp--preset--color--bg-dark-blue);
}
.alexiou-services-hp__card-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.5s ease;
}
.alexiou-services-hp__card:hover .alexiou-services-hp__card-img img {
	transform: scale(1.04);
}
.alexiou-services-hp__card-placeholder {
	width: 100%;
	height: 100%;
	background: var(--wp--preset--color--bg-dark-blue);
}

/* Counter chip top-left */
.alexiou-services-hp__card-counter {
	position: absolute;
	top: 24px;
	left: 24px;
	width: 32px;
	height: 32px;
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	color: var(--wp--preset--color--white);
	letter-spacing: 0;
	line-height: 1;
	text-transform: uppercase;
	z-index: 2;
}

/* Dark gradient overlay — bottom portion */
.alexiou-services-hp__card-overlay {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 28px 24px 24px;
	background: linear-gradient(to top, rgba(0,0,0,0.82) 0%, rgba(0,0,0,0.55) 55%, transparent 100%);
	display: flex;
	flex-direction: column;
	gap: 8px;
	z-index: 2;
}
.alexiou-services-hp__card-eyebrow {
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0;
	color: var(--wp--preset--color--white);
}
.alexiou-services-hp__card-title {
	font-family: var(--alexiou-sans);
	font-size: 24px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0;
	color: var(--wp--preset--color--white);
	margin: 0;
}
.alexiou-services-hp__card-excerpt {
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	color: #f8f7f4;
	margin: 0;
}

/* Arrow button — bottom-right per Figma, sibling of overlay (no text overlap) */
.alexiou-services-hp__card-arrow {
	position: absolute;
	bottom: 24px;
	right: 24px;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--wp--preset--color--harbor-blue);
	color: var(--wp--preset--color--white);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.2s ease, transform 0.2s ease;
	z-index: 3;
}
.alexiou-services-hp__card:hover .alexiou-services-hp__card-arrow {
	background: var(--wp--preset--color--oxblood);
	transform: translateX(3px);
}

/* CTA row — filled button */
.alexiou-services-hp__footer {
	display: flex;
	justify-content: flex-end;
	margin-top: 32px;
}
.alexiou-services-hp__cta {
	font-family: var(--alexiou-mono);
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0;
	color: var(--wp--preset--color--white);
	background: var(--wp--preset--color--harbor-blue);
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	height: 60px;
	padding-inline: 28px;
	border-radius: 2px;
	white-space: nowrap;
	transition: background 0.2s ease;
}
.alexiou-services-hp__cta:hover {
	background: var(--wp--preset--color--bg-dark-blue);
}

/* ── Services homepage — mobile ── */
@media (max-width: 781px) {
	.alexiou-services-hp__inner {
		padding-block: 64px 40px;
		gap: 24px;
	}
	.alexiou-services-hp__header {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
	}
	.alexiou-services-hp__header-left {
		max-width: 100%;
	}
	.alexiou-services-hp .alexiou-services-hp__heading {
		font-size: 28px;
	}
	.alexiou-services-hp__rule {
		margin: 0;
	}
	.alexiou-services-hp__grid {
		grid-template-columns: 1fr;
		gap: 16px;
	}
	.alexiou-services-hp__card-img {
		height: auto;
		aspect-ratio: 4 / 3;
	}
}

/* -------------------------------------------------------------------------
   11. About — Homepage section (05 — About)
   Figma: white bg, 1920×995px. Left image 43% bleed-left, right content 57%.
   Content starts at x=973px → left-padding = 973-825 = 148px from image edge.
   ------------------------------------------------------------------------- */
.alexiou-about-hp {
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	background: var(--wp--preset--color--white);
	/* Grid: image column fills 43%, content takes the rest — row height auto-matches */
	display: grid;
	grid-template-columns: 43% 1fr;
	min-height: 995px;
	overflow: hidden;
	margin-block: 0;
}

/* Left: image grid cell — position:relative so img can be abs-positioned inside */
.alexiou-about-hp__image {
	position: relative;
	overflow: hidden;
}
.alexiou-about-hp__image img {
	position: absolute;
	inset: 0;
	width: 100%;
	max-width: none;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Right: content grid cell */
.alexiou-about-hp__content {
	display: flex;
	flex-direction: column;
	padding-left: 148px;
	padding-right: 80px;
	padding-block: 82px 80px;
	min-width: 0; /* prevent grid blowout */
}

/* Top: eyebrow + heading (left) + Kleemann logo (right) */
.alexiou-about-hp__top {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 40px;
}
.alexiou-about-hp__text-col {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.alexiou-about-hp__eyebrow {
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0;
	color: var(--wp--preset--color--oxblood);
}
.alexiou-about-hp__heading {
	font-family: var(--alexiou-sans);
	font-size: 48px;
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -1px;
	color: var(--wp--preset--color--harbor-blue);
	margin: 0;
	max-width: 540px;
}
.alexiou-about-hp__kleemann {
	flex-shrink: 0;
	margin-left: 24px;
}
.alexiou-about-hp__kleemann img {
	width: 180px;
	height: 127px;
	object-fit: contain;
	display: block;
}

/* Lead paragraph */
.alexiou-about-hp__lead {
	font-family: var(--alexiou-sans);
	font-size: 20px;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: -1px;
	color: #4a4a4a;
	margin: 0 0 40px;
}

/* Feature cards carousel — transform-based, button-controlled */
.alexiou-about-hp__slider-wrap {
	overflow: hidden;
	flex-shrink: 0;
	/* Extend 80px past content padding-right → reaches section right edge (Figma: w=947px) */
	width: calc(100% + 80px);
	min-width: 0;
}
.alexiou-about-hp__slider {
	display: flex;
	gap: 23px;
	list-style: none;
	margin: 0;
	padding: 0;
	transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	will-change: transform;
}
.alexiou-about-hp__card {
	flex: 0 0 422px;
	height: 364px;
	background: #f0f4f8;
	padding: 32px;
	display: flex;
	flex-direction: column;
	gap: 21px;
	position: relative;
	overflow: hidden;
}
.alexiou-about-hp__card::before {
	content: '';
	position: absolute;
	inset: 0;
	background-image: var(--ahp-bg, none);
	background-size: cover;
	background-position: center;
	opacity: 0;
	transition: opacity 0.45s ease;
}
.alexiou-about-hp__card::after {
	content: '';
	position: absolute;
	inset: 0;
	background: rgba(46, 94, 126, 0.85);
	opacity: 0;
	transition: opacity 0.45s ease;
}
.alexiou-about-hp__card:hover::before,
.alexiou-about-hp__card:hover::after {
	opacity: 1;
}
.alexiou-about-hp__card-num {
	font-family: var(--alexiou-sans);
	font-size: 64px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -2px;
	color: var(--wp--preset--color--harbor-blue);
	position: relative;
	z-index: 1;
	transition: color 0.35s ease;
}
.alexiou-about-hp__card-text {
	font-family: var(--alexiou-sans);
	font-size: 24px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0;
	color: var(--wp--preset--color--bg-dark-blue);
	margin: 0;
	position: relative;
	z-index: 1;
	transition: color 0.35s ease;
}
.alexiou-about-hp__card:hover .alexiou-about-hp__card-num,
.alexiou-about-hp__card:hover .alexiou-about-hp__card-text {
	color: #fff;
}

/* Bottom: prev/next nav + CTA */
.alexiou-about-hp__bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 24px;
}
.alexiou-about-hp__nav {
	display: flex;
	gap: 14px;
}
.alexiou-about-hp__nav-btn {
	-webkit-appearance: none;
	appearance: none;
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #7a7a7a;
	border-radius: 0;
	background: transparent;
	color: #0e212f;
	font-size: 16px;
	font-family: var(--alexiou-sans);
	line-height: 1;
	cursor: pointer;
	transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease, opacity 0.2s ease;
}
.alexiou-about-hp__nav-btn:hover:not(:disabled) {
	background: var(--wp--preset--color--harbor-blue);
	color: var(--wp--preset--color--white);
	border-color: var(--wp--preset--color--harbor-blue);
}
.alexiou-about-hp__nav-btn:disabled {
	opacity: 0.3;
	cursor: default;
}
.alexiou-about-hp__cta {
	font-family: var(--alexiou-mono);
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0;
	color: var(--wp--preset--color--white);
	background: var(--wp--preset--color--harbor-blue);
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	height: 60px;
	padding-inline: 28px;
	border-radius: 2px;
	white-space: nowrap;
	transition: background 0.2s ease;
}
.alexiou-about-hp__cta:hover {
	background: var(--wp--preset--color--bg-dark-blue);
}

/* ── About — mobile ── */
@media (max-width: 781px) {
	.alexiou-about-hp {
		grid-template-columns: 1fr;
		min-height: unset;
	}
	.alexiou-about-hp__image {
		height: 280px;
	}
	.alexiou-about-hp__content {
		padding-left: var(--wp--custom--gutter);
		padding-right: var(--wp--custom--gutter);
		padding-block: 48px;
	}
	.alexiou-about-hp__top {
		flex-direction: column-reverse;
		gap: 16px;
	}
	.alexiou-about-hp__kleemann {
		margin-left: 0;
	}
	.alexiou-about-hp__kleemann img {
		width: 120px;
		height: auto;
	}
	.alexiou-about-hp__heading {
		font-size: 32px;
	}
	.alexiou-about-hp__lead {
		font-size: 16px;
	}
	.alexiou-about-hp__card {
		flex: 0 0 300px;
		height: auto;
		min-height: 240px;
	}
	.alexiou-about-hp__card-num {
		font-size: 48px;
	}
	.alexiou-about-hp__card-text {
		font-size: 18px;
	}
}

/* =========================================================================
   10 — Products homepage section
   ========================================================================= */
.alexiou-products-hp {
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	min-height: 843px;
	overflow: hidden;
	background: var(--wp--preset--color--bg-dark-blue);
	margin-block: 0;
}
.alexiou-products-hp__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
}
.alexiou-products-hp__bg img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.alexiou-products-hp__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(99.88deg, rgba(14,33,47,0.96) 43.052%, rgba(44,105,149,0.96) 98.186%);
}
.alexiou-products-hp__inner {
	position: relative;
	z-index: 1;
	padding-left: 81px;
	padding-right: 80px;
	padding-top: 96px;
	padding-bottom: 95px;
}
.alexiou-products-hp__eyebrow {
	display: block;
	font-family: var(--alexiou-mono);
	font-size: 14px;
	color: var(--wp--preset--color--yellow);
	text-transform: uppercase;
	letter-spacing: 0;
	line-height: 1;
	margin-bottom: 12px;
}
.alexiou-products-hp__heading {
	font-size: 48px;
	font-weight: 700;
	letter-spacing: -1px;
	color: var(--wp--preset--color--bg-light);
	line-height: 1.1;
	margin: 0;
	max-width: 620px;
}
.alexiou-products-hp__row {
	display: flex;
	align-items: flex-end;
	height: 460px;
	margin-top: 42px;
}
/* Left: category nav panel */
.alexiou-products-hp__nav {
	flex: 0 0 309px;
	align-self: flex-end;
	margin-bottom: 29px;
	background: #fff;
	padding-top: 0;
}
.alexiou-products-hp__nav ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.alexiou-products-hp__nav-item {
	font-size: 20px;
	letter-spacing: -1px;
	color: var(--wp--preset--color--soft-blue);
	padding: 12px 20px;
	cursor: pointer;
	border-top: 1px solid var(--wp--preset--color--border);
	line-height: 1.3;
	transition: color 0.2s;
	white-space: normal;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}
.alexiou-products-hp__nav-item:first-child {
	border-top: none;
}
.alexiou-products-hp__nav-item.is-active {
	color: var(--wp--preset--color--bg-dark-blue);
}
.alexiou-products-hp__nav-arrow {
	flex-shrink: 0;
	color: var(--wp--preset--color--bg-dark-blue);
	line-height: 1;
	display: none;
}
.alexiou-products-hp__nav-item.is-active .alexiou-products-hp__nav-arrow {
	display: block;
}
/* Right: image panel (vertical slider) */
.alexiou-products-hp__panel {
	flex: 0 1 859px;
	margin-left: auto;
	min-width: 0;
	height: 460px;
	overflow: hidden;
	align-self: flex-start;
}
.alexiou-products-hp__cards {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 45px;
	transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	will-change: transform;
}
.alexiou-products-hp__card {
	flex: 0 0 460px;
	position: relative;
	overflow: hidden;
	background: var(--wp--preset--color--bg-dark-blue);
}
.alexiou-products-hp__card img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.alexiou-products-hp__card-overlay {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 200px;
	background: linear-gradient(to bottom, transparent, rgba(0,0,0,0.82));
	pointer-events: none;
	z-index: 1;
}
.alexiou-products-hp__card-tag {
	position: absolute;
	bottom: 100px;
	left: 30px;
	font-family: var(--alexiou-mono);
	font-size: 16px;
	color: #fff;
	text-transform: uppercase;
	letter-spacing: 0;
	z-index: 2;
	line-height: 1;
}
.alexiou-products-hp__card-desc {
	position: absolute;
	bottom: 30px;
	left: 30px;
	right: 66px;
	font-size: 16px;
	color: #fff;
	letter-spacing: -0.6px;
	line-height: 1.5;
	margin: 0;
	z-index: 2;
}
.alexiou-products-hp__card-btn {
	position: absolute;
	top: 27px;
	right: 23px;
	width: 51px;
	height: 51px;
	background: #fff;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	color: #101010;
	font-size: 16px;
	z-index: 2;
	transition: opacity 0.2s;
}
.alexiou-products-hp__card-btn:hover {
	opacity: 0.85;
}

/* ── Products — mobile ── */
@media (max-width: 781px) {
	.alexiou-products-hp__inner {
		padding-left: var(--wp--custom--gutter);
		padding-right: var(--wp--custom--gutter);
		padding-top: 48px;
		padding-bottom: 48px;
	}
	.alexiou-products-hp__heading {
		font-size: 32px;
	}
	.alexiou-products-hp__row {
		flex-direction: column;
		height: auto;
		align-items: stretch;
		margin-top: 24px;
	}
	.alexiou-products-hp__nav {
		flex: 0 0 auto;
		align-self: auto;
		margin-bottom: 16px;
		margin-left: 0;
		width: 100%;
	}
	.alexiou-products-hp__nav-item {
		white-space: normal;
		font-size: 16px;
	}
	.alexiou-products-hp__panel {
		flex: 0 0 auto;
		margin-left: 0;
		width: 100%;
		height: 320px;
	}
	.alexiou-products-hp__card {
		flex: 0 0 320px;
	}
}

/* -------------------------------------------------------------------------
   15. Erga — Homepage ("Επιλεγμένα Έργα")
   ------------------------------------------------------------------------- */
.alexiou-erga-hp {
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	background: var(--wp--preset--color--white);
	border-top: 1px solid var(--wp--preset--color--border);
	margin-block: 0;
}
.alexiou-erga-hp__inner {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
	padding-block: 95px 80px;
}

/* ── Section header row ── */
.alexiou-erga-hp__top-row {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	margin-bottom: 50px;
}
.alexiou-erga-hp__titles {
	display: flex;
	flex-direction: column;
	gap: 0;
}
.alexiou-erga-hp__eyebrow {
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0;
	color: var(--wp--preset--color--oxblood);
	display: block;
	margin-bottom: 12px;
}
.alexiou-erga-hp__heading {
	font-family: var(--alexiou-sans);
	font-size: 48px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -1px;
	color: var(--wp--preset--color--harbor-blue);
	margin: 0;
}

/* Mobile CTA hidden by default (shown via media query) */
.alexiou-erga-hp__cta-link--mobile { display: none; }

/* ── "ΔΕΙΤΕ ΟΛΑ ΤΑ ΕΡΓΑ →" underline CTA ── */
.alexiou-erga-hp__cta-link {
	font-family: var(--alexiou-mono);
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0;
	color: var(--wp--preset--color--bg-dark);
	text-decoration: none;
	border-bottom: 1px solid rgba(16, 16, 16, 0.4);
	padding-bottom: 4px;
	white-space: nowrap;
	flex-shrink: 0;
	transition: color 0.2s ease, border-color 0.2s ease;
}
.alexiou-erga-hp__cta-link:hover {
	color: var(--wp--preset--color--harbor-blue);
	border-bottom-color: var(--wp--preset--color--harbor-blue);
}

/* ── Cards grid ── */
.alexiou-erga-hp__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 26px;
	list-style: none;
	margin: 0;
	padding: 0;
}

/* ── Individual card ── */
.alexiou-erga-hp__card {
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--border);
	overflow: hidden;
	display: flex;
	flex-direction: column;
}

/* Image section (~438 / 578 = 75.6% of card height) */
.alexiou-erga-hp__card-link {
	display: block;
	text-decoration: none;
}
.alexiou-erga-hp__card-img {
	position: relative;
	aspect-ratio: 420 / 438;
	overflow: hidden;
}
.alexiou-erga-hp__card-img img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	display: block;
	transition: transform 0.4s ease;
}
.alexiou-erga-hp__card:hover .alexiou-erga-hp__card-img img {
	transform: scale(1.04);
}
/* Gradient overlay */
.alexiou-erga-hp__card-img::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0.45) 100%);
	pointer-events: none;
}
/* Placeholder when no image */
.alexiou-erga-hp__card-img-placeholder {
	position: absolute;
	inset: 0;
	background: var(--wp--preset--color--bg-light);
}

/* Badge (category tag top-left) */
.alexiou-erga-hp__card-badge {
	position: absolute;
	top: 17px;
	left: 17px;
	background: rgba(255, 255, 255, 0.8);
	height: 27px;
	display: flex;
	align-items: center;
	padding-inline: 10px;
	font-family: var(--alexiou-mono);
	font-size: 12px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0;
	color: var(--wp--preset--color--bg-dark);
	white-space: nowrap;
	z-index: 1;
}

/* Card body (title) */
.alexiou-erga-hp__card-body {
	padding: 17px 17px 0;
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: stretch;
}
.alexiou-erga-hp__card-title {
	font-family: var(--alexiou-sans);
	font-size: 20px;
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: 0;
	color: var(--wp--preset--color--text);
	margin: 0;
}
.alexiou-erga-hp__card-title a {
	text-decoration: none;
	color: inherit;
	transition: color 0.2s ease;
}
.alexiou-erga-hp__card-title a:hover {
	color: var(--wp--preset--color--harbor-blue);
}
.alexiou-erga-hp__card:hover .alexiou-erga-hp__card-title a {
	text-decoration: underline;
	text-underline-offset: 3px;
}
.alexiou-erga-hp__card-footer {
	max-height: 0;
	overflow: hidden;
	opacity: 0;
	transition: max-height 0.3s ease, opacity 0.25s ease;
}
.alexiou-erga-hp__card:hover .alexiou-erga-hp__card-footer {
	max-height: 60px;
	opacity: 1;
}
.alexiou-erga-hp__card-footer-rule {
	height: 0.5px;
	background: var(--wp--preset--color--border);
	margin-bottom: 4px;
}
.alexiou-erga-hp__card-footer-text {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding: 8px 0 16px;
	font-family: var(--alexiou-sans);
	font-size: 16px;
	font-weight: 400;
	letter-spacing: -0.6px;
	color: var(--wp--preset--color--bg-dark);
	text-decoration: none;
}

/* ── Mobile ── */
@media (max-width: 781px) {
	.alexiou-erga-hp__inner {
		padding-block: 60px 48px;
	}
	.alexiou-erga-hp__top-row {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
		margin-bottom: 32px;
	}
	.alexiou-erga-hp__heading {
		font-size: 32px;
	}
	.alexiou-erga-hp__grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	.alexiou-erga-hp__card-img {
		aspect-ratio: 4 / 3;
	}
}

/* -------------------------------------------------------------------------
   16. Testimonials — Homepage
   ------------------------------------------------------------------------- */
.alexiou-testimonials-hp {
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	background: var(--wp--preset--color--harbor-blue);
	margin-block: 0;
	overflow: hidden;
	min-height: 576px; /* sized by tallest slide — never changes during navigation */
}
.alexiou-testimonials-hp__inner {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
	display: grid;
	grid-template-columns: 515px 1fr;
	align-items: stretch;
}

/* ── Left column ── */
.alexiou-testimonials-hp__left {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding-block: 95px 80px;
	border-right: none;
}
.alexiou-testimonials-hp__left-top {
	display: flex;
	flex-direction: column;
	gap: 0;
}
.alexiou-testimonials-hp__eyebrow {
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0;
	color: var(--wp--preset--color--yellow);
	display: block;
	margin-bottom: 12px;
}
.alexiou-testimonials-hp__heading {
	font-family: var(--alexiou-sans);
	font-size: 48px;
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -1px;
	color: var(--wp--preset--color--white);
	margin: 0;
}
/* Left-side divider line + counter row */
.alexiou-testimonials-hp__left-bottom {
	display: flex;
	align-items: baseline;
	gap: 0;
	padding-top: 24px;
	border-top: 1px solid rgba(255, 255, 255, 0.2);
}
.alexiou-testimonials-hp__counter-current {
	font-family: var(--alexiou-sans);
	font-size: 30px;
	font-weight: 600;
	line-height: 1;
	color: var(--wp--preset--color--yellow);
}
.alexiou-testimonials-hp__counter-sep,
.alexiou-testimonials-hp__counter-total {
	font-family: var(--alexiou-sans);
	font-size: 20px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: -1px;
	color: var(--wp--preset--color--bg-light);
}

/* ── Right column ── */
.alexiou-testimonials-hp__right {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding-block: 95px 80px;
	padding-left: 80px;
}
.alexiou-testimonials-hp__right-top {
	flex: 1;
	position: relative;
	display: flex;
	flex-direction: column;
}
.alexiou-testimonials-hp__quote-icon {
	margin-bottom: 16px;
	line-height: 0;
}
/* Slides — CSS grid stacking: all slides occupy same cell,
   height = tallest slide (never changes), only opacity switches */
.alexiou-testimonials-hp__slides {
	display: grid;
	grid-template-areas: "stack";
}
.alexiou-testimonials-hp__slide {
	grid-area: stack;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.35s ease;
}
.alexiou-testimonials-hp__slide.is-active {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}
.alexiou-testimonials-hp__quote {
	font-family: var(--alexiou-sans);
	font-size: 24px;
	font-weight: 600;
	line-height: 1.45;
	letter-spacing: 0;
	color: var(--wp--preset--color--white);
	margin: 0;
	padding: 0;
	border: none;
}
/* Right-side divider */
.alexiou-testimonials-hp__divider {
	height: 1px;
	background: rgba(255, 255, 255, 0.2);
	margin-block: 24px;
}
/* Attribution — same grid stacking trick */
.alexiou-testimonials-hp__right-bottom {
	display: flex;
	flex-direction: column;
	gap: 24px;
	flex-shrink: 0;
}
.alexiou-testimonials-hp__attribution {
	display: grid;
	grid-template-areas: "stack";
}
.alexiou-testimonials-hp__attr-item {
	grid-area: stack;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.35s ease;
}
.alexiou-testimonials-hp__attr-item.is-active {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}
.alexiou-testimonials-hp__author {
	font-family: var(--alexiou-sans);
	font-size: 16px;
	font-weight: 400;
	letter-spacing: -0.6px;
	color: var(--wp--preset--color--white);
	margin: 0 0 6px;
}
.alexiou-testimonials-hp__role {
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	color: var(--wp--preset--color--bg-light);
	margin: 0;
}
/* Mobile counter: hidden by default, shown via media query */
.alexiou-testimonials-hp__counter-mobile { display: none; }

/* Footer row: dots left, nav buttons right */
.alexiou-testimonials-hp__footer-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
/* Dots */
.alexiou-testimonials-hp__dots {
	display: flex;
	align-items: center;
	gap: 5px;
}
.alexiou-testimonials-hp__dot {
	-webkit-appearance: none;
	appearance: none;
	display: block;
	width: 22px;
	height: 2px;
	border-radius: 4px;
	background: var(--wp--preset--color--border);
	border: none;
	padding: 0;
	cursor: pointer;
	transition: background 0.2s ease, width 0.2s ease;
}
.alexiou-testimonials-hp__dot.is-active {
	width: 36px;
	background: var(--wp--preset--color--yellow);
}
/* Nav buttons */
.alexiou-testimonials-hp__nav {
	display: flex;
	gap: 8px;
}
.alexiou-testimonials-hp__btn {
	-webkit-appearance: none;
	appearance: none;
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--wp--preset--color--bg-light);
	border-radius: 0;
	background: transparent;
	color: var(--wp--preset--color--white);
	font-size: 16px;
	font-family: var(--alexiou-sans);
	cursor: pointer;
	transition: background 0.2s ease, color 0.2s ease;
}
.alexiou-testimonials-hp__btn:hover:not(:disabled) {
	background: rgba(255, 255, 255, 0.15);
}
.alexiou-testimonials-hp__btn:disabled {
	opacity: 0.35;
	cursor: default;
}

/* ── Mobile ── */
@media (max-width: 781px) {
	.alexiou-testimonials-hp__inner {
		grid-template-columns: 1fr;
	}
	.alexiou-testimonials-hp__left {
		padding-block: 60px 32px;
		border-bottom: 1px solid rgba(255, 255, 255, 0.2);
	}
	.alexiou-testimonials-hp__left-bottom {
		border-top: none;
		padding-top: 0;
		margin-top: 32px;
	}
	.alexiou-testimonials-hp__heading {
		font-size: 32px;
	}
	.alexiou-testimonials-hp__right {
		padding-left: 0;
		padding-block: 40px 60px;
	}
	.alexiou-testimonials-hp__quote {
		font-size: 18px;
	}
}

/* -------------------------------------------------------------------------
   17. Blog — Homepage
   ------------------------------------------------------------------------- */
.alexiou-blog-hp {
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	background: var(--wp--preset--color--white);
	margin-block: 0;
}
.alexiou-blog-hp__inner {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
	padding-block: 83px 80px;
}

/* ── Section header row ── */
.alexiou-blog-hp__top-row {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	margin-bottom: 45px;
}
.alexiou-blog-hp__titles {
	display: flex;
	flex-direction: column;
}
.alexiou-blog-hp__eyebrow {
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0;
	color: var(--wp--preset--color--oxblood);
	display: block;
	margin-bottom: 12px;
}
.alexiou-blog-hp__heading {
	font-family: var(--alexiou-sans);
	font-size: 48px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -1px;
	color: var(--wp--preset--color--harbor-blue);
	margin: 0;
}
.alexiou-blog-hp__cta-link {
	font-family: var(--alexiou-mono);
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0;
	color: var(--wp--preset--color--bg-dark);
	text-decoration: none;
	border-bottom: 1px solid rgba(16, 16, 16, 0.4);
	padding-bottom: 4px;
	white-space: nowrap;
	flex-shrink: 0;
	transition: color 0.2s ease, border-color 0.2s ease;
}
.alexiou-blog-hp__cta-link:hover {
	color: var(--wp--preset--color--harbor-blue);
	border-bottom-color: var(--wp--preset--color--harbor-blue);
}

/* ── Cards grid ── */
.alexiou-blog-hp__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 26px;
	list-style: none;
	margin: 0;
	padding: 0;
}

/* ── Individual card ── */
.alexiou-blog-hp__card {
	display: flex;
	flex-direction: column;
	border: 1px solid var(--wp--preset--color--border);
	background: var(--wp--preset--color--white);
	overflow: hidden;
}
.alexiou-blog-hp__card-img-link {
	display: block;
	text-decoration: none;
	flex-shrink: 0;
}
.alexiou-blog-hp__card-img {
	position: relative;
	aspect-ratio: 420 / 259;
	overflow: hidden;
}
.alexiou-blog-hp__card-img img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	display: block;
	transition: transform 0.4s ease;
}
.alexiou-blog-hp__card:hover .alexiou-blog-hp__card-img img {
	transform: scale(1.04);
}
.alexiou-blog-hp__card-img-placeholder {
	position: absolute;
	inset: 0;
	background: var(--wp--preset--color--bg-light);
}

/* Card body */
.alexiou-blog-hp__card-body {
	display: flex;
	flex-direction: column;
	flex: 1;
	padding: 28px 20px 0;
}
.alexiou-blog-hp__card-meta {
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	color: var(--wp--preset--color--text-secondary);
	margin: 0 0 12px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.alexiou-blog-hp__card-title {
	font-family: var(--alexiou-sans);
	font-size: 20px;
	font-weight: 400;
	line-height: 1.4;
	letter-spacing: -1px;
	color: var(--wp--preset--color--bg-dark);
	margin: 0;
	flex: 1;
	/* Clamp to 4 lines */
	display: -webkit-box;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.alexiou-blog-hp__card-title a {
	text-decoration: none;
	color: inherit;
	transition: color 0.2s ease;
}
.alexiou-blog-hp__card-title a:hover {
	color: var(--wp--preset--color--harbor-blue);
}

/* Footer: rule + "Περισσότερα →" */
.alexiou-blog-hp__card-footer {
	border-top: 1px solid var(--wp--preset--color--border);
	margin-top: 16px;
	padding-block: 16px 20px;
}
.alexiou-blog-hp__card-read-more {
	display: flex;
	align-items: center;
	justify-content: space-between;
	text-decoration: none;
	font-family: var(--alexiou-sans);
	font-size: 16px;
	font-weight: 400;
	letter-spacing: -0.6px;
	color: var(--wp--preset--color--bg-dark);
	transition: color 0.2s ease;
}
.alexiou-blog-hp__card-read-more:hover {
	color: var(--wp--preset--color--harbor-blue);
}

/* ── Mobile ── */
@media (max-width: 781px) {
	.alexiou-blog-hp__inner {
		padding-block: 60px 48px;
	}
	.alexiou-blog-hp__top-row {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
		margin-bottom: 32px;
	}
	.alexiou-blog-hp__heading {
		font-size: 32px;
	}
	.alexiou-blog-hp__grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}
}

/* -------------------------------------------------------------------------
   18. CTA — "Ξεκινήστε με μας"
   ------------------------------------------------------------------------- */
.alexiou-cta-hp {
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	min-height: 690px;
	margin-block: 0;
	overflow: hidden;
}

/* ── Background ── */
.alexiou-cta-hp__bg-img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	z-index: 0;
}
.alexiou-cta-hp__overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	background:
		linear-gradient(269.14deg, rgba(2, 2, 2, 0) 1.76%, rgba(2, 2, 2, 0.81) 84.87%),
		linear-gradient(90deg, rgba(46, 94, 126, 0.4) 0%, rgba(46, 94, 126, 0.4) 100%),
		linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%);
}

/* ── Inner grid ── */
.alexiou-cta-hp__inner {
	position: relative;
	z-index: 2;
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
	min-height: 690px;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 713px;
	align-items: center;
	gap: 0;
}

/* ── Left column ── */
.alexiou-cta-hp__left {
	min-width: 0; /* prevent min-content from expanding the grid track */
}
.alexiou-cta-hp__eyebrow {
	display: block;
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	color: var(--wp--preset--color--yellow);
	margin-bottom: 26px;
}
.alexiou-cta-hp__heading {
	display: flex;
	flex-direction: column;
	font-family: var(--alexiou-sans);
	font-size: 64px;
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -2px;
	margin: 0 0 36px;
	overflow-wrap: break-word;
}
.alexiou-cta-hp__heading-white {
	color: var(--wp--preset--color--white);
}
.alexiou-cta-hp__heading-yellow {
	color: var(--wp--preset--color--yellow);
}
.alexiou-cta-hp__body {
	font-family: var(--alexiou-sans);
	font-size: 20px;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: -1px;
	color: var(--wp--preset--color--white);
	max-width: 703px;
	margin: 0;
}

/* ── Right column ── */
.alexiou-cta-hp__right {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

/* Shared button base */
.alexiou-cta-hp__btn {
	display: flex;
	align-items: center;
	box-sizing: border-box;
	height: 76px;
	width: 100%;
	text-decoration: none;
	transition: background 0.2s ease, color 0.2s ease, opacity 0.2s ease;
}
/* Primary (white) → red on hover */
.alexiou-cta-hp__btn--primary:hover {
	background: var(--wp--preset--color--oxblood);
}
.alexiou-cta-hp__btn--primary:hover .alexiou-cta-hp__btn-label,
.alexiou-cta-hp__btn--primary:hover .alexiou-cta-hp__btn-arrow {
	color: var(--wp--preset--color--white);
}
.alexiou-cta-hp__btn--primary:hover .alexiou-cta-hp__btn-dot {
	background: var(--wp--preset--color--white);
}
/* Call (outlined) → subtle white glow on hover */
.alexiou-cta-hp__btn--call:hover {
	background: rgba(255, 255, 255, 0.08);
}

/* Button 1 — white / quote */
.alexiou-cta-hp__btn--primary {
	background: var(--wp--preset--color--white);
	padding-inline: 28px;
	gap: 14px;
}
.alexiou-cta-hp__btn--primary .alexiou-cta-hp__btn-dot {
	display: inline-block;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--wp--preset--color--bg-dark);
	flex-shrink: 0;
}
.alexiou-cta-hp__btn--primary .alexiou-cta-hp__btn-label {
	flex: 1;
	font-family: var(--alexiou-mono);
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	color: var(--wp--preset--color--bg-dark);
}
.alexiou-cta-hp__btn--primary .alexiou-cta-hp__btn-arrow {
	font-family: var(--alexiou-sans);
	font-size: 20px;
	font-weight: 400;
	letter-spacing: -1px;
	color: var(--wp--preset--color--bg-dark);
	flex-shrink: 0;
}

/* Button 2 — outlined / call */
.alexiou-cta-hp__btn--call {
	border: 0.5px solid var(--wp--preset--color--border);
	padding-inline: 20px;
	gap: 14px;
}
.alexiou-cta-hp__btn-phone-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 20px;
	height: 20px;
}
.alexiou-cta-hp__btn-call-text {
	display: flex;
	align-items: center;
	gap: 18px;
}
.alexiou-cta-hp__btn--call .alexiou-cta-hp__btn-label {
	font-family: var(--alexiou-mono);
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	color: var(--wp--preset--color--white);
}
.alexiou-cta-hp__btn-phone-num {
	font-family: var(--alexiou-mono);
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	color: var(--wp--preset--color--yellow);
}

/* Assurance row */
.alexiou-cta-hp__assurance-wrap {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin-top: 0;
}
.alexiou-cta-hp__rule {
	height: 0;
	border-top: 0.5px solid rgba(217, 217, 217, 0.4);
}
.alexiou-cta-hp__assurance {
	display: flex;
	align-items: center;
	gap: 12px;
	font-family: var(--alexiou-sans);
	font-size: 16px;
	font-weight: 400;
	letter-spacing: -0.6px;
	color: var(--wp--preset--color--border);
	margin: 0;
}
.alexiou-cta-hp__assurance-dot {
	position: relative;
	display: inline-block;
	width: 16px;
	height: 16px;
	flex-shrink: 0;
}
.alexiou-cta-hp__assurance-dot::before {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: 50%;
	background: rgba(34, 197, 94, 0.25);
}
.alexiou-cta-hp__assurance-dot::after {
	content: '';
	position: absolute;
	inset: 4px;
	border-radius: 50%;
	background: #22c55e;
}

/* ── Mobile ── */
@media (max-width: 781px) {
	.alexiou-cta-hp__inner {
		grid-template-columns: 1fr;
		min-height: unset;
		padding-block: 64px;
		gap: 48px;
	}
	.alexiou-cta-hp__heading {
		font-size: 36px;
		letter-spacing: -1px;
	}
	.alexiou-cta-hp__body {
		font-size: 16px;
		max-width: 100%;
	}
	.alexiou-cta-hp__btn--call .alexiou-cta-hp__btn-call-text {
		flex-direction: column;
		align-items: flex-start;
		gap: 2px;
	}
}

/* =========================================================================
   19. Global: SVG arrow icon utility
   ========================================================================= */

/* Inline SVG arrow used in all CTA/button contexts — vertical alignment fix */
.alexiou-icon-arrow {
	display: inline-block;
	vertical-align: middle;
	flex-shrink: 0;
	position: relative;
	top: -1px;
}

/* =========================================================================
   20. Certifications Bar
   ========================================================================= */

.wp-block-template-part:has(.alexiou-cert-bar) {
	margin-block-start: 0; /* footer flush with last content block — override blockGap */
}
.alexiou-cert-bar.alexiou-fullbleed {
	display: none;
}
.alexiou-cert-bar {
	background: #ffffff;
	border-top: 1px solid var(--wp--preset--color--border);
	border-bottom: 1px solid var(--wp--preset--color--border);
}

.alexiou-cert-bar__inner {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
	height: 155px;
	display: flex;
	align-items: center;
	gap: var(--wp--custom--gutter);
}

.alexiou-cert-bar__label {
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	color: var(--wp--preset--color--harbor-blue);
	white-space: nowrap;
	flex-shrink: 0;
	margin: 0;
}

.alexiou-cert-bar__logos {
	display: flex;
	align-items: center;
	list-style: none;
	margin: 0;
	padding: 0;
	flex: 1;
	justify-content: space-between;
}

.alexiou-cert-bar__item {
	flex-shrink: 0;
}

.alexiou-cert-bar__item img {
	display: block;
	width: auto;
	height: 70px;
	object-fit: contain;
}

.alexiou-cert-bar__name {
	font-family: var(--alexiou-mono);
	font-size: 12px;
	text-transform: uppercase;
	color: var(--wp--preset--color--text);
}

/* ── Mobile ── */
@media (max-width: 1024px) {
	.alexiou-cert-bar__logos {
		gap: 32px;
		justify-content: flex-start;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}
	.alexiou-cert-bar__logos::-webkit-scrollbar { display: none; }
}

@media (max-width: 781px) {
	.alexiou-cert-bar__inner {
		height: auto;
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
		padding-block: 28px;
	}
	.alexiou-cert-bar__logos {
		width: 100%;
	}
}

/* =========================================================================
   20. Site Footer
   ========================================================================= */

.alexiou-site-footer {
	background: var(--wp--preset--color--bg-light-blue);
}

.alexiou-site-footer__inner {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
	padding-block: 72px 0;
}

/* TOP ROW — newsletter + brand */
.alexiou-site-footer__top {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 64px;
	gap: 40px;
}

/* Newsletter */
.alexiou-site-footer__newsletter {
	flex: 0 0 571px;
	max-width: 571px;
}

.alexiou-site-footer__nl-label {
	font-family: var(--alexiou-mono);
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	color: var(--wp--preset--color--harbor-blue);
	margin: 0 0 24px;
}

.alexiou-site-footer__nl-field {
	display: flex;
	align-items: stretch;
	height: 70px;
	background: #eaeff4;
	border-radius: 2px;
	padding: 11px 10px 10px 15px;
	box-sizing: border-box;
	margin-bottom: 14px;
}

.alexiou-site-footer__nl-input {
	flex: 1;
	min-width: 0;
	background: transparent;
	border: none;
	outline: none;
	font-family: var(--alexiou-sans);
	font-size: 16px;
	color: var(--wp--preset--color--text);
	letter-spacing: -0.6px;
}

.alexiou-site-footer__nl-input::placeholder {
	color: var(--wp--preset--color--text);
}

.alexiou-site-footer__nl-btn {
	flex-shrink: 0;
	width: 140px;
	height: 48px;
	background: var(--wp--preset--color--harbor-blue);
	color: #fff;
	border: none;
	border-radius: 2px;
	font-family: var(--alexiou-mono);
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	cursor: pointer;
	white-space: nowrap;
	box-sizing: border-box;
	transition: background 0.2s;
}

.alexiou-site-footer__nl-btn:hover,
.alexiou-site-footer__nl-btn:focus-visible {
	background: var(--wp--preset--color--soft-blue);
}

.alexiou-site-footer__nl-terms {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-family: var(--alexiou-mono);
	font-size: 14px;
	color: var(--wp--preset--color--text);
	cursor: pointer;
}

.alexiou-site-footer__nl-terms input[type="checkbox"] {
	flex-shrink: 0;
	width: 15px;
	height: 15px;
	margin-top: 1px;
	border: 1px solid var(--wp--preset--color--harbor-blue);
	accent-color: var(--wp--preset--color--harbor-blue);
	cursor: pointer;
}

.alexiou-site-footer__nl-terms a {
	text-decoration: underline;
	color: inherit;
}

/* Brand (logo + tagline) — 570px matches content-right column start per Figma (canvas x=1270) */
.alexiou-site-footer__brand {
	flex: 0 0 570px;
	max-width: 570px;
}

.alexiou-site-footer__logos {
	display: flex;
	align-items: center;
	gap: 0;
	margin-bottom: 18px;
}

.alexiou-site-footer__logo-alexiou {
	display: block;
	width: 236px;
	height: auto;
}

.alexiou-site-footer__logo-divider {
	width: 1px;
	height: 58px;
	background: var(--wp--preset--color--border);
	flex-shrink: 0;
	margin-inline: 16px;
}

.alexiou-site-footer__logo-kleemann {
	display: block;
	width: 161px;
	height: auto;
}

.alexiou-site-footer__tagline {
	font-family: var(--alexiou-sans);
	font-size: 16px;
	font-weight: 400;
	color: var(--wp--preset--color--text);
	letter-spacing: -0.6px;
	line-height: 1.5;
	margin: 0;
	max-width: 571px;
}

/* MENU ROW */
.alexiou-site-footer__menus {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 40px;
	margin-bottom: 60px;
}

.alexiou-site-footer__menus-left {
	display: flex;
	gap: 60px;
	align-items: flex-start;
}

.alexiou-site-footer__menus-right {
	display: flex;
	gap: 80px;
	align-items: flex-start;
	flex: 0 0 570px;
}

.alexiou-site-footer__col {
	min-width: 140px;
}

.alexiou-site-footer__col-heading {
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	color: var(--wp--preset--color--harbor-blue);
	margin: 0 0 24px;
}

.alexiou-site-footer__menu-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.alexiou-site-footer__menu-list li a {
	font-family: var(--alexiou-sans);
	font-size: 16px;
	font-weight: 400;
	color: var(--wp--preset--color--bg-dark-blue);
	text-decoration: none;
	letter-spacing: -0.6px;
	line-height: 1.4;
	transition: color 0.15s;
}

.alexiou-site-footer__menu-list li a:hover {
	color: var(--wp--preset--color--harbor-blue);
}

/* Contact column */
.alexiou-site-footer__contact-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.alexiou-site-footer__contact-list li {
	font-family: var(--alexiou-sans);
	font-size: 16px;
	font-weight: 400;
	color: var(--wp--preset--color--bg-dark-blue);
	letter-spacing: -0.6px;
	line-height: 1.4;
}

.alexiou-site-footer__contact-list a {
	color: inherit;
	text-decoration: underline;
	transition: color 0.15s;
}

.alexiou-site-footer__contact-list a:hover {
	color: var(--wp--preset--color--harbor-blue);
}

/* Social icons */
.alexiou-site-footer__social {
	display: flex;
	align-items: center;
	gap: 11px;
}

.alexiou-site-footer__social-link {
	display: inline-flex;
	align-items: center;
	color: var(--wp--preset--color--harbor-blue);
	transition: color 0.15s;
	text-decoration: none;
}

.alexiou-site-footer__social-link:hover {
	color: var(--wp--preset--color--oxblood);
}

.alexiou-site-footer__social-link--demo {
	cursor: default;
}

/* Newsletter message feedback */
.alexiou-site-footer__nl-msg {
	margin-top: 8px;
	font-size: 13px;
	line-height: 1.4;
}
.alexiou-site-footer__nl-msg.is-success {
	color: #2e7d32;
}
.alexiou-site-footer__nl-msg.is-error {
	color: #c62828;
}

/* BOTTOM BAR */
.alexiou-site-footer__bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-top: 1px solid var(--wp--preset--color--border);
	padding-block: 24px;
	gap: 24px;
	flex-wrap: wrap;
}

.alexiou-site-footer__copyright {
	font-family: var(--alexiou-mono);
	font-size: 12px;
	text-transform: uppercase;
	color: var(--wp--preset--color--text);
	margin: 0;
}

.alexiou-site-footer__copyright a {
	color: var(--wp--preset--color--oxblood);
	text-decoration: underline;
}

.alexiou-site-footer__legal-nav .alexiou-site-footer__legal-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 16px;
	list-style: none;
	margin: 0;
	padding: 0;
	align-items: center;
}

.alexiou-site-footer__legal-list li:not(:last-child)::after {
	content: '·';
	margin-left: 16px;
	color: var(--wp--preset--color--text);
}

.alexiou-site-footer__legal-list a {
	font-family: var(--alexiou-mono);
	font-size: 12px;
	text-transform: uppercase;
	color: var(--wp--preset--color--text);
	text-decoration: none;
	transition: color 0.15s;
}

.alexiou-site-footer__legal-list a:hover {
	color: var(--wp--preset--color--harbor-blue);
}

/* ── Tablet/Mobile ── */
@media (max-width: 1200px) {
	.alexiou-site-footer__top {
		flex-direction: column;
	}
	.alexiou-site-footer__newsletter,
	.alexiou-site-footer__brand {
		max-width: 100%;
		flex: 1 1 auto;
	}
	.alexiou-site-footer__menus {
		flex-direction: column;
		gap: 48px;
	}
	.alexiou-site-footer__menus-left,
	.alexiou-site-footer__menus-right {
		flex-wrap: wrap;
		gap: 40px;
	}
}

@media (max-width: 781px) {
	.alexiou-site-footer__inner {
		padding-block: 48px 0;
	}
	.alexiou-site-footer__top {
		margin-bottom: 48px;
	}
	.alexiou-site-footer__nl-field {
		flex-direction: column;
		height: auto;
		gap: 10px;
	}
	.alexiou-site-footer__nl-btn {
		width: 100%;
		height: 52px;
	}
	.alexiou-site-footer__logos {
		flex-wrap: wrap;
		gap: 16px;
	}
	.alexiou-site-footer__logo-alexiou {
		width: 180px;
	}
	.alexiou-site-footer__logo-kleemann {
		width: 120px;
	}
	.alexiou-site-footer__menus-left,
	.alexiou-site-footer__menus-right {
		gap: 32px;
	}
	.alexiou-site-footer__col {
		min-width: calc(50% - 16px);
	}
	.alexiou-site-footer__bottom {
		flex-direction: column-reverse;
		align-items: flex-start;
		gap: 16px;
	}
	.alexiou-site-footer__legal-list {
		gap: 6px 12px;
	}
}

/* =========================================================================
   ABOUT PAGE BLOCKS
   ========================================================================= */

/* -------------------------------------------------------------------------
   About — Hero
   Full-bleed white section: breadcrumb + Display 80 heading + photo strip
   ------------------------------------------------------------------------- */
.alexiou-about-hero {
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	background: var(--wp--preset--color--white);
	margin-block: 0 !important;
	overflow: hidden;
}

.alexiou-about-hero__text {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
	padding-top: clamp(40px, 4.3vw, 83px);
	padding-bottom: clamp(32px, 4.2vw, 80px);
}

.alexiou-about-hero__breadcrumb {
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	line-height: normal;
	letter-spacing: 0;
	margin: 0 0 24px;
}

.alexiou-about-hero__bc-home {
	color: var(--wp--preset--color--text-secondary);
	text-decoration: none;
}
.alexiou-about-hero__bc-home:hover {
	text-decoration: underline;
}
.alexiou-about-hero__bc-sep {
	color: var(--wp--preset--color--text-secondary);
}
.alexiou-about-hero__bc-page {
	color: var(--wp--preset--color--bg-dark-blue);
}

.alexiou-about-hero__heading {
	font-family: var(--alexiou-sans);
	font-size: clamp(36px, 4.2vw, 80px);
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: -2px;
	color: var(--wp--preset--color--harbor-blue);
	max-width: 1410px;
	margin: 0;
}

/* Photo strip */
.alexiou-about-hero__photo {
	position: relative;
	width: 100%;
	height: clamp(280px, 32.8vw, 630px);
	overflow: hidden;
}

.alexiou-about-hero__photo-img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 30%;
}

.alexiou-about-hero__photo-overlay {
	position: absolute;
	inset: 0;
	background: rgba(58, 111, 143, 0.13);
	pointer-events: none;
}

/* Mobile */
@media (max-width: 781px) {
	.alexiou-about-hero__text {
		padding-top: 24px;
		padding-bottom: 32px;
	}
	.alexiou-about-hero__heading {
		font-size: clamp(28px, 7vw, 42px);
		letter-spacing: -1px;
	}
	.alexiou-about-hero__photo {
		height: 240px;
	}
}

/* -------------------------------------------------------------------------
   About — Intro
   2-col: company name left / heading + body text right
   ------------------------------------------------------------------------- */
.alexiou-about-intro {
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	background: var(--wp--preset--color--white);
	border-bottom: 1px solid var(--wp--preset--color--border);
	margin-block: 0 !important;
}

.alexiou-about-intro__inner {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
	padding-bottom: clamp(48px, 5.2vw, 100px);
}

.alexiou-about-intro__rule {
	height: 1px;
	background: #d1d1d1;
	margin-bottom: clamp(32px, 4.8vw, 93px);
	margin-top: clamp(40px, 4.9vw, 94px);
}

.alexiou-about-intro__grid {
	display: grid;
	grid-template-columns: 1fr 2.2fr;
	gap: clamp(32px, 5vw, 96px);
	align-items: start;
}

/* Left: eyebrow + company name */
.alexiou-about-intro__eyebrow {
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	line-height: normal;
	color: var(--wp--preset--color--oxblood);
	text-transform: uppercase;
	margin: 0 0 8px;
}

.alexiou-about-intro__company-name {
	font-family: var(--alexiou-sans);
	font-size: clamp(28px, 2.5vw, 48px);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -1px;
	color: var(--wp--preset--color--harbor-blue);
	margin: 0;
}

/* Right: heading + 2-col body + button */
.alexiou-about-intro__heading {
	font-family: var(--alexiou-sans);
	font-size: clamp(20px, 1.875vw, 36px);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: 0;
	color: var(--wp--preset--color--bg-dark-blue);
	margin: 0 0 clamp(24px, 3.6vw, 70px);
}

.alexiou-about-intro__cols {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: clamp(16px, 3.1vw, 60px);
	align-items: start;
}

.alexiou-about-intro__col-label {
	font-family: var(--alexiou-mono);
	font-size: 16px;
	font-weight: 400;
	line-height: normal;
	color: var(--wp--preset--color--oxblood);
	text-transform: uppercase;
	letter-spacing: 0;
	margin: 0 0 16px;
}

.alexiou-about-intro__col-body {
	font-family: var(--alexiou-sans);
	font-size: 20px;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: -1px;
	color: var(--wp--preset--color--harbor-blue);
	margin: 0;
}

.alexiou-about-intro__link {
	color: var(--wp--preset--color--bg-dark-blue);
	text-decoration: underline;
	font-weight: 600;
}

.alexiou-about-intro__col--with-btn {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.alexiou-about-intro__btn {
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	width: 238px;
	height: 60px;
	padding-inline: 20px 16px;
	background: var(--wp--preset--color--harbor-blue);
	color: var(--wp--preset--color--white);
	font-family: var(--alexiou-mono);
	font-size: 16px;
	font-weight: 400;
	line-height: normal;
	text-transform: uppercase;
	text-decoration: none;
	border-radius: 2px;
	transition: background 0.2s ease;
}
.alexiou-about-intro__btn:hover {
	background: var(--wp--preset--color--bg-dark-blue);
	color: var(--wp--preset--color--white);
}
.alexiou-about-intro__btn-arrow {
	font-family: var(--alexiou-sans);
	font-size: 20px;
	letter-spacing: -1px;
	flex-shrink: 0;
}

/* Mobile */
@media (max-width: 900px) {
	.alexiou-about-intro__grid {
		grid-template-columns: 1fr;
	}
}
@media (max-width: 781px) {
	.alexiou-about-intro__cols {
		grid-template-columns: 1fr;
	}
	.alexiou-about-intro__col-body {
		font-size: 16px;
		letter-spacing: -0.6px;
	}
	.alexiou-about-intro__heading {
		font-size: clamp(18px, 4.5vw, 28px);
	}
}

/* -------------------------------------------------------------------------
   About — Kleemann
   Full-bleed harbor-blue: text left, cert badge, photo placeholder right
   ------------------------------------------------------------------------- */
.alexiou-about-kleemann {
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	background: var(--wp--preset--color--harbor-blue);
	min-height: clamp(420px, 45.9vw, 882px);
	overflow: hidden;
	margin-block: 0 !important;
}

/* Right photo — top:0/bottom:0 is more reliable than height:100% when parent uses min-height */
.alexiou-about-kleemann__photo {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	width: 42.9%;
	background: var(--wp--preset--color--bg-dark-blue);
	overflow: hidden;
}
.alexiou-about-kleemann__photo img,
.alexiou-about-kleemann__photo video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
}

/* Kleemann cert badge: 799/1920 = 41.6% from viewport left */
.alexiou-about-kleemann__cert {
	position: absolute;
	top: clamp(60px, 6.5vw, 125px);
	left: 41.6%;
	width: clamp(160px, 13.3vw, 256px);
	height: auto;
	margin: 0;
	z-index: 2;
	overflow: hidden;
}

.alexiou-about-kleemann__cert img {
	display: block;
	width: 100%;
	height: auto;
}

/* Content wrapper: left-side text (stays within ~57% left zone) */
.alexiou-about-kleemann__inner {
	position: relative;
	z-index: 1;
	max-width: 57%;
	padding-left: var(--wp--custom--gutter);
	padding-top: clamp(60px, 9.9vw, 191px);
	padding-bottom: clamp(60px, 4.2vw, 80px);
	padding-right: clamp(16px, 2vw, 40px);
}

.alexiou-about-kleemann__content {
	max-width: min(714px, 100%);
}

.alexiou-about-kleemann__eyebrow {
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	line-height: normal;
	color: var(--wp--preset--color--yellow);
	text-transform: uppercase;
	letter-spacing: 0;
	margin: 0 0 8px;
}

.alexiou-about-kleemann__heading {
	font-family: var(--alexiou-sans);
	font-size: clamp(28px, 2.5vw, 48px);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -1px;
	color: var(--wp--preset--color--white);
	margin: 0 0 clamp(20px, 2.1vw, 40px);
}

.alexiou-about-kleemann__body {
	font-family: var(--alexiou-sans);
	font-size: clamp(16px, 1.04vw, 20px);
	font-weight: 400;
	line-height: 1.55;
	letter-spacing: -1px;
	color: var(--wp--preset--color--bg-light);
	margin: 0 0 clamp(28px, 3.6vw, 70px);
}

.alexiou-about-kleemann__btn {
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	gap: 6px;
	width: auto;
	height: 60px;
	padding-inline: 20px 24px;
	background: var(--wp--preset--color--white);
	color: var(--wp--preset--color--bg-dark-blue);
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	line-height: normal;
	text-transform: uppercase;
	text-decoration: none;
	border-radius: 2px;
	transition: background 0.2s ease, color 0.2s ease;
}
.alexiou-about-kleemann__btn:hover {
	background: var(--wp--preset--color--bg-dark-blue);
	color: var(--wp--preset--color--white);
}
.alexiou-about-kleemann__btn-arrow {
	font-family: var(--alexiou-sans);
	font-size: 18px;
	flex-shrink: 0;
}

/* Mobile */
@media (max-width: 900px) {
	.alexiou-about-kleemann {
		overflow: visible;
	}
	.alexiou-about-kleemann__photo {
		display: none; /* hide placeholder on mobile */
	}
	.alexiou-about-kleemann__cert {
		position: relative;
		left: auto;
		top: auto;
		width: 180px;
		margin-bottom: 24px;
	}
	.alexiou-about-kleemann__inner {
		max-width: 100%;
		padding-top: 48px;
		padding-bottom: 48px;
		padding-right: var(--wp--custom--gutter);
	}
	.alexiou-about-kleemann__btn {
		font-size: 12px;
		min-width: 0;
		max-width: 100%;
		height: auto;
		min-height: 56px;
		padding-block: 12px;
		white-space: normal;
		line-height: 1.3;
	}
}

/* =========================================================================
   Kleemann page blocks
   ========================================================================= */

/* ── kleemann-hero ────────────────────────────────────────────────────── */
.alexiou-kleemann-hero {
	background: var(--wp--preset--color--white);
	padding-block-start: 60px;
}

.alexiou-kleemann-hero__text {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
	padding-block-end: 48px;
}

.alexiou-kleemann-hero__breadcrumb {
	display: flex;
	align-items: center;
	gap: 8px;
	font-family: var(--alexiou-mono);
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--wp--preset--color--text-secondary);
	margin-block-end: 24px;
}
.alexiou-kleemann-hero__bc-home {
	color: var(--wp--preset--color--text-secondary);
	text-decoration: none;
}
.alexiou-kleemann-hero__bc-home:hover { color: var(--wp--preset--color--text); }
.alexiou-kleemann-hero__bc-sep { opacity: .5; }
.alexiou-kleemann-hero__bc-page { color: var(--wp--preset--color--bg-dark-blue); }

.alexiou-kleemann-hero__heading {
	font-family: var(--alexiou-sans);
	font-size: clamp(40px, 5.5vw, var(--wp--preset--font-size--display));
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: -2px;
	color: var(--wp--preset--color--harbor-blue);
	max-width: 900px;
	margin: 0;
}

.alexiou-kleemann-hero__photo {
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	height: clamp(280px, 33vw, 630px);
	overflow: hidden;
}
.alexiou-kleemann-hero__photo::after {
	content: '';
	position: absolute;
	inset: 0;
	background: rgba(58, 111, 143, 0.31);
	pointer-events: none;
}
.alexiou-kleemann-hero__photo-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
}

/* ── kleemann-intro ───────────────────────────────────────────────────── */
.alexiou-kleemann-intro {
	background: var(--wp--preset--color--white);
	padding-block: 80px;
}
.alexiou-kleemann-intro__inner {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
}
.alexiou-kleemann-intro__rule {
	border: none;
	border-top: 1px solid var(--wp--preset--color--border);
	margin: 0 0 80px;
}
.alexiou-kleemann-intro__cols {
	display: grid;
	grid-template-columns: 570px 1fr;
	gap: 25px;
	align-items: start;
}
.alexiou-kleemann-intro__eyebrow {
	font-family: var(--alexiou-mono);
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--wp--preset--color--harbor-blue);
}
.alexiou-kleemann-intro__lead {
	font-family: var(--alexiou-sans);
	font-size: 30px;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 0;
	color: var(--wp--preset--color--bg-dark-blue);
	margin: 0 0 24px;
}
.alexiou-kleemann-intro__body {
	font-family: var(--alexiou-sans);
	font-size: 20px;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: -1px;
	color: var(--wp--preset--color--harbor-blue);
	margin: 0;
}

/* ── kleemann-cards ───────────────────────────────────────────────────── */
.alexiou-kleemann-cards {
	background: var(--wp--preset--color--white);
	padding-block: 0 80px;
}
.alexiou-kleemann-cards__inner {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
}
.alexiou-kleemann-cards__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}
/* Card: light-blue default, image+overlay on hover */
.alexiou-kleemann-cards__card {
	position: relative;
	aspect-ratio: 422 / 364;
	background: var(--wp--preset--color--bg-light-blue);
	overflow: hidden;
}
.alexiou-kleemann-cards__card::before {
	content: '';
	position: absolute;
	inset: 0;
	background-image: var(--kc-bg, none);
	background-size: cover;
	background-position: center;
	opacity: 0;
	transition: opacity 0.45s ease;
}
.alexiou-kleemann-cards__card::after {
	content: '';
	position: absolute;
	inset: 0;
	background: rgba(46, 94, 126, 0.85);
	opacity: 0;
	transition: opacity 0.45s ease;
}
.alexiou-kleemann-cards__card:hover::before,
.alexiou-kleemann-cards__card:hover::after {
	opacity: 1;
}
.alexiou-kleemann-cards__card-inner {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	gap: 21px;
	padding: 32px;
	height: 100%;
	box-sizing: border-box;
}
.alexiou-kleemann-cards__counter {
	display: block;
	font-family: var(--alexiou-sans);
	font-size: 64px;
	font-weight: 700;
	letter-spacing: -2px;
	line-height: 1;
	color: var(--wp--preset--color--harbor-blue);
	transition: color 0.35s ease;
}
.alexiou-kleemann-cards__title {
	font-family: var(--alexiou-sans);
	font-size: 24px;
	font-weight: 600;
	line-height: 1.25;
	color: var(--wp--preset--color--bg-dark);
	margin: 0;
	transition: color 0.35s ease;
}
.alexiou-kleemann-cards__body {
	font-family: var(--alexiou-sans);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.55;
	letter-spacing: -0.5px;
	color: var(--wp--preset--color--harbor-blue);
	margin: 0;
	transition: color 0.35s ease;
}
.alexiou-kleemann-cards__card:hover .alexiou-kleemann-cards__counter,
.alexiou-kleemann-cards__card:hover .alexiou-kleemann-cards__title,
.alexiou-kleemann-cards__card:hover .alexiou-kleemann-cards__body {
	color: #fff;
}

/* ── Kleemann responsive ──────────────────────────────────────────────── */
@media (max-width: 900px) {
	.alexiou-kleemann-intro__cols {
		grid-template-columns: 1fr;
		gap: 32px;
	}
	.alexiou-kleemann-cards__grid {
		grid-template-columns: 1fr;
		gap: 24px;
	}
	.alexiou-kleemann-hero__heading {
		font-size: clamp(30px, 8vw, 48px);
		letter-spacing: -1px;
	}
}

/* ═══════════════════════════════════════════════════════════════════════════
   SERVICES LANDING PAGE  (alexiou-components/services-landing)
   ═══════════════════════════════════════════════════════════════════════════ */

.alexiou-services-lp {
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	background: var(--wp--preset--color--white);
	padding-block: 80px 120px;
}

.alexiou-services-lp__inner {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
}

/* Breadcrumb — links gray, current page dark-blue (Figma) */
.alexiou-services-lp__breadcrumb {
	display: flex;
	align-items: center;
	gap: 8px;
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 0.02em;
	color: var(--wp--preset--color--text-secondary);
	margin-bottom: 24px;
}
.alexiou-services-lp__breadcrumb a {
	color: var(--wp--preset--color--text-secondary);
	text-decoration: none;
}
.alexiou-services-lp__breadcrumb a:hover {
	color: var(--wp--preset--color--bg-dark-blue);
}
.alexiou-services-lp__breadcrumb-current {
	color: var(--wp--preset--color--bg-dark-blue);
}

/* Heading — max-width 1106px matches Figma container width → forces 2-line break */
.alexiou-services-lp__heading {
	font-family: var(--alexiou-sans);
	font-size: 80px;
	font-weight: 700;
	line-height: 1.0;
	letter-spacing: -2px;
	color: var(--wp--preset--color--harbor-blue);
	margin: 0 0 120px;
	max-width: 1106px;
}

/* ── Tabs: 2-col grid — left col (intro + sidebar) | right col (panels) ── */
/* Figma: left col = 743px, right col = 1017px, total = 1760px content */
.alexiou-services-lp__tabs {
	display: grid;
	grid-template-columns: 1fr 1017px;
	align-items: start;
}

/* ── Left column: intro text (top) + sidebar nav (at 310px offset) ── */
.alexiou-services-lp__left {
	position: relative;
	height: 639px; /* match panel height so sidebar sits at correct vertical offset */
}

/* Intro text — at top of left column, same vertical level as panel */
.alexiou-services-lp__intro {
	font-family: var(--alexiou-sans);
	font-size: 20px;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: -1px;
	color: var(--wp--preset--color--bg-dark-blue);
	max-width: 569px;
	margin: 0;
}
.alexiou-services-lp__intro-hl {
	color: var(--wp--preset--color--harbor-blue);
}

/* Sidebar nav — 310px below panel top, per Figma absolute position */
.alexiou-services-lp__sidebar {
	position: absolute;
	top: 310px;
	left: 0;
	width: 267px;
}

.alexiou-services-lp__nav {
	list-style: none;
	margin: 0;
	padding: 0;
	border-left: 1px solid var(--wp--preset--color--border);
}

.alexiou-services-lp__nav-item {
	font-family: var(--alexiou-mono);
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--wp--preset--color--text-secondary);
	padding: 16px 0 16px 20px;
	border-left: 3px solid transparent;
	margin-left: -1px;
	cursor: pointer;
	transition: color 0.2s, border-color 0.2s;
	line-height: 1.4;
}
.alexiou-services-lp__nav-item:hover {
	color: var(--wp--preset--color--bg-dark-blue);
}
.alexiou-services-lp__nav-item.is-active {
	color: var(--wp--preset--color--oxblood);
	border-left-color: var(--wp--preset--color--oxblood);
}

/* ── Service panels ── */
.alexiou-services-lp__panels {
	display: flex;
	flex-direction: column;
}

.alexiou-services-lp__panel {
	display: none;
	min-height: 639px;
	background: var(--wp--preset--color--bg-light);
	overflow: hidden;
}
.alexiou-services-lp__panel.is-active {
	display: flex;
}

/* Content area: left=57px, top=64px per Figma */
.alexiou-services-lp__panel-content {
	flex: 1;
	padding: 64px 48px 64px 57px;
	display: flex;
	flex-direction: column;
	gap: 24px;
	max-width: 595px;
}

/* Eyebrow row: 51px line + text */
.alexiou-services-lp__panel-eyebrow {
	display: flex;
	align-items: center;
	gap: 16px;
}
.alexiou-services-lp__panel-eyebrow-line {
	display: block;
	width: 51px;
	height: 1px;
	background: var(--wp--preset--color--oxblood);
	flex-shrink: 0;
}
.alexiou-services-lp__panel-eyebrow-text {
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--oxblood);
	white-space: nowrap;
}

/* Panel title — H3 36px SemiBold dark-blue */
.alexiou-services-lp__panel-title {
	font-family: var(--alexiou-sans);
	font-size: 36px;
	font-weight: 600;
	line-height: 1.1;
	letter-spacing: 0;
	color: var(--wp--preset--color--bg-dark-blue);
	margin: 0;
}

/* Panel body — Lead 20px */
.alexiou-services-lp__panel-body {
	font-family: var(--alexiou-sans);
	font-size: 20px;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: -1px;
	color: var(--wp--preset--color--text);
	margin: 0;
	max-width: 507px;
}

/* CTA button — 200×60px harbor-blue, 2px radius */
.alexiou-services-lp__panel-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: var(--wp--preset--color--harbor-blue);
	color: var(--wp--preset--color--white);
	font-family: var(--alexiou-mono);
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	text-decoration: none;
	width: 200px;
	height: 60px;
	border-radius: 2px;
	margin-top: auto;
	transition: background 0.2s;
	flex-shrink: 0;
}
.alexiou-services-lp__panel-btn:hover {
	background: var(--wp--preset--color--bg-dark-blue);
}

/* Panel photo — 422px wide, full 639px height */
.alexiou-services-lp__panel-photo {
	flex: 0 0 422px;
	width: 422px;
	overflow: hidden;
}
.alexiou-services-lp__panel-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Carousel prev/next — overlaid bottom-left of panel photo */
.alexiou-services-lp__panel-photo {
	position: relative;
}
.alexiou-services-lp__carousel-nav {
	position: absolute;
	bottom: 28px;
	right: 28px;
	display: flex;
	gap: 8px;
	z-index: 2;
}
.alexiou-services-lp__carousel-btn {
	-webkit-appearance: none;
	appearance: none;
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: none;
	border-radius: 0;
	background: #fff;
	color: var(--wp--preset--color--bg-dark-blue);
	font-size: 16px;
	font-family: var(--alexiou-sans);
	line-height: 1;
	cursor: pointer;
	transition: background 0.2s ease, color 0.2s ease;
}
.alexiou-services-lp__carousel-btn:hover:not(:disabled) {
	background: var(--wp--preset--color--harbor-blue);
	color: #fff;
}
.alexiou-services-lp__carousel-btn:disabled {
	opacity: 0.3;
	cursor: default;
}

/* ── Services landing responsive ── */
@media (max-width: 1200px) {
	.alexiou-services-lp__heading {
		font-size: clamp(40px, 6vw, 72px);
		letter-spacing: -1.5px;
		margin-bottom: 80px;
	}
	.alexiou-services-lp__tabs {
		grid-template-columns: 1fr 700px;
	}
	.alexiou-services-lp__panel-photo {
		flex: 0 0 280px;
		width: 280px;
	}
	.alexiou-services-lp__panel-content {
		padding: 48px 48px 48px 40px;
		max-width: 100%;
	}
}

@media (max-width: 900px) {
	.alexiou-services-lp__heading {
		font-size: clamp(32px, 7vw, 56px);
		letter-spacing: -1px;
		margin-bottom: 48px;
	}
	.alexiou-services-lp__tabs {
		grid-template-columns: minmax(0, 1fr);
	}
	.alexiou-services-lp__left {
		height: auto;
		min-width: 0;
		display: flex;
		flex-direction: column;
		gap: 32px;
		margin-bottom: 40px;
		overflow-x: hidden;
	}
	.alexiou-services-lp__sidebar {
		position: static;
		width: 100%;
	}
	.alexiou-services-lp__nav {
		display: flex;
		flex-wrap: wrap;
		border-left: none;
		border-bottom: 2px solid var(--wp--preset--color--border);
	}
	.alexiou-services-lp__nav-item {
		border-left: none;
		border-bottom: 3px solid transparent;
		margin-left: 0;
		margin-bottom: -2px;
		padding: 10px 14px;
		font-size: 13px;
	}
	.alexiou-services-lp__nav-item.is-active {
		border-bottom-color: var(--wp--preset--color--oxblood);
		border-left-color: transparent;
	}
	.alexiou-services-lp__panels {
		min-width: 0;
		overflow-x: hidden;
	}
	.alexiou-services-lp__panel {
		height: auto;
		flex-direction: column;
		min-width: 0;
	}
	.alexiou-services-lp__panel-content {
		max-width: 100%;
		min-width: 0;
		padding: 40px 32px;
	}
	.alexiou-services-lp__panel-photo {
		flex: none;
		width: 100%;
		height: 280px;
	}
}
@media (max-width: 420px) {
	/* Each tab takes full row — prevents long tab text from overflowing */
	.alexiou-services-lp__nav-item {
		width: 100%;
		border-bottom: 1px solid var(--wp--preset--color--border);
		margin-bottom: 0;
		padding: 12px 14px;
	}
	.alexiou-services-lp__nav-item.is-active {
		border-bottom-color: var(--wp--preset--color--oxblood);
	}
	/* Tighter panel padding so content fits on narrow screens */
	.alexiou-services-lp__panel-content {
		padding: 32px 20px;
	}
	/* Hide decorative line — saves 67px so counter (01/05) fits on one line */
	.alexiou-services-lp__panel-eyebrow-line {
		display: none;
	}
}

/* ═══════════════════════════════════════════════════════════════════════════
   SERVICE SINGLE PAGE  (alexiou-components/service-single)
   ═══════════════════════════════════════════════════════════════════════════ */

.alexiou-service-single {
	display: block;
}

/* ── §1 Hero ── */
.alexiou-service-single__hero {
	background: var(--wp--preset--color--white);
	padding-bottom: 0;
}

.alexiou-service-single__hero-inner {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
	padding-top: 60px;
}

/* Breadcrumb */
.alexiou-service-single__breadcrumb {
	display: flex;
	align-items: center;
	gap: 8px;
	font-family: var(--alexiou-mono);
	font-size: 14px;
	letter-spacing: 0.02em;
	color: var(--wp--preset--color--text-secondary);
	margin-bottom: 24px;
}
.alexiou-service-single__breadcrumb a {
	color: var(--wp--preset--color--bg-dark-blue);
	text-decoration: none;
}
.alexiou-service-single__breadcrumb a:hover { text-decoration: underline; }

/* Hero: H1 full-width, rule, then intro right-column only */
.alexiou-service-single__hero-heading {
	font-family: var(--alexiou-sans);
	font-size: 80px;
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: -2px;
	color: var(--wp--preset--color--harbor-blue);
	margin: 0 0 40px;
}

/* Horizontal rule — below H1, full content width */
.alexiou-service-single__hero-rule {
	border: none;
	border-top: 1px solid var(--wp--preset--color--border);
	margin: 0 0 40px;
}

/* Intro row: empty left col + intro right col */
.alexiou-service-single__hero-intro-wrap {
	display: grid;
	grid-template-columns: 1fr 566px;
	column-gap: 80px;
	margin-bottom: 60px;
}

.alexiou-service-single__hero-intro {
	grid-column: 2;
	font-family: var(--alexiou-sans);
	font-size: 20px;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: -1px;
	color: var(--wp--preset--color--text);
	margin: 0;
}

/* Hero photo — full-bleed 1760×630 with blue overlay */
.alexiou-service-single__hero-photo {
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	height: 630px;
	overflow: hidden;
	margin-top: 0;
}
.alexiou-service-single__hero-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.alexiou-service-single__hero-overlay {
	position: absolute;
	inset: 0;
	background: rgba(58, 111, 143, 0.32);
	pointer-events: none;
}

/* ── §2 Focus ("ΓΙΑΤΙ ΕΧΕΙ ΣΗΜΑΣΙΑ") ── */
.alexiou-service-single__focus {
	background: var(--wp--preset--color--white);
	padding-block: 100px;
}

.alexiou-service-single__focus-inner {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
	display: grid;
	grid-template-columns: 571px 1fr;
	gap: 80px;
	align-items: start;
}

.alexiou-service-single__focus-eyebrow {
	display: block;
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--oxblood);
	margin-bottom: 20px;
}

.alexiou-service-single__focus-heading {
	font-family: var(--alexiou-sans);
	font-size: 48px;
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -1px;
	color: var(--wp--preset--color--bg-dark-blue);
	margin: 0;
}

.alexiou-service-single__focus-body {
	padding-top: 32px;
}
.alexiou-service-single__focus-body p {
	font-family: var(--alexiou-sans);
	font-size: 30px;
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: -0.5px;
	color: var(--wp--preset--color--harbor-blue);
	margin: 0 0 24px;
}
.alexiou-service-single__focus-body p:last-child {
	margin-bottom: 0;
}

/* ── §3 Approach ("Η ΠΡΟΣΕΓΓΙΣΗ ΜΑΣ") ── */
.alexiou-service-single__approach {
	background: var(--wp--preset--color--white);
	padding-block: 0 120px;
	overflow-x: clip;
}

.alexiou-service-single__approach-inner {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
	display: grid;
	grid-template-columns: 571px 1fr;
	gap: 80px;
	align-items: start;
}

.alexiou-service-single__approach-eyebrow {
	display: block;
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--oxblood);
	padding-top: 32px;
}

.alexiou-service-single__approach-subtitle {
	font-family: var(--alexiou-sans);
	font-size: 30px;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: -0.5px;
	color: var(--wp--preset--color--bg-dark-blue);
	margin: 0 0 32px;
}

/* Navigation arrows — below cards */
.alexiou-service-single__approach-nav {
	display: flex;
	gap: 8px;
	margin-top: 24px;
}

.alexiou-service-single__approach-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border: 1px solid var(--wp--preset--color--text-secondary);
	background: transparent;
	color: var(--wp--preset--color--text-secondary);
	cursor: pointer;
	transition: border-color 0.2s, color 0.2s;
	border-radius: 0;
	padding: 0;
}
.alexiou-service-single__approach-btn:hover:not(:disabled) {
	border-color: var(--wp--preset--color--bg-dark-blue);
	color: var(--wp--preset--color--bg-dark-blue);
}
.alexiou-service-single__approach-btn:disabled {
	opacity: 0.35;
	cursor: default;
}

/* Right grid column — must have min-width:0 so the 1fr track doesn't expand to fit flex overflow */
.alexiou-service-single__approach-right {
	min-width: 0;
}

/* Cards carousel */
.alexiou-service-single__approach-slider-wrap {
	overflow: hidden;
}

.alexiou-service-single__approach-slider {
	display: flex;
	gap: 24px;
	transition: transform 0.35s ease;
}

.alexiou-service-single__approach-card {
	box-sizing: border-box;
	flex: 0 0 422px;
	width: 422px;
	min-height: 431px;
	position: relative;
	overflow: hidden;
	background-image: var(--card-bg-img, none);
	background-size: cover;
	background-position: center;
	padding: 40px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.alexiou-service-single__approach-card::before {
	content: '';
	position: absolute;
	inset: 0;
	background-color: var(--wp--preset--color--bg-light-blue);
	transition: background-color 0.35s ease;
	z-index: 0;
	pointer-events: none;
}

.alexiou-service-single__approach-card > * {
	position: relative;
	z-index: 1;
}

.alexiou-service-single__approach-card-num {
	font-family: var(--alexiou-mono);
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 0.08em;
	color: var(--wp--preset--color--harbor-blue);
}

.alexiou-service-single__approach-card-title {
	font-family: var(--alexiou-sans);
	font-size: 30px;
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: -0.5px;
	color: var(--wp--preset--color--bg-dark-blue);
	margin: 0;
}

.alexiou-service-single__approach-card-body {
	font-family: var(--alexiou-sans);
	font-size: 20px;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: -1px;
	color: var(--wp--preset--color--text);
	margin: 0;
}

/* Desktop: extend slider-wrap to viewport right edge (bleeds past approach-inner padding + outer margin) */
@media (min-width: 1201px) {
	.alexiou-service-single__approach-slider-wrap {
		width: calc(100% + var(--wp--custom--gutter) + max(0px, (100vw - 1760px) / 2));
	}
}

/* Approach card hover — photo bg + harbor-blue overlay + white text (Figma Variant2) */
.alexiou-service-single__approach-card:hover::before {
	background-color: rgba(46, 94, 126, 0.85);
}

.alexiou-service-single__approach-card:hover .alexiou-service-single__approach-card-num,
.alexiou-service-single__approach-card:hover .alexiou-service-single__approach-card-title,
.alexiou-service-single__approach-card:hover .alexiou-service-single__approach-card-body {
	color: var(--wp--preset--color--white);
	transition: color 0.35s ease;
}

/* ── §4 Quote Box ── */
.alexiou-service-single__quote {
	padding-block: 80px;
}

.alexiou-service-single__quote-inner {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
}

.alexiou-service-single__quote-box {
	background: var(--wp--preset--color--bg-light-blue);
	padding: 64px 80px;
	display: flex;
	flex-direction: column;
	gap: 32px;
	text-align: center;
	align-items: center;
}

.alexiou-service-single__quote-text {
	font-family: var(--alexiou-sans);
	font-size: 20px;
	font-weight: 400;
	line-height: 1.7;
	letter-spacing: -0.3px;
	color: var(--wp--preset--color--text);
	margin: 0;
}

.alexiou-service-single__quote-source {
	font-family: var(--alexiou-sans);
	font-size: 16px;
	font-weight: 400;
	color: var(--wp--preset--color--harbor-blue);
	text-decoration: underline;
	text-underline-offset: 3px;
	margin: 0;
}

/* ── §5 Gallery grid + lightbox ── */
.alexiou-service-single__gallery {
	padding-block: 0 80px;
}

.alexiou-service-single__gallery-inner {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
}

.alexiou-service-single__gallery-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 18px;
}

.alexiou-service-single__gallery-item {
	display: block;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	border: none;
	padding: 0;
	background: none;
	cursor: pointer;
	position: relative;
}

.alexiou-service-single__gallery-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
	display: block;
}

.alexiou-service-single__gallery-item:hover img {
	transform: scale(1.04);
}

.alexiou-service-single__gallery-item::after {
	content: '';
	position: absolute;
	inset: 0;
	background: rgba(14, 33, 47, 0);
	transition: background 0.2s ease;
}

.alexiou-service-single__gallery-item:hover::after {
	background: rgba(14, 33, 47, 0.2);
}

/* Lightbox */
.alexiou-lightbox {
	display: none;
	position: fixed;
	inset: 0;
	z-index: 9999;
	align-items: center;
	justify-content: center;
}

.alexiou-lightbox.is-open {
	display: flex;
}

.alexiou-lightbox__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(14, 33, 47, 0.9);
}

.alexiou-lightbox__stage {
	position: relative;
	z-index: 1;
	max-width: 90vw;
	max-height: 90vh;
	display: flex;
	align-items: center;
	justify-content: center;
}

.alexiou-lightbox__img {
	max-width: 90vw;
	max-height: 90vh;
	object-fit: contain;
	display: block;
}

.alexiou-lightbox__close,
.alexiou-lightbox__prev,
.alexiou-lightbox__next {
	position: absolute;
	z-index: 2;
	width: 48px;
	height: 48px;
	background: rgba(255,255,255,0.12);
	border: 1px solid rgba(255,255,255,0.3);
	color: #fff;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.15s;
}

.alexiou-lightbox__close:hover,
.alexiou-lightbox__prev:hover,
.alexiou-lightbox__next:hover {
	background: rgba(255,255,255,0.22);
}

.alexiou-lightbox__close {
	top: 24px;
	right: 24px;
}

.alexiou-lightbox__prev {
	left: 24px;
	top: 50%;
	transform: translateY(-50%);
}

.alexiou-lightbox__next {
	right: 24px;
	top: 50%;
	transform: translateY(-50%);
}

/* ── §6 Επιλεγμένα Έργα ── */
.alexiou-service-single__erga {
	background: var(--wp--preset--color--white);
	padding-block: 80px 120px;
}

.alexiou-service-single__erga-inner {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
	display: flex;
	flex-direction: column;
	gap: 48px;
}

.alexiou-service-single__erga-header {
	display: flex;
	flex-direction: row;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 40px;
}
.alexiou-service-single__erga-header-left {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.alexiou-service-single__erga-eyebrow {
	font-family: var(--alexiou-mono);
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--wp--preset--color--harbor-blue);
}

.alexiou-service-single__erga-heading {
	font-family: var(--alexiou-sans);
	font-size: 48px;
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -1px;
	color: var(--wp--preset--color--bg-dark-blue);
	margin: 0;
}

.alexiou-service-single__erga-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
}

.alexiou-service-single__erga-card {
	display: flex;
	flex-direction: column;
	text-decoration: none;
	color: inherit;
	overflow: hidden;
}

.alexiou-service-single__erga-card-photo {
	position: relative;
	aspect-ratio: 420 / 578;
	overflow: hidden;
}

.alexiou-service-single__erga-card-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.35s ease;
}

.alexiou-service-single__erga-card:hover .alexiou-service-single__erga-card-photo img {
	transform: scale(1.04);
}

.alexiou-service-single__erga-card-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(14, 33, 47, 0.75) 0%, rgba(14, 33, 47, 0) 55%);
	pointer-events: none;
}

.alexiou-service-single__erga-card-info {
	padding: 20px 0 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.alexiou-service-single__erga-card-tag {
	font-family: var(--alexiou-mono);
	font-size: 11px;
	font-weight: 400;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--wp--preset--color--text-secondary);
}

.alexiou-service-single__erga-card-title {
	font-family: var(--alexiou-sans);
	font-size: 20px;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: -0.3px;
	color: var(--wp--preset--color--bg-dark-blue);
	margin: 0;
}

.alexiou-service-single__erga-footer {
	display: none;
}

.alexiou-service-single__erga-all-link {
	font-family: var(--alexiou-mono);
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--harbor-blue);
	text-decoration: none;
	border-bottom: 1px solid currentColor;
	padding-bottom: 2px;
	transition: opacity 0.15s;
}

.alexiou-service-single__erga-all-link:hover {
	opacity: 0.7;
}

/* ── Service single responsive ── */
@media (max-width: 1200px) {
	.alexiou-service-single__focus-inner,
	.alexiou-service-single__approach-inner {
		grid-template-columns: 1fr;
		gap: 40px;
	}
	.alexiou-service-single__hero-intro-wrap {
		grid-template-columns: 1fr;
	}
	.alexiou-service-single__hero-intro {
		grid-column: 1;
	}
}

@media (max-width: 768px) {
	.alexiou-service-single__hero-heading {
		font-size: clamp(32px, 8vw, 56px);
		letter-spacing: -1px;
	}
	.alexiou-service-single__hero-photo {
		height: 320px;
	}
	.alexiou-service-single__focus-heading {
		font-size: clamp(28px, 6vw, 40px);
	}
	.alexiou-service-single__focus-body,
	.alexiou-service-single__approach-subtitle {
		font-size: clamp(20px, 4vw, 26px);
	}
	.alexiou-service-single__approach-card {
		flex: 0 0 300px;
		width: 300px;
		min-height: auto;
		padding: 28px;
	}
	.alexiou-service-single__approach-card-title {
		font-size: 22px;
	}
	.alexiou-service-single__approach-card-body {
		font-size: 17px;
	}
	.alexiou-service-single__quote-box {
		padding: 40px 28px;
	}
	.alexiou-service-single__quote-text {
		font-size: 17px;
	}
	.alexiou-service-single__gallery-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 10px;
	}
	.alexiou-service-single__erga-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 16px;
	}
	.alexiou-service-single__erga-heading {
		font-size: clamp(30px, 7vw, 40px);
	}
	.alexiou-lightbox__prev { left: 8px; }
	.alexiou-lightbox__next { right: 8px; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   SITE NAV — main bar + mega menus  (Figma "01 – Navbar" component)
   ═══════════════════════════════════════════════════════════════════════════ */

/* Keep the site header above the mega overlay. */
.alexiou-site-header {
	position: relative;
	z-index: 1000;
}

/* ── Nav wrapper (flex child of .alexiou-header-main) ───────────────────── */
.alexiou-site-nav-wrap {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px; /* between <nav> and search button */
}

.alexiou-site-nav {
	display: flex;
	align-items: center;
}

/* ── Item list — Figma: gap-[22px] ──────────────────────────────────────── */
.alexiou-site-nav__list {
	display: flex;
	align-items: center;
	gap: 22px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.alexiou-site-nav__item {
	display: flex;
	align-items: center;
	height: 95px; /* full nav bar height — items are vertically centered */
}

/* ── Nav links & trigger buttons — Figma: JetBrains Mono Regular 16px ─── */
.alexiou-site-nav__link {
	display: inline-flex;
	align-items: center;
	height: 100%; /* fill the 95 px item height — eliminates hover gap to mega panel */
	gap: 4px;
	padding: 0;
	font-family: var(--alexiou-mono, 'JetBrains Mono', monospace);
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1;
	text-transform: uppercase;
	color: #0E212F;
	text-decoration: none;
	background: none;
	border: none;
	cursor: pointer;
	white-space: nowrap;
	transition: color 0.15s ease;
}

/* Active / open state — Figma: red #8C0B05 + underline */
.alexiou-site-nav__link:hover,
.alexiou-site-nav__item--has-mega.is-open > .alexiou-site-nav__link {
	color: #8C0B05;
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* ── Chevron — Figma: 14 × 14 px, flips when open ──────────────────────── */
.alexiou-site-nav__chevron {
	flex-shrink: 0;
}

/* ── Search button ──────────────────────────────────────────────────────── */
.alexiou-nav-search {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	background: none;
	border: none;
	cursor: pointer;
	color: #0E212F;
	padding: 10px;
	margin-right: 4px; /* breathing room before CTA on desktop */
	transition: color 0.15s ease;
}
.alexiou-nav-search:hover { color: #8C0B05; }

/* ═══════════════════════════════════════════════════════════════════════════
   MEGA MENU OVERLAYS
   Figma Variant 2 / 3 / 4: full-viewport dark overlay (rgba(20,20,20,0.53)
   + backdrop-blur(10px)), items list on the left, image panel on the right,
   contact info below the image.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── Base overlay ───────────────────────────────────────────────────────── */
/* top/height set dynamically via JS (headerBottom()) so the overlay starts
   flush at the real bottom of the sticky header regardless of actual height */
.alexiou-mega {
	position: fixed;
	top: var(--alexiou-header-h, 137px); /* JS overrides this inline */
	left: 0;
	width: 100%;
	height: calc(100vh - var(--alexiou-header-h, 137px));
	z-index: 999;
	background: rgba(46, 94, 126, 0.95); /* Harbor Blue #2E5E7E */
	animation: alexiou-mega-in 0.18s ease forwards;
}

.alexiou-mega[hidden] {
	display: none;
}

@keyframes alexiou-mega-in {
	from { opacity: 0; }
	to   { opacity: 1; }
}

/* ── Inner layout ────────────────────────────────────────────────────────── */
/*
 * Figma (1920 × 1037 px component, 95 px white nav + 942 px dark area):
 *   content top    : 126 − 95 = 31 px
 *   content bottom : 1037 − (677+155) = 205 px → ~31 px bottom padding on inner
 *   items left     : 585 / 1920 = 30.47 %
 *   right panel    : left 1368 px, w 470 px, right margin 82 / 1920 = 4.27 %
 */
.alexiou-mega__inner {
	position: absolute;
	top: 31px;        /* Figma: 126 − 95 = 31 px below nav bar */
	bottom: 31px;     /* mirrors top — gives ~205 px bottom gap on 1080 p screen */
	left: 30.47%;     /* 585 / 1920 */
	right: 4.27%;     /* 82 / 1920 */
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 40px;
}

/* ── Items list (left column) ─────────────────────────────────────────────
 * Figma: flex-col gap-[10px], Manrope Regular 24 px, white
 * ─────────────────────────────────────────────────────────────────────── */
.alexiou-mega__items {
	display: flex;
	flex-direction: column;
	gap: 28px;
	flex: 1 1 auto;
	min-width: 0;
}

.alexiou-mega__item-link {
	display: flex;
	align-items: center;
	gap: 8px;
	font-family: var(--alexiou-sans, 'Manrope', sans-serif);
	font-size: 24px;   /* Figma: text-[24px] */
	font-weight: 400;
	line-height: 1;
	color: #fff;
	text-decoration: none;
	transition: opacity 0.15s ease;
}
.alexiou-mega__item-link:hover { opacity: 0.8; }

/* "Όλες / Όλα" — Figma: underline decoration */
.alexiou-mega__item-link--all {
	text-decoration: underline;
	text-underline-offset: 3px;
	margin-top: 0; /* same gap as other items */
}

/* Small down-arrow for ΠΡΟΪΟΝΤΑ / DESIGN items — Figma: lsicon 17 px */
.alexiou-mega__item-arrow {
	flex-shrink: 0;
}

/* ── Right column: image 470 × 520 px + contact 283 × 155 px ─────────────
 * Figma positions (from overlay top = nav bar bottom):
 *   image   : top 31 px,  left 1368 px, w 470, h 520
 *   contact : top 582 px (31+520+31), left 1368 px, w 283, h 155
 *   social  : top 129 px within contact block
 *   bottom gap: 1037−(677+155) = 205 px
 *
 * align-self:stretch + flex:1 on image lets the image shrink on smaller
 * viewports while the contact block always sits at a fixed height below.
 * ─────────────────────────────────────────────────────────────────────── */
.alexiou-mega__right {
	display: flex;
	flex-direction: column;
	width: 470px;
	flex-shrink: 0;
	align-self: stretch; /* fill the inner box height so image can flex */
}

/* Image — Figma: 470 × 520 px. flex:1 lets it shrink on small viewports. */
.alexiou-mega__img {
	width: 470px;
	flex: 1 1 0%;
	min-height: 0;
	max-height: 520px; /* Figma cap */
	overflow: hidden;
}
.alexiou-mega__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Contact — Figma: 31 px gap below image, 283 px wide, 155 px tall */
.alexiou-mega__contact {
	margin-top: 31px;  /* Figma gap between image bottom and contact top */
	width: 283px;
}

/* Contact text — Figma: Manrope Regular 20 px, tracking -1 px, white, underlined, gap 16 px */
.alexiou-mega__contact-info {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.alexiou-mega__contact-line {
	display: block;
	font-family: var(--alexiou-sans, 'Manrope', sans-serif);
	font-size: 20px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: -1px;
	color: #fff;
	text-decoration: underline;
	text-underline-offset: 3px;
	white-space: nowrap; /* Figma: address text is wider than container (367px in 283px box) */
}
a.alexiou-mega__contact-line:hover { opacity: 0.8; }

/* Social icons — Figma: gap 10 px, each icon 30 × 30 px, padding 3 px */
.alexiou-mega__social {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 37px; /* Figma: social row at top 129 px in 155 px contact box → 129−(3×20+2×16) ≈ 37 px */
}

.alexiou-mega__social-link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	flex-shrink: 0;
	overflow: hidden;
	padding: 3px;
	text-decoration: none;
}
.alexiou-mega__social-link svg {
	width: 24px;
	height: 24px;
	display: block;
}
.alexiou-mega__social-link:hover { opacity: 0.8; }

/* ── Grouped mega items — accordion (Προϊόντα / Design GR) ──────────────── */
.alexiou-mega__items--grouped {
	display: flex;
	flex-direction: column;
	gap: 28px;
}

.alexiou-mega__item-group {
	display: flex;
	flex-direction: column;
}

/* Header row: label link (navigates) + chevron button (expands) */
.alexiou-mega__item-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-bottom: 1px solid transparent;
	transition: border-color 0.25s ease, padding 0.25s ease;
}
.alexiou-mega__item-group.is-open .alexiou-mega__item-header {
	border-bottom-color: rgba(255, 255, 255, 0.25);
	padding-bottom: 10px;
}

.alexiou-mega__item-parent {
	font-family: var(--alexiou-sans, 'Manrope', sans-serif);
	font-size: 24px;
	font-weight: 400;
	line-height: 1;
	white-space: nowrap;
	color: #fff;
	text-decoration: none;
	transition: opacity 0.15s ease;
}
.alexiou-mega__item-parent:hover { opacity: 0.75; }

/* Chevron-only button */
.alexiou-mega__item-toggle {
	flex-shrink: 0;
	background: none;
	border: none;
	padding: 4px;
	cursor: pointer;
	color: #fff;
	display: flex;
	align-items: center;
}
.alexiou-mega__item-toggle:hover { opacity: 0.75; }

.alexiou-mega__toggle-chevron {
	flex-shrink: 0;
	transition: transform 0.25s ease;
}
.alexiou-mega__item-toggle[aria-expanded="true"] .alexiou-mega__toggle-chevron {
	transform: rotate(180deg);
}

/* Subcategories — hidden by default, expand via JS .is-open */
.alexiou-mega__item-subs {
	display: flex;
	flex-direction: column;
	gap: 6px;
	overflow: hidden;
	max-height: 0;
	transition: max-height 0.28s ease, margin-top 0.28s ease;
	margin-top: 0;
}
.alexiou-mega__item-subs.is-open {
	max-height: 300px;
	margin-top: 10px;
}

.alexiou-mega__item-sub {
	font-family: var(--alexiou-sans, 'Manrope', sans-serif);
	font-size: 19px;
	font-weight: 400;
	color: rgba(255, 255, 255, 0.72);
	text-decoration: none;
	padding: 2px 0;
	transition: color 0.15s ease, padding-left 0.15s ease;
}
.alexiou-mega__item-sub:hover {
	color: #fff;
	padding-left: 6px;
}

.alexiou-mega__items--grouped .alexiou-mega__item-link--all {
	font-size: 24px;
}

/* ── Mega menu — laptop responsive (right panel shrinks / image hides) ── */
@media (max-width: 1400px) {
	.alexiou-mega__right { width: 320px; }
	.alexiou-mega__img   { width: 320px; }
}
@media (max-width: 1280px) {
	.alexiou-mega__img { display: none; }
	.alexiou-mega__right { width: 240px; }
	.alexiou-mega__contact { width: 100%; margin-top: 0; }
}

/* ── Search overlay ──────────────────────────────────────────────────────── */
.alexiou-search-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 998;
	background: rgba(46, 94, 126, 0.97);
	overflow-y: auto;
	max-height: 100vh;
}
.alexiou-search-overlay[hidden] { display: none !important; }

.alexiou-search-inner {
	max-width: calc(var(--wp--style--global--wide-size) + 2 * var(--wp--custom--gutter));
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter);
	padding-block: 32px 40px;
}

.alexiou-search-form {
	display: flex;
	align-items: center;
	gap: 12px;
	border-bottom: 2px solid rgba(255, 255, 255, 0.4);
	padding-bottom: 10px;
}
.alexiou-search-icon {
	flex-shrink: 0;
	color: rgba(255, 255, 255, 0.6);
}
.alexiou-search-input {
	flex: 1;
	background: transparent;
	border: none;
	color: #fff;
	font-family: var(--alexiou-sans, 'Manrope', sans-serif);
	font-size: clamp(20px, 2.5vw, 32px);
	font-weight: 400;
	padding: 6px 0;
	outline: none;
	min-width: 0;
}
.alexiou-search-input::placeholder { color: rgba(255, 255, 255, 0.38); }
.alexiou-search-close {
	flex-shrink: 0;
	background: none;
	border: none;
	color: rgba(255, 255, 255, 0.7);
	cursor: pointer;
	padding: 4px;
	display: flex;
	align-items: center;
	transition: color 0.15s ease;
}
.alexiou-search-close:hover { color: #fff; }

/* Results */
.alexiou-search-results {
	margin-top: 20px;
	display: flex;
	flex-direction: column;
}
.alexiou-search-result {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	padding: 14px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
	text-decoration: none;
	color: #fff;
	transition: color 0.15s ease;
}
.alexiou-search-result:hover { color: var(--wp--preset--color--yellow, #F5D547); }
.alexiou-search-result__title {
	font-family: var(--alexiou-sans, 'Manrope', sans-serif);
	font-size: 18px;
	font-weight: 400;
	line-height: 1.35;
	flex: 1;
	min-width: 0;
}
.alexiou-search-result__type {
	font-family: var(--alexiou-mono, 'JetBrains Mono', monospace);
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: rgba(255, 255, 255, 0.45);
	flex-shrink: 0;
}
.alexiou-search-hint {
	font-family: var(--alexiou-sans, 'Manrope', sans-serif);
	font-size: 14px;
	color: rgba(255, 255, 255, 0.45);
	padding-top: 16px;
	text-align: center;
}
.alexiou-search-all {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 20px;
	padding: 10px 20px;
	border: 1px solid rgba(255,255,255,0.3);
	color: #fff;
	text-decoration: none;
	font-family: var(--alexiou-mono, 'JetBrains Mono', monospace);
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	transition: background 0.15s ease;
}
.alexiou-search-all:hover { background: rgba(255,255,255,0.1); }

/* ── Responsive: compress nav 1381–1440px (mild) ────────────────────────── */
@media (max-width: 1440px) {
	.alexiou-site-nav__list { gap: 18px; }
	.alexiou-site-nav__link { font-size: 14px; }
}
/* ── Responsive: compress nav 1201–1380px (tighter) ────────────────────── */
@media (max-width: 1380px) {
	.alexiou-site-nav__list { gap: 14px; }
	.alexiou-site-nav__link { font-size: 12px; }
}

/* ── Responsive: hide desktop nav on mobile ─────────────────────────────── */
@media (max-width: 1200px) {
	.alexiou-site-nav-wrap {
		display: none;
	}
	.alexiou-mega {
		display: none !important;
	}
}

/* ── Very small viewports (≤ 500px): prevent header overflow ──────────────
   At ~470px and below the logo (341px wide at full 78px height) + search +
   burger exceed the available content width. Scale logo down and tighten
   the search button padding so everything fits without wrapping. */
@media (max-width: 500px) {
	.alexiou-logo {
		height: auto;
	}
	.alexiou-logo__primary {
		height: 48px; /* proportional width ≈ 210px */
		width: auto;
	}
	.alexiou-nav-search {
		padding: 6px;
		margin-right: 0;
	}
}

/* ═══════════════════════════════════════════════════════════════════════════
   DESIGN — LANDING PAGE
   alexiou-components/design-landing
   ═══════════════════════════════════════════════════════════════════════════ */


.alexiou-design-landing {
	background: #fff;
}

.alexiou-design-landing__inner {
	max-width: var(--wp--style--global--wide-size, 1760px);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter, clamp(20px, 5vw, 80px));
	padding-block: clamp(40px, 5vw, 80px) clamp(60px, 6vw, 100px);
}

.alexiou-design-landing__breadcrumb {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	color: #7A7A7A;
	margin-bottom: clamp(24px, 3vw, 40px);
}
.alexiou-design-landing__breadcrumb a {
	color: #7A7A7A;
	text-decoration: none;
}

.alexiou-design-landing__heading {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(44px, 5.5vw, 80px);
	font-weight: 700;
	line-height: 1;
	letter-spacing: -2px;
	color: #2E5E7E;
	margin: 0;
}

.alexiou-design-landing__rule {
	border: none;
	border-top: 1px solid #D9D9D9;
	margin: clamp(20px, 3vw, 30px) 0;
}

.alexiou-design-landing__subtitle {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(22px, 3vw, 36px);
	font-weight: 600;
	line-height: 1.15;
	color: #0E212F;
	margin: 0 0 clamp(32px, 4vw, 60px);
	max-width: 720px;
}

.alexiou-design-landing__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: clamp(16px, 2vw, 29px);
}

.alexiou-design-landing__card {
	position: relative;
	display: block;
	text-decoration: none;
	color: inherit;
	overflow: hidden;
	aspect-ratio: 865 / 637;
	border-radius: 2px;
}

.alexiou-design-landing__card-photo {
	position: absolute;
	inset: 0;
}
.alexiou-design-landing__card-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.5s ease;
}
.alexiou-design-landing__card:hover .alexiou-design-landing__card-photo img {
	transform: scale(1.04);
}

.alexiou-design-landing__card-caption {
	position: absolute;
	bottom: 28px;
	left: 37px;
	right: 34px;
	height: 200px;
	background: rgba(255, 255, 255, 0.9);
	backdrop-filter: blur(2px);
	-webkit-backdrop-filter: blur(2px);
	padding: 34px 38px 20px;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 10px;
}

.alexiou-design-landing__card-title {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(18px, 2vw, 30px);
	font-weight: 600;
	color: #0E212F;
	margin: 0;
	line-height: 1.1;
}

.alexiou-design-landing__card-desc {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(13px, 1.4vw, 20px);
	font-weight: 400;
	line-height: 1.45;
	letter-spacing: -0.5px;
	color: #0E212F;
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.alexiou-design-landing__card-arrow {
	position: absolute;
	top: 30px;
	right: 30px;
	width: 51px;
	height: 51px;
	background: #2E5E7E;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	transition: background 0.2s;
}
.alexiou-design-landing__card:hover .alexiou-design-landing__card-arrow {
	background: #0E212F;
}

@media (max-width: 900px) {
	.alexiou-design-landing__grid {
		grid-template-columns: 1fr;
	}
	.alexiou-design-landing__card {
		aspect-ratio: 16 / 9;
	}
	.alexiou-design-landing__card-caption {
		height: auto;
		min-height: 120px;
	}
	.alexiou-design-landing__card-desc {
		-webkit-line-clamp: 3;
	}
}

@media (max-width: 640px) {
	.alexiou-design-landing__card {
		aspect-ratio: 4 / 3;
	}
}

/* ═══════════════════════════════════════════════════════════════════════════
   DESIGN — CATEGORY PAGE
   alexiou-components/design-internal
   ═══════════════════════════════════════════════════════════════════════════ */

.alexiou-design-internal {
	background: #fff;
}

/* ── Hero ────────────────────────────────────────────────────────────────── */

.alexiou-design-internal__hero {
	background: #fff;
}

.alexiou-design-internal__hero-inner {
	max-width: var(--wp--style--global--wide-size, 1760px);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter, clamp(20px, 5vw, 80px));
	padding-block: clamp(40px, 5vw, 80px) clamp(40px, 5vw, 80px);
}

.alexiou-design-internal__breadcrumb {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.4;
	text-transform: uppercase;
	color: #7A7A7A;
	margin-bottom: clamp(20px, 3vw, 40px);
}
.alexiou-design-internal__breadcrumb a {
	color: #7A7A7A;
	text-decoration: none;
}
.alexiou-design-internal__breadcrumb span:last-child {
	color: #0E212F;
}

.alexiou-design-internal__heading {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(44px, 5.5vw, 80px);
	font-weight: 700;
	line-height: 1;
	letter-spacing: -2px;
	color: #2E5E7E;
	margin: 0;
}

.alexiou-design-internal__rule {
	border: none;
	border-top: 1px solid #D9D9D9;
	margin: clamp(20px, 3vw, 30px) 0;
}

.alexiou-design-internal__subtitle {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(20px, 2.5vw, 36px);
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0;
	color: #0E212F;
	margin: 0;
	max-width: 1018px;
}

/* ── Items section ───────────────────────────────────────────────────────── */

.alexiou-design-internal__items {
	background: #F0F4F8;
	padding-block: clamp(40px, 5vw, 80px) clamp(60px, 6vw, 100px);
}

.alexiou-design-internal__item {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: clamp(40px, 8vw, 170px);
	max-width: var(--wp--style--global--wide-size, 1760px);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter, clamp(20px, 5vw, 80px));
	padding-block: clamp(30px, 4vw, 60px);
}

.alexiou-design-internal__item--reversed {
	flex-direction: row-reverse;
}

/* Photo */

.alexiou-design-internal__item-photo {
	flex: 0 0 clamp(280px, 52vw, 870px);
	aspect-ratio: 870 / 510;
	overflow: hidden;
}

.alexiou-design-internal__item-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Text */

.alexiou-design-internal__item-text {
	flex: 1 1 0;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 0;
}

.alexiou-design-internal__item--reversed .alexiou-design-internal__item-text {
	text-align: right;
	align-items: flex-end;
}

.alexiou-design-internal__item-eyebrow {
	font-family: 'JetBrains Mono', monospace;
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	color: #0E212F;
	margin: 0 0 clamp(8px, 1.5vw, 20px);
}

.alexiou-design-internal__item-name {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(28px, 3.5vw, 48px);
	font-weight: 700;
	line-height: 1;
	letter-spacing: -1px;
	color: #0E212F;
	margin: 0 0 clamp(16px, 2vw, 32px);
}

.alexiou-design-internal__item-desc {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(16px, 1.5vw, 20px);
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: -1px;
	color: #4A4A4A;
	margin: 0 0 clamp(24px, 3vw, 48px);
}

.alexiou-design-internal__item-btn {
	display: inline-block;
	align-self: flex-start;
	background: #2E5E7E;
	color: #fff;
	font-family: 'JetBrains Mono', monospace;
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	text-decoration: none;
	letter-spacing: 0;
	padding: 0 clamp(16px, 2vw, 30px);
	height: 60px;
	line-height: 60px;
	border-radius: 2px;
	transition: background 0.2s;
	white-space: nowrap;
}
.alexiou-design-internal__item-btn:hover {
	background: #1e4a65;
}
.alexiou-design-internal__item--reversed .alexiou-design-internal__item-btn {
	align-self: flex-end;
}

/* ── Responsive ─────────────────────────────────────────────────────────────*/

@media (max-width: 900px) {
	.alexiou-design-internal__item,
	.alexiou-design-internal__item--reversed {
		flex-direction: column;
		align-items: stretch;
	}
	.alexiou-design-internal__item--reversed .alexiou-design-internal__item-text {
		text-align: left;
		align-items: flex-start;
	}
	.alexiou-design-internal__item-photo {
		flex: none;
		width: 100%;
	}
}

/* ═══════════════════════════════════════════════════════════════════════════
   DESIGN — DETAIL 1 (Photo gallery item page)
   alexiou-components/design-detail-1
   ═══════════════════════════════════════════════════════════════════════════ */

.alexiou-design-detail-1__hero {
	background: #fff;
	overflow: hidden;
}
.alexiou-design-detail-1__hero-inner {
	max-width: var(--wp--style--global--wide-size, 1760px);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter, clamp(20px, 5vw, 80px));
	padding-top: clamp(40px, 5vw, 80px);
	padding-bottom: clamp(40px, 5vw, 60px);
	display: flex;
	align-items: flex-start;
	gap: clamp(32px, 5vw, 80px);
}
.alexiou-design-detail-1__hero-left {
	flex: 0 0 clamp(280px, 33%, 583px);
	display: flex;
	flex-direction: column;
	gap: clamp(40px, 8vw, 125px);
}
.alexiou-design-detail-1__hero-head {
	display: flex;
	flex-direction: column;
	gap: 24px;
}
.alexiou-design-detail-1__breadcrumb {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	text-transform: uppercase;
	color: #7A7A7A;
	line-height: 1.5;
}
.alexiou-design-detail-1__breadcrumb a {
	color: #7A7A7A;
	text-decoration: none;
}
.alexiou-design-detail-1__breadcrumb span:last-child {
	color: #0E212F;
}
.alexiou-design-detail-1__heading {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(44px, 5.5vw, 80px);
	font-weight: 700;
	line-height: 1;
	letter-spacing: -2px;
	color: #2E5E7E;
	margin: 0;
	max-width: 578px;
}
.alexiou-design-detail-1__subtitle {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(18px, 1.8vw, 24px);
	font-weight: 600;
	line-height: 1.2;
	color: #4A4A4A;
	margin: 0;
}
.alexiou-design-detail-1__hero-photo {
	flex: 1;
	aspect-ratio: 1092 / 697;
	overflow: hidden;
	min-width: 0;
}
.alexiou-design-detail-1__hero-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.alexiou-design-detail-1__body {
	background: #F0F4F8;
	padding-block: clamp(40px, 5vw, 80px);
}
.alexiou-design-detail-1__body-inner {
	max-width: var(--wp--style--global--wide-size, 1760px);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter, clamp(20px, 5vw, 80px));
	display: flex;
	gap: clamp(24px, 4vw, 60px);
	align-items: flex-start;
}
.alexiou-design-detail-1__body-sidebar {
	flex: 0 0 clamp(80px, 15%, 299px);
}
.alexiou-design-detail-1__body-eyebrow {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	color: #8C0B05;
	display: block;
}
.alexiou-design-detail-1__body-main {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: clamp(24px, 3vw, 40px);
}
.alexiou-design-detail-1__body-desc {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(18px, 2vw, 30px);
	font-weight: 600;
	line-height: 1.3;
	color: #0E212F;
	margin: 0;
}
.alexiou-design-detail-1__gallery {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: clamp(8px, 1.5vw, 20px);
}
.alexiou-design-detail-1__gallery-item {
	aspect-ratio: 350 / 548;
	overflow: hidden;
}
.alexiou-design-detail-1__gallery-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.4s ease;
}
.alexiou-design-detail-1__gallery-item:hover img {
	transform: scale(1.04);
}

.alexiou-design-detail-1__related {
	background: #fff;
	padding-block: clamp(40px, 5vw, 80px);
}
.alexiou-design-detail-1__related-inner {
	max-width: var(--wp--style--global--wide-size, 1760px);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter, clamp(20px, 5vw, 80px));
	display: flex;
	flex-direction: column;
	gap: clamp(24px, 3vw, 48px);
}
.alexiou-design-detail-1__related-head {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.alexiou-design-detail-1__related-eyebrow {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	color: #8C0B05;
	margin: 0;
}
.alexiou-design-detail-1__related-title {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(28px, 3vw, 48px);
	font-weight: 700;
	line-height: 1;
	letter-spacing: -1px;
	color: #0E212F;
	margin: 0;
}
.alexiou-design-detail-1__related-cards {
	display: flex;
	gap: clamp(12px, 1.5vw, 23px);
}
.alexiou-design-detail-1__related-card {
	flex: 1;
	position: relative;
	aspect-ratio: 571 / 477;
	overflow: hidden;
	display: block;
	text-decoration: none;
}
.alexiou-design-detail-1__related-card-photo {
	position: absolute;
	inset: 0;
}
.alexiou-design-detail-1__related-card-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.4s ease;
}
.alexiou-design-detail-1__related-card:hover .alexiou-design-detail-1__related-card-photo img {
	transform: scale(1.04);
}
.alexiou-design-detail-1__related-card-arrow {
	position: absolute;
	top: 35px;
	right: 21px;
	width: 51px;
	height: 51px;
	background: #2E5E7E;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	z-index: 2;
}
.alexiou-design-detail-1__related-card-caption {
	position: absolute;
	bottom: 14px;
	left: 14px;
	right: 14px;
	background: rgba(255, 255, 255, 0.9);
	backdrop-filter: blur(2px);
	padding: 25px 28px 20px;
	display: flex;
	flex-direction: column;
	gap: 8px;
	z-index: 2;
}
.alexiou-design-detail-1__related-card-name {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(18px, 1.6vw, 24px);
	font-weight: 600;
	line-height: 1.1;
	color: #0E212F;
	margin: 0;
}
.alexiou-design-detail-1__related-card-desc {
	font-family: 'Manrope', sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.4;
	letter-spacing: -0.6px;
	color: #0E212F;
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.alexiou-design-detail-1__cta {
	background: #0E212F;
	padding-block: clamp(60px, 8vw, 120px);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: clamp(24px, 4vw, 60px);
	padding-inline: var(--wp--custom--gutter, clamp(20px, 5vw, 80px));
}
.alexiou-design-detail-1__cta-content {
	flex: 1;
	min-width: 0;
}
.alexiou-design-detail-1__cta-eyebrow {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	text-transform: uppercase;
	color: #EDBF2E;
	margin: 0 0 clamp(12px, 2vw, 24px);
}
.alexiou-design-detail-1__cta-heading {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(36px, 4vw, 64px);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -2px;
	color: #fff;
	margin: 0 0 clamp(16px, 2vw, 24px);
}
.alexiou-design-detail-1__cta-heading--accent {
	color: #EDBF2E;
}
.alexiou-design-detail-1__cta-body {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(14px, 1.2vw, 20px);
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: -1px;
	color: #fff;
	margin: 0;
	max-width: 700px;
}
.alexiou-design-detail-1__cta-actions {
	display: flex;
	flex-direction: column;
	gap: 20px;
	min-width: clamp(260px, 35%, 713px);
	flex-shrink: 0;
}
.alexiou-design-detail-1__cta-btn {
	display: flex;
	align-items: center;
	height: 76px;
	padding-inline: 46px;
	font-family: 'JetBrains Mono', monospace;
	font-size: 16px;
	text-transform: uppercase;
	text-decoration: none;
	transition: opacity 0.2s;
}
.alexiou-design-detail-1__cta-btn:hover { opacity: 0.85; color: inherit; }
.alexiou-design-detail-1__cta-btn--primary {
	background: #fff;
	color: #0E212F;
	justify-content: space-between;
}
.alexiou-design-detail-1__cta-btn--call {
	color: #fff;
	border: 0.5px solid #D9D9D9;
	justify-content: flex-start;
	gap: 12px;
}
.alexiou-design-detail-1__cta-phone {
	color: #EDBF2E;
}

@media (max-width: 1200px) {
	.alexiou-design-detail-1__hero-inner { flex-direction: column; }
	.alexiou-design-detail-1__hero-left { flex: none; width: 100%; }
	.alexiou-design-detail-1__hero-photo { width: 100%; }
	.alexiou-design-detail-1__gallery { grid-template-columns: repeat(2, 1fr); }
	.alexiou-design-detail-1__cta { flex-direction: column; align-items: flex-start; }
	.alexiou-design-detail-1__cta-actions { min-width: 100%; width: 100%; }
}
@media (max-width: 700px) {
	.alexiou-design-detail-1__body-inner { flex-direction: column; }
	.alexiou-design-detail-1__gallery { grid-template-columns: repeat(2, 1fr); }
	.alexiou-design-detail-1__related-cards { flex-direction: column; }
	.alexiou-design-detail-1__related-card { aspect-ratio: 16/9; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   DESIGN — DETAIL 2 (Materials / swatches page)
   alexiou-components/design-detail-2
   ═══════════════════════════════════════════════════════════════════════════ */

.alexiou-design-detail-2__hero {
	background: #fff;
}
.alexiou-design-detail-2__hero-inner {
	max-width: var(--wp--style--global--wide-size, 1760px);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter, clamp(20px, 5vw, 80px));
	padding-top: clamp(40px, 5vw, 80px);
	padding-bottom: clamp(32px, 4vw, 60px);
	display: flex;
	flex-direction: column;
	gap: 24px;
}
.alexiou-design-detail-2__breadcrumb {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	text-transform: uppercase;
	color: #7A7A7A;
	line-height: 1.5;
}
.alexiou-design-detail-2__breadcrumb a { color: #7A7A7A; text-decoration: none; }
.alexiou-design-detail-2__breadcrumb span:last-child { color: #0E212F; }
.alexiou-design-detail-2__heading {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(44px, 5.5vw, 80px);
	font-weight: 700;
	line-height: 1;
	letter-spacing: -2px;
	color: #2E5E7E;
	margin: 0;
}

/* ── Material sections ───────────────────────────────────────────────────── */

.alexiou-design-detail-2__sections {
	background: #fff;
	padding-bottom: clamp(40px, 6vw, 100px);
}
.alexiou-design-detail-2__sections-inner {
	max-width: var(--wp--style--global--wide-size, 1760px);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter, clamp(20px, 5vw, 80px));
	display: flex;
	flex-direction: column;
	gap: clamp(32px, 6vw, 101px);
}
.alexiou-design-detail-2__section {
	display: flex;
	flex-direction: column;
	gap: clamp(20px, 3vw, 58px);
}
.alexiou-design-detail-2__section-header {
	display: flex;
	align-items: center;
	gap: 16px;
}
.alexiou-design-detail-2__section-label {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	color: #8C0B05;
	white-space: nowrap;
	flex-shrink: 0;
}
.alexiou-design-detail-2__section-rule {
	flex: 1;
	height: 0.6px;
	background: #8C0B05;
	display: block;
}
.alexiou-design-detail-2__section-images {
	display: flex;
	flex-wrap: wrap;
	gap: clamp(8px, 1.2vw, 16px);
	align-items: flex-start;
}
.alexiou-design-detail-2__section-img {
	flex: 0 0 auto;
	overflow: hidden;
}
.alexiou-design-detail-2__section-img img {
	display: block;
	height: 200px;
	width: auto;
	max-width: 100%;
	object-fit: cover;
	transition: transform 0.4s ease;
}
.alexiou-design-detail-2__section-img:hover img {
	transform: scale(1.04);
}

.alexiou-design-detail-2__related {
	background: #fff;
	padding-block: clamp(40px, 5vw, 80px);
	border-top: 1px solid #D9D9D9;
}
.alexiou-design-detail-2__related-inner {
	max-width: var(--wp--style--global--wide-size, 1760px);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter, clamp(20px, 5vw, 80px));
	display: flex;
	flex-direction: column;
	gap: clamp(24px, 3vw, 48px);
}
.alexiou-design-detail-2__related-head { display: flex; flex-direction: column; gap: 8px; }
.alexiou-design-detail-2__related-eyebrow {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	text-transform: uppercase;
	color: #8C0B05;
	margin: 0;
}
.alexiou-design-detail-2__related-title {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(28px, 3vw, 48px);
	font-weight: 700;
	line-height: 1;
	letter-spacing: -1px;
	color: #0E212F;
	margin: 0;
}
.alexiou-design-detail-2__related-cards { display: flex; gap: clamp(12px, 1.5vw, 23px); }
.alexiou-design-detail-2__related-card {
	flex: 1;
	position: relative;
	aspect-ratio: 571 / 477;
	overflow: hidden;
	display: block;
	text-decoration: none;
}
.alexiou-design-detail-2__related-card-photo { position: absolute; inset: 0; }
.alexiou-design-detail-2__related-card-photo img {
	width: 100%; height: 100%; object-fit: cover; display: block;
	transition: transform 0.4s ease;
}
.alexiou-design-detail-2__related-card:hover .alexiou-design-detail-2__related-card-photo img { transform: scale(1.04); }
.alexiou-design-detail-2__related-card-arrow {
	position: absolute; top: 35px; right: 21px;
	width: 51px; height: 51px; background: #2E5E7E; border-radius: 50%;
	display: flex; align-items: center; justify-content: center;
	color: #fff; z-index: 2;
}
.alexiou-design-detail-2__related-card-caption {
	position: absolute; bottom: 14px; left: 14px; right: 14px;
	background: rgba(255,255,255,0.9); backdrop-filter: blur(2px);
	padding: 25px 28px 20px; display: flex; flex-direction: column; gap: 8px; z-index: 2;
}
.alexiou-design-detail-2__related-card-name {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(18px, 1.6vw, 24px); font-weight: 600; color: #0E212F; margin: 0;
}
.alexiou-design-detail-2__related-card-desc {
	font-family: 'Manrope', sans-serif;
	font-size: 16px; color: #0E212F; margin: 0;
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}

.alexiou-design-detail-2__cta {
	background: #0E212F;
	padding-block: clamp(60px, 8vw, 120px);
	display: flex; align-items: center; justify-content: space-between;
	gap: clamp(24px, 4vw, 60px);
	padding-inline: var(--wp--custom--gutter, clamp(20px, 5vw, 80px));
}
.alexiou-design-detail-2__cta-eyebrow { font-family: 'JetBrains Mono', monospace; font-size: 14px; text-transform: uppercase; color: #EDBF2E; margin: 0 0 clamp(12px,2vw,24px); }
.alexiou-design-detail-2__cta-heading { font-family: 'Manrope', sans-serif; font-size: clamp(36px,4vw,64px); font-weight: 700; line-height: 1.1; letter-spacing: -2px; color: #fff; margin: 0 0 clamp(16px,2vw,24px); }
.alexiou-design-detail-2__cta-heading--accent { color: #EDBF2E; }
.alexiou-design-detail-2__cta-body { font-family: 'Manrope', sans-serif; font-size: clamp(14px,1.2vw,20px); color: #fff; margin: 0; max-width: 700px; line-height: 1.5; }
.alexiou-design-detail-2__cta-actions { display: flex; flex-direction: column; gap: 20px; min-width: clamp(260px,35%,713px); flex-shrink: 0; }
.alexiou-design-detail-2__cta-btn { display: flex; align-items: center; height: 76px; padding-inline: 46px; font-family: 'JetBrains Mono', monospace; font-size: 16px; text-transform: uppercase; text-decoration: none; transition: opacity 0.2s; }
.alexiou-design-detail-2__cta-btn:hover { opacity: 0.85; }
.alexiou-design-detail-2__cta-btn--primary { background: #fff; color: #0E212F; justify-content: space-between; }
.alexiou-design-detail-2__cta-btn--call { color: #fff; border: 0.5px solid #D9D9D9; justify-content: flex-start; gap: 12px; }
.alexiou-design-detail-2__cta-phone { color: #EDBF2E; }

@media (max-width: 1200px) {
	.alexiou-design-detail-2__hero-top { flex-direction: column; }
	.alexiou-design-detail-2__hero-head { flex: none; width: 100%; }
	.alexiou-design-detail-2__cta { flex-direction: column; align-items: flex-start; }
	.alexiou-design-detail-2__cta-actions { min-width: 100%; width: 100%; }
}
@media (max-width: 700px) {
	.alexiou-design-detail-2__related-cards { flex-direction: column; }
	.alexiou-design-detail-2__section-images { flex-direction: column; }
	.alexiou-design-detail-2__section-images--2 .alexiou-design-detail-2__section-img:first-child { flex: 1; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   PRODUCTS — LANDING PAGE
   alexiou-components/products-landing
   ═══════════════════════════════════════════════════════════════════════════ */

.alexiou-products-landing {
	background: #fff;
}

.alexiou-products-landing__inner {
	max-width: var(--wp--style--global--wide-size, 1760px);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter, clamp(20px, 5vw, 80px));
	padding-block: clamp(40px, 5vw, 80px) clamp(60px, 6vw, 100px);
}

.alexiou-products-landing__breadcrumb {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #7A7A7A;
	margin-bottom: clamp(24px, 3vw, 40px);
}
.alexiou-products-landing__breadcrumb a {
	color: #7A7A7A;
	text-decoration: none;
}
.alexiou-products-landing__breadcrumb-current {
	color: #0E212F;
}

.alexiou-products-landing__heading {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(44px, 5.5vw, 80px);
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: -2px;
	color: #2E5E7E;
	margin: 0 0 clamp(32px, 4vw, 60px);
}
.alexiou-products-landing__heading br {
	display: block;
}

.alexiou-products-landing__body {
	display: grid;
	grid-template-columns: 740fr 867fr;
	gap: clamp(24px, 6vw, 153px);
	align-items: start;
}

/* ── Left: tab panels ───────────────────────────────────────────────────── */

.alexiou-products-landing__panels-wrap {
	position: relative;
	overflow: hidden;
	aspect-ratio: 740 / 568;
	border-radius: 2px;
}

.alexiou-products-landing__panel {
	position: absolute;
	inset: 0;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.4s ease;
}

.alexiou-products-landing__panel.is-active {
	opacity: 1;
	pointer-events: auto;
}

.alexiou-products-landing__panel img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.alexiou-products-landing__panel-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(0,0,0,0.65) 0%, rgba(0,0,0,0) 50%);
	pointer-events: none;
}

.alexiou-products-landing__panel-text {
	position: absolute;
	bottom: 24px;
	left: 24px;
	right: 24px;
	color: #fff;
}

.alexiou-products-landing__panel-tag {
	display: block;
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0;
	margin-bottom: 12px;
}

.alexiou-products-landing__panel-desc {
	font-family: 'Manrope', sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: -0.4px;
	margin: 0;
	opacity: 0.9;
}

/* ── Right: category list ───────────────────────────────────────────────── */

.alexiou-products-landing__categories {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.alexiou-products-landing__lead {
	font-family: 'Manrope', sans-serif;
	font-size: 20px;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: -1px;
	color: #4A4A4A;
	margin: 0 0 clamp(24px, 3vw, 40px);
}

.alexiou-products-landing__cat-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.alexiou-products-landing__cat-rule {
	height: 1px;
	background: #D9D9D9;
	margin: 0;
}

/* Row = flex container for tab button + arrow link */
.alexiou-products-landing__cat-row {
	display: flex;
	align-items: center;
	transition: background 0.15s;
	border-radius: 2px;
}

/* Tab button (num + name) */
.alexiou-products-landing__cat-tab {
	flex: 1;
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 20px 0;
	background: none;
	border: none;
	cursor: pointer;
	text-align: left;
	color: inherit;
	font: inherit;
}

/* Arrow link (navigation only) */
.alexiou-products-landing__cat-arrow {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	padding: 20px 0;
	color: inherit;
	text-decoration: none;
}

.alexiou-products-landing__cat-num {
	font-family: 'JetBrains Mono', monospace;
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	color: inherit;
	flex-shrink: 0;
	min-width: 36px;
}

.alexiou-products-landing__cat-name {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(20px, 2.5vw, 30px);
	font-weight: 600;
	line-height: 1.1;
	letter-spacing: 0;
	color: inherit;
	flex: 1;
}

/* default state — dark text */
.alexiou-products-landing__cat-item .alexiou-products-landing__cat-row {
	color: #0E212F;
}

/* active — Harbor Blue background, white text */
.alexiou-products-landing__cat-item.is-active .alexiou-products-landing__cat-row {
	background: #2E5E7E;
	color: #fff;
	padding-inline: 20px;
	margin-inline: -20px;
}

.alexiou-products-landing__cat-item:not(.is-active) .alexiou-products-landing__cat-row:hover {
	background: #d8e4ee;
	padding-inline: 20px;
	margin-inline: -20px;
}

/* ── Responsive ─────────────────────────────────────────────────────────── */

@media (max-width: 900px) {
	.alexiou-products-landing__body {
		grid-template-columns: 1fr;
		gap: 32px;
	}
	.alexiou-products-landing__panels-wrap {
		aspect-ratio: 16 / 9;
	}
}


/* ═══════════════════════════════════════════════════════════════════════════
   PRODUCTS — INTERNAL (CATEGORY PAGE)
   alexiou-components/products-internal
   ═══════════════════════════════════════════════════════════════════════════ */

.alexiou-products-internal {
	background: #fff;
}

/* ── Hero section ───────────────────────────────────────────────────────── */

.alexiou-products-internal__hero {
	display: grid;
	grid-template-columns: 571fr 1092fr;
	gap: clamp(24px, 5vw, 97px);
	align-items: start;
	max-width: var(--wp--style--global--wide-size, 1760px);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter, clamp(20px, 5vw, 80px));
	padding-block: clamp(40px, 5vw, 80px) 0;
}

.alexiou-products-internal__hero-left {
	display: flex;
	flex-direction: column;
	gap: 0;
	padding-top: 50px;
}

.alexiou-products-internal__breadcrumb {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	color: #7A7A7A;
	margin-bottom: 24px;
}
.alexiou-products-internal__breadcrumb a {
	color: #7A7A7A;
	text-decoration: none;
}
.alexiou-products-internal__breadcrumb a:last-child,
.alexiou-products-internal__breadcrumb span:last-child {
	color: #0E212F;
}

.alexiou-products-internal__heading {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(40px, 5.5vw, 80px);
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: -2px;
	color: #2E5E7E;
	margin: 0 0 clamp(32px, 8vw, 125px);
}

.alexiou-products-internal__lead {
	font-family: 'Manrope', sans-serif;
	font-size: 20px;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: -1px;
	color: #4A4A4A;
	margin: 0;
}

.alexiou-products-internal__hero-right {
	overflow: hidden;
	aspect-ratio: 1092 / 747;
	border-radius: 2px;
}
.alexiou-products-internal__hero-right img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* ── Product list section ───────────────────────────────────────────────── */

.alexiou-products-internal__list-wrap {
	max-width: var(--wp--style--global--wide-size, 1760px);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter, clamp(20px, 5vw, 80px));
	padding-block: 0 clamp(60px, 6vw, 100px);
}

.alexiou-products-internal__rule {
	border: none;
	border-top: 1px solid #D9D9D9;
	margin: clamp(32px, 4vw, 60px) 0 0;
}

.alexiou-products-internal__list-row {
	display: grid;
	grid-template-columns: 867fr 717fr;
	gap: clamp(24px, 8vw, 176px);
	align-items: start;
	padding-top: clamp(32px, 4vw, 60px);
}

/* ── Product item ────────────────────────────────────────────────────────── */

.alexiou-products-internal__item {
	position: relative;
}

.alexiou-products-internal__item-rule {
	height: 1px;
	background: #D9D9D9;
	margin-bottom: 19px;
}

.alexiou-products-internal__item-header {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-bottom: 0;
}

.alexiou-products-internal__item-dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #8C0B05;
	flex-shrink: 0;
	display: none;
}
.alexiou-products-internal__item.is-active .alexiou-products-internal__item-dot {
	display: block;
}

.alexiou-products-internal__item-title {
	flex: 1;
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
	text-align: left;
	font-family: 'Manrope', sans-serif;
	font-size: clamp(18px, 2vw, 24px);
	font-weight: 600;
	line-height: 1.2;
	color: #7A7A7A;
	transition: color 0.15s;
}
.alexiou-products-internal__item.is-active .alexiou-products-internal__item-title {
	color: #8C0B05;
}

.alexiou-products-internal__item-arrow {
	flex-shrink: 0;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background: #2E5E7E;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 22px;
	text-decoration: none;
	font-weight: 300;
	opacity: 0;
	transition: opacity 0.2s, background 0.15s;
}
.alexiou-products-internal__item.is-active .alexiou-products-internal__item-arrow {
	opacity: 1;
}
.alexiou-products-internal__item:not(.is-active) .alexiou-products-internal__item-arrow {
	background: transparent;
	color: #0E212F;
	opacity: 1;
	font-size: 18px;
}

.alexiou-products-internal__item-body {
	padding: 20px 0 24px;
}

.alexiou-products-internal__item-desc {
	font-family: 'Manrope', sans-serif;
	font-size: 20px;
	font-weight: 400;
	line-height: 1.55;
	letter-spacing: -1px;
	color: #0E212F;
	margin: 0 0 24px;
}

.alexiou-products-internal__item-more {
	display: inline-block;
	font-family: 'JetBrains Mono', monospace;
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	color: #0E212F;
	text-decoration: none;
	border-bottom: 1px solid rgba(16,16,16,0.4);
	padding-bottom: 2px;
}

/* ── Preview image ───────────────────────────────────────────────────────── */

.alexiou-products-internal__preview {
	position: relative;
	aspect-ratio: 717 / 637;
	border-radius: 2px;
	overflow: hidden;
}

.alexiou-products-internal__preview-img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0;
	transition: opacity 0.4s ease;
}
.alexiou-products-internal__preview-img.is-active {
	opacity: 1;
}

/* ── Responsive ─────────────────────────────────────────────────────────── */

@media (max-width: 1024px) {
	.alexiou-products-internal__hero {
		grid-template-columns: 1fr;
	}
	.alexiou-products-internal__hero-right {
		aspect-ratio: 16 / 9;
		order: -1;
	}
	.alexiou-products-internal__hero-left {
		padding-top: 0;
	}
	.alexiou-products-internal__list-row {
		grid-template-columns: 1fr;
	}
	.alexiou-products-internal__preview {
		display: none;
	}
}


/* ═══════════════════════════════════════════════════════════════════════════
   PRODUCT — SINGLE PAGE
   alexiou-components/product-single
   ═══════════════════════════════════════════════════════════════════════════ */

.alexiou-product-single {
	background: #fff;
}

/* ── §1 Hero ────────────────────────────────────────────────────────────── */

.alexiou-product-single__hero-inner {
	max-width: var(--wp--style--global--wide-size, 1760px);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter, clamp(20px, 5vw, 80px));
	padding-top: clamp(40px, 5vw, 80px);
	padding-bottom: clamp(24px, 3vw, 40px);
}

.alexiou-product-single__breadcrumb {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	color: #7A7A7A;
	margin-bottom: 24px;
	display: block;
}
.alexiou-product-single__breadcrumb a {
	color: #7A7A7A;
	text-decoration: none;
}
.alexiou-product-single__breadcrumb span:last-child {
	color: #0E212F;
}

.alexiou-product-single__heading {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(36px, 5.5vw, 80px);
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: -2px;
	color: #2E5E7E;
	margin: 0;
}

.alexiou-product-single__hero-rule {
	border: none;
	border-top: 1px solid #D9D9D9;
	margin: 0;
}

.alexiou-product-single__hero-photo {
	position: relative;
	width: 100%;
	height: clamp(300px, 40vw, 630px);
	overflow: hidden;
}
.alexiou-product-single__hero-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.alexiou-product-single__hero-overlay {
	position: absolute;
	inset: 0;
	background: rgba(58, 111, 143, 0.32);
	pointer-events: none;
}

/* ── §2 Product description ─────────────────────────────────────────────── */

.alexiou-product-single__desc {
	padding-block: clamp(40px, 5vw, 96px);
}

.alexiou-product-single__desc-inner {
	max-width: var(--wp--style--global--wide-size, 1760px);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter, clamp(20px, 5vw, 80px));
	display: grid;
	grid-template-columns: 865fr 864fr;
	gap: clamp(24px, 3vw, 30px);
	align-items: start;
}

.alexiou-product-single__eyebrow {
	display: block;
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	color: #8C0B05;
	margin-bottom: 12px;
}

.alexiou-product-single__desc-heading {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(20px, 2.2vw, 30px);
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 0;
	color: #0E212F;
	margin: 0 0 24px;
}

.alexiou-product-single__desc-body {
	font-family: 'Manrope', sans-serif;
	font-size: 20px;
	font-weight: 400;
	line-height: 1.55;
	letter-spacing: -1px;
	color: #4A4A4A;
}
.alexiou-product-single__desc-body p {
	margin: 0 0 1em;
}
.alexiou-product-single__desc-body p:last-child {
	margin-bottom: 0;
}

.alexiou-product-single__desc-right {
	overflow: hidden;
	border-radius: 2px;
	aspect-ratio: 864 / 570;
}
.alexiou-product-single__desc-right img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* ── §3 Features + gallery ──────────────────────────────────────────────── */

.alexiou-product-single__features {
	background: #fff;
	padding-bottom: clamp(40px, 5vw, 80px);
}

.alexiou-product-single__features-inner {
	max-width: var(--wp--style--global--wide-size, 1760px);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter, clamp(20px, 5vw, 80px));
}

.alexiou-product-single__features-text {
	max-width: 865px;
	margin-bottom: clamp(32px, 4vw, 60px);
}

.alexiou-product-single__features-heading {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(20px, 2.2vw, 30px);
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 0;
	color: #4A4A4A;
	margin: 0 0 20px;
}

.alexiou-product-single__features-body {
	font-family: 'Manrope', sans-serif;
	font-size: 20px;
	font-weight: 400;
	line-height: 1.55;
	letter-spacing: -1px;
	color: #4A4A4A;
}
.alexiou-product-single__features-body p {
	margin: 0 0 1em;
}
.alexiou-product-single__features-body p:last-child {
	margin-bottom: 0;
}

/* Gallery carousel */
.alexiou-product-single__gallery {
	position: relative;
	max-width: var(--wp--style--global--wide-size, 1760px);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter, clamp(20px, 5vw, 80px));
}

.alexiou-product-single__gallery-track {
	display: flex;
	gap: 26px;
	overflow: hidden;
}

.alexiou-product-single__gallery-item {
	flex-shrink: 0;
	overflow: hidden;
	border-radius: 2px;
	margin: 0;
}
/* First image: square aspect */
.alexiou-product-single__gallery-item.is-square {
	width: 570px;
	aspect-ratio: 1;
}
/* Other images: wider */
.alexiou-product-single__gallery-item:not(.is-square) {
	flex: 1;
	aspect-ratio: 1164 / 570;
}
.alexiou-product-single__gallery-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.alexiou-product-single__gallery-btn {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #2E5E7E;
	color: #fff;
	border: none;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 2;
	transition: background 0.15s;
}
.alexiou-product-single__gallery-btn:hover {
	background: #1d4860;
}
.alexiou-product-single__gallery-btn--prev {
	left: calc(var(--wp--custom--gutter, clamp(20px, 5vw, 80px)) + 25px);
}
.alexiou-product-single__gallery-btn--next {
	right: calc(var(--wp--custom--gutter, clamp(20px, 5vw, 80px)) + 25px);
}

/* ── §4 Επιλεγμένα Έργα ─────────────────────────────────────────────────── */

.alexiou-product-single__erga {
	border-top: 1px solid #D9D9D9;
	background: #fff;
	padding-block: clamp(48px, 6vw, 94px) clamp(60px, 7vw, 112px);
}

.alexiou-product-single__erga-inner {
	max-width: var(--wp--style--global--wide-size, 1760px);
	margin-inline: auto;
	padding-inline: var(--wp--custom--gutter, clamp(20px, 5vw, 80px));
}

.alexiou-product-single__erga-header {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 12px 40px;
	margin-bottom: clamp(24px, 3vw, 48px);
}

.alexiou-product-single__erga-eyebrow {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	color: #8C0B05;
	width: 100%;
}

.alexiou-product-single__erga-heading {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(28px, 3.5vw, 48px);
	font-weight: 700;
	line-height: 1;
	letter-spacing: -1px;
	color: #0E212F;
	margin: 0;
	flex: 1;
}

.alexiou-product-single__erga-all {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	color: #0E212F;
	text-decoration: none;
	border-bottom: 1px solid rgba(16,16,16,0.4);
	padding-bottom: 2px;
	flex-shrink: 0;
}

.alexiou-product-single__erga-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: clamp(12px, 1.5vw, 20px);
}

.alexiou-product-single__erga-card {
	display: block;
	text-decoration: none;
	border: 1px solid #D9D9D9;
	overflow: hidden;
	border-radius: 2px;
}

.alexiou-product-single__erga-card-photo {
	position: relative;
	aspect-ratio: 420 / 438;
	overflow: hidden;
}
.alexiou-product-single__erga-card-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.35s ease;
}
.alexiou-product-single__erga-card:hover .alexiou-product-single__erga-card-photo img {
	transform: scale(1.04);
}
.alexiou-product-single__erga-card-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(0,0,0,0.5) 0%, transparent 50%);
	pointer-events: none;
}

.alexiou-product-single__erga-card-info {
	padding: 16px;
	background: #fff;
}

.alexiou-product-single__erga-card-tag {
	display: block;
	font-family: 'JetBrains Mono', monospace;
	font-size: 12px;
	font-weight: 400;
	text-transform: uppercase;
	color: #7A7A7A;
	margin-bottom: 6px;
}

.alexiou-product-single__erga-card-title {
	font-family: 'Manrope', sans-serif;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.3;
	color: #4A4A4A;
	margin: 0;
}

/* ── Product single responsive ──────────────────────────────────────────── */

@media (max-width: 1100px) {
	.alexiou-product-single__desc-inner {
		grid-template-columns: 1fr;
	}
	.alexiou-product-single__desc-right {
		aspect-ratio: 16 / 9;
	}
	.alexiou-product-single__erga-grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.alexiou-product-single__gallery-item.is-square {
		width: min(380px, 45vw);
	}
}

@media (max-width: 640px) {
	.alexiou-product-single__erga-grid {
		grid-template-columns: 1fr;
	}
	.alexiou-product-single__gallery-track {
		flex-direction: column;
	}
	.alexiou-product-single__gallery-item.is-square,
	.alexiou-product-single__gallery-item:not(.is-square) {
		width: 100%;
		aspect-ratio: 16 / 9;
		flex: none;
	}
}

/* ============================================================
   ERGA LANDING  (alexiou-components/erga-landing)
   ============================================================ */
.alexiou-erga-landing {
	background: #fff;
}

/* Hero */
.alexiou-erga-landing__hero {
	padding: 80px 0 60px;
	background: #fff;
}
.alexiou-erga-landing__hero-inner {
	max-width: 1760px;
	margin: 0 auto;
	padding: 0 80px;
}
.alexiou-erga-landing__breadcrumb {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	color: #7a7a7a;
	text-transform: uppercase;
	margin-bottom: 24px;
}
.alexiou-erga-landing__breadcrumb a {
	color: #7a7a7a;
	text-decoration: none;
}
.alexiou-erga-landing__breadcrumb span:last-child {
	color: #0e212f;
}
.alexiou-erga-landing__heading {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(48px, 5vw, 80px);
	font-weight: 700;
	color: #2e5e7e;
	letter-spacing: -2px;
	line-height: 1;
	margin: 0;
}

/* Body */
.alexiou-erga-landing__body {
	padding: 0 0 80px;
}
.alexiou-erga-landing__body-inner {
	max-width: 1760px;
	margin: 0 auto;
	padding: 0 80px;
}

/* Filter bar */
.alexiou-erga-landing__filter-bar {
	margin-bottom: 18px;
}
.alexiou-erga-landing__filter-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.alexiou-erga-landing__filter-btn {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	padding: 10px 20px;
	height: 41px;
	border: 0.8px solid #d9d9d9;
	background: transparent;
	color: #121215;
	cursor: pointer;
	transition: background 0.15s, color 0.15s, border-color 0.15s;
	line-height: 1;
}
.alexiou-erga-landing__filter-btn.is-active,
.alexiou-erga-landing__filter-btn:hover {
	background: #2e5e7e;
	color: #fff;
	border-color: #2e5e7e;
}

/* Rule */
.alexiou-erga-landing__rule {
	height: 1px;
	background: #d9d9d9;
	margin-bottom: 28px;
}

/* Grid */
.alexiou-erga-landing__grid {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 25px;
}
.alexiou-erga-landing__card {
	border: 1px solid #d9d9d9;
}
.alexiou-erga-landing__card-photo {
	position: relative;
	aspect-ratio: 3 / 2;
	overflow: hidden;
	margin: 19px 19px 0;
}
.alexiou-erga-landing__card-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.4s ease;
}
.alexiou-erga-landing__card:hover .alexiou-erga-landing__card-photo img {
	transform: scale(1.03);
}
.alexiou-erga-landing__card-photo-placeholder {
	width: 100%;
	height: 100%;
	background: #d9d9d9;
}
.alexiou-erga-landing__card-badge {
	position: absolute;
	top: 20px;
	left: 22px;
	background: rgba(255,255,255,0.85);
	font-family: 'JetBrains Mono', monospace;
	font-size: 12px;
	padding: 5px 10px;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	color: #0e212f;
}
.alexiou-erga-landing__card-body {
	padding: 16px 22px 0;
}
.alexiou-erga-landing__card-title {
	font-family: 'Manrope', sans-serif;
	font-size: 20px;
	font-weight: 600;
	color: #0e212f;
	margin: 0 0 16px;
	line-height: 1.3;
}
.alexiou-erga-landing__card-title a {
	color: inherit;
	text-decoration: none;
}
.alexiou-erga-landing__card-title a:hover {
	color: #2e5e7e;
}
.alexiou-erga-landing__card-footer {
	padding-bottom: 16px;
}
.alexiou-erga-landing__card-rule {
	height: 1px;
	background: #d9d9d9;
	margin-bottom: 12px;
}
.alexiou-erga-landing__card-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: 'Manrope', sans-serif;
	font-size: 15px;
	color: #0e212f;
	text-decoration: none;
	letter-spacing: -0.3px;
}
.alexiou-erga-landing__card-link:hover {
	color: #2e5e7e;
}

@media (max-width: 960px) {
	.alexiou-erga-landing__hero {
		padding: 24px 0 32px;
	}
	.alexiou-erga-landing__hero-inner,
	.alexiou-erga-landing__body-inner {
		padding: 0 24px;
	}
	.alexiou-erga-landing__grid {
		grid-template-columns: 1fr;
	}
}

/* ============================================================
   BLOG LANDING  (alexiou-components/blog-landing)
   ============================================================ */
.alexiou-blog-landing {
	background: #fff;
}

/* Hero */
.alexiou-blog-landing__hero {
	padding: 80px 0 60px;
}
.alexiou-blog-landing__hero-inner {
	max-width: 1760px;
	margin: 0 auto;
	padding: 0 80px;
}
.alexiou-blog-landing__breadcrumb {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	color: #7a7a7a;
	text-transform: uppercase;
	margin-bottom: 24px;
}
.alexiou-blog-landing__breadcrumb a {
	color: #7a7a7a;
	text-decoration: none;
}
.alexiou-blog-landing__breadcrumb span:last-child {
	color: #0e212f;
}
.alexiou-blog-landing__heading {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(40px, 5vw, 80px);
	font-weight: 700;
	color: #2e5e7e;
	letter-spacing: -2px;
	line-height: 1;
	margin: 0;
}

/* Body */
.alexiou-blog-landing__body {
	padding: 0 0 80px;
}
.alexiou-blog-landing__body-inner {
	max-width: 1760px;
	margin: 0 auto;
	padding: 0 80px;
}

/* Featured post */
.alexiou-blog-landing__featured {
	display: grid;
	grid-template-columns: 1fr 1fr;
	border: 1px solid #d9d9d9;
	margin-bottom: 60px;
	min-height: 440px;
}
.alexiou-blog-landing__featured-text {
	padding: 42px 40px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.alexiou-blog-landing__featured-meta {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	color: #7a7a7a;
	text-transform: uppercase;
	margin: 0 0 24px;
}
.alexiou-blog-landing__featured-title {
	font-family: 'Manrope', sans-serif;
	font-size: 30px;
	font-weight: 600;
	color: #0e212f;
	letter-spacing: -0.5px;
	line-height: 1.2;
	margin: 0 0 auto;
	padding-bottom: 32px;
}
.alexiou-blog-landing__featured-title a {
	color: inherit;
	text-decoration: none;
}
.alexiou-blog-landing__featured-title a:hover {
	color: #2e5e7e;
}
.alexiou-blog-landing__featured-cta {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #2e5e7e;
	color: #fff;
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	padding: 0 24px;
	height: 60px;
	text-decoration: none;
	align-self: flex-start;
	transition: background 0.15s;
}
.alexiou-blog-landing__featured-cta:hover {
	background: #0e212f;
	color: #fff;
}
.alexiou-blog-landing__featured-photo {
	overflow: hidden;
}
.alexiou-blog-landing__featured-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* All articles section */
.alexiou-blog-landing__all-label {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	color: #8c0b05;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin-bottom: 18px;
}

/* Rule */
.alexiou-blog-landing__rule {
	height: 1px;
	background: #d9d9d9;
	margin-bottom: 18px;
}

/* Filter bar */
.alexiou-blog-landing__filter-bar {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 48px;
}
.alexiou-blog-landing__filter-btn {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	padding: 10px 20px;
	height: 41px;
	border: 0.8px solid #d9d9d9;
	background: transparent;
	color: #121215;
	cursor: pointer;
	transition: background 0.15s, color 0.15s, border-color 0.15s;
	line-height: 1;
}
.alexiou-blog-landing__filter-btn.is-active,
.alexiou-blog-landing__filter-btn:hover {
	background: #2e5e7e;
	color: #fff;
	border-color: #2e5e7e;
}

/* Posts grid */
.alexiou-blog-landing__grid {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}
.alexiou-blog-landing__card {
	border: 1px solid #d9d9d9;
	display: flex;
	flex-direction: column;
}
.alexiou-blog-landing__card-img-link {
	display: block;
}
.alexiou-blog-landing__card-photo {
	aspect-ratio: 3 / 2;
	overflow: hidden;
}
.alexiou-blog-landing__card-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.4s ease;
}
.alexiou-blog-landing__card:hover .alexiou-blog-landing__card-photo img {
	transform: scale(1.03);
}
.alexiou-blog-landing__card-body {
	padding: 20px 20px 0;
	display: flex;
	flex-direction: column;
	flex: 1;
}
.alexiou-blog-landing__card-meta {
	font-family: 'JetBrains Mono', monospace;
	font-size: 13px;
	color: #7a7a7a;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	margin: 0 0 12px;
}
.alexiou-blog-landing__card-title {
	font-family: 'Manrope', sans-serif;
	font-size: 18px;
	font-weight: 600;
	color: #0e212f;
	letter-spacing: -0.5px;
	line-height: 1.3;
	margin: 0 0 auto;
	padding-bottom: 16px;
}
.alexiou-blog-landing__card-title a {
	color: inherit;
	text-decoration: none;
}
.alexiou-blog-landing__card-title a:hover {
	color: #2e5e7e;
}
.alexiou-blog-landing__card-footer {
	padding-bottom: 16px;
}
.alexiou-blog-landing__card-rule {
	height: 1px;
	background: #d9d9d9;
	margin-bottom: 12px;
}
.alexiou-blog-landing__card-read-more {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-family: 'Manrope', sans-serif;
	font-size: 15px;
	color: #0e212f;
	text-decoration: none;
	letter-spacing: -0.3px;
}
.alexiou-blog-landing__card-read-more:hover {
	color: #2e5e7e;
}

@media (max-width: 1100px) {
	.alexiou-blog-landing__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 760px) {
	.alexiou-blog-landing__hero {
		padding: 24px 0 32px;
	}
	.alexiou-blog-landing__hero-inner,
	.alexiou-blog-landing__body-inner {
		padding: 0 24px;
	}
	.alexiou-blog-landing__featured {
		grid-template-columns: 1fr;
	}
	.alexiou-blog-landing__featured-photo {
		order: -1;
		min-height: 260px;
	}
	.alexiou-blog-landing__grid {
		grid-template-columns: 1fr;
	}
}

/* ============================================================
   CONTACT PAGE  (alexiou-components/contact-page)
   ============================================================ */
.alexiou-contact-page {
	background: #fff;
}

/* Hero */
.alexiou-contact-page__hero {
	position: relative;
	min-height: 760px;
	background-color: #0e212f;
	background-size: cover;
	background-position: center;
	display: flex;
	align-items: center;
}
.alexiou-contact-page__hero-overlay {
	position: absolute;
	inset: 0;
	background: rgba(11, 27, 38, 0.90);
	pointer-events: none;
}
.alexiou-contact-page__hero-inner {
	position: relative;
	z-index: 1;
	max-width: 1760px;
	margin: 0 auto;
	padding: 80px;
	width: 100%;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 80px;
	align-items: start;
}
.alexiou-contact-page__hero-left {
	padding-top: 8px;
}
.alexiou-contact-page__breadcrumb {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #edbf2e;
	margin-bottom: 28px;
}
.alexiou-contact-page__breadcrumb a {
	color: #7a7a7a;
	text-decoration: none;
}
.alexiou-contact-page__breadcrumb span:last-child {
	color: #edbf2e;
}
.alexiou-contact-page__heading {
	font-family: 'Manrope', sans-serif;
	font-size: clamp(40px, 4.5vw, 64px);
	font-weight: 700;
	color: #f8f7f4;
	letter-spacing: -2px;
	line-height: 1.1;
	margin: 0 0 28px;
}
.alexiou-contact-page__lead {
	font-family: 'Manrope', sans-serif;
	font-size: 18px;
	color: #f8f7f4;
	letter-spacing: -0.5px;
	line-height: 1.5;
	margin: 0 0 48px;
	max-width: 600px;
}

/* Contact info items */
.alexiou-contact-page__info {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.alexiou-contact-page__info-item {
	display: flex;
	align-items: center;
	gap: 16px;
}
.alexiou-contact-page__info-icon {
	width: 40px;
	height: 40px;
	background: #2e5e7e;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	flex-shrink: 0;
}
.alexiou-contact-page__info-text {
	font-family: 'Manrope', sans-serif;
	font-size: 20px;
	font-weight: 600;
	color: #fff;
	text-decoration: underline;
}
a.alexiou-contact-page__info-text:hover {
	color: #edbf2e;
}

/* Form card */
.alexiou-contact-page__form-card {
	background: #fff;
	padding: 40px;
}
.alexiou-contact-page__form {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.alexiou-contact-page__form-error {
	background: #fdecea;
	color: #7a3030;
	padding: 12px 16px;
	font-family: 'Manrope', sans-serif;
	font-size: 14px;
	margin: 0;
}
.alexiou-contact-page__form-success {
	padding: 32px 16px;
}
.alexiou-contact-page__form-success p {
	font-family: 'Manrope', sans-serif;
	font-size: 18px;
	color: #3a6650;
}
.alexiou-contact-page__field {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.alexiou-contact-page__field label {
	font-family: 'Manrope', sans-serif;
	font-size: 15px;
	color: #121215;
	letter-spacing: -0.3px;
}
.alexiou-contact-page__field input[type="text"],
.alexiou-contact-page__field input[type="email"],
.alexiou-contact-page__field input[type="tel"],
.alexiou-contact-page__field textarea {
	border: 0.5px solid #d9d9d9;
	padding: 14px 16px;
	font-family: 'Manrope', sans-serif;
	font-size: 15px;
	color: #0e212f;
	background: #fff;
	appearance: none;
	width: 100%;
	box-sizing: border-box;
}
.alexiou-contact-page__field input::placeholder,
.alexiou-contact-page__field textarea::placeholder {
	color: #7a7a7a;
}
.alexiou-contact-page__field input:focus,
.alexiou-contact-page__field textarea:focus {
	outline: 2px solid #2e5e7e;
	outline-offset: -2px;
}
.alexiou-contact-page__field textarea {
	resize: vertical;
	min-height: 120px;
}
.alexiou-contact-page__field--checkbox {
	flex-direction: row;
	align-items: flex-start;
	gap: 10px;
}
.alexiou-contact-page__field--checkbox input[type="checkbox"] {
	margin-top: 3px;
	accent-color: #2e5e7e;
	width: 15px;
	height: 15px;
	flex-shrink: 0;
}
.alexiou-contact-page__field--checkbox label {
	font-size: 13px;
	color: #4a4a4a;
}
.alexiou-contact-page__field--checkbox label a {
	color: #2e5e7e;
	text-decoration: underline;
}
.alexiou-contact-page__submit {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	align-self: flex-start;
	background: #2e5e7e;
	color: #fff;
	font-family: 'JetBrains Mono', monospace;
	font-size: 15px;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	padding: 0 28px;
	height: 48px;
	border: none;
	cursor: pointer;
	transition: background 0.15s;
}
.alexiou-contact-page__submit:hover {
	background: #0e212f;
}

@media (max-width: 1100px) {
	.alexiou-contact-page__hero-inner {
		grid-template-columns: 1fr;
		gap: 48px;
		padding: 60px 24px;
	}
}
@media (max-width: 760px) {
	.alexiou-contact-page__form-card {
		padding: 28px 20px;
	}
}

/* ── Lightbox ────────────────────────────────────────────────────────────── */
.alexiou-lb {
	position: fixed;
	inset: 0;
	z-index: 9000;
	display: flex;
	align-items: center;
	justify-content: center;
}
.alexiou-lb[hidden] { display: none; }

.alexiou-lb__bd {
	position: absolute;
	inset: 0;
	background: rgba(11, 27, 38, 0.95);
	cursor: pointer;
}

.alexiou-lb__stage {
	position: relative;
	z-index: 1;
	max-width: calc(100vw - 120px);
	max-height: calc(100vh - 80px);
	display: flex;
	align-items: center;
	justify-content: center;
}

.alexiou-lb__img {
	display: block;
	max-width: 100%;
	max-height: calc(100vh - 80px);
	width: auto;
	height: auto;
	object-fit: contain;
	box-shadow: 0 8px 48px rgba(0, 0, 0, 0.6);
}

.alexiou-lb__close {
	position: absolute;
	top: 20px;
	right: 24px;
	z-index: 2;
	background: none;
	border: none;
	color: #fff;
	font-size: 32px;
	line-height: 1;
	cursor: pointer;
	padding: 8px 12px;
	opacity: 0.75;
	transition: opacity 0.15s;
}
.alexiou-lb__close:hover { opacity: 1; }

.alexiou-lb__prev,
.alexiou-lb__next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 2px;
	color: #fff;
	font-size: 24px;
	cursor: pointer;
	width: 48px;
	height: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.15s;
}
.alexiou-lb__prev:hover,
.alexiou-lb__next:hover { background: rgba(46, 94, 126, 0.5); }
.alexiou-lb__prev { left: 16px; }
.alexiou-lb__next { right: 16px; }

.alexiou-design-detail-1__gallery-item[data-lb-src],
.alexiou-design-detail-2__section-img[data-lb-src] {
	cursor: zoom-in;
}

/* ── erga-single ──────────────────────────────────────────────────────────── */

.alexiou-erga-single__hero {
	background: #fff;
	padding: 80px 80px 0;
}

.alexiou-erga-single__hero-inner {
	max-width: 1760px;
	margin: 0 auto;
}

.alexiou-erga-single__breadcrumb {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	color: #7a7a7a;
	text-transform: uppercase;
	letter-spacing: 0;
}

.alexiou-erga-single__breadcrumb a {
	color: #7a7a7a;
	text-decoration: none;
}

.alexiou-erga-single__breadcrumb a:hover {
	color: #2e5e7e;
}

.alexiou-erga-single__breadcrumb > span:last-child {
	color: #0e212f;
}

.alexiou-erga-single__heading {
	font-family: 'Manrope', sans-serif;
	font-size: 80px;
	font-weight: 700;
	color: #2e5e7e;
	letter-spacing: -2px;
	line-height: 1;
	text-wrap: balance;
	margin: 24px 0 0;
}

.alexiou-erga-single__body {
	background: #fff;
	padding: 80px;
}

.alexiou-erga-single__body-inner {
	display: grid;
	grid-template-columns: 424px 1fr;
	gap: 0 80px;
	max-width: 1760px;
	margin: 0 auto;
	align-items: start;
}

.alexiou-erga-single__sidebar {
	position: sticky;
	top: 160px;
	padding-top: 80px;
}

.alexiou-erga-single__meta {
	font-family: 'JetBrains Mono', monospace;
	font-size: 16px;
	color: #7a7a7a;
	text-transform: uppercase;
	margin: 0;
}

.alexiou-erga-single__meta-sep {
	color: #d9d9d9;
}

.alexiou-erga-single__meta-rule {
	border: none;
	border-top: 1px solid #d9d9d9;
	margin: 28px 0;
}

.alexiou-erga-single__share-label {
	font-family: 'JetBrains Mono', monospace;
	font-size: 16px;
	color: #7a7a7a;
	text-transform: uppercase;
	margin: 0 0 16px;
}

.alexiou-erga-single__share-btns {
	display: flex;
	gap: 8px;
}

.alexiou-erga-single__share-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 45px;
	height: 45px;
	border: 0.5px solid #6b8596;
	color: #2e5e7e;
	text-decoration: none;
	transition: background 0.2s, color 0.2s;
}

.alexiou-erga-single__share-btn:hover {
	background: #2e5e7e;
	color: #fff;
}

.alexiou-erga-single__share-btn svg {
	width: 20px;
	height: 20px;
	fill: currentColor;
}

.alexiou-erga-single__main {
	padding-top: 80px;
}

.alexiou-erga-single__hero-photo {
	width: 100%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	margin-bottom: 78px;
}

.alexiou-erga-single__hero-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.alexiou-erga-single__content {
	display: flex;
	flex-direction: column;
	gap: 28px;
	margin-bottom: 78px;
}

.alexiou-erga-single__content h4,
.alexiou-erga-single__content h2,
.alexiou-erga-single__content h3 {
	font-family: 'Manrope', sans-serif;
	font-size: 30px;
	font-weight: 600;
	color: #121215;
	margin: 0;
	line-height: 1.2;
}

.alexiou-erga-single__content p {
	font-family: 'Manrope', sans-serif;
	font-size: 20px;
	font-weight: 400;
	color: #121215;
	letter-spacing: -1px;
	line-height: 1.6;
	margin: 0;
}

.alexiou-erga-single__gallery {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 18px;
	margin-bottom: 0;
}

.alexiou-erga-single__gallery-item {
	aspect-ratio: 1;
	overflow: hidden;
	cursor: zoom-in;
}

.alexiou-erga-single__gallery-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.4s ease;
	display: block;
}

.alexiou-erga-single__gallery-item:hover img {
	transform: scale(1.04);
}

/* CTA section */
.alexiou-erga-single__cta {
	position: relative;
	overflow: hidden;
	min-height: 500px;
	display: flex;
	align-items: center;
}

.alexiou-erga-single__cta-bg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	pointer-events: none;
}

.alexiou-erga-single__cta-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(0,0,0,0.2) 0%, rgba(0,0,0,0.2) 100%),
	            linear-gradient(90deg, rgba(46,94,126,0.4) 0%, rgba(46,94,126,0.4) 100%),
	            linear-gradient(269deg, rgba(2,2,2,0) 1.76%, rgba(2,2,2,0.81) 84.87%);
	pointer-events: none;
}

.alexiou-erga-single__cta-inner {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 1760px;
	margin: 0 auto;
	padding: 120px 80px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 80px;
	align-items: center;
}

.alexiou-erga-single__cta-eyebrow {
	display: block;
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	color: #edbf2e;
	text-transform: uppercase;
	margin-bottom: 24px;
}

.alexiou-erga-single__cta-heading {
	display: flex;
	flex-direction: column;
	font-family: 'Manrope', sans-serif;
	font-size: 64px;
	font-weight: 700;
	letter-spacing: -2px;
	line-height: 1;
	margin: 0 0 32px;
}

.alexiou-erga-single__cta-heading-white { color: #fff; }
.alexiou-erga-single__cta-heading-yellow { color: #edbf2e; }

.alexiou-erga-single__cta-body {
	font-family: 'Manrope', sans-serif;
	font-size: 20px;
	color: #fff;
	letter-spacing: -1px;
	line-height: 1.5;
	max-width: 640px;
	margin: 0;
}

.alexiou-erga-single__cta-right {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.alexiou-erga-single__cta-btn {
	display: flex;
	align-items: center;
	gap: 12px;
	height: 76px;
	padding: 0 28px;
	font-family: 'JetBrains Mono', monospace;
	font-size: 16px;
	text-transform: uppercase;
	text-decoration: none;
	transition: opacity 0.2s;
}

.alexiou-erga-single__cta-btn:hover { opacity: 0.85; }

.alexiou-erga-single__cta-btn--primary {
	background: #fff;
	color: #0e212f;
	justify-content: space-between;
}

.alexiou-erga-single__cta-btn-dot {
	display: inline-block;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #0e212f;
	flex-shrink: 0;
}

.alexiou-erga-single__cta-btn--call {
	border: 0.5px solid #d9d9d9;
	color: #fff;
}

.alexiou-erga-single__cta-btn-call-text {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.alexiou-erga-single__cta-btn-phone-num {
	color: #edbf2e;
}

.alexiou-erga-single__cta-assurance-wrap {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.alexiou-erga-single__cta-rule {
	height: 1px;
	background: rgba(217,217,217,0.4);
}

.alexiou-erga-single__cta-assurance {
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: 'Manrope', sans-serif;
	font-size: 16px;
	color: #d9d9d9;
	letter-spacing: -0.6px;
	margin: 0;
}

.alexiou-erga-single__cta-assurance-dot {
	display: inline-block;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	border: 4px solid rgba(46,94,126,0.5);
	flex-shrink: 0;
}

/* ── Responsive ≤1200px ───────────────────────────────────────────────────── */
@media (max-width: 1200px) {
	.alexiou-erga-single__hero {
		padding: 40px 24px 0;
	}

	.alexiou-erga-single__heading {
		font-size: 48px;
		letter-spacing: -1px;
	}

	.alexiou-erga-single__body {
		padding: 40px 24px;
	}

	.alexiou-erga-single__body-inner {
		grid-template-columns: 1fr;
		gap: 40px 0;
	}

	.alexiou-erga-single__sidebar {
		position: static;
		padding-top: 0;
	}

	.alexiou-erga-single__main {
		padding-top: 0;
	}

	.alexiou-erga-single__gallery {
		grid-template-columns: repeat(2, 1fr);
	}

	.alexiou-erga-single__cta-inner {
		grid-template-columns: 1fr;
		padding: 60px 24px;
	}

	.alexiou-erga-single__cta-heading {
		font-size: 40px;
	}
}

/* ==========================================================================
   Blog Single  (block: alexiou-components/blog-single)
   Figma ref: frame 570:4662 "Blog Details"
   ========================================================================== */

.alexiou-blog-single__hero {
	background: #fff;
	padding: 80px 80px 0;
}

.alexiou-blog-single__hero-inner {
	max-width: 1760px;
	margin: 0 auto;
}

.alexiou-blog-single__breadcrumb {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	color: #7a7a7a;
	text-transform: uppercase;
	letter-spacing: 0;
}

.alexiou-blog-single__breadcrumb a {
	color: #7a7a7a;
	text-decoration: none;
}

.alexiou-blog-single__breadcrumb a:hover {
	color: #2e5e7e;
}

.alexiou-blog-single__breadcrumb > span:last-child {
	color: #0e212f;
}

.alexiou-blog-single__heading {
	font-family: 'Manrope', sans-serif;
	font-size: 80px;
	font-weight: 700;
	color: #2e5e7e;
	letter-spacing: -2px;
	line-height: 1;
	text-wrap: balance;
	margin: 24px 0 0;
}

.alexiou-blog-single__body {
	background: #fff;
	padding: 80px;
}

.alexiou-blog-single__body-inner {
	display: grid;
	grid-template-columns: 424px 1fr;
	gap: 0 80px;
	max-width: 1760px;
	margin: 0 auto;
	align-items: start;
}

.alexiou-blog-single__sidebar {
	position: sticky;
	top: 160px;
	padding-top: 80px;
}

.alexiou-blog-single__meta {
	font-family: 'JetBrains Mono', monospace;
	font-size: 16px;
	color: #7a7a7a;
	text-transform: uppercase;
	margin: 0;
}

.alexiou-blog-single__meta-sep {
	color: #d9d9d9;
}

.alexiou-blog-single__meta-rule {
	border: none;
	border-top: 1px solid #d9d9d9;
	margin: 28px 0;
}

.alexiou-blog-single__share-label {
	font-family: 'JetBrains Mono', monospace;
	font-size: 16px;
	color: #7a7a7a;
	text-transform: uppercase;
	margin: 0 0 16px;
}

.alexiou-blog-single__share-btns {
	display: flex;
	gap: 8px;
}

.alexiou-blog-single__share-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 45px;
	height: 45px;
	border: 0.5px solid #6b8596;
	color: #2e5e7e;
	text-decoration: none;
	transition: background 0.2s, color 0.2s;
}

.alexiou-blog-single__share-btn:hover {
	background: #2e5e7e;
	color: #fff;
}

.alexiou-blog-single__share-btn svg {
	width: 20px;
	height: 20px;
	fill: currentColor;
}

.alexiou-blog-single__main {
	padding-top: 80px;
}

.alexiou-blog-single__hero-photo {
	width: 100%;
	aspect-ratio: 2 / 1;
	overflow: hidden;
	margin-bottom: 78px;
}

.alexiou-blog-single__hero-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* ── Article content typography ── */
.alexiou-blog-single__content {
	display: flex;
	flex-direction: column;
	gap: 28px;
}

.alexiou-blog-single__content h2,
.alexiou-blog-single__content h3,
.alexiou-blog-single__content h4 {
	font-family: 'Manrope', sans-serif;
	font-size: 30px;
	font-weight: 600;
	color: #121215;
	margin: 0;
	line-height: 1.2;
}

.alexiou-blog-single__content h5,
.alexiou-blog-single__content h6 {
	font-family: 'Manrope', sans-serif;
	font-size: 24px;
	font-weight: 600;
	color: #121215;
	margin: 0;
	line-height: 1.25;
}

.alexiou-blog-single__content p {
	font-family: 'Manrope', sans-serif;
	font-size: 20px;
	font-weight: 400;
	color: #121215;
	letter-spacing: -1px;
	line-height: 1.6;
	margin: 0;
}

.alexiou-blog-single__content a {
	color: #2e5e7e;
	text-decoration: underline;
}

.alexiou-blog-single__content a:hover {
	color: #0e212f;
}

.alexiou-blog-single__content ul,
.alexiou-blog-single__content ol {
	font-family: 'Manrope', sans-serif;
	font-size: 20px;
	font-weight: 400;
	color: #121215;
	letter-spacing: -1px;
	line-height: 1.6;
	margin: 0;
	padding-left: 1.5em;
}

.alexiou-blog-single__content ul {
	list-style: disc;
}

.alexiou-blog-single__content ol {
	list-style: decimal;
}

.alexiou-blog-single__content li + li {
	margin-top: 8px;
}

.alexiou-blog-single__content strong,
.alexiou-blog-single__content b {
	font-weight: 700;
}

.alexiou-blog-single__content blockquote {
	border-left: 3px solid #2e5e7e;
	padding-left: 24px;
	margin: 0;
	font-style: italic;
}

.alexiou-blog-single__content figure {
	margin: 0;
}

.alexiou-blog-single__content figure img {
	width: 100%;
	height: auto;
	display: block;
}

.alexiou-blog-single__content figcaption {
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	color: #7a7a7a;
	margin-top: 8px;
}

/* ── Responsive ≤1200px ───────────────────────────────────────────────────── */
@media (max-width: 1200px) {
	.alexiou-blog-single__hero {
		padding: 40px 24px 0;
	}

	.alexiou-blog-single__heading {
		font-size: 48px;
		letter-spacing: -1px;
	}

	.alexiou-blog-single__body {
		padding: 40px 24px;
	}

	.alexiou-blog-single__body-inner {
		grid-template-columns: 1fr;
		gap: 40px 0;
	}

	.alexiou-blog-single__sidebar {
		position: static;
		padding-top: 0;
	}

	.alexiou-blog-single__main {
		padding-top: 0;
	}

	.alexiou-blog-single__content h2,
	.alexiou-blog-single__content h3,
	.alexiou-blog-single__content h4 {
		font-size: 24px;
	}

	.alexiou-blog-single__content p,
	.alexiou-blog-single__content ul,
	.alexiou-blog-single__content ol {
		font-size: 18px;
	}
}

/* Blog filter — enforce hidden attribute over display:flex/grid overrides */
.alexiou-blog-landing__card[hidden],
.alexiou-blog-landing__featured[hidden] {
	display: none !important;
}

.alexiou-blog-landing__empty {
	padding: 60px 0;
	font-family: 'JetBrains Mono', monospace;
	font-size: 14px;
	color: #7a7a7a;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	text-align: center;
}

/* -------------------------------------------------------------------------
   Legal page template (page-legal.html)
   Compact dark-blue hero + constrained text content
   ------------------------------------------------------------------------- */

.legal-hero {
	background-color: #0E212F;
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	padding: 72px 0 64px;
}

.legal-hero__inner {
	padding-inline: clamp(24px, 4.17vw, 80px);
}

.legal-hero .wp-block-post-title,
.legal-hero__title {
	font-family: var(--alexiou-sans);
	font-size: clamp(32px, 4vw, 64px);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -2px;
	color: #ffffff !important;
	margin: 0;
}

.legal-content {
	padding: 72px clamp(24px, 4.17vw, 80px) 96px;
	max-width: 960px;
	margin-inline: auto;
}

.legal-content .wp-block-post-content {
	font-family: var(--alexiou-sans);
	font-size: 16px;
	line-height: 1.7;
	color: #4A4A4A;
}

.legal-content .wp-block-post-content h3 {
	font-size: 20px;
	font-weight: 600;
	color: #0E212F;
	margin-top: 2.5em;
	margin-bottom: 0.75em;
	letter-spacing: -0.3px;
}

.legal-content .wp-block-post-content p {
	margin-bottom: 1.2em;
}

.legal-content .wp-block-post-content ul,
.legal-content .wp-block-post-content ol {
	padding-left: 1.5em;
	margin-bottom: 1.2em;
}

.legal-content .wp-block-post-content li {
	margin-bottom: 0.4em;
}

/* Mobile */
@media (max-width: 1200px) {
	.legal-hero {
		padding: 48px 0 40px;
	}

	.legal-hero .wp-block-post-title,
	.legal-hero__title {
		font-size: clamp(28px, 6vw, 40px);
		letter-spacing: -1px;
	}

	.legal-content {
		padding: 48px 24px 72px;
	}
}

/* -------------------------------------------------------------------------
   Back to top button
   ------------------------------------------------------------------------- */
.alexiou-back-to-top {
	position: fixed;
	bottom: 32px;
	right: 32px;
	width: 48px;
	height: 48px;
	background: var(--wp--preset--color--harbor-blue);
	color: var(--wp--preset--color--white);
	border: none;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 9990;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.3s ease, background 0.2s ease;
}
.alexiou-back-to-top.is-visible {
	opacity: 1;
	pointer-events: auto;
}
.alexiou-back-to-top:hover {
	background: var(--wp--preset--color--oxblood);
}
.alexiou-back-to-top svg {
	width: 20px;
	height: 20px;
}
@media (max-width: 781px) {
	.alexiou-back-to-top {
		bottom: 20px;
		right: 20px;
		width: 40px;
		height: 40px;
	}
}
@media (max-width: 768px) {
	/* Lift above 60px sticky CTA bar */
	.alexiou-back-to-top {
		bottom: 80px;
	}
}

/* ── Cookie consent toggle — mirrors back-to-top on the left ─────────────── */
.alexiou-cookie-toggle {
	position: fixed;
	bottom: 32px;
	left: 32px;
	width: 48px;
	height: 48px;
	background: var(--wp--preset--color--harbor-blue);
	color: var(--wp--preset--color--white);
	border: none;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 9990;
	transition: background 0.2s ease;
}
.alexiou-cookie-toggle:hover {
	background: var(--wp--preset--color--oxblood);
}
.alexiou-cookie-toggle svg {
	width: 20px;
	height: 20px;
}
@media (max-width: 781px) {
	.alexiou-cookie-toggle {
		bottom: 20px;
		left: 20px;
		width: 40px;
		height: 40px;
	}
}
@media (max-width: 768px) {
	/* Lift above 60px sticky CTA bar */
	.alexiou-cookie-toggle {
		bottom: 80px;
	}
}

/* ── Complianz cookie banner — theme color overrides ─────────────────────── */
/*
 * Override Complianz CSS variables on the banner element so descendants
 * pick up the correct values (higher specificity than :root declarations).
 * The Complianz manage-consent tab is hidden because our custom toggle
 * (.alexiou-cookie-toggle) already handles re-opening the banner.
 */
.cmplz-cookiebanner {
	--cmplz_button_accept_background_color: #8C0B05;
	--cmplz_button_accept_border_color:     #8C0B05;
	--cmplz_button_deny_background_color:   #f5f5f5;
	--cmplz_button_deny_border_color:       #ddd;
	--cmplz_button_deny_text_color:         #333;
	--cmplz_button_settings_background_color: #f5f5f5;
	--cmplz_button_settings_border_color:     #ddd;
	--cmplz_button_settings_text_color:       #333;
	--cmplz_hyperlink_color:                #2E5E7E;
	--cmplz_slider_active_color:            #8C0B05;
	--cmplz_banner_border_radius:           4px 4px 4px 4px;
	--cmplz_button_border_radius:           0px 0px 0px 0px;
	--cmplz_text_font_size:                 13px;
	--cmplz_button_font_size:               13px;
	font-family: var(--alexiou-mono, monospace);
}
/* Hide Complianz's built-in manage-consent tab — we use our own toggle */
#cmplz-manage-consent { display: none !important; }

/* ── Mobile (≤768px): topbar + header tweaks ── */
@media (max-width: 768px) {
	/* Contact heading: hide forced line-break at "με ασφάλεια" on mobile */
	.alexiou-contact-page__heading-br {
		display: none;
	}
	/* Topbar: hide phone icon so text stays on one line */
	.alexiou-topbar__phone-icon {
		display: none !important;
	}
	/* White nav bar: reduce height, proportionally scale logo */
	.alexiou-header-main {
		height: 72px;
	}
	.alexiou-logo {
		height: 54px;
	}
	.alexiou-logo__primary {
		height: 54px;
	}
	.alexiou-logo__kleemann {
		height: 26px;
	}
	.alexiou-logo__divider {
		height: 34px;
	}
	/* Search button in menu header: match dark-on-white context */
	.alexiou-mobile-menu-header .alexiou-nav-search {
		color: var(--wp--preset--color--text);
		margin-right: 0;
		padding: 8px;
	}

	/* ── Services HP ── */
	/* CTA button: full container width, tighter top margin */
	.alexiou-services-hp__footer {
		justify-content: stretch;
		margin-top: 20px;
	}
	.alexiou-services-hp__cta {
		width: 100%;
	}

	/* ── Products HP ── */
	/* Categories: centered in white nav box */
	.alexiou-products-hp__nav-arrow {
		display: none !important;
	}
	.alexiou-products-hp__nav-item {
		text-align: center;
		padding-left: 16px !important;
		padding-right: 16px !important;
	}
	/* Products HP card: stronger overlay for text readability on mobile */
	.alexiou-products-hp__card-overlay {
		background: linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.55) 45%, rgba(0,0,0,0) 70%);
	}
	/* Card tag + desc: prevent overlap on 320px-height card */
	.alexiou-products-hp__card-tag {
		bottom: 66px;
	}
	.alexiou-products-hp__card-desc {
		bottom: 14px;
		font-size: 13px;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		overflow: hidden;
	}

	/* ── Erga HP ── */
	/* Desktop CTA (next to title): hidden on mobile */
	.alexiou-erga-hp__cta-link--desktop {
		display: none !important;
	}
	/* Mobile CTA (after grid): visible on mobile */
	.alexiou-erga-hp__cta-link--mobile {
		display: inline-flex !important;
		align-items: center;
		gap: 6px;
		margin-top: 24px;
	}
	.alexiou-erga-hp__cta-link--mobile .alexiou-icon-arrow {
		flex-shrink: 0;
		position: relative;
		top: 0;
	}

	/* ── Testimonials HP ── */
	/* Left-side counter: hidden on mobile (counter moves to footer-row) */
	.alexiou-testimonials-hp__left-bottom {
		display: none !important;
	}
	/* Mobile counter in footer-row */
	.alexiou-testimonials-hp__counter-mobile {
		display: flex;
		align-items: baseline;
		gap: 2px;
	}
	.alexiou-testimonials-hp__counter-mobile .alexiou-testimonials-hp__counter-current {
		font-family: var(--alexiou-sans);
		font-size: 20px;
		font-weight: 600;
		line-height: 1;
		color: var(--wp--preset--color--yellow);
	}
	.alexiou-testimonials-hp__counter-mobile .alexiou-testimonials-hp__counter-sep,
	.alexiou-testimonials-hp__counter-mobile .alexiou-testimonials-hp__counter-total {
		font-family: var(--alexiou-sans);
		font-size: 14px;
		font-weight: 400;
		line-height: 1;
		color: rgba(255, 255, 255, 0.6);
	}

	/* ── Footer ── */
	/* Logo row: fit both logos on one line */
	.alexiou-site-footer__logo-alexiou {
		width: 140px;
	}
	.alexiou-site-footer__logo-divider {
		margin-inline: 10px;
		height: 44px;
	}
	.alexiou-site-footer__logo-kleemann {
		width: 95px;
	}
	/* Reduce overall menus section gap and bottom margin on mobile */
	.alexiou-site-footer__menus {
		gap: 28px;
		margin-bottom: 32px;
	}
	/* Social column: reduce vertical space */
	.alexiou-site-footer__col--social {
		align-self: flex-start;
	}
	.alexiou-site-footer__menus-right {
		flex: 0 0 320px;
	}

	/* ── ΥΠΗΡΕΣΙΕΣ landing ── */

	/* Prevent section horizontal overflow */
	.alexiou-services-lp {
		overflow-x: hidden;
	}
	/* Tab nav wraps at mobile — no scrollable bar, no forced item width */
	.alexiou-services-lp__nav-item {
		max-width: 100%;
	}

	/* ── ΥΠΗΡΕΣΙΕΣ single ── */

	/* Hero: reduce top space */
	.alexiou-service-single__hero-inner {
		padding-top: 24px;
	}
	.alexiou-service-single__hero-intro-wrap {
		margin-bottom: 32px;
	}
	/* Breadcrumb: smaller font, keep on one line */
	.alexiou-service-single__breadcrumb {
		font-size: 11px;
		flex-wrap: nowrap;
		overflow: hidden;
		white-space: nowrap;
	}
	.alexiou-service-single__breadcrumb span:last-child {
		overflow: hidden;
		text-overflow: ellipsis;
		min-width: 0;
	}
	/* Section spacing */
	.alexiou-service-single__focus {
		padding-block: 48px;
	}
	.alexiou-service-single__approach {
		padding-block-end: 56px;
	}
	.alexiou-service-single__quote {
		padding-block: 40px;
	}
	.alexiou-service-single__erga {
		padding-block: 40px 56px;
	}
	.alexiou-service-single__erga-inner {
		gap: 32px;
	}
	/* Erga: hide header CTA, show footer CTA (like homepage erga pattern) */
	.alexiou-service-single__erga-header .alexiou-service-single__erga-all-link {
		display: none;
	}
	.alexiou-service-single__erga-footer {
		display: block;
	}

	/* ── KLEEMANN page ── */

	/* Kleemann hero: tighten title → photo gap */
	.alexiou-kleemann-hero__text {
		padding-block-end: 28px;
	}
	/* Kleemann intro: tighten photo → rule and rule → content gaps */
	.alexiou-kleemann-intro {
		padding-block: 28px;
	}
	.alexiou-kleemann-intro__rule {
		margin-bottom: 28px;
	}

	/* Kleemann cards: always show image on mobile; smaller counter + titles */
	.alexiou-kleemann-cards__card::before,
	.alexiou-kleemann-cards__card::after {
		opacity: 1;
	}
	.alexiou-kleemann-cards__counter,
	.alexiou-kleemann-cards__title,
	.alexiou-kleemann-cards__body {
		color: #fff;
	}
	.alexiou-kleemann-cards__counter {
		font-size: 44px;
	}
	.alexiou-kleemann-cards__title {
		font-size: 20px;
	}

	/* ── ΕΤΑΙΡΕΙΑ page ── */

	/* About Kleemann: prevent horizontal scroll from full-bleed section */
	.alexiou-about-kleemann {
		overflow-x: hidden;
	}
	/* Kleemann cert badge: bigger + right-aligned */
	.alexiou-about-kleemann__cert {
		width: 200px;
		margin-left: auto;
		margin-right: 0;
		margin-top: 18px;
		margin-bottom: -44px;
	}
	/* ΠΙΣΤΟΠΟΙΗΤΙΚΟ button: full width, stays within container */
	.alexiou-about-kleemann__btn {
		width: 100%;
		box-sizing: border-box;
	}

	/* ── ΠΡΟΪΟΝΤΑ landing: darker overlay for text readability ── */
	.alexiou-products-landing__panel-overlay {
		background: linear-gradient(to top, rgba(0,0,0,0.82) 0%, rgba(0,0,0,0.38) 60%);
	}
}

/* ── Contact page heading: hide forced break on laptop (1101–1440px) ─────── */
@media (max-width: 1440px) and (min-width: 1101px) {
	.alexiou-contact-page__heading-br {
		display: none;
	}
}

/* ── Design detail-2: 2 images per row on mobile ───────────────────────── */
@media (max-width: 768px) {
	.alexiou-design-detail-2__section-images {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 8px;
	}
	.alexiou-design-detail-2__section-img {
		flex: none;
		width: 100%;
	}
	.alexiou-design-detail-2__section-img img {
		width: 100%;
		height: 130px;
		object-fit: cover;
	}
}

/* ── Burger = close button when menu is open: hide the overlay close bar ── */
.alexiou-header-main .wp-block-navigation__responsive-container.is-menu-open
	.alexiou-mobile-menu-header {
	display: none !important;
}
/* Give the menu items some top breathing room now that the bar is gone */
.alexiou-header-main .wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation__responsive-container-content {
	padding-top: 8px !important;
}

/* ── Breadcrumb top spacing: standardise to 24px across all pages ─────── */
@media (max-width: 781px) {
	.alexiou-kleemann-hero {
		padding-block-start: 24px;
	}
	.alexiou-services-lp {
		padding-block-start: 24px;
	}
	.alexiou-products-landing__inner {
		padding-block-start: 24px;
	}
	.alexiou-design-landing__inner {
		padding-block-start: 24px;
	}
	.alexiou-design-internal__hero-inner {
		padding-block-start: 24px;
	}
	.alexiou-products-internal__hero {
		padding-block-start: 24px;
	}
	.alexiou-product-single__hero-inner {
		padding-top: 24px;
	}
	.alexiou-erga-single__hero {
		padding-top: 24px;
	}
	.alexiou-blog-single__hero {
		padding-top: 24px;
	}
}
