/*
Theme Name: Budget Tree Service
Theme URI:
Description: Ollie FSE child theme for Budget Tree Service, Hervey Bay.
Author:
Author URI:
Template: ollie
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: budget-tree-service
*/

:root {
	/* ── Easing ─────────────────────────────────────────────────────────────────
	   One curve for all interactive elements.
	   --transition-fast: snappy micro-interactions (buttons, icons)
	   --transition-base: slower state changes (header bg, drawers) */
	--ease-spring:     cubic-bezier(.22, .68, 0, 1.2);
	--transition-base: 0.3s var(--ease-spring);
	--transition-fast: 0.18s var(--ease-spring);

	/* ── Semantic surface tokens ─────────────────────────────────────────────────
	   Derived from the palette — not raw preset variables. */
	--surface-tint:  color-mix(in srgb, var(--wp--preset--color--primary) 5%, var(--wp--preset--color--base));
	--border-subtle: color-mix(in srgb, var(--wp--preset--color--main) 10%, transparent);
}

/* ── Buttons ─────────────────────────────────────────────────────────────────
   CSS cannot animate between two background-image gradient values — any
   gradient swap on hover is instant by necessity. But transform, box-shadow,
   border-color, and color all spring nicely. */
.wp-block-button .wp-block-button__link {
	transition:
		transform    var(--transition-fast),
		box-shadow   var(--transition-fast),
		border-color var(--transition-base),
		color        var(--transition-base);
}

.wp-block-button .wp-block-button__link:hover,
.wp-block-button .wp-block-button__link:focus {
	transform:  translateY(-2px);
	box-shadow: 0 6px 20px color-mix(in srgb, var(--wp--preset--color--primary) 35%, transparent);
}
