/* Mars Studio — styles for block styles and small global details. Design tokens live in theme.json. */

:where(body) { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
::selection { background: var(--wp--preset--color--accent-3); color: var(--wp--preset--color--contrast); }

/* Skip link + focus */
:where(a, button, input, select, textarea):focus-visible {
	outline: 2px solid var(--wp--preset--color--accent);
	outline-offset: 3px;
}

/* Buttons */
.wp-block-button.is-style-outline-gold .wp-block-button__link {
	background: transparent;
	color: currentColor;
	border: 1px solid var(--wp--preset--color--accent);
}
.wp-block-button.is-style-outline-gold .wp-block-button__link:hover {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--contrast);
}
.wp-block-button.is-style-text-link .wp-block-button__link {
	background: none;
	color: currentColor;
	padding-left: 0;
	padding-right: 0;
	border-bottom: 1px solid var(--wp--preset--color--accent);
}

/* Groups */
.wp-block-group.is-style-framed {
	border: 1px solid color-mix(in srgb, currentColor 25%, transparent);
	outline: 1px solid color-mix(in srgb, currentColor 12%, transparent);
	outline-offset: 8px;
}

/* Reveal: opt-in per group, a single soft entrance. Content stays visible without JS. */
.js .wp-block-group.is-style-reveal:not(.is-revealed) { opacity: 0; transform: translateY(14px); }
.js .wp-block-group.is-style-reveal { transition: opacity 600ms ease, transform 600ms ease; }
@media (prefers-reduced-motion: reduce) {
	.js .wp-block-group.is-style-reveal { opacity: 1 !important; transform: none !important; transition: none; }
}

/* Images */
.wp-block-image.is-style-arch img { border-radius: var(--wp--custom--radius--arch); }
.wp-block-image.is-style-offset { position: relative; isolation: isolate; }
.wp-block-image.is-style-offset img { display: block; }
.wp-block-image.is-style-offset::after {
	content: "";
	position: absolute;
	inset: 14px -14px -14px 14px;
	border: 1px solid var(--wp--preset--color--accent);
	z-index: -1;
}

/* Headings */
.wp-block-heading.is-style-outlined {
	color: transparent;
	-webkit-text-stroke: 1px currentColor;
	-webkit-text-stroke-color: var(--wp--preset--color--contrast);
}
.has-contrast-background-color .wp-block-heading.is-style-outlined { -webkit-text-stroke-color: var(--wp--preset--color--base); }

/* Separators */
.wp-block-separator.is-style-diamond {
	border: none;
	height: 1px;
	background: color-mix(in srgb, currentColor 30%, transparent);
	overflow: visible;
	position: relative;
	max-width: 240px;
}
.wp-block-separator.is-style-diamond::after {
	content: "";
	position: absolute;
	left: 50%; top: 50%;
	width: 7px; height: 7px;
	background: var(--wp--preset--color--accent);
	transform: translate(-50%, -50%) rotate(45deg);
}

/* Sticky header option: add the class "is-sticky" to the header template part group */
.is-sticky { position: sticky; top: 0; z-index: 50; }
.admin-bar .is-sticky { top: var(--wp-admin--admin-bar--height, 32px); }

/* Pricing / card rows keep equal heights */
.mars-equal > .wp-block-column { display: flex; flex-direction: column; }
.mars-equal > .wp-block-column > .wp-block-buttons:last-child { margin-top: auto; }
