/* Plaskett Potter – light interactions (trial, Nov 2). Switch off with PLASKETT_POTTER_MOTION in functions.php.
   Everything that moves sits inside prefers-reduced-motion: no-preference. */

/* ---------- Clickable cards ---------- */
.jet-listing-grid__item { position: relative; }
.pp-card .elementor-widget-image,
.pp-principal .elementor-widget-image { overflow: hidden; border-radius: 4px; position: relative; }
.pp-card .elementor-widget-image img,
.pp-principal .elementor-widget-image img { display: block; }

/* Gold line that slides in under the photo. */
.pp-card .elementor-widget-image::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 3px;
	background: linear-gradient(90deg, #9E7F3F 0%, #C9A961 30%, #E8D5A6 50%, #C9A961 70%, #9E7F3F 100%);
	transform: scaleX(0);
	transform-origin: left;
}

/* "View profile →": revealed on hover/focus; always shown where there is no hover (touch). */
.pp-view-profile { opacity: 0; }
.jet-listing-grid__item:hover .pp-view-profile,
.jet-listing-grid__item:focus-within .pp-view-profile { opacity: 1; }
@media (hover: none) { .pp-view-profile { opacity: 1; } }

/* Keyboard focus on the card's overlay link. */
.jet-engine-listing-overlay-link:focus-visible { outline: 2px solid #C9A961; outline-offset: 4px; border-radius: 6px; }

.pp-principal { transition: border-color .3s ease, box-shadow .3s ease; }
.jet-listing-grid__item:hover .pp-principal,
.jet-listing-grid__item:focus-within .pp-principal { border-color: #C9A961 !important; box-shadow: 0 10px 28px rgba(11, 42, 89, .10); }

/* ---------- Sticky header ---------- */
.elementor-location-header { position: sticky; top: var(--wp-admin--admin-bar--height, 0px); z-index: 100; background: #FFFFFF; transition: box-shadow .3s ease; }
.pp-scrolled .elementor-location-header { box-shadow: 0 6px 20px rgba(11, 42, 89, .10); }

@media (prefers-reduced-motion: no-preference) {
	/* Cards */
	.pp-card .elementor-widget-image img,
	.pp-principal .elementor-widget-image img { transition: transform .6s cubic-bezier(.2, .7, .2, 1); }
	.pp-card .elementor-widget-image { transition: transform .35s ease, box-shadow .35s ease; }
	.pp-card .elementor-widget-image::after { transition: transform .45s cubic-bezier(.2, .7, .2, 1); }
	.pp-view-profile { transition: opacity .3s ease, transform .3s ease; transform: translateY(-2px); }

	.jet-listing-grid__item:hover .pp-card .elementor-widget-image,
	.jet-listing-grid__item:focus-within .pp-card .elementor-widget-image { transform: translateY(-4px); box-shadow: 0 12px 28px rgba(11, 42, 89, .16); }
	.jet-listing-grid__item:hover .pp-card img,
	.jet-listing-grid__item:focus-within .pp-card img,
	.jet-listing-grid__item:hover .pp-principal img,
	.jet-listing-grid__item:focus-within .pp-principal img { transform: scale(1.04); }
	.jet-listing-grid__item:hover .pp-card .elementor-widget-image::after,
	.jet-listing-grid__item:focus-within .pp-card .elementor-widget-image::after { transform: scaleX(1); }
	.jet-listing-grid__item:hover .pp-view-profile,
	.jet-listing-grid__item:focus-within .pp-view-profile { transform: none; }

	/* Buttons: small lift; gold buttons brighten to Gold Light via their own hover color. */
	.elementor-button { transition: transform .25s ease, box-shadow .25s ease, background-color .25s ease, color .25s ease; }
	.elementor-button:hover,
	.elementor-button:focus-visible { transform: translateY(-2px); box-shadow: 0 8px 18px rgba(11, 42, 89, .18); }

	/* Arrow nudge on "… →" links (arrow wrapped in .pp-arrow by motion.js). */
	.pp-arrow { display: inline-block; transition: transform .25s ease; }
	a:hover .pp-arrow,
	a:focus-visible .pp-arrow,
	.jet-listing-grid__item:hover .pp-arrow { transform: translateX(4px); }

	/* Serve card */
	.pp-serve-card { transition: transform .35s ease, box-shadow .35s ease; }
	.pp-serve-card:hover,
	.pp-serve-card:focus-within { transform: translateY(-3px); box-shadow: inset 4px 0 0 #C9A961, 0 14px 30px rgba(11, 42, 89, .18); }

	/* Header shrink */
	.elementor-location-header .elementor-widget-theme-site-logo img { transition: width .3s ease, max-width .3s ease; }
	.elementor-location-header > .e-con:first-child > .e-con-inner { transition: padding .3s ease; }

	/* Scroll reveal (classes added by motion.js only when it runs). */
	.pp-reveal { opacity: 0; transform: translateY(16px); }
	.pp-reveal.pp-in { opacity: 1; transform: none; transition: opacity .6s ease, transform .6s cubic-bezier(.2, .7, .2, 1); transition-delay: var(--pp-delay, 0s); }

	/* Gold rule draws in from the left. */
	.pp-draw { transform: scaleX(0); transform-origin: left; }
	.pp-draw.pp-in { transform: scaleX(1); transition: transform .8s cubic-bezier(.2, .7, .2, 1) .2s; }
}

.pp-scrolled .elementor-location-header .elementor-widget-theme-site-logo img { width: 56px !important; max-width: 56px !important; }
.pp-scrolled .elementor-location-header > .e-con:first-child > .e-con-inner { padding-top: 6px !important; padding-bottom: 6px !important; }
