/* Keep the keyboard route and editorial text legible across the theme. */
.andres-skip-link {
	position: fixed;
	z-index: 100000;
	top: .75rem;
	left: .75rem;
	width: max-content;
	max-width: calc(100vw - 1.5rem);
	padding: .8rem 1.15rem;
	transform: translateY(-200%);
	background: #22211f;
	color: #fffefa;
	font-size: 1rem;
	font-weight: 700;
	text-decoration: none;
}

.andres-skip-link:focus,
.andres-skip-link:focus-visible {
	transform: translateY(0);
	outline: 3px solid #fffefa;
	outline-offset: 2px;
	box-shadow: 0 0 0 5px #22211f;
}

/* The original warm gray placeholder captions fell below 4.5:1. */
.andres-home-hero-empty,
.andres-home-card-no-image,
.andres-about-photo-placeholder,
.andres-about-studio-photo-placeholder,
.andres-studio-card-no-image,
.andres-series-card-art > span {
	color: #62513f;
}

/* Umber focus rings disappear on charcoal; use a light ring there. */
.wp-site-blocks :is(.andres-home-collector, .andres-about-collector, .andres-studio-collector, .andres-collectors-cta, .andres-module-dark)
	:where(a, button, input, select, textarea, summary):focus-visible {
	outline: 3px solid #fffefa;
	outline-offset: 3px;
}

.wp-site-blocks :is(.andres-site-header, .andres-site-footer, .andres-artwork-page, .andres-work-page, .andres-available-page)
	:where(a, button, input, select, textarea):focus-visible {
	outline-width: 3px;
}

/* Form fields and filter controls need a visible boundary before focus too. */
.andres-contact-field :is(input, select, textarea),
.andres-work-filter-fields select,
.andres-available-filters select,
.andres-home-collector-form input[type="email"] {
	border-color: #756b5f;
}

.andres-contact-field-help {
	margin: -.15rem 0 .65rem;
	color: #5f5b54;
	font-size: .9rem;
	line-height: 1.45;
}

.andres-contact-form-wrap:focus { outline: 2px solid #62513f; outline-offset: 4px; }

@media (prefers-reduced-motion: reduce) {
	.wp-site-blocks :is(.andres-home-card-art img, .andres-studio-card-image img, .andres-contact-topic),
	.wp-site-blocks :is(.andres-home-card-art img, .andres-studio-card-image img, .andres-contact-topic)::before {
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
	}
	.wp-site-blocks :is(.andres-home-card, .andres-studio-card) a:hover img {
		transform: none;
	}
}
