/**
 * myAdeia theme styles: only what theme.json cannot express.
 * Mobile-first; breakpoints 640 / 768 / 1024 px (min-width only).
 */

/* ---------- Base ---------- */
@media (prefers-reduced-motion: no-preference) {
	html { scroll-behavior: smooth; }
}

[id] { scroll-margin-top: calc(var(--wp--custom--header--height) + var(--wp-admin--admin-bar--height, 0px)); }

a { text-underline-offset: 0.15em; }

/* Template parts and <main> sit flush; sections own their spacing. */
.wp-site-blocks > * + * { margin-block-start: 0; }

/* Offset content below the fixed header, except on landing pages (transparent header over the hero). */
.wp-site-blocks:has(.myadeia-header.is-solid) { padding-top: var(--wp--custom--header--height); }

:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline: 2px solid var(--wp--preset--color--primary-600);
	outline-offset: 2px;
}

/* ---------- Header ---------- */
.myadeia-header {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	z-index: 50;
	background-color: transparent;
	/* Always on (as in the app). Also makes the header the containing block of the mobile menu panel. */
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	transition: background-color var(--wp--custom--transition--header), box-shadow var(--wp--custom--transition--header);
}

body.admin-bar .myadeia-header { top: var(--wp-admin--admin-bar--height, 32px); }

/* The solid state is a background colour, independent of backdrop-filter support. */
.myadeia-header.is-scrolled,
.myadeia-header.is-solid {
	background-color: var(--wp--custom--header--bg-solid);
	box-shadow: var(--wp--custom--shadow--sm);
}

/* Without JS: the same 50px threshold via a scroll-driven animation, where supported. */
@supports (animation-timeline: scroll()) {
	.myadeia-header:not(.is-solid) {
		animation: myadeia-header-solid linear both;
		animation-timeline: scroll(root);
		animation-range: 0 50px;
	}
}

@keyframes myadeia-header-solid {
	from { background-color: transparent; box-shadow: none; }
	99% { background-color: transparent; box-shadow: none; }
	to { background-color: var(--wp--custom--header--bg-solid); box-shadow: var(--wp--custom--shadow--sm); }
}

.myadeia-header__bar {
	min-height: var(--wp--custom--header--height);
	gap: 1rem;
}

.myadeia-logo { flex-shrink: 0; margin: 0; line-height: 0; }

.myadeia-header__logo img { width: auto; height: 2rem; }

@media (min-width: 640px) {
	.myadeia-header__logo img { height: 2.25rem; }
}

/*
 * Navigation. Core copies the nav's classes (wp-block-navigation, items-justified-right, …)
 * onto the inner <ul>, so the <ul> redefines --navigation-layout-* and overrides on the
 * container never reach the links. Layout overrides therefore target the <ul> itself.
 */
.myadeia-nav .wp-block-navigation-item__content {
	color: var(--wp--preset--color--sage-600);
	text-decoration: none;
	transition: color var(--wp--custom--transition--base), background-color var(--wp--custom--transition--base);
}

.myadeia-nav .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--primary-600); }

.myadeia-nav .wp-block-navigation-item.is-style-pill > .wp-block-navigation-item__content {
	padding: 0.25rem 0.75rem;
	border-radius: var(--wp--custom--radius--full);
	background-color: var(--wp--preset--color--secondary-100);
	color: var(--wp--preset--color--secondary-800);
	font-weight: 600;
}

.myadeia-nav .wp-block-navigation-item.is-style-pill > .wp-block-navigation-item__content:hover { background-color: var(--wp--preset--color--secondary-200); }

/* «Είσοδος»: text link, not a button. */
.myadeia-nav .wp-block-navigation-item.myadeia-nav-login > .wp-block-navigation-item__content { color: var(--wp--preset--color--sage-700); }

.myadeia-nav .wp-block-navigation-item.myadeia-nav-login > .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--primary-700); }

/* Current page (core adds .current-menu-item and aria-current="page" to page links). */
.myadeia-nav .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content {
	color: var(--wp--preset--color--primary-700);
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 0.4em;
}

.myadeia-nav .wp-block-navigation-item.is-style-pill.current-menu-item > .wp-block-navigation-item__content {
	background-color: var(--wp--preset--color--secondary-200);
	color: var(--wp--preset--color--secondary-800);
	text-decoration: none;
}

/* Header CTA is smaller than content buttons (app: text-sm, rounded-lg). */
.myadeia-header__actions .wp-block-button__link {
	padding: 0.625rem 1.25rem;
	border-radius: var(--wp--custom--radius--md);
	font-size: var(--wp--preset--font-size--sm);
}

/* Core switches to the hamburger at 600px; the design switches at 768px. */
.myadeia-nav .wp-block-navigation__responsive-container-open:not(.always-shown) {
	display: flex;
	color: var(--wp--preset--color--sage-500);
}

.myadeia-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }

.myadeia-header:has(.is-menu-open) .wp-block-navigation__responsive-container-open { visibility: hidden; }

/* Mobile menu: a panel below the bar instead of a full-screen overlay. */
.myadeia-header .myadeia-nav .wp-block-navigation__responsive-container.is-menu-open {
	top: 100%;
	bottom: auto;
	max-height: calc(100dvh - var(--wp--custom--header--height) - var(--wp-admin--admin-bar--height, 0px));
	padding: 0.5rem var(--wp--preset--spacing--gutter) 1rem;
	overflow: visible;
	border-top: 1px solid var(--wp--preset--color--sage-100);
	background-color: var(--wp--preset--color--white);
	box-shadow: var(--wp--custom--shadow--lg);
}

.myadeia-header .myadeia-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog { margin-top: 0; }

.myadeia-header .myadeia-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	align-items: stretch;
	gap: 0.5rem;
	max-height: calc(100dvh - var(--wp--custom--header--height) - var(--wp-admin--admin-bar--height, 0px) - 1.5rem);
	padding-top: 0;
	overflow-y: auto;
}

/* Close button sits in the bar, exactly where the hamburger was. */
.myadeia-header .myadeia-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
	top: calc(-0.5rem - var(--wp--custom--header--height) / 2 - 12px);
	color: var(--wp--preset--color--sage-500);
}

/* Panel links: left-aligned, full width, 44px tap targets. */
.myadeia-header .myadeia-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	--navigation-layout-justification-setting: stretch;
	--navigation-layout-justify: flex-start;
	align-items: stretch;
	gap: 0.25rem;
	width: 100%;
}

.myadeia-header .myadeia-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	display: flex;
	align-items: center;
	min-height: 44px;
	padding: 0.5rem 0.75rem;
	border-radius: var(--wp--custom--radius--md);
	color: var(--wp--preset--color--sage-700);
	font-size: var(--wp--preset--font-size--base);
}

.myadeia-header .myadeia-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover { background-color: var(--wp--preset--color--sage-50); }

.myadeia-header .myadeia-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.is-style-pill > .wp-block-navigation-item__content {
	align-self: flex-start;
	padding: 0.5rem 1rem;
	border-radius: var(--wp--custom--radius--full);
	background-color: var(--wp--preset--color--secondary-100);
	color: var(--wp--preset--color--secondary-800);
	font-weight: 600;
}

.myadeia-header .myadeia-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.is-style-pill > .wp-block-navigation-item__content:hover { background-color: var(--wp--preset--color--secondary-200); }

.myadeia-header .myadeia-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content {
	background-color: var(--wp--preset--color--primary-50);
	color: var(--wp--preset--color--primary-700);
	font-weight: 600;
}

.myadeia-header .myadeia-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.is-style-pill.current-menu-item > .wp-block-navigation-item__content {
	background-color: var(--wp--preset--color--secondary-200);
	color: var(--wp--preset--color--secondary-800);
}

.myadeia-header .is-menu-open .myadeia-header__actions {
	flex-direction: column;
	align-items: stretch;
	width: 100%;
}

.myadeia-header .is-menu-open .myadeia-header__actions .wp-block-button__link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 44px;
	font-size: var(--wp--preset--font-size--base);
}

@media (min-width: 768px) {
	.myadeia-nav { flex: 1 1 auto; }

	.myadeia-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: none; }

	.myadeia-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
		position: relative;
		z-index: auto;
		display: block;
		width: 100%;
	}

	.myadeia-nav .wp-block-navigation__responsive-container-content { gap: 0.75rem; }

	/* Links centred between logo and «Είσοδος» + CTA (app: justify-between). */
	.myadeia-nav .wp-block-navigation__container {
		flex: 1 1 auto;
		gap: 2rem;
	}

	.myadeia-nav .wp-block-navigation__container > :first-child,
	.myadeia-nav .wp-block-navigation__container > .myadeia-nav-login { margin-inline-start: auto; }

	.myadeia-nav .wp-block-navigation__container > .myadeia-nav-login > .wp-block-navigation-item__content { padding: 0.5rem 0.25rem; }
}

/* ---------- Buttons ---------- */
.wp-block-button.is-style-outline > .wp-block-button__link {
	padding: calc(0.75rem - 1px) calc(1.25rem - 1px);
	border-width: 1px;
}

.wp-block-button.is-style-outline > .wp-block-button__link:hover,
.wp-block-button.is-style-outline > .wp-block-button__link:focus {
	border-color: var(--wp--preset--color--primary-300);
	background-color: transparent;
	color: var(--wp--preset--color--primary-600);
}

/* ---------- Section patterns ---------- */
.myadeia-eyebrow {
	font-weight: 600;
	letter-spacing: var(--wp--custom--letter-spacing--widest);
	text-transform: uppercase;
}

.myadeia-section-head > .myadeia-eyebrow + h2 { margin-block-start: 0.5rem; }

.myadeia-section-head > h2 + p { margin-block-start: 1rem; }

.myadeia-badge {
	gap: 0.5rem;
	padding: 0.375rem 1rem;
	border-radius: var(--wp--custom--radius--full);
	font-weight: 500;
	line-height: 1.25rem;
}

.myadeia-hero .myadeia-badge-row + * { margin-block-start: 1rem; }

.myadeia-icon-tile,
.myadeia-icon-circle {
	flex-shrink: 0;
	align-items: center;
	width: 3rem;
	height: 3rem;
	border-radius: var(--wp--custom--radius--lg);
}

.myadeia-icon-circle {
	width: 2.5rem;
	height: 2.5rem;
	border-radius: var(--wp--custom--radius--full);
}

.myadeia-card > h3 + p { margin-block-start: 0.75rem; }

/* Large CTA buttons: stacked full width on phones, centred row from 640px. */
.myadeia-buttons-lg {
	flex-direction: column;
	align-items: stretch;
	gap: 1rem;
	margin-block-start: 2.5rem;
}

.myadeia-buttons-lg .wp-block-button__link {
	width: 100%;
	padding: 0.875rem 2rem;
	box-shadow: var(--wp--custom--shadow--md);
}

.myadeia-buttons-lg .wp-block-button.is-style-outline > .wp-block-button__link {
	padding: calc(0.875rem - 1px) calc(2rem - 1px);
	box-shadow: var(--wp--custom--shadow--sm);
}

.myadeia-hero .wp-block-button.is-style-outline > .wp-block-button__link,
.myadeia-hero .wp-block-button.is-style-outline > .wp-block-button__link:hover { background-color: var(--wp--preset--color--white); }

/* White button on dark bands. */
.myadeia-button-light > .wp-block-button__link {
	background-color: var(--wp--preset--color--white);
	color: var(--wp--preset--color--primary-700);
}

.myadeia-button-light > .wp-block-button__link:hover,
.myadeia-button-light > .wp-block-button__link:focus {
	background-color: var(--wp--preset--color--primary-50);
	color: var(--wp--preset--color--primary-700);
}

/* Outline button on dark bands. */
.wp-block-button.is-style-outline.myadeia-on-dark > .wp-block-button__link {
	border-color: color-mix(in srgb, var(--wp--preset--color--white) 60%, transparent);
	color: var(--wp--preset--color--white);
	box-shadow: none;
}

.wp-block-button.is-style-outline.myadeia-on-dark > .wp-block-button__link:hover,
.wp-block-button.is-style-outline.myadeia-on-dark > .wp-block-button__link:focus {
	border-color: var(--wp--preset--color--white);
	background-color: color-mix(in srgb, var(--wp--preset--color--white) 10%, transparent);
	color: var(--wp--preset--color--white);
}

.myadeia-cta-band :where(a, button):focus-visible { outline-color: var(--wp--preset--color--white); }

/* Before/after comparison cards. */
.myadeia-compare-head { gap: 0.75rem; }

.myadeia-list-icons {
	display: grid;
	gap: 1rem;
	padding-left: 0;
	list-style: none;
}

.myadeia-list-icons > li {
	position: relative;
	padding-left: 2rem;
}

.myadeia-list-icons > li::before {
	position: absolute;
	top: 0.125rem;
	left: 0;
	width: 1.25rem;
	height: 1.25rem;
	background-color: currentColor;
	content: "";
	-webkit-mask: var(--myadeia-list-icon) center / contain no-repeat;
	mask: var(--myadeia-list-icon) center / contain no-repeat;
}

.myadeia-list-x { --myadeia-list-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill-rule='evenodd' d='M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z' clip-rule='evenodd'/%3E%3C/svg%3E"); }

.myadeia-list-check { --myadeia-list-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill-rule='evenodd' d='M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z' clip-rule='evenodd'/%3E%3C/svg%3E"); }

.myadeia-list-check > li::before { background-color: var(--wp--preset--color--primary-600); }

@media (min-width: 640px) {
	.myadeia-hero .myadeia-badge-row + * { margin-block-start: 2rem; }

	.myadeia-buttons-lg { flex-direction: row; }

	.myadeia-buttons-lg .wp-block-button__link { width: auto; }
}

/* ---------- Cards ---------- */
.myadeia-card {
	border: 1px solid var(--wp--preset--color--sage-100);
	border-radius: var(--wp--custom--radius--xl);
	background-color: var(--wp--preset--color--white);
	transition: border-color var(--wp--custom--transition--base), box-shadow var(--wp--custom--transition--base);
}

.myadeia-card:hover {
	border-color: var(--wp--preset--color--primary-200);
	box-shadow: var(--wp--custom--shadow--lg);
}

/* ---------- Details (FAQ) ---------- */
.wp-block-details { background-color: var(--wp--preset--color--white); }

.wp-block-details[open] {
	padding-bottom: 1.25rem;
	box-shadow: var(--wp--custom--shadow--md);
}

.wp-block-details > summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 1.25rem 1.5rem;
	font-weight: 600;
	list-style: none;
}

.wp-block-details > summary::-webkit-details-marker { display: none; }

.wp-block-details > summary::after {
	flex-shrink: 0;
	width: 1.25rem;
	height: 1.25rem;
	background-color: var(--wp--preset--color--sage-500);
	content: "";
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='black' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='black' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E") center / contain no-repeat;
	transition: transform var(--wp--custom--transition--base);
}

.wp-block-details[open] > summary::after { transform: rotate(180deg); }

.wp-block-details > :not(summary) { padding-inline: 1.5rem; }

/* ---------- Legal pages ---------- */
.myadeia-back-link a { font-weight: 500; text-decoration: none; }

.myadeia-back-link a:hover { text-decoration: underline; }

.myadeia-updated { gap: 0.25em; }

.myadeia-updated > * { margin: 0; }

.myadeia-updated:has(.myadeia-updated__modified) .myadeia-updated__published { display: none; }

.myadeia-prose {
	color: var(--wp--preset--color--sage-700);
	line-height: var(--wp--custom--line-height--prose);
}

.myadeia-prose h2 {
	margin-top: 2rem;
	font-size: var(--wp--preset--font-size--lg);
	font-weight: 600;
	letter-spacing: normal;
	line-height: 1.5;
}

/* ---------- Post lists ---------- */
.myadeia-post-list > li + li {
	margin-top: 2rem;
	padding-top: 2rem;
	border-top: 1px solid var(--wp--preset--color--sage-200);
}

.myadeia-post-list .wp-block-post-title a { color: inherit; text-decoration: none; }

.myadeia-post-list .wp-block-post-title a:hover { color: var(--wp--preset--color--primary-600); }

.myadeia-featured-image img { border-radius: var(--wp--custom--radius--xl); }

/* ---------- Footer ---------- */
.myadeia-footer a {
	color: var(--wp--preset--color--sage-300);
	text-decoration: none;
	transition: color var(--wp--custom--transition--base);
}

.myadeia-footer a:hover { color: var(--wp--preset--color--white); }

.myadeia-footer :where(a, button):focus-visible { outline-color: var(--wp--preset--color--white); }

.myadeia-footer-logo img { width: auto; height: 2rem; }

/*
 * Columns as named grid areas, everything left-aligned.
 * Phones: brand / Προϊόν + Εταιρεία / Επικοινωνία. From 768px: 4 columns.
 */
.myadeia-footer__grid.myadeia-footer__grid {
	grid-template-areas:
		"brand brand"
		"product company"
		"contact contact";
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--50);
	text-align: left;
}

.myadeia-footer__brand { grid-area: brand; }

.myadeia-footer__product { grid-area: product; }

.myadeia-footer__company { grid-area: company; }

.myadeia-footer__contact { grid-area: contact; }

/* One rhythm inside every column: logo → tagline, title → links, link → link. */
.myadeia-footer__col > * { margin-block: 0; }

.myadeia-footer__col > * + * { margin-block-start: var(--wp--preset--spacing--30); }

.myadeia-footer__brand > p { line-height: var(--wp--custom--line-height--card); }

.myadeia-footer__title {
	color: var(--wp--preset--color--sage-300);
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 600;
	letter-spacing: var(--wp--custom--letter-spacing--wider);
	line-height: var(--wp--custom--line-height--body);
	text-transform: uppercase;
}

.myadeia-footer__links {
	display: grid;
	gap: var(--wp--preset--spacing--30);
	padding: 0;
	list-style: none;
}

.myadeia-footer__links > li { margin: 0; }

.myadeia-footer__bottom {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--20);
	margin-top: var(--wp--preset--spacing--70);
	padding-top: var(--wp--preset--spacing--50);
	border-top: 1px solid var(--wp--preset--color--sage-800);
	text-align: left;
}

.myadeia-footer__bottom > * { margin: 0; }

@media (min-width: 768px) {
	.myadeia-footer__grid.myadeia-footer__grid {
		grid-template-areas: "brand product company contact";
		grid-template-columns: minmax(0, 1.25fr) repeat(3, minmax(0, 1fr));
	}

	.myadeia-footer__bottom {
		flex-flow: row wrap;
		justify-content: space-between;
		column-gap: var(--wp--preset--spacing--50);
	}
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
	.myadeia-header,
	.myadeia-card,
	.myadeia-nav .wp-block-navigation-item__content,
	.myadeia-footer a,
	.wp-block-details > summary::after {
		transition: none;
	}
}
