[id^="section-"] {
	scroll-margin-top: var(--menu-scroll-offset, 5.5rem);
}

body.has-sticky-header {
	--menu-scroll-offset: var(--header-height-compact);
	--menu-scroll-offset-admin: calc(var(--header-height-compact) + 2rem);
	--menu-scroll-offset-admin-mobile: calc(var(--header-height-compact) + 2.875rem);
}

body:not(.has-sticky-header) {
	--menu-scroll-offset: 0rem;
	--menu-scroll-offset-admin: 2rem;
	--menu-scroll-offset-admin-mobile: 2.875rem;
}

.admin-bar [id^="section-"] {
	scroll-margin-top: var(--menu-scroll-offset-admin, 7.5rem);
}

@media screen and (max-width: 782px) {
	.admin-bar [id^="section-"] {
		scroll-margin-top: var(--menu-scroll-offset-admin-mobile, 8.5rem);
	}
}

.gold-rule {
	transform-origin: left center;
}

@media (prefers-reduced-motion: no-preference) {
	html:not(.is-anim-ready) [data-animate]:not(.hero__stat):not([data-animate="stats"]):not(.contact-cards__card):not(.contact-cards__band):not(.contact-form__panel),
	html:not(.is-anim-ready) .hero__eyebrow-text,
	html:not(.is-anim-ready) .site-header__brand,
	html:not(.is-anim-ready) .hero__stat-value,
	html:not(.is-anim-ready) .hero__stat-label,
	html:not(.is-anim-ready) .contact-form .gfield:not(.gform_hidden),
	html:not(.is-anim-ready) .contact-form .gform_button,
	html:not(.is-anim-ready) .contact-cards__header,
	html:not(.is-anim-ready) .contact-cards__body,
	html:not(.is-anim-ready) .contact-cards__contacts,
	html:not(.is-anim-ready) .contact-cards__frame,
	html:not(.is-anim-ready) .contact-cards__band,
	html:not(.is-anim-ready) .contact-cards__band-intro,
	html:not(.is-anim-ready) .contact-cards__links a,
	html:not(.is-anim-ready) .company-profile__eyebrow,
	html:not(.is-anim-ready) .company-profile__heading,
	html:not(.is-anim-ready) .company-profile__detail,
	html:not(.is-anim-ready) .company-profile__body,
	html:not(.is-anim-ready) .company-profile__cta,
	html:not(.is-anim-ready) .heritage__intro,
	html:not(.is-anim-ready) .heritage__timeline,
	html:not(.is-anim-ready) .site-footer__brand,
	html:not(.is-anim-ready) .site-footer__links,
	html:not(.is-anim-ready) .site-footer__copyright,
	html:not(.is-anim-ready) .site-footer__bottom {
		opacity: 0;
	}

	html:not(.is-anim-ready) .gold-rule {
		transform: scaleX(0);
		opacity: 1;
	}

	@media (min-width: 901px) {
		html:not(.is-anim-ready) .site-header__nav,
		html:not(.is-anim-ready) .site-header__actions .site-header__cta {
			opacity: 0;
		}
	}
}

.anim-line-mask,
.split-line-mask {
	display: block;
	overflow: clip;
	/* Room for italic Playfair descenders inside the clip box. */
	padding-bottom: 0.22em;
	margin-bottom: -0.22em;
}

@media (hover: hover) and (pointer: fine) {
	.companies__card,
	.help__card {
		/* GSAP owns transform on the card; hover chrome lives on ::before */
		transition: none;
	}
}
