/* Global refinements on top of theme.json. Kept small on purpose. */

html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
::selection { background: var(--wp--preset--color--accent); color: var(--wp--preset--color--base); }

a { text-underline-offset: 0.2em; text-decoration-thickness: 1px; }

/* ---------- Eyebrow paragraph ---------- */
.is-style-eyebrow {
	font-size: var(--wp--preset--font-size--x-small);
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: var(--wp--custom--letter-spacing--caps);
	color: var(--wp--preset--color--accent);
}

/* ---------- Gallery-mat image (core image + featured image; matches the Artwork Frame block) ---------- */
.wp-block-image.is-style-mat img,
.wp-block-post-featured-image.is-style-mat img {
	background: #fff;
	padding: clamp(12px, 6%, 28px);
	border: 1px solid var(--wp--preset--color--line);
	box-shadow: 0 1px 2px rgba(43, 39, 36, 0.06), 0 12px 28px -14px rgba(43, 39, 36, 0.22);
	box-sizing: border-box;
	object-fit: cover;
}

/* ---------- Short gold rule (under page titles) ---------- */
.wp-block-separator.is-style-short {
	width: 56px;
	max-width: 56px;
	margin-inline: auto;
	border: 0;
	border-top: 1px solid var(--wp--preset--color--accent);
	opacity: 1;
}

/* ---------- Buttons ---------- */
.wp-block-button.is-style-outline-fine .wp-block-button__link {
	background: transparent;
	color: var(--wp--preset--color--contrast);
	border: 1px solid currentColor;
}
.wp-block-button.is-style-outline-fine .wp-block-button__link:hover {
	background: var(--wp--preset--color--contrast);
	color: var(--wp--preset--color--base);
	border-color: var(--wp--preset--color--contrast);
}
.wp-block-button.is-style-text-link .wp-block-button__link {
	background: transparent;
	border: 0;
	padding: 0 0 0.35rem;
	color: var(--wp--preset--color--contrast);
	border-bottom: 1px solid var(--wp--preset--color--accent);
}
.wp-block-button.is-style-text-link .wp-block-button__link:hover {
	background: transparent;
	color: var(--wp--preset--color--accent);
}

/* ---------- Gold frame group (double hairline border) ---------- */
.wp-block-group.is-style-framed {
	position: relative;
	border: 1px solid var(--wp--preset--color--accent);
	outline: 1px solid var(--wp--preset--color--accent);
	outline-offset: -8px;
}

/* ---------- Header ---------- */
.rs-header .wp-block-navigation-item__content { padding-block: 0.25rem; position: relative; }
.rs-header .wp-block-navigation-item__content::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -2px;
	width: 0;
	height: 1px;
	background: var(--wp--preset--color--accent);
	transition: width 0.3s ease, left 0.3s ease;
}
.rs-header .wp-block-navigation-item__content:hover::after,
.rs-header .current-menu-item > .wp-block-navigation-item__content::after {
	width: 100%;
	left: 0;
}
.rs-header .wp-block-navigation__responsive-container.is-menu-open {
	background: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--50);
}
.rs-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	align-items: center;
	gap: 1.5rem;
	padding-top: 4rem;
}
.rs-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	font-size: var(--wp--preset--font-size--small);
}

/* ---------- Product-style cards (used by Originals / Prints until a shop plugin is wired in) ---------- */
.rs-card .wp-block-rimshas-artwork-frame { margin-bottom: 0; }
.rs-card .rs-card__meta { margin-top: 0.75rem; text-align: center; }
.rs-card .rs-card__title { font-family: var(--wp--preset--font-family--serif); font-size: var(--wp--preset--font-size--large); margin: 0; }
.rs-card .rs-card__price { margin: 0.2rem 0 0; color: var(--wp--preset--color--muted); font-size: var(--wp--preset--font-size--small); letter-spacing: 0.04em; }

/* ---------- Footer ---------- */
.rs-footer a { text-decoration: none; }
.rs-footer a:hover { color: var(--wp--preset--color--accent); }

/* ---------- Motion preference ---------- */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}

/* Large display paragraphs (quotes, lead text) need tighter leading than body copy */
p.has-large-font-size, p.has-x-large-font-size, p.has-xx-large-font-size { line-height: 1.4; }
