/*
 * Block styles registered in pegazus-blocks.php.
 * Colors use Twenty Twenty-Five palette roles, so child themes and style variations recolor them:
 *   accent-3 = brand color, accent-5 = light surface, accent-6 = subtle border.
 */

/* Nyilas lista: "›" bullets */
ul.is-style-pegazus-arrow {
	list-style-type: "›";
	padding-inline-start: 1.25em;
}
ul.is-style-pegazus-arrow li {
	padding-inline-start: 1ch;
}
ul.is-style-pegazus-arrow li + li {
	margin-top: 0.4em;
}

/* Keretes kiemelés: framed one-liner, e.g. "Nem sablonokat gyártok…" */
p.is-style-pegazus-boxed {
	border: 1px solid var(--wp--preset--color--accent-3);
	border-radius: 4px;
	box-shadow: 0 3px 0 var(--wp--preset--color--accent-6);
	padding: 0.9em 1.5em;
	text-align: center;
	width: fit-content;
	max-width: 100%;
	margin-inline: auto;
	font-size: var(--wp--preset--font-size--large);
}

/* Idézet: emphasized quote line */
p.is-style-pegazus-quote {
	color: var(--wp--preset--color--accent-3);
	font-size: var(--wp--preset--font-size--large);
	font-style: italic;
	font-weight: 700;
	line-height: 1.5;
}

/* Headings with a line icon in front (contact details) */
:is(h2, h3, h4)[class*="is-style-pegazus-icon-"]::before {
	content: "";
	display: inline-block;
	width: 1.5em;
	height: 1.5em;
	margin-inline-end: 0.6em;
	vertical-align: -0.35em;
	background-color: currentColor;
	-webkit-mask: var(--pegazus-icon) center / contain no-repeat;
	mask: var(--pegazus-icon) center / contain no-repeat;
}
.is-style-pegazus-icon-mail {
	--pegazus-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.3' stroke-linejoin='round'%3E%3Crect x='2.5' y='5' width='19' height='14' rx='1.5'/%3E%3Cpath d='M3 6l9 7 9-7M3 18l6.5-6M21 18l-6.5-6'/%3E%3C/svg%3E");
}
.is-style-pegazus-icon-phone {
	--pegazus-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.3' stroke-linecap='round'%3E%3Crect x='6.5' y='2' width='11' height='20' rx='2'/%3E%3Ccircle cx='12' cy='18.5' r='0.8'/%3E%3Cpath d='M10.5 4.5h3'/%3E%3C/svg%3E");
}
.is-style-pegazus-icon-pin {
	--pegazus-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.3' stroke-linejoin='round'%3E%3Cpath d='M21 3 3 10.5l7.5 3 3 7.5z'/%3E%3C/svg%3E");
}

/* Árlista sor: one package with a divider under it */
.wp-block-group.is-style-pegazus-price-row {
	border-bottom: 1px solid var(--wp--preset--color--accent-6);
	padding-bottom: var(--wp--preset--spacing--40);
}
.wp-block-group.is-style-pegazus-price-row:last-child {
	border-bottom: 0;
}

/* Kártya: package card on a light surface (pegazus/packages). Cards in one row get the same height,
   the price table sits at the bottom of each. */
.wp-block-group.is-style-pegazus-card {
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: var(--wp--preset--spacing--40);
	border-radius: 12px;
	background: var(--wp--preset--color--accent-5);
	color: var(--wp--preset--color--contrast);
	line-height: 1.45;
}
.is-style-pegazus-card ul.is-style-pegazus-arrow li + li {
	margin-top: 0.25em;
}
.is-style-pegazus-card > :first-child {
	margin-top: 0;
}
.is-style-pegazus-card > .pegazus-card-prices {
	margin-top: auto;
	padding-top: var(--wp--preset--spacing--30);
}
.pegazus-card-prices table {
	border-top: 1px solid var(--wp--preset--color--accent-6);
}
.pegazus-card-prices :is(td, th) {
	padding: 0.4em 0;
	border: 0;
}
.pegazus-card-prices td:last-child {
	color: var(--wp--preset--color--accent-3);
	font-weight: 700;
	text-align: right;
	white-space: nowrap;
}

/* Dark section styles (brand / contrast background): links and site title follow the section's text color */
:is(.is-style-section-4, .is-style-section-5) :is(a, .wp-block-site-title, .wp-block-site-title a) {
	color: inherit;
}
/* Social icons (pegazus/social-links, logos only): text color instead of the brands' colors, which can vanish on the background */
.wp-block-social-links.is-style-logos-only .wp-social-link {
	color: inherit;
}
.wp-block-social-links.is-style-logos-only .wp-social-link:hover {
	opacity: 0.75;
}

/* Contact Form 7: full-width fields, theme-colored button */
.wpcf7-form p {
	margin-block: 0 1.25rem;
}
.wpcf7-form label {
	font-weight: 600;
}
.wpcf7-form :is(input[type="text"], input[type="email"], input[type="tel"], input[type="date"], textarea) {
	box-sizing: border-box;
	width: 100%;
	margin-top: 0.4rem;
	padding: 0.7rem 0.9rem;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--contrast) 25%, transparent);
	border-radius: 4px;
	background: var(--wp--preset--color--base);
	color: var(--wp--preset--color--contrast);
	font: inherit;
	font-weight: 400;
}
.wpcf7-form .wpcf7-acceptance label {
	font-weight: 400;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item {
	margin-inline-start: 0;
}
.wpcf7-form .wpcf7-acceptance input {
	margin-inline-end: 0.5em;
}
.wpcf7-form textarea {
	height: 9rem;
}
/* Radio buttons and checkboxes (camp form): normal weight, side by side */
.wpcf7-form .wpcf7-list-item label {
	font-weight: 400;
}
.wpcf7-form .wpcf7-list-item {
	margin: 0.3rem 1.25rem 0 0;
}
.wpcf7-form h3 {
	margin-block: 2rem 1rem;
}
.wpcf7-form :is(input, textarea):focus {
	outline: 2px solid var(--wp--preset--color--accent-3);
	outline-offset: 1px;
}
.wpcf7-form .wpcf7-submit {
	padding: 0.8rem 2rem;
	border: 0;
	border-radius: 4px;
	background: var(--wp--preset--color--contrast);
	color: var(--wp--preset--color--base);
	font: inherit;
	cursor: pointer;
}
.wpcf7-form .wpcf7-submit:hover {
	background: var(--wp--preset--color--accent-3);
}

/* Header navigation: current page in brand color */
.wp-block-navigation .current-menu-item > .wp-block-navigation-item__content {
	color: var(--wp--preset--color--accent-3);
}

/* Fejléc – logó és név balra, menü jobbra (pegazus/header-row) */
.pegazus-header-row .pegazus-brand {
	align-items: center;
	min-width: 0;
}
.pegazus-header-row .pegazus-brand .wp-block-site-logo {
	flex-shrink: 0;
}
.pegazus-header-row .pegazus-brand .wp-block-site-logo img {
	height: auto;
}
/* Phones: the menu is a hamburger, keep it on the same row as the name. */
@media (max-width: 599px) {
	.pegazus-header-row {
		flex-wrap: nowrap;
		align-items: center;
	}
	.pegazus-header-row .pegazus-brand .wp-block-site-logo img {
		width: 56px;
	}
}
