/* =====================================================================
   Amor Jets — block layout layer
   Home, Why Us, Aircraft and Contact are built from core blocks that
   carry the aj-* classes below (Block > Advanced > Additional CSS class).
   Icons come from aj-ico--{name} classes; reveals are automatic.
   ===================================================================== */

/* ---------- Core block resets inside page layouts ---------- */
.aj-canvas :where(p, h1, h2, h3, h4, figure, blockquote, ul, ol) { margin: 0; }
.aj-canvas :where(.wp-block-image) { margin: 0; }
.aj-canvas :where(.wp-block-image img) { display: block; max-width: 100%; height: auto; }
.aj-canvas :where(.wp-element-caption) { margin: 0; }
.aj-canvas :where(ul, ol) { padding-left: 0; }
.aj-canvas > *:last-child { margin-bottom: 0; }

/* Stack spacing for content groups */
:is(.aj-stack, .aj-split__copy, .aj-contact__copy, .aj-intro__side, .aj-head > .wp-block-group, .aj-two-col > .wp-block-group) > * + * { margin-top: 1.3rem; }
:is(.aj-stack, .aj-split__copy, .aj-contact__copy, .aj-intro__side, .aj-head > .wp-block-group, .aj-two-col > .wp-block-group) > .aj-eyebrow + * { margin-top: 0; }
:is(.aj-stack, .aj-split__copy, .aj-contact__copy, .aj-intro__side, .aj-two-col > .wp-block-group) > .wp-block-buttons { margin-top: 2.2rem; }
:is(.aj-section, .aj-cta) p:not([class]) { color: var(--muted); font-size: 1.03rem; line-height: 1.7; }
.aj-section--light p:not([class]) { color: var(--muted); }
.aj-head--center > .wp-block-group { display: grid; justify-items: center; text-align: center; }
.aj-head > .wp-block-group > .wp-block-buttons, .aj-head .aj-link-p { margin-top: 1.6rem; }

/* ---------- Mask icons ---------- */
:is(.aj-tile, .aj-feature, .aj-contact-card):not([class*="aj-ico--"]) { --ico: var(--i-spark); }

/* ---------- Buttons (Gold / Outline block styles) ---------- */
.aj-canvas .wp-block-buttons, .editor-styles-wrapper .wp-block-buttons { display: flex; flex-wrap: wrap; gap: .8rem; }
:is(.wp-block-button.is-style-gold, .wp-block-button.is-style-ghost) .wp-block-button__link {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .65em;
	min-height: 3.4rem;
	padding: 0 1.8rem;
	border: 1px solid transparent;
	border-radius: 999px;
	font-family: var(--f-body);
	font-size: .96rem;
	font-weight: 600;
	letter-spacing: .02em;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
	transition: transform .5s var(--ease-out), box-shadow .5s var(--ease-out), border-color .3s, color .3s, background-color .3s;
}
.wp-block-button.is-style-gold .wp-block-button__link {
	color: #17120a;
	background: linear-gradient(135deg, #f0dcb0 0%, #c9a66b 50%, #ad8a4f 100%);
	box-shadow: 0 12px 30px -12px rgba(201, 166, 107, .6), inset 0 1px 0 rgba(255, 255, 255, .5);
}
.wp-block-button.is-style-gold .wp-block-button__link::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(110deg, transparent 30%, rgba(255, 255, 255, .55) 50%, transparent 70%);
	transform: translateX(-120%);
	transition: transform 1s var(--ease-out);
}
.wp-block-button.is-style-gold .wp-block-button__link:hover {
	transform: translateY(-2px);
	box-shadow: 0 20px 44px -14px rgba(201, 166, 107, .8), 0 0 0 6px rgba(201, 166, 107, .14), inset 0 1px 0 rgba(255, 255, 255, .55);
}
.wp-block-button.is-style-gold .wp-block-button__link:hover::before { transform: translateX(120%); }
.wp-block-button.is-style-gold .wp-block-button__link::after,
.wp-block-button.is-style-ghost .wp-block-button__link:not([href^="tel:"]):not([href^="mailto:"])::after {
	content: "";
	width: 1.05em;
	height: 1.05em;
	flex: none;
	background: currentColor;
	-webkit-mask: var(--i-arrow) center / contain no-repeat;
	mask: var(--i-arrow) center / contain no-repeat;
	transition: transform .5s var(--ease-out);
}
.wp-block-button .wp-block-button__link:hover::after { transform: translateX(3px); }
.wp-block-button.is-style-ghost .wp-block-button__link {
	color: var(--heading);
	border-color: var(--line-strong);
	background: rgba(255, 255, 255, .04);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
}
.wp-block-button.is-style-ghost .wp-block-button__link:hover { border-color: var(--gold); transform: translateY(-2px); background: rgba(201, 166, 107, .08); }
.wp-block-button.is-style-ghost .wp-block-button__link:is([href^="tel:"], [href^="mailto:"])::before {
	content: "";
	width: 1.05em;
	height: 1.05em;
	flex: none;
	background: var(--gold);
	-webkit-mask: var(--i-phone) center / contain no-repeat;
	mask: var(--i-phone) center / contain no-repeat;
}
.wp-block-button.is-style-ghost .wp-block-button__link[href^="mailto:"]::before { -webkit-mask-image: var(--i-mail); mask-image: var(--i-mail); }
.wp-block-button .wp-block-button__link:active { transform: translateY(0) scale(.98); }

/* Text link with arrow */
.aj-link-p a {
	display: inline-flex;
	align-items: center;
	gap: .6rem;
	padding-bottom: .4rem;
	font-weight: 600;
	font-size: .98rem;
	text-decoration: none;
	color: var(--heading);
	background: linear-gradient(var(--gold), var(--gold)) 0 100% / 100% 1px no-repeat;
	transition: color .3s, background-size .7s var(--ease-out);
}
.aj-link-p a::after { content: ""; width: 1.1em; height: 1.1em; background: currentColor; -webkit-mask: var(--i-arrow) center / contain no-repeat; mask: var(--i-arrow) center / contain no-repeat; transition: transform .5s var(--ease-out); }
.aj-link-p a:hover { color: var(--gold); background-size: 40% 1px; }
.aj-link-p a:hover::after { transform: translateX(4px); }
.aj-intro__more { margin-top: 3rem; }

/* ---------- Covers (hero, page hero, CTA) ---------- */
.wp-block-cover:is(.aj-hero, .aj-page-hero, .aj-cta) { overflow: hidden; isolation: isolate; color: var(--text); }
.wp-block-cover:is(.aj-hero, .aj-page-hero, .aj-cta) > .wp-block-cover__image-background { z-index: 0; }
.wp-block-cover:is(.aj-hero, .aj-page-hero, .aj-cta) > .wp-block-cover__background { z-index: 1; opacity: 1 !important; }
.wp-block-cover:is(.aj-hero, .aj-page-hero, .aj-cta) > .wp-block-cover__inner-container { position: relative; z-index: 3; width: 100%; color: inherit; }
.wp-block-cover.aj-grain::after { z-index: 2; }

.wp-block-cover.aj-hero {
	min-height: 100svh;
	padding: calc(var(--header-h) + 3rem) 0 0;
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-end;
}
.wp-block-cover.aj-hero > .wp-block-cover__image-background { object-position: 60% 55%; animation: aj-kenburns 24s var(--ease) forwards; }
.wp-block-cover.aj-hero > .wp-block-cover__background {
	background:
		linear-gradient(180deg, rgba(6, 8, 12, .55) 0%, rgba(6, 8, 12, .2) 28%, rgba(6, 8, 12, .55) 68%, #06080c 100%),
		linear-gradient(90deg, rgba(6, 8, 12, .88) 0%, rgba(6, 8, 12, .45) 55%, rgba(6, 8, 12, .25) 100%) !important;
}
.wp-block-cover.aj-hero > .wp-block-cover__inner-container { display: flex; flex-direction: column; justify-content: flex-end; flex: 1 1 auto; }
.aj-hero__grid, .aj-page-hero__inner { width: min(100% - var(--gutter) * 2, var(--maxw)); margin-inline: auto; }

.aj-hero__facts > p { font-size: .9rem; line-height: 1.45; color: var(--muted); }
.aj-hero__facts > p strong { display: block; margin-bottom: .3rem; font-family: var(--f-display); font-size: 1.65rem; font-weight: 400; line-height: 1.1; color: var(--heading); }

/* Ticker: JS builds the moving track from the paragraph text */
.aj-ticker .aj-ticker__text { padding: 0 var(--gutter); font-weight: 600; font-size: .82rem; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.aj-ticker.is-built .aj-ticker__text { display: none; }

.wp-block-cover.aj-page-hero {
	min-height: min(80svh, 780px);
	padding: calc(var(--header-h) + 4rem) 0 clamp(3.5rem, 7vw, 6rem);
	align-items: flex-end;
}
.wp-block-cover.aj-page-hero > .wp-block-cover__background {
	background:
		linear-gradient(180deg, rgba(6, 8, 12, .55) 0%, rgba(6, 8, 12, .25) 35%, rgba(6, 8, 12, .92) 100%),
		linear-gradient(90deg, rgba(6, 8, 12, .75), transparent 75%) !important;
}
.aj-page-hero .aj-lead { margin-top: 1.6rem; }
.aj-crumbs a { color: inherit; }

.wp-block-cover.aj-cta { min-height: 0; padding: clamp(7rem, 15vw, 13rem) 0; text-align: center; }
.wp-block-cover.aj-cta::before { content: none; }
.wp-block-cover.aj-cta > .wp-block-cover__background {
	background:
		radial-gradient(ellipse at center, rgba(6, 8, 12, .35), rgba(6, 8, 12, .86) 72%),
		linear-gradient(180deg, #06080c 0%, transparent 22%, transparent 78%, #06080c 100%) !important;
}
.wp-block-cover.aj-cta > .wp-block-cover__inner-container {
	width: min(100% - var(--gutter) * 2, 880px);
	margin-inline: auto;
	display: grid;
	justify-items: center;
	gap: 1.6rem;
}
.wp-block-cover.aj-cta > .wp-block-cover__inner-container::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: -1;
	width: 560px;
	height: 560px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(236, 212, 162, .2), transparent 62%);
	transform: translate(-50%, -50%);
	animation: aj-breathe 9s ease-in-out infinite;
	pointer-events: none;
}
.wp-block-cover.aj-cta .aj-eyebrow { margin-bottom: 0; }
.wp-block-cover.aj-cta .aj-lead { margin-inline: auto; color: var(--text); }
.wp-block-cover.aj-cta .wp-block-buttons { justify-content: center; margin-top: .4rem; }
.wp-block-cover:is(.aj-page-hero, .aj-cta) > .wp-block-cover__image-background { top: -8%; height: 116%; }

/* ---------- Boarding pass ---------- */
.aj-pass__head {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 1rem;
	padding-bottom: 1.2rem;
	margin-bottom: 1.4rem;
}
.aj-pass__head::after {
	content: "";
	position: absolute;
	left: calc(clamp(1.4rem, 2.4vw, 1.9rem) * -1);
	right: calc(clamp(1.4rem, 2.4vw, 1.9rem) * -1);
	bottom: 0;
	height: 1px;
	background-image: linear-gradient(90deg, var(--line-strong) 55%, transparent 0);
	background-size: 10px 1px;
}
.aj-pass__head .aj-pass__title { margin-top: .35rem; }
.aj-pass .aj-form__note { margin-top: .9rem; }
.aj-pass .aj-form__note::before { content: ""; width: .9rem; height: .9rem; background: var(--gold); -webkit-mask: var(--i-lock) center / contain no-repeat; mask: var(--i-lock) center / contain no-repeat; }

/* ---------- Intro: call card + features ---------- */
.aj-callcard { margin-top: 2.2rem; }
.aj-callcard a {
	position: relative;
	display: inline-block;
	padding: .75rem 1.6rem .75rem 4.6rem;
	border: 1px solid var(--line-strong);
	border-radius: 999px;
	font-size: .76rem;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
	text-decoration: none;
	line-height: 1.5;
	color: var(--muted);
	transition: border-color .4s, background-color .4s, transform .6s var(--ease-out);
}
.aj-callcard a strong { display: block; font-family: var(--f-display); font-weight: 400; font-size: 1.45rem; letter-spacing: 0; text-transform: none; line-height: 1.2; color: var(--heading); }
.aj-callcard a::before { content: ""; position: absolute; left: .75rem; top: 50%; width: 3rem; height: 3rem; margin-top: -1.5rem; border-radius: 50%; background: linear-gradient(135deg, #f0dcb0, #c9a66b); animation: aj-pulse 2.4s var(--ease) infinite; }
.aj-callcard a::after { content: ""; position: absolute; left: 1.675rem; top: 50%; width: 1.15rem; height: 1.15rem; margin-top: -.575rem; background: #17120a; -webkit-mask: var(--i-phone) center / contain no-repeat; mask: var(--i-phone) center / contain no-repeat; }
.aj-callcard a:hover { border-color: var(--gold); background: rgba(201, 166, 107, .07); transform: translateY(-2px); }

.aj-features { counter-reset: feat; }
.aj-features > .aj-feature { counter-increment: feat; padding-top: 6.6rem; }
.aj-features > .aj-feature > h3::before { content: counter(feat, decimal-leading-zero); position: absolute; top: 2.3rem; left: var(--pl, 0); font-family: var(--f-body); font-size: .82rem; font-weight: 600; letter-spacing: .12em; color: var(--gold); }
.aj-features > .aj-feature::after { content: ""; position: absolute; top: 3.9rem; left: var(--pl, 0); width: 2.3rem; height: 2.3rem; background: var(--gold-hi); -webkit-mask: var(--ico) center / contain no-repeat; mask: var(--ico) center / contain no-repeat; transition: transform .7s var(--ease-out); }
.aj-features > .aj-feature:hover::after { transform: translateY(-4px) rotate(-6deg); }
@media (min-width: 640px) { .aj-features > .aj-feature:nth-child(even) { --pl: 1.8rem; } }
@media (min-width: 1024px) { .aj-features > .aj-feature + .aj-feature { --pl: 1.8rem; } .aj-features > .aj-feature { padding-top: 6.8rem; } }

/* ---------- Fleet cards ---------- */
.aj-fleet > * { flex: 0 0 82%; scroll-snap-align: start; }
.wp-block-image.aj-fleet-card__media { margin: 0; }
.wp-block-image.aj-fleet-card__media img { width: 100%; height: 100%; object-fit: cover; }
.wp-block-image.aj-fleet-card__media .wp-element-caption {
	position: absolute;
	top: 1rem;
	left: 1rem;
	z-index: 2;
	margin: 0;
	padding: .4rem .75rem;
	border: 1px solid rgba(201, 166, 107, .45);
	border-radius: 999px;
	background: rgba(6, 8, 12, .55);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	font-family: var(--f-body);
	font-size: .74rem;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
	text-align: left;
	color: var(--gold-hi);
}
.aj-fleet-card__body { display: flex; flex-direction: column; flex: 1; gap: .6rem; padding: .4rem 1.5rem 1.6rem; }
.aj-fleet-card__text { flex: 1; }
.aj-fleet-card__link { display: block; margin-top: .9rem; }
.aj-fleet-card__link::after { content: ""; position: static; display: inline-block; vertical-align: -.15em; width: 1em; height: 1em; margin-left: .5rem; background: var(--gold-hi); -webkit-mask: var(--i-arrow) center / contain no-repeat; mask: var(--i-arrow) center / contain no-repeat; transition: transform .5s var(--ease-out); }
.aj-fleet-card:hover .aj-fleet-card__link::after { transform: translateX(5px); }
.aj-fleet-card__link a { font-size: .88rem; font-weight: 600; text-decoration: none; color: var(--gold-hi); }
.aj-fleet-card__link a::after { content: ""; position: absolute; inset: 0; z-index: 3; }

/* ---------- Bento + tiles ---------- */
.aj-why::before {
	content: "";
	position: absolute;
	top: -20vw;
	right: -20vw;
	width: 60vw;
	height: 60vw;
	max-width: 820px;
	max-height: 820px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(201, 166, 107, .13), transparent 65%);
	animation: aj-drift 18s ease-in-out infinite alternate;
	pointer-events: none;
}
.aj-why > .aj-wrap { position: relative; }
.wp-block-image.aj-bento__img { margin: 0; }
.wp-block-image.aj-bento__img .wp-element-caption {
	position: absolute;
	left: 1.6rem;
	right: 1.6rem;
	bottom: 1.5rem;
	z-index: 1;
	margin: 0;
	text-align: left;
	font-family: var(--f-display);
	font-size: clamp(1.5rem, 2.2vw, 2rem);
	line-height: 1.15;
	color: var(--heading);
}
.aj-bento__img .wp-element-caption em { font-style: italic; background: linear-gradient(105deg, #ecd4a2, #c9a66b 48%, #93743f); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.aj-tile { --tp: clamp(1.6rem, 2.5vw, 2.3rem); padding: calc(var(--tp) + 5rem) var(--tp) var(--tp); }
.aj-tile h3::before { content: ""; position: absolute; top: var(--tp); left: var(--tp); width: 3.2rem; height: 3.2rem; border-radius: 50%; border: 1px solid rgba(201, 166, 107, .35); background: radial-gradient(circle at 30% 30%, rgba(201, 166, 107, .2), transparent 70%); transition: border-color .5s, transform .7s var(--ease-out); }
.aj-tile::after { content: ""; position: absolute; top: calc(var(--tp) + .925rem); left: calc(var(--tp) + .925rem); width: 1.35rem; height: 1.35rem; background: var(--gold-hi); -webkit-mask: var(--ico) center / contain no-repeat; mask: var(--ico) center / contain no-repeat; transition: transform .7s var(--ease-out); }
.aj-tile:hover h3::before { border-color: var(--gold); }
.aj-tile:hover::after { transform: rotate(-8deg) scale(1.08); }
.aj-tile.aj-tile--wide { display: grid; gap: 1.4rem; align-items: center; padding: var(--tp) var(--tp) var(--tp) calc(var(--tp) + 5rem); }
.aj-tile--wide h3::before { top: 50%; margin-top: -1.6rem; }
.aj-tile--wide::after { top: 50%; margin-top: -.675rem; }
.aj-tile--wide .wp-block-buttons { justify-content: flex-start; }
@media (min-width: 768px) { .aj-tile.aj-tile--wide { grid-template-columns: minmax(0, 1fr) auto; gap: 2rem; } }

/* ---------- Split / frame / badge / quote ---------- */
.wp-block-image.aj-frame { margin: 0; }
.wp-block-image.aj-frame img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.aj-badge > p { margin: 0; }
.wp-block-quote.aj-quote { margin: 2rem 0 0; padding: 0 0 0 1.4rem; border: 0; border-left: 1px solid var(--gold); }
.wp-block-quote.aj-quote p { font-family: var(--f-display); font-style: italic; font-size: clamp(1.15rem, 1.6vw, 1.4rem); line-height: 1.5; color: var(--heading); }

/* ---------- Partners ---------- */
.aj-partners__list { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 1rem 2rem; }
.aj-partners__list .wp-block-image img { width: auto; height: 52px; object-fit: contain; }
.aj-partners__list .wp-block-image:hover img { filter: none; opacity: 1; transform: translateY(-3px); }
@media (min-width: 768px) { .aj-partners__list { gap: 1.5rem 3.5rem; } .aj-partners__list .wp-block-image img { height: 66px; } }

/* ---------- Lists: tags, pills, numerals ---------- */
ul.aj-tags { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 2rem; padding: 0; list-style: none; }
ul.aj-pills { display: grid; gap: .6rem; margin: 2rem 0; padding: 0; list-style: none; }
ul.aj-pills li { display: flex; align-items: center; gap: .8rem; font-family: var(--f-display); font-size: 1.35rem; color: var(--heading); }
ul.aj-pills li::before { content: ""; flex: none; width: 1.1rem; height: 1.1rem; background: var(--gold); -webkit-mask: var(--i-check) center / contain no-repeat; mask: var(--i-check) center / contain no-repeat; }
.aj-numerals { margin-top: 2rem; border-top: 1px solid var(--line); }
.aj-numerals > p { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; padding: 1.2rem 0; border-bottom: 1px solid var(--line); font-size: .82rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); text-align: right; }
.aj-numerals > p strong { letter-spacing: 0; text-transform: none; text-align: left; }

/* ---------- Standards + steps (auto-numbered) ---------- */
.aj-standards { counter-reset: std; border-top: 1px solid var(--line); }
.aj-standards > .wp-block-group { counter-increment: std; position: relative; display: grid; gap: .6rem 2rem; padding: 2rem 0; border-bottom: 1px solid var(--line); transition: padding .6s var(--ease-out); }
.aj-standards > .wp-block-group::before { content: counter(std, decimal-leading-zero); font-size: .82rem; font-weight: 600; letter-spacing: .12em; color: var(--gold); }
.aj-standards > .wp-block-group::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 1px; background: var(--gold); transform: scaleX(0); transform-origin: left; transition: transform 1s var(--ease-out); }
.aj-standards > .wp-block-group:hover::after { transform: scaleX(1); }
.aj-standards h3 { font-family: var(--f-display); font-weight: 400; font-size: clamp(1.45rem, 2.2vw, 1.9rem); line-height: 1.15; color: var(--heading); }
.aj-standards p { color: var(--muted); }
@media (min-width: 768px) {
	.aj-standards > .wp-block-group { grid-template-columns: 5rem minmax(0, 1fr) minmax(0, 1.2fr); align-items: baseline; }
	.aj-standards > .wp-block-group:hover { padding-left: 1rem; }
}
.aj-wrap > .aj-quote { margin-top: 3rem; }
.aj-steps { counter-reset: step; }
.aj-steps > .aj-step { counter-increment: step; }
.aj-steps > .aj-step::before { content: counter(step, decimal-leading-zero); display: block; margin-bottom: 2.4rem; font-family: var(--f-display); font-style: italic; font-size: 3rem; line-height: 1; color: transparent; -webkit-text-stroke: 1px var(--gold); }

/* ---------- Contact cards ---------- */
.aj-contact-cards { display: grid; gap: .8rem; margin-top: 2.6rem; }
.aj-contact-card { display: block; padding: 1.15rem 1.4rem 1.15rem 5.6rem; }
.aj-contact-card > p { font-size: .76rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; line-height: 1.6; color: var(--muted); }
.aj-contact-card > p::before { content: ""; position: absolute; left: 1.4rem; top: 50%; width: 3rem; height: 3rem; margin-top: -1.5rem; border-radius: 50%; border: 1px solid rgba(201, 166, 107, .4); }
.aj-contact-card::after { content: ""; position: absolute; left: 2.325rem; top: 50%; width: 1.15rem; height: 1.15rem; margin-top: -.575rem; background: var(--gold-hi); -webkit-mask: var(--ico) center / contain no-repeat; mask: var(--ico) center / contain no-repeat; }
.aj-contact-card strong { display: block; font-family: var(--f-display); font-weight: 400; font-size: 1.3rem; letter-spacing: 0; text-transform: none; line-height: 1.25; color: var(--heading); word-break: break-word; }
.aj-contact-card a { color: inherit; text-decoration: none; }
.aj-contact-card a::after { content: ""; position: absolute; inset: 0; z-index: 2; }
.aj-contact-card:has(a):hover { border-color: var(--gold); transform: translateX(4px); background: rgba(201, 166, 107, .06); }

/* ---------- Load + scroll motion ---------- */
.js :is(.aj-hero__copy > *, .aj-hero__form, .aj-page-hero__inner > *) { opacity: 0; animation: aj-rise 1.1s var(--ease-out) forwards; animation-delay: .35s; }
.js :is(.aj-hero__copy, .aj-page-hero__inner) > :nth-child(2) { animation-delay: .47s; }
.js :is(.aj-hero__copy, .aj-page-hero__inner) > :nth-child(3) { animation-delay: .59s; }
.js :is(.aj-hero__copy, .aj-page-hero__inner) > :nth-child(4) { animation-delay: .71s; }
.js :is(.aj-hero__copy, .aj-page-hero__inner) > :nth-child(5) { animation-delay: .83s; }
.js :is(.aj-hero__copy, .aj-page-hero__inner) > :nth-child(6) { animation-delay: .95s; }
.js :is(.aj-hero__copy, .aj-page-hero__inner) > :nth-child(n+7) { animation-delay: 1.07s; }
.js .aj-hero__form { animation-delay: .6s; }

.js :is(.aj-head > *, .aj-intro__grid > *, .aj-split__copy > *, .aj-split__media > *, .aj-two-col > .wp-block-group > *, .aj-contact__copy > *, .aj-contact > .aj-pass, .aj-features > *, .aj-fleet > *, .aj-bento > *, .aj-grid-3 > *, .aj-steps > *, .aj-standards > *, .aj-partners > *, .aj-wrap > .aj-quote, .aj-wrap > .aj-intro__more, .aj-cta > .wp-block-cover__inner-container > *) {
	opacity: 0;
	transform: translate3d(0, 30px, 0);
	transition: opacity 1.1s var(--ease-out), transform 1.3s var(--ease-out);
	transition-delay: calc(var(--d, 0) * .09s);
}
.js :is(.aj-head > *, .aj-intro__grid > *, .aj-split__copy > *, .aj-split__media > *, .aj-two-col > .wp-block-group > *, .aj-contact__copy > *, .aj-contact > .aj-pass, .aj-features > *, .aj-fleet > *, .aj-bento > *, .aj-grid-3 > *, .aj-steps > *, .aj-standards > *, .aj-partners > *, .aj-wrap > .aj-quote, .aj-wrap > .aj-intro__more, .aj-cta > .wp-block-cover__inner-container > *).is-in { opacity: 1; transform: none; }
.js .aj-split__media > .aj-frame, .js .aj-bento > .aj-bento__img { opacity: 1; transform: none; clip-path: inset(14% 10% 14% 10% round 14px); transition: clip-path 1.6s var(--ease-out); }
.js .aj-split__media > .aj-frame img, .js .aj-bento > .aj-bento__img img { transform: scale(1.2); transition: transform 2.2s var(--ease-out); }
.js .aj-split__media > .aj-frame.is-in, .js .aj-bento > .aj-bento__img.is-in { clip-path: inset(0 0 0 0 round 0); }
.js .aj-split__media > .aj-frame.is-in img, .js .aj-bento > .aj-bento__img.is-in img { transform: scale(1); }
.aj-features > .aj-feature.is-in::before { transform: scaleX(.3); }

@media (prefers-reduced-motion: reduce) {
	.js :is(.aj-hero__copy > *, .aj-hero__form, .aj-page-hero__inner > *) { opacity: 1 !important; animation: none !important; }
	.js :is(.aj-head > *, .aj-intro__grid > *, .aj-split__copy > *, .aj-split__media > *, .aj-two-col > .wp-block-group > *, .aj-contact__copy > *, .aj-contact > .aj-pass, .aj-features > *, .aj-fleet > *, .aj-bento > *, .aj-grid-3 > *, .aj-steps > *, .aj-standards > *, .aj-partners > *, .aj-wrap > .aj-quote, .aj-wrap > .aj-intro__more, .aj-cta > .wp-block-cover__inner-container > *) { opacity: 1 !important; transform: none !important; clip-path: none !important; }
	.wp-block-cover.aj-hero > .wp-block-cover__image-background { animation: none; }
}

/* ---------- Editor comfort ---------- */
.editor-styles-wrapper .wp-block-cover.aj-hero { min-height: 820px; }
.editor-styles-wrapper .aj-fleet { overflow: visible; }

/* Ticker stars + hero route inside cover */
.aj-ticker__star { display: inline-block; width: .75rem; height: .75rem; background: var(--gold); -webkit-mask: var(--i-spark) center / contain no-repeat; mask: var(--i-spark) center / contain no-repeat; }
.wp-block-cover.aj-hero > .aj-route { z-index: 2; }

/* Precedence fixes for unclassed paragraphs inside components */
.aj-section .aj-numerals > p { font-size: .82rem; line-height: 1.4; color: var(--muted); }
.aj-section .aj-badge > p:not(.aj-badge__big) { font-size: .88rem; line-height: 1.45; color: var(--muted); }
.aj-section .aj-contact-card > p { font-size: .76rem; line-height: 1.6; color: var(--muted); }
.aj-section .aj-tile p, .aj-section .aj-feature p, .aj-section .aj-step p { font-size: 1rem; line-height: 1.65; }
.aj-section .aj-standards p { font-size: 1.03rem; }
.aj-split__copy > .wp-block-quote { margin-top: 2rem; }
.aj-two-col > .wp-block-group > .wp-block-quote { margin-top: 2rem; }
.aj-section .aj-tile h3, .aj-section .aj-feature h3, .aj-section .aj-step h3 { margin-bottom: .55rem; }