/* Footer redesign (Louloudia gia Gennisi) — icons, hover motion, scroll
   reveal. Brand tokens: accent #E8548C, accentDeep #C63D71, blush #FBE1EA,
   blush2 #F6C7DA, ink #241D22, bg #FAF9F7, surface #FFFFFF. Cream footer
   ground is untouched; this only restyles content inside it.

   Column layout: four equal bordered cards (contact / products / useful /
   wishes), each stretched to the row's shared height and top-aligned —
   modeled on flowerdelivery.gr's boxed footer-link cards, in this site's
   pink palette instead of that site's olive green. */

/* The top footer row (kadence_customizer_footer_top) has no widgets
   assigned on this site and was rendering as a dead empty band above the
   real footer columns. */
.site-top-footer-wrap {
	display: none;
}

.site-middle-footer-wrap {
	position: relative;
	padding-top: 12px;
	overflow: hidden;
}

/* Large, faint brand watermark behind the columns — reuses the real site
   logo (never a fabricated shape), kept low-opacity so it never competes
   with text contrast. */
.site-middle-footer-wrap::after {
	content: "";
	position: absolute;
	top: -70px;
	right: -50px;
	width: 340px;
	height: 340px;
	background-image: url('https://www.louloudiagiagenisi.gr/wp-content/uploads/2026/09/louloudia-logo.svg');
	background-repeat: no-repeat;
	background-size: contain;
	opacity: 0.05;
	pointer-events: none;
	z-index: 0;
}

/* Soft brand-color divider above the footer content, replacing the empty
   band that used to sit there — decorative only. */
.site-middle-footer-wrap::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: min(220px, 60%);
	height: 4px;
	border-radius: 999px;
	background: linear-gradient(90deg, transparent, #F6C7DA, #E8548C, #F6C7DA, transparent);
}

/* ---- Equal-height column cards -------------------------------------- */
/* Kadence's per-column "vertical align" setting used to differ column to
   column (some centered, one top-aligned), and one column carried extra
   content (a logo strip) the other three didn't — both floated that
   column's heading out of line with its siblings, so the row read as
   uneven heights even though the grid row itself was always one shared
   height. Forcing every column to stretch, and wrapping each one in an
   identically padded/bordered card, makes all four columns fill that same
   shared height and start their heading at the same line, regardless of
   how much text is inside. */
.site-middle-footer-wrap .footer-widget-area {
	align-items: stretch !important;
}

.site-middle-footer-inner-wrap {
	column-gap: 28px !important;
}

.site-middle-footer-wrap .footer-widget-area-inner {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	height: 100%;
	box-sizing: border-box;
	background: #FFFFFF;
	border: 1px solid #FBE1EA;
	border-radius: 16px;
	padding: 26px 24px;
	box-shadow: 0 4px 16px rgba(36, 29, 34, 0.05);
}

/* ---- Column headings ---------------------------------------------- */

.site-footer .widget-title {
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: 'Figtree', sans-serif !important;
	font-weight: 700 !important;
	font-size: 14px;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	margin-bottom: 18px !important;
	position: relative;
}

.site-footer .widget-title::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -8px;
	width: 26px;
	height: 3px;
	border-radius: 999px;
	background: #E8548C;
}

.nvm-footer-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: none;
	width: 30px;
	height: 30px;
	border-radius: 999px;
	background: #FBE1EA;
	color: #C63D71;
}

.nvm-footer-icon svg {
	width: 16px;
	height: 16px;
}

/* The header already carries the site logo; repeating it here duplicated
   branding and (in an earlier pass) pushed this column's heading out of
   line with its siblings. Kept out of flow rather than deleted, in case
   the content is wanted again in a redesigned spot later. */
.nvm-footer-brand {
	display: none;
}

/* ---- Nav-menu columns (Προϊόντα / Χρήσιμα / Ευχές), boxed link chips -- */

.site-footer .footer-widget2 .menu,
.site-footer .footer-widget3 .menu,
.site-footer .footer-widget5 .menu {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.site-footer .footer-widget2 .menu li a,
.site-footer .footer-widget3 .menu li a,
.site-footer .footer-widget5 .menu li a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 11px 14px;
	border: 1px solid #F6C7DA;
	border-radius: 10px;
	background: #FAF9F7;
	color: #241D22;
	font-size: 13.5px;
	font-weight: 500;
	line-height: 1.3;
	text-decoration: none;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.site-footer .footer-widget2 .menu li a::after,
.site-footer .footer-widget3 .menu li a::after,
.site-footer .footer-widget5 .menu li a::after {
	content: "\203A";
	flex: none;
	color: #C63D71;
	font-size: 17px;
	line-height: 1;
	transition: transform 0.2s ease, color 0.2s ease;
}

.site-footer .footer-widget2 .menu li a:hover,
.site-footer .footer-widget2 .menu li a:focus-visible,
.site-footer .footer-widget3 .menu li a:hover,
.site-footer .footer-widget3 .menu li a:focus-visible,
.site-footer .footer-widget5 .menu li a:hover,
.site-footer .footer-widget5 .menu li a:focus-visible {
	background: #E8548C;
	border-color: #E8548C;
	color: #FFFFFF;
	transform: translateY(-2px);
	box-shadow: 0 6px 16px rgba(198, 61, 113, 0.22);
	outline: none;
}

.site-footer .footer-widget2 .menu li a:hover::after,
.site-footer .footer-widget2 .menu li a:focus-visible::after,
.site-footer .footer-widget3 .menu li a:hover::after,
.site-footer .footer-widget3 .menu li a:focus-visible::after,
.site-footer .footer-widget5 .menu li a:hover::after,
.site-footer .footer-widget5 .menu li a:focus-visible::after {
	color: #FFFFFF;
	transform: translateX(3px);
}

.site-footer .footer-widget2 .menu li a:focus-visible,
.site-footer .footer-widget3 .menu li a:focus-visible,
.site-footer .footer-widget5 .menu li a:focus-visible {
	outline: 2px solid #C63D71;
	outline-offset: 2px;
}

/* ---- Contact column -------------------------------------------------- */

.nvm-footer-contact {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.nvm-footer-contact li {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 7px 8px;
	margin: 0 -8px;
	border-radius: 12px;
	transition: background-color 0.25s ease, transform 0.25s ease;
}

.nvm-footer-contact li:hover {
	background: #FBE1EA;
	transform: translateX(2px);
}

.nvm-footer-contact__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: none;
	width: 32px;
	height: 32px;
	border-radius: 999px;
	background: #FAF9F7;
	color: #C63D71;
}

.nvm-footer-contact__icon svg {
	width: 16px;
	height: 16px;
}

.nvm-footer-contact__text {
	display: flex;
	flex-direction: column;
	line-height: 1.35;
}

.nvm-footer-contact__label {
	font-family: 'Figtree', sans-serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #C63D71;
}

.nvm-footer-contact__text a {
	color: #241D22;
	text-decoration: none;
	transition: color 0.2s ease;
}

.nvm-footer-contact__text a:hover,
.nvm-footer-contact__text a:focus-visible {
	color: #C63D71;
}

/* ---- "Latest article" card (Footer 6), in the spirit of
   flowerdelivery.gr's article spotlight — sits in the same bordered card
   as every other column, so it only needs its own typography/button. ---- */

.nvm-footer-article__title {
	margin: 0 0 10px;
	font-family: 'Caprasimo', cursive;
	font-weight: 400;
	font-size: 18px;
	line-height: 1.15;
	color: #241D22;
}

.nvm-footer-article__title::after {
	content: "";
	display: block;
	width: 30px;
	height: 3px;
	margin-top: 10px;
	border-radius: 999px;
	background: #E8548C;
	transition: width 0.35s ease;
}

.nvm-footer-article:hover .nvm-footer-article__title::after {
	width: 56px;
}

.nvm-footer-article__text {
	margin: 0 0 16px;
	font-family: 'IBM Plex Sans', sans-serif;
	font-size: 13.5px;
	line-height: 1.6;
	color: rgba(36, 29, 34, 0.75);
}

.site-footer .nvm-footer-article__button {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 20px;
	border-radius: 999px;
	background: #E8548C;
	color: #FFFFFF;
	font-family: 'Figtree', sans-serif;
	font-weight: 700;
	font-size: 13px;
	text-decoration: none;
	transition: background-color 0.25s ease, transform 0.25s ease;
}

.site-footer .nvm-footer-article__button::after {
	content: "\2192";
	transition: transform 0.25s ease;
}

.site-footer .nvm-footer-article__button:hover,
.site-footer .nvm-footer-article__button:focus-visible {
	background: #C63D71;
	transform: translateY(-2px);
	outline: none;
}

.nvm-footer-article__button:hover::after,
.nvm-footer-article__button:focus-visible::after {
	transform: translateX(4px);
}

@media (prefers-reduced-motion: reduce) {
	.nvm-footer-article__title::after,
	.nvm-footer-article__button,
	.nvm-footer-article__button::after {
		transition: none;
	}
}

/* ---- Payment icons + wishes column ------------------------------------ */
/* The whole column is already a white card, so the image no longer needs
   its own nested card — that read as a box inside a box. */
.site-footer .footer-widget5 .widget_media_image {
	margin-bottom: 20px;
}

.site-footer .footer-widget5 .widget_media_image img {
	display: block;
}

/* ---- Bottom bar -------------------------------------------------------- */

.site-bottom-footer-wrap {
	border-top: 1px solid #F6C7DA;
	margin-top: 8px;
}

.site-bottom-footer-wrap .footer-html-inner p {
	font-size: 13px;
	color: rgba(36, 29, 34, 0.75);
}

.site-bottom-footer-wrap .footer-html-inner a {
	color: #C63D71;
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition: border-color 0.2s ease;
}

.site-bottom-footer-wrap .footer-html-inner a:hover {
	border-color: #C63D71;
}

/* ---- Scroll reveal (JS-armed only, see footer-interactions.js) -------- */

.nvm-footer-reveal {
	transition: opacity 0.6s ease, transform 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
	.nvm-footer-reveal {
		transition: none !important;
	}
}

/* ---- Back to top button ------------------------------------------------ */

.nvm-back-to-top {
	position: fixed;
	right: 20px;
	bottom: 64px;
	z-index: 60;
	width: 46px !important;
	height: 46px !important;
	padding: 0 !important;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: none;
	border-radius: 999px;
	background: #E8548C;
	color: #FFFFFF;
	cursor: pointer;
	box-shadow: 0 6px 18px rgba(198, 61, 113, 0.35);
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: opacity 0.3s ease, transform 0.3s ease, background-color 0.2s ease;
}

.nvm-back-to-top.is-visible {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.nvm-back-to-top:hover {
	background: #C63D71;
	transform: translateY(-2px);
}

.nvm-back-to-top:focus-visible {
	outline: 2px solid #FFFFFF;
	outline-offset: 2px;
}

.nvm-back-to-top svg {
	width: 20px;
	height: 20px;
}

@media (prefers-reduced-motion: reduce) {
	.nvm-back-to-top {
		transition: opacity 0.2s ease, visibility 0.2s ease;
		transform: none;
	}
	.nvm-back-to-top:hover {
		transform: none;
	}
}

@media (max-width: 680px) {
	.nvm-back-to-top {
		right: 14px;
		bottom: 58px;
		width: 42px !important;
		height: 42px !important;
	}

	.site-middle-footer-wrap .footer-widget-area-inner {
		padding: 22px 20px;
	}

	.site-middle-footer-wrap::after {
		width: 220px;
		height: 220px;
		top: -30px;
		right: -40px;
	}
}

/* =====================================================================
   2026-09-23 refresh: transparent footer, per-column colours, and the
   contact-column overflow fix (the e-mail address ran outside its card).
   Each column gets its own accent via --col / --col-soft / --col-line.
   ===================================================================== */

#colophon,
.site-footer-wrap,
.site-footer-row-container-inner,
.site-middle-footer-wrap,
.site-bottom-footer-wrap {
	background: transparent !important;
}

.site-middle-footer-wrap .footer-widget4 { --col: #E8548C; --col-deep: #C63D71; --col-soft: rgba(232, 84, 140, .12); --col-line: rgba(232, 84, 140, .35); }
.site-middle-footer-wrap .footer-widget2 { --col: #4A86D8; --col-deep: #2A569B; --col-soft: rgba(74, 134, 216, .12); --col-line: rgba(74, 134, 216, .35); }
.site-middle-footer-wrap .footer-widget3 { --col: #9B6BD3; --col-deep: #6E45A8; --col-soft: rgba(155, 107, 211, .12); --col-line: rgba(155, 107, 211, .35); }
.site-middle-footer-wrap .footer-widget5 { --col: #E8548C; --col-deep: #C63D71; --col-soft: rgba(232, 84, 140, .12); --col-line: rgba(232, 84, 140, .35); }
.site-middle-footer-wrap .footer-widget6 { --col: #4A86D8; --col-deep: #2A569B; --col-soft: rgba(74, 134, 216, .12); --col-line: rgba(74, 134, 216, .35); }

/* Glass cards: see-through, with a coloured top edge per column. */
.site-middle-footer-wrap .footer-widget-area-inner {
	background: rgba(255, 255, 255, .38) !important;
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
	border: 1px solid var(--col-line, #F6C7DA) !important;
	border-top: 4px solid var(--col, #E8548C) !important;
	box-shadow: 0 10px 30px -18px var(--col, #E8548C) !important;
	min-width: 0;
}

.site-footer .footer-widget-area .widget-title { color: var(--col-deep, #241D22) !important; }
.site-footer .footer-widget-area .widget-title::after { background: var(--col, #E8548C); }
.site-footer .footer-widget-area .nvm-footer-icon { background: var(--col-soft, #FBE1EA); color: var(--col-deep, #C63D71); }

.site-footer .footer-widget-area .menu li a {
	background: rgba(255, 255, 255, .55) !important;
	border-color: var(--col-line, #F6C7DA) !important;
}
.site-footer .footer-widget-area .menu li a::after { color: var(--col-deep, #C63D71) !important; }
.site-footer .footer-widget-area .menu li a:hover,
.site-footer .footer-widget-area .menu li a:focus-visible {
	background: var(--col, #E8548C) !important;
	border-color: var(--col, #E8548C) !important;
	color: #FFFFFF !important;
	box-shadow: 0 6px 16px -6px var(--col, #E8548C) !important;
}
.site-footer .footer-widget-area .menu li a:hover::after,
.site-footer .footer-widget-area .menu li a:focus-visible::after { color: #FFFFFF !important; }

/* Contact column: alternate pink / blue icons, and let long values wrap. */
.nvm-footer-contact li { align-items: flex-start; min-width: 0; }
.nvm-footer-contact li:hover { background: rgba(255, 255, 255, .6); }
.nvm-footer-contact li:nth-child(odd) .nvm-footer-contact__icon { background: rgba(232, 84, 140, .12); color: #C63D71; }
.nvm-footer-contact li:nth-child(even) .nvm-footer-contact__icon { background: rgba(74, 134, 216, .12); color: #2A569B; }
.nvm-footer-contact li:nth-child(even) .nvm-footer-contact__label { color: #2A569B; }
.nvm-footer-contact__icon { margin-top: 3px; }
.nvm-footer-contact__text { flex: 1 1 auto; min-width: 0; }
.nvm-footer-contact__text a {
	font-size: 15px;
	overflow-wrap: anywhere;
	word-break: break-word;
}
.nvm-footer-contact__text a[href^="mailto:"] { font-size: 14px; }

.site-footer .footer-widget6 .nvm-footer-article__title::after { background: var(--col); }
.site-footer .footer-widget6 .nvm-footer-article__button { background: var(--col); }
.site-footer .footer-widget6 .nvm-footer-article__button:hover,
.site-footer .footer-widget6 .nvm-footer-article__button:focus-visible { background: var(--col-deep); }

.site-middle-footer-wrap::before {
	background: linear-gradient(90deg, transparent, #E8548C, #9B6BD3, #4A86D8, transparent);
}

.site-bottom-footer-wrap {
	border-top: 1px solid transparent !important;
	border-image: linear-gradient(90deg, transparent, rgba(232, 84, 140, .45), rgba(74, 134, 216, .45), transparent) 1;
}