/* Ri-Han blocks. Colours come from the Ri-Han theme, with fallbacks. */

/* Related projects */
.rihan-related--dark {
	background: var(--wp--preset--color--ground-dark, #16191C);
	color: var(--wp--preset--color--warm-white, #F6F3EE);
	padding-block: var(--wp--preset--spacing--70, 4rem);
	margin-block-start: 0 !important;
}
.rihan-related--dark .rihan-related__inner {
	max-width: 1200px;
	margin: 0 auto;
	padding-inline: clamp(1.25rem, 5vw, 2.5rem);
	box-sizing: border-box;
}
.rihan-related--plain { margin-block-start: var(--wp--preset--spacing--60, 3rem); }
.rihan-related__head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 0.5rem 1rem; margin-bottom: 1.25rem; }
.rihan-related__title { margin: 0; color: inherit; }
.rihan-related__head .rihan-arrow-link { margin: 0; }
.rihan-related--dark .rihan-arrow-link a { color: var(--wp--preset--color--gold-light, #D4B26A); }

/* Project filters */
.rihan-filters { margin-bottom: 1.5rem; }
.rihan-filters ul { list-style: none; margin: 0; padding: 0; display: flex; gap: 8px; overflow-x: auto; padding-bottom: 4px; }
.rihan-filters a {
	display: inline-flex; align-items: center; gap: 6px; white-space: nowrap;
	min-height: 44px; padding: 0 16px; box-sizing: border-box;
	border: 1px solid var(--wp--preset--color--line, #E4DED3); border-radius: 999px;
	background: var(--wp--preset--color--white, #fff); color: var(--wp--preset--color--charcoal, #212529);
	font-weight: 600; font-size: 0.875rem; text-decoration: none;
}
.rihan-filters a span { color: var(--wp--preset--color--text-muted, #5B6066); font-weight: 500; }
.rihan-filters a[aria-current="page"] { background: var(--wp--preset--color--charcoal, #212529); border-color: var(--wp--preset--color--charcoal, #212529); color: #fff; }
.rihan-filters a[aria-current="page"] span { color: #C9CDD1; }
@media (min-width: 960px) { .rihan-filters ul { flex-wrap: wrap; overflow: visible; } }

/* Breadcrumbs */
.rihan-breadcrumbs { font-size: 0.8125rem; margin: 0 0 0.75rem; }
.rihan-breadcrumbs__sep { margin: 0 0.25rem; opacity: 0.6; }

/* Quote form */
.rihan-quote__form {
	background: var(--wp--preset--color--charcoal, #212529);
	border-radius: 14px;
	padding: clamp(18px, 3.5vw, 32px);
	display: grid;
	grid-template-columns: 1fr;
	gap: 14px;
	margin: 0;
}
@media (min-width: 640px) { .rihan-quote__form { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.rihan-quote__field { display: flex; flex-direction: column; gap: 6px; margin: 0; }
.rihan-quote__field--full { grid-column: 1 / -1; }
.rihan-quote__field label { font-size: 0.875rem; font-weight: 600; color: #E9E4DA; }
.rihan-quote__field input,
.rihan-quote__field select,
.rihan-quote__field textarea {
	min-height: 48px; box-sizing: border-box; width: 100%;
	border-radius: 8px; border: 1px solid #454B52;
	background: var(--wp--preset--color--ground-dark, #16191C); color: var(--wp--preset--color--warm-white, #F6F3EE);
	padding: 0 14px; font: inherit; font-size: 16px;
}
.rihan-quote__field textarea { padding: 12px 14px; resize: vertical; }
.rihan-quote__field input:focus, .rihan-quote__field select:focus, .rihan-quote__field textarea:focus { border-color: var(--wp--preset--color--gold-light, #D4B26A); }
.rihan-quote__submit {
	width: 100%; min-height: 52px; border: 0; border-radius: 8px; cursor: pointer;
	background: var(--wp--preset--color--gold, #AE8433); color: var(--wp--preset--color--ground-dark, #16191C);
	font-family: var(--wp--preset--font-family--heading, inherit); font-weight: 800; font-size: 1rem;
}
.rihan-quote__submit:hover, .rihan-quote__submit:focus { background: var(--wp--preset--color--gold-light, #D4B26A); }
.rihan-quote__privacy { margin: 0; font-size: 0.8125rem; color: #B9BDC2; }
.rihan-quote__privacy a { color: #E9E4DA; }
.rihan-quote__hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.rihan-quote__notice { border-radius: 10px; padding: 14px 16px; margin-bottom: 14px; font-size: 0.95rem; }
.rihan-quote__notice--ok { background: #E5F4E4; color: #1D4D1B; }
.rihan-quote__notice--error { background: #FBEBEB; color: #7A1C1C; }
