/* =====================================================================
   Electron Pagonas — design & mobile
   ===================================================================== */
:root {
	--el-blue: #1f5fbf;
	--el-blue-dark: #164a96;
	--el-navy: #11294d;
	--el-text: #2b3445;
	--el-muted: #5d6b80;
	--el-line: #e3e8f0;
	--el-soft: #f5f8fc;
}

/* ---------------------------------------------------------------- product grid (all shop modules / archives / upsells) */
#main-content ul.products {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 22px;
	margin: 0 0 30px !important;
	padding: 0 !important;
}
#main-content ul.products::before,
#main-content ul.products::after { display: none !important; }

#main-content ul.products li.product {
	float: none !important;
	clear: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 14px 14px 16px !important;
	display: flex;
	flex-direction: column;
	background: #fff;
	border: 1px solid var(--el-line);
	border-radius: 10px;
	transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease;
}
#main-content ul.products li.product:hover {
	border-color: #c9d6ea;
	box-shadow: 0 10px 26px rgba(17, 41, 77, .10);
	transform: translateY(-2px);
}
#main-content ul.products li.product > a.woocommerce-LoopProduct-link {
	display: flex;
	flex-direction: column;
	flex: 1;
	text-decoration: none;
}
#main-content ul.products li.product .et_shop_image { display: block; margin-bottom: 12px; }
#main-content ul.products li.product .et_shop_image .et_overlay { display: none !important; }
#main-content ul.products li.product img {
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 1 / 1;
	object-fit: contain;
	background: #fff;
	margin: 0 !important;
}
.electron-brand {
	align-self: flex-start;
	display: inline-block;
	margin: 0 0 6px;
	padding: 3px 8px;
	border-radius: 4px;
	background: #eaf1fc;
	color: var(--el-blue);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .08em;
	line-height: 1.4;
	text-transform: uppercase;
}
#main-content ul.products li.product .woocommerce-loop-product__title {
	padding: 0 !important;
	margin: 0 0 10px !important;
	color: var(--el-navy) !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	letter-spacing: 0 !important;
}
.electron-loop-more {
	margin-top: auto;
	padding-top: 6px;
	color: var(--el-blue);
	font-size: 14px;
	font-weight: 600;
}
#main-content ul.products li.product:hover .electron-loop-more { color: var(--el-blue-dark); text-decoration: underline; }
#main-content ul.products li.product .price,
#main-content ul.products li.product .star-rating,
#main-content ul.products li.product .button { display: none !important; }

/* ---------------------------------------------------------------- "gift" promo box */
.electron-promo {
	display: flex;
	align-items: center;
	gap: 18px;
	max-width: 760px;
	margin: 0 auto;
	padding: 18px 24px;
	border: 1px solid #f3d29a;
	border-left: 5px solid #e8a33d;
	border-radius: 10px;
	background: #fff8ec;
	color: #5b3b06;
	text-align: left;
	box-shadow: 0 2px 10px rgba(138, 75, 0, .06);
}
#main-content .electron-promo p { flex: 1; margin: 0; padding: 0; font-size: 17px !important; line-height: 1.5 !important; color: #5b3b06 !important; font-weight: 400; }
#main-content .electron-promo strong { color: #8a4b00; font-weight: 700; }
#main-content .electron-promo p:empty { display: none; } /* wpautop adds an empty <p> after the icon */
.electron-promo__icon {
	flex: 0 0 52px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: #fde7c2;
	color: #8a4b00;
	font-size: 26px;
	line-height: 1;
}

/* ---------------------------------------------------------------- product page readability */
.single-product .et_pb_wc_title h1 {
	color: var(--el-navy) !important;
	font-size: 30px !important;
	line-height: 1.25 !important;
	padding-bottom: 8px !important;
}
.single-product .et_pb_wc_description,
.single-product .et_pb_wc_description p,
.single-product .et_pb_wc_description li {
	color: var(--el-text) !important;
	font-size: 16px !important;
	line-height: 1.6 !important;
}
.single-product .et_pb_wc_description ul { padding-left: 1.2em !important; margin: 0 0 6px !important; }
.single-product .et_pb_wc_description li { margin-bottom: 6px; }
.single-product .et_pb_wc_meta { font-size: 14px !important; color: var(--el-muted) !important; }
.single-product .et_pb_wc_tabs .woocommerce-Tabs-panel,
.single-product .et_pb_wc_tabs .woocommerce-Tabs-panel p,
.single-product .et_pb_wc_tabs .woocommerce-Tabs-panel li {
	color: var(--el-text) !important;
	font-size: 16px !important;
	line-height: 1.65 !important;
}
.single-product .et_pb_wc_tabs .woocommerce-Tabs-panel h2,
.single-product .et_pb_wc_tabs .woocommerce-Tabs-panel h3 {
	color: var(--el-navy) !important;
	font-size: 20px !important;
	line-height: 1.3 !important;
	margin: 22px 0 8px !important;
	padding: 0 !important;
}
.single-product .et_pb_wc_tabs .woocommerce-Tabs-panel table.electron-specs th,
.single-product .et_pb_wc_tabs .woocommerce-Tabs-panel table.electron-specs td { font-size: 15px !important; line-height: 1.45 !important; }
.single-product .et_pb_wc_images img { border-radius: 8px; }

/* ---------------------------------------------------------------- sticky mobile contact bar */
.electron-mbar { display: none; }

/* ================================================================ TABLET */
@media (max-width: 980px) {
	#main-content ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
}

/* ================================================================ MOBILE */
@media (max-width: 767px) {
	/* readable base text everywhere in the content area */
	#main-content p,
	#main-content li,
	#main-content td,
	#main-content th { font-size: 16px; line-height: 1.6; }
	#main-content h1 { font-size: 26px !important; line-height: 1.25 !important; }
	#main-content h2 { font-size: 22px !important; line-height: 1.3 !important; }
	#main-content h3 { font-size: 19px !important; line-height: 1.3 !important; }
	#main-content h4,
	#main-content h5,
	#main-content h6 { font-size: 17px !important; line-height: 1.35 !important; }

	/* more width for content */
	#main-content .et_pb_row { width: 90% !important; }
	#main-content .et_pb_section { padding-top: 28px !important; padding-bottom: 28px !important; }

	/* product grid: 2 per row */
	#main-content ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
	#main-content ul.products li.product { padding: 10px 10px 12px !important; border-radius: 8px; }
	#main-content ul.products li.product .woocommerce-loop-product__title { font-size: 15px !important; margin-bottom: 6px !important; }
	.electron-loop-more { font-size: 13px; }
	.electron-brand { font-size: 10px; padding: 2px 6px; }

	/* promo */
	.electron-promo { padding: 12px 14px; gap: 10px; }
	#main-content .electron-promo p { font-size: 15px !important; }
	.electron-promo__icon { flex-basis: 44px; width: 44px; height: 44px; }

	/* product page */
	.single-product .et_pb_wc_title h1 { font-size: 24px !important; }
	.single-product .et_pb_wc_images { margin-bottom: 18px !important; }
	.electron-cta__buttons { flex-direction: column; }
	.electron-cta__buttons .electron-btn { text-align: center; }
	.single-product .et_pb_wc_tabs ul.tabs li a { padding: 8px 14px !important; font-size: 15px !important; }

	/* contact page form + blurbs */
	.et_pb_contact_form .et_pb_contact_field { margin-bottom: 12px; }
	.et_pb_contact_form .input { font-size: 16px !important; } /* prevents iOS zoom on focus */

	/* sticky contact bar */
	.electron-mbar {
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 99990;
		display: flex;
		background: #fff;
		border-top: 1px solid var(--el-line);
		box-shadow: 0 -4px 18px rgba(17, 41, 77, .12);
		padding-bottom: env(safe-area-inset-bottom);
	}
	.electron-mbar__item {
		flex: 1;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 2px;
		min-height: 56px;
		color: var(--el-navy) !important;
		font-size: 13px;
		font-weight: 600;
		text-decoration: none;
	}
	.electron-mbar__item + .electron-mbar__item { border-left: 1px solid var(--el-line); }
	.electron-mbar__item--primary { background: var(--el-cta, var(--el-blue)); color: #fff !important; }
	.electron-mbar__icon { width: 22px; height: 22px; fill: currentColor; }
	.electron-mbar__item--viber { color: #7360f2 !important; }
	body { padding-bottom: 56px; }
	/* while the cookie banner is open it owns the bottom of the screen */
	body.cookies-not-set .electron-mbar { display: none; }
	body.cookies-not-set { padding-bottom: 0; }
	/* Divi "back to top" button above the bar */
	.et_pb_scroll_top { bottom: 70px !important; }
}

/* ================================================================ SMALL PHONES */
@media (max-width: 360px) {
	#main-content ul.products { gap: 8px; }
	#main-content ul.products li.product .woocommerce-loop-product__title { font-size: 14px !important; }
}

/* ---------------------------------------------------------------- breadcrumb */
#main-content .woocommerce-breadcrumb,
#main-content .et_pb_wc_breadcrumb {
	font-size: 14px !important;
	line-height: 1.5 !important;
	color: var(--el-muted) !important;
}
#main-content .woocommerce-breadcrumb a { color: var(--el-blue) !important; }
@media (max-width: 767px) {
	#main-content .woocommerce-breadcrumb,
	#main-content .et_pb_wc_breadcrumb { font-size: 13px !important; }
	.single-product #main-content .et_pb_section:first-child { padding-top: 16px !important; }
}

/* ---------------------------------------------------------------- mobile: content first */
@media (max-width: 767px) {
	/* no entrance animations: content is visible immediately on slow phones */
	.et_animated,
	.et_pb_section .et_animated {
		opacity: 1 !important;
		animation: none !important;
		transform: none !important;
		visibility: visible !important;
	}
	/* compact hero */
	#main-content .et_pb_fullwidth_header {
		min-height: 0 !important;
		padding-top: 44px !important;
		padding-bottom: 44px !important;
	}
	#main-content .et_pb_fullwidth_header .header-content { padding: 0 !important; }
	#main-content .et_pb_fullwidth_header .et_pb_fullwidth_header_subhead { display: block !important; font-size: 17px !important; }
}

/* ---------------------------------------------------------------- mobile menu */
@media (max-width: 980px) {
	.et_mobile_menu {
		background: #fff !important;
		border-top: 3px solid var(--el-blue) !important;
		padding: 6px 0 !important;
		max-height: calc(100vh - 150px);
		overflow-y: auto;
		box-shadow: 0 12px 30px rgba(17, 41, 77, .18) !important;
	}
	.et_mobile_menu li { position: relative; }
	.et_mobile_menu li a {
		color: var(--el-navy) !important;
		font-size: 16px !important;
		font-weight: 600 !important;
		padding: 13px 18px !important;
		border-bottom: 1px solid var(--el-line) !important;
		background: transparent !important;
	}
	.et_mobile_menu li.current-menu-item > a { color: var(--el-blue) !important; }
	.et_mobile_menu li.menu-item-has-children > a { padding-right: 58px !important; }
	.et_mobile_menu .sub-menu { display: none !important; padding: 0 !important; background: var(--el-soft) !important; }
	.et_mobile_menu li.electron-open > .sub-menu { display: block !important; }
	.et_mobile_menu .sub-menu li a { font-weight: 500 !important; font-size: 15px !important; padding-left: 30px !important; }
	.et_mobile_menu .sub-menu .sub-menu li a { padding-left: 44px !important; }
	.electron-sub-toggle {
		position: absolute;
		top: 0;
		right: 0;
		width: 52px;
		height: 49px;
		border: 0;
		border-left: 1px solid var(--el-line);
		background: transparent;
		color: var(--el-blue);
		cursor: pointer;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.electron-sub-toggle svg { width: 26px; height: 26px; fill: currentColor; transition: transform .2s; }
	.electron-open > .electron-sub-toggle svg { transform: rotate(180deg); }
}
@media (max-width: 980px) {
	#main-header .et_mobile_menu li ul.sub-menu,
	#page-container .et_mobile_menu li ul.sub-menu { display: none !important; visibility: visible !important; opacity: 1 !important; }
	#main-header .et_mobile_menu li.electron-open > ul.sub-menu,
	#page-container .et_mobile_menu li.electron-open > ul.sub-menu { display: block !important; }
}

/* ---------------------------------------------------------------- old content: tables, marquees, fixed widths */
#main-content .et_pb_text table { max-width: 100% !important; }
#main-content img { max-width: 100%; height: auto; }
#main-content marquee { display: block; max-width: 100%; overflow: hidden; }
@media (max-width: 767px) {
	#main-content .et_pb_text table {
		width: 100% !important;
		table-layout: fixed;
		border-collapse: collapse;
	}
	#main-content .et_pb_text table td,
	#main-content .et_pb_text table th {
		width: auto !important;
		padding: 8px 6px !important;
		font-size: 14px !important;
		line-height: 1.4 !important;
		overflow-wrap: break-word;
		word-break: normal;
	}
	#main-content .et_pb_text table img { width: 100% !important; max-width: 110px !important; height: auto !important; }
	/* tables with contact buttons: let columns size to their content so words are not split mid-word */
	#main-content .et_pb_text table:has(.electron-ask) { table-layout: auto; }
	#main-content marquee { font-size: 18px !important; }
}
@media (max-width: 767px) {
	/* old fixed pixel margins on rows push content off-screen on phones */
	#main-content .et_pb_row { margin-left: auto !important; margin-right: auto !important; max-width: 100% !important; }
	#main-content .et_pb_column { margin-left: 0 !important; margin-right: 0 !important; }
}

/* ---------------------------------------------------------------- product description tab headings */
.single-product .et_pb_wc_tabs h2,
.single-product .et_pb_wc_tabs h3 {
	color: var(--el-navy) !important;
	font-size: 20px !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	margin: 24px 0 10px !important;
	padding: 0 !important;
}
.single-product .et_pb_wc_tabs ul.tabs li a { font-weight: 600 !important; }
@media (max-width: 767px) {
	.single-product .et_pb_wc_tabs h2,
	.single-product .et_pb_wc_tabs h3 { font-size: 18px !important; }
}
@media (max-width: 767px) {
	/* full-width product pages: keep side margins on phones */
	body.single-product #page-container #main-content .et_pb_row {
		width: 90% !important;
		max-width: 90% !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}
}

/* ---------- Product cards on the category pages (were old Excel tables; see backups/product-cards.php) ---------- */
#main-content .electron-plist {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
	gap: 20px;
	margin: 0 0 32px;
}
#main-content .electron-pcard {
	display: flex;
	flex-direction: column;
	padding: 16px;
	background: #fff;
	border: 1px solid #e3e8ef;
	border-radius: 10px;
	box-shadow: 0 1px 3px rgba(16, 24, 40, .06);
	transition: box-shadow .2s, border-color .2s;
}
#main-content .electron-pcard:hover { border-color: #c9d6ea; box-shadow: 0 6px 18px rgba(16, 24, 40, .10); }
#main-content .electron-pcard__img {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 170px;
	margin-bottom: 14px;
	background: #f7f9fc;
	border-radius: 8px;
	overflow: hidden;
}
#main-content .electron-pcard__img img,
#main-content .electron-pcard__img picture {
	display: block;
	width: auto !important;
	max-width: 90% !important;
	height: auto !important;
	max-height: 150px !important;
	object-fit: contain;
	margin: 0 !important;
}
#main-content .electron-pcard__body { flex: 1; text-align: center; }
#main-content .electron-pcard__name {
	margin: 0 0 6px;
	padding: 0;
	color: #1d2733;
	font-size: 16px !important;
	font-weight: 700;
	line-height: 1.35 !important;
	overflow-wrap: break-word;
}
#main-content .electron-pcard__detail {
	margin: 0;
	padding: 0;
	color: #5b6675;
	font-size: 14px !important;
	line-height: 1.45 !important;
}
#main-content .electron-pcard__cta { margin-top: 14px; }
#main-content .electron-pcard .electron-ask { min-width: 0; }
#main-content .electron-pcard .electron-ask__link { font-size: 14px !important; padding: 8px 10px; font-style: normal; }
#main-content .electron-plist__group {
	margin: 8px 0 16px;
	padding: 0 0 8px;
	border-bottom: 2px solid var(--el-cta, #1f5fbf);
	color: #1d2733;
	font-size: 21px !important;
	font-weight: 700;
	line-height: 1.3 !important;
}

/* Ανταλλακτικά */
#main-content .electron-parts { max-width: 760px; margin: 0 auto; }
#main-content .electron-parts p { font-size: 17px !important; line-height: 1.6 !important; margin-bottom: 18px; }
#main-content .electron-parts__list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 10px;
	margin: 0 0 24px;
	padding: 0;
	list-style: none;
}
#main-content .electron-parts__list li {
	padding: 12px 14px 12px 38px;
	position: relative;
	background: #f7f9fc;
	border: 1px solid #e3e8ef;
	border-radius: 8px;
	font-weight: 600;
	font-size: 15px;
	line-height: 1.35;
}
#main-content .electron-parts__list li::before {
	content: "✓";
	position: absolute;
	left: 14px;
	color: var(--el-cta, #1f5fbf);
	font-weight: 700;
}
#main-content .electron-parts .electron-ask { flex-direction: row; flex-wrap: wrap; justify-content: center; max-width: 420px; margin: 0 auto; }
#main-content .electron-parts .electron-ask__link { flex: 1 1 180px; }

/* Mobile: one card per row — image left, text right, buttons side by side underneath */
@media (max-width: 600px) {
	#main-content .electron-plist { grid-template-columns: 1fr; gap: 12px; }
	#main-content .electron-pcard {
		display: grid;
		grid-template-columns: 96px 1fr;
		gap: 4px 14px;
		align-items: center;
		padding: 12px;
	}
	#main-content .electron-pcard__img { height: 96px; margin: 0; }
	#main-content .electron-pcard__img img,
	#main-content .electron-pcard__img picture { max-height: 84px !important; }
	#main-content .electron-pcard__body { text-align: left; }
	#main-content .electron-pcard__name { font-size: 15px !important; }
	#main-content .electron-pcard__cta { grid-column: 1 / -1; margin-top: 8px; }
	#main-content .electron-pcard .electron-ask { flex-direction: row; gap: 8px; }
	#main-content .electron-pcard .electron-ask__link { flex: 1 1 0; font-size: 13px !important; padding: 8px 6px; }
	#main-content .electron-pcard .electron-ask__full { display: inline; }
	#main-content .electron-pcard .electron-ask__short { display: none; }
	#main-content .electron-plist__group { font-size: 18px !important; }
}

/* ---------- Υπηρεσίες (page 70, see backups/services-page.php) ---------- */
#main-content .electron-svc { max-width: 1040px; margin: 0 auto; }
#main-content .electron-svc h2 { padding: 0; color: #1d2733; font-weight: 700; line-height: 1.3 !important; }
#main-content .electron-svc__intro {
	margin: 0 auto 32px;
	max-width: 680px;
	color: #3b4654;
	font-size: 19px !important;
	line-height: 1.55 !important;
	text-align: center;
}
#main-content .electron-svc__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; margin-bottom: 32px; }
#main-content .electron-svc__card {
	padding: 26px 26px 20px;
	background: #fff;
	border: 1px solid #e3e8ef;
	border-top: 4px solid var(--el-cta, #1f5fbf);
	border-radius: 10px;
	box-shadow: 0 1px 3px rgba(16, 24, 40, .06);
}
#main-content .electron-svc__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	margin-bottom: 12px;
	border-radius: 50%;
	background: #eef3fb;
	color: var(--el-cta, #1f5fbf);
}
#main-content .electron-svc__card h2 { margin: 0 0 12px; font-size: 22px !important; }
#main-content .electron-svc__card ul { margin: 0; padding: 0; list-style: none; }
#main-content .electron-svc__card li {
	position: relative;
	padding: 9px 0 9px 28px;
	border-bottom: 1px solid #eef1f5;
	color: #2b3542;
	font-size: 16px;
	line-height: 1.45;
}
#main-content .electron-svc__card li:last-child { border-bottom: 0; }
#main-content .electron-svc__card li::before {
	content: "✓";
	position: absolute;
	left: 4px;
	top: 9px;
	color: var(--el-cta, #1f5fbf);
	font-weight: 700;
}
#main-content .electron-svc__more {
	margin-bottom: 32px;
	padding: 26px;
	background: #f7f9fc;
	border: 1px solid #e3e8ef;
	border-radius: 10px;
}
#main-content .electron-svc__more h2 { margin: 0 0 12px; font-size: 22px !important; }
#main-content .electron-svc__more p { margin: 0 0 10px; padding: 0; color: #3b4654; font-size: 16px !important; line-height: 1.55 !important; }
#main-content .electron-svc__chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 18px; padding: 0; list-style: none; }
#main-content .electron-svc__chips li {
	padding: 6px 14px;
	background: #fff;
	border: 1px solid #c9d6ea;
	border-radius: 20px;
	color: #1d2733;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.3;
}
#main-content .electron-svc__chips--light li { font-weight: 500; }
#main-content .electron-svc__link { color: var(--el-cta, #1f5fbf); font-weight: 700; }
#main-content .electron-svc__cta {
	padding: 28px 24px;
	background: #fff;
	border: 1px solid #d6e2f5;
	border-left: 4px solid var(--el-cta, #1f5fbf);
	border-radius: 10px;
	text-align: center;
}
#main-content .electron-svc__cta h2 { margin: 0 0 6px; font-size: 22px !important; }
#main-content .electron-svc__cta p { margin: 0 0 16px; padding: 0; color: #3b4654; font-size: 16px !important; }
#main-content .electron-svc__cta .electron-ask { flex-direction: row; flex-wrap: wrap; justify-content: center; gap: 10px; max-width: 460px; margin: 0 auto; }
#main-content .electron-svc__cta .electron-ask__link { flex: 1 1 190px; padding: 10px 14px; font-size: 15px !important; }
#main-content .electron-svc__cta .electron-ask__full { display: inline; }
#main-content .electron-svc__cta .electron-ask__short { display: none; }
@media (max-width: 767px) {
	#main-content .electron-svc__intro { font-size: 17px !important; margin-bottom: 22px; }
	#main-content .electron-svc__grid { grid-template-columns: 1fr; gap: 16px; margin-bottom: 20px; }
	#main-content .electron-svc__card, #main-content .electron-svc__more { padding: 20px 18px 14px; }
	#main-content .electron-svc__card h2, #main-content .electron-svc__more h2, #main-content .electron-svc__cta h2 { font-size: 20px !important; }
	#main-content .electron-svc__card li { font-size: 15px; }
	#main-content .electron-svc__more { margin-bottom: 20px; }
}

/* ---------- Footer (electron-business.php) ---------- */
#main-footer { background: #111821 !important; }
#main-footer #footer-bottom { display: none; }
.electron-footer { color: #c3cad4; font-size: 15px; line-height: 1.6; }
.electron-footer a { color: #e7ecf2 !important; text-decoration: none; }
.electron-footer a:hover { color: #fff !important; text-decoration: underline; }
.electron-footer__inner {
	display: grid;
	grid-template-columns: 1.2fr 1fr 1fr;
	gap: 32px;
	width: 90%;
	max-width: 1080px;
	margin: 0 auto;
	padding: 48px 0 32px;
}
.electron-footer p { margin: 0 0 10px; padding: 0; }
.electron-footer__brand { color: #fff; font-size: 20px; font-weight: 700; }
.electron-footer__title { color: #fff; font-size: 16px; font-weight: 700; letter-spacing: .02em; }
.electron-footer ul { margin: 0; padding: 0; list-style: none; }
.electron-footer li { padding: 3px 0; }
.electron-footer__links { display: flex; flex-wrap: wrap; gap: 4px 18px; margin-top: 6px !important; }
.electron-footer__hours { margin: 0; }
.electron-footer__hours dt { color: #e7ecf2; font-weight: 600; }
.electron-footer__hours dd { margin: 0 0 8px; }
.electron-footer__bottom {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 22px;
	width: 90%;
	max-width: 1080px;
	margin: 0 auto;
	padding: 16px 0 20px;
	border-top: 1px solid #2a3542;
	font-size: 14px;
}
.electron-footer__bottom span { margin-right: auto; }
.electron-footer__cookies { padding: 0; border: 0; background: none; color: #e7ecf2; font: inherit; cursor: pointer; }
.electron-footer__cookies:hover { color: #fff; text-decoration: underline; }
@media (max-width: 860px) {
	.electron-footer__inner { grid-template-columns: 1fr 1fr; }
	.electron-footer__inner > :first-child { grid-column: 1 / -1; }
}
@media (max-width: 560px) {
	.electron-footer__inner { grid-template-columns: 1fr; gap: 24px; padding: 36px 0 24px; }
	.electron-footer__bottom span { margin-right: 0; width: 100%; }
}

/* Πολιτική απορρήτου */
.electron-legal { max-width: 780px; margin: 0 auto; font-size: 16px; line-height: 1.7; color: #2b3542; }
.electron-legal h2 { margin: 28px 0 10px; padding: 0; font-size: 22px; font-weight: 700; color: #1d2733; }
.electron-legal h3 { margin: 18px 0 6px; padding: 0; font-size: 18px; font-weight: 700; color: #1d2733; }
.electron-legal ul { margin: 0 0 14px 20px; }
.electron-legal__updated { color: #6b7684; font-size: 14px; }
/* Non-builder pages (e.g. Πολιτική απορρήτου): Divi's own title styled like the other page titles */
body.page:not(.et_pb_pagebuilder_layout) #main-content h1.main_title {
	padding: 10px 0 0; margin-bottom: 28px; color: #11294d; font-size: 34px; line-height: 1.25; text-align: center;
}
body.page:not(.et_pb_pagebuilder_layout) #main-content h1.main_title::after {
	content: ""; display: block; width: 60px; height: 3px; margin: 16px auto 0; border-radius: 2px; background: var(--el-cta, #1f5fbf);
}
@media (max-width: 767px) { body.page:not(.et_pb_pagebuilder_layout) #main-content h1.main_title { font-size: 26px; } }

/* Product gallery thumbnails: whole photo inside a square, no cropping (see electron-design.php) */
.woocommerce div.product .flex-control-thumbs li img {
	aspect-ratio: 1 / 1;
	width: 100%;
	height: auto;
	object-fit: contain;
	background: #fff;
	border: 1px solid #e3e8ef;
	border-radius: 6px;
	padding: 4px;
	box-sizing: border-box;
}

/* Home: «Βρείτε μας» (backups/home-findus.php) */
#main-content .electron-findus { max-width: 1040px; margin: 0 auto; text-align: center; }
#main-content .electron-findus__title { padding: 0 0 6px; color: #fff; font-size: 32px !important; font-weight: 700; }
#main-content .electron-findus__text { padding: 0; margin: 0 0 20px; color: #dfe7f2; font-size: 17px !important; }
#main-content .electron-findus__map { overflow: hidden; border-radius: 12px; box-shadow: 0 10px 30px rgba(0, 0, 0, .35); background: #fff; }
#main-content .electron-findus__map iframe { display: block; width: 100%; height: 420px; border: 0; }
#main-content .electron-findus__map .electron-consent-placeholder { min-height: 260px; margin: 0; border-radius: 0; }
#main-content .electron-findus__link { padding: 0; margin: 16px 0 0; }
#main-content .electron-findus__link a { color: #fff !important; font-weight: 700; text-decoration: underline; }
@media (max-width: 767px) {
	#main-content .electron-findus { width: 90%; }
	#main-content .electron-findus__title { font-size: 26px !important; }
	#main-content .electron-findus__map iframe { height: 320px; }
}

/* Anything under the footer (overscroll, short pages, browser zoom) shows the footer colour, never a grey strip */
html { background: #111821; }
body { background-color: #fff; }

/* Προφίλ Επιχείρησης (backups/profile-page.php) — reuses the .electron-svc components */
#main-content .electron-svc__grid--3 { grid-template-columns: repeat(3, 1fr); }
#main-content .electron-svc__card p { margin: 0 0 10px; padding: 0; color: #3b4654; font-size: 16px !important; line-height: 1.55 !important; }
#main-content .electron-about__list { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 10px; margin: 6px 0 16px; padding: 0; list-style: none; }
#main-content .electron-about__list li {
	position: relative; padding: 12px 14px 12px 38px; background: #fff; border: 1px solid #e3e8ef; border-radius: 8px;
	color: #2b3542; font-size: 15px; line-height: 1.4;
}
#main-content .electron-about__list li::before { content: "✓"; position: absolute; left: 14px; top: 12px; color: var(--el-cta, #1f5fbf); font-weight: 700; }
@media (max-width: 980px) { #main-content .electron-svc__grid--3 { grid-template-columns: 1fr; } }

/* 24/7 fault line (electron-business.php) */
.electron-footer__support { margin: 12px 0 0 !important; padding: 10px 12px !important; border-left: 3px solid #e8a33d; background: rgba(255, 255, 255, .05); border-radius: 6px; font-size: 14px; line-height: 1.45; }
.electron-footer__support strong { color: #fff; }
.electron-footer__support span { color: #aab4c0; font-size: 13px; }
#main-content .electron-support { margin: 0 auto 32px; max-width: none; }
#main-content .electron-support a { color: #8a4b00 !important; text-decoration: underline; white-space: nowrap; }

/* Product page main photo: portrait pictures (e.g. RBS Pepper / 60pro) must not run a metre tall */
.single-product .woocommerce-product-gallery__image img.wp-post-image,
.single-product .woocommerce-product-gallery__image img {
	width: auto !important;
	max-width: 100% !important;
	max-height: 480px !important;
	margin: 0 auto !important;
	object-fit: contain;
}
.single-product .woocommerce-product-gallery__image > a { display: flex; justify-content: center; }
@media (max-width: 767px) {
	.single-product .woocommerce-product-gallery__image img.wp-post-image,
	.single-product .woocommerce-product-gallery__image img { max-height: 360px !important; }
}

/* ── Contact form «Ζητήστε προσφορά» (2026-10-06). Colours: change the 4 variables below. ── */
.electron-form {
	--ef-accent: #00a0e0;  /* focus line */
	--ef-btn: #e01020;     /* send button */
	--ef-btn-dark: #b80d1a;
	--ef-text: #13253d;
	padding: 28px 28px 22px;
	background: #fff;
	border: 1px solid #e3e9f0;
	border-top: 4px solid var(--ef-accent);
	border-radius: 14px;
	box-shadow: 0 10px 30px rgba(17, 41, 77, .08);
}
.electron-form .et_pb_contact_main_title { margin-bottom: 4px; padding-bottom: 0; color: var(--ef-text); font-size: 26px; font-weight: 800; }
.electron-form .et_pb_contact_main_title::after { content: "Συμπληρώστε τα στοιχεία σας και θα σας απαντήσουμε σύντομα."; display: block; margin: 6px 0 18px; color: #5b6b80; font-size: 15px; font-weight: 400; line-height: 1.5; }
.electron-form .et_pb_contact_field { margin-bottom: 14px; }
.electron-form .et_pb_contact .input,
.electron-form .et_pb_contact p input,
.electron-form .et_pb_contact textarea.input {
	padding: 14px 16px;
	background: #f6f8fb;
	border: 1.5px solid #dbe3ec;
	border-radius: 10px;
	color: var(--ef-text);
	font-size: 16px;
	transition: border-color .2s, box-shadow .2s, background .2s;
}
.electron-form .et_pb_contact .input::placeholder { color: #7a8899; opacity: 1; }
.electron-form .et_pb_contact .input:focus {
	background: #fff;
	border-color: var(--ef-accent);
	box-shadow: 0 0 0 3px rgba(0, 160, 224, .18);
	outline: none;
}
.electron-form .et_pb_contact textarea.input { min-height: 140px; }
.electron-form .et_contact_bottom_container { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 14px; float: none; width: 100%; margin-top: 4px; }
.electron-form .et_pb_contact_right { display: flex; align-items: center; margin: 0 auto 0 0; padding: 0; color: #5b6b80; font-size: 15px; }
.electron-form .et_pb_contact_right p { margin: 0; padding: 0; }
.electron-form .et_pb_contact_right::before { content: "Επαλήθευση:"; margin-right: 8px; }
.electron-form .et_pb_contact_captcha_question { color: var(--ef-text); font-size: 17px; font-weight: 700; }
.electron-form .et_pb_contact .et_pb_contact_captcha { width: 64px; max-width: 64px; margin-left: 6px; padding: 10px 8px; text-align: center; }
.electron-form .et_pb_button_wrapper { margin: 0; }
.electron-form .et_pb_contact_submit.et_pb_button {
	margin: 0;
	padding: 13px 34px !important;
	background: var(--ef-btn);
	border: 0;
	border-radius: 999px;
	color: #fff !important;
	font-size: 17px;
	font-weight: 700;
	box-shadow: 0 6px 16px rgba(224, 16, 32, .28);
	transition: background .2s, transform .2s;
}
.electron-form .et_pb_contact_submit.et_pb_button:hover { padding: 13px 34px !important; background: var(--ef-btn-dark); transform: translateY(-1px); }
.electron-form .et_pb_contact_submit.et_pb_button::after { display: none; }
.electron-form .et-pb-contact-message { color: var(--ef-text); }
.electron-form .et_pb_contact_error_text { color: var(--ef-btn) !important; }
.electron-form .et_contact_error { border-color: var(--ef-btn) !important; }
@media (max-width: 767px) {
	.electron-form { padding: 20px 16px 16px; }
	.electron-form .et_pb_contact_field.et_flex_column_12_24_phone { flex: 0 0 100%; width: 100%; max-width: 100%; }
	.electron-form .et_pb_contact_main_title { font-size: 22px; }
	.electron-form .et_contact_bottom_container { flex-direction: column; align-items: stretch; }
	.electron-form .et_pb_contact_right { justify-content: center; }
	.electron-form .et_pb_contact_submit.et_pb_button { width: 100%; }
}

/* ── Contact page (2026-10-06): e-mail never wraps (shrinks to fit the column instead) ── */
.et_pb_blurb_description:has(a[href^="mailto:"]) { container-type: inline-size; }
.et_pb_blurb_description a[href^="mailto:"] { white-space: nowrap; font-size: min(1em, 7.6cqi); }

/* ── Contact page on phones/tablets: the form comes first, contact details after it ── */
@media (max-width: 980px) {
	.et_pb_row:has(.electron-form) { display: flex; flex-direction: column; }
	.et_pb_row:has(.electron-form) > .et_pb_column { margin-bottom: 30px !important; }
	.et_pb_row:has(.electron-form) > .et_pb_column:has(.electron-form) { order: -1; }
	.et_pb_row:has(.electron-form) > .et_pb_column:last-child:not(:has(.electron-form)) { margin-bottom: 0 !important; }
}

/* Narrow form box (e.g. 1/3-width column on small laptops): one field per line so nothing gets cut */
.electron-form { container-type: inline-size; }
@container (max-width: 520px) {
	.electron-form .et_pb_contact_field { flex: 0 0 100% !important; width: 100% !important; max-width: 100% !important; }
}
