/* =========================================================
 * Contact & RFQ (0.4.26): /contact/ page pattern and the RFQ Engine form (.adepa-rfq__*).
 * Tokens only: Rubik, charcoal, brand red, grey 100/200/300/500/700, radius-sm.
 * ========================================================= */

/* ---------- 01 Hero ---------- */
.adepa-contact-hero { padding-block: var(--wp--preset--spacing--70); margin-block: 0 !important; }
.adepa-contact-hero__inner > * { margin: 0 !important; }
.adepa-contact-hero__inner > * + * { margin-top: var(--wp--preset--spacing--40) !important; }
.adepa-contact-hero__title { max-width: 22ch; font-size: var(--wp--preset--font-size--heading-1); line-height: 1.1; overflow-wrap: break-word; }
.adepa-contact-hero__lead { max-width: var(--wp--custom--layout--reading, 62ch); line-height: 1.6; color: var(--wp--preset--color--grey-200); }
.adepa-contact-hero__actions { gap: var(--wp--preset--spacing--30); margin-top: var(--wp--preset--spacing--50) !important; }
.adepa-contact-ghost .wp-block-button__link {
	background: transparent;
	color: var(--wp--preset--color--white);
	border: 2px solid var(--wp--preset--color--white);
}
.adepa-contact-ghost .wp-block-button__link:hover { background: var(--wp--preset--color--white); color: var(--wp--preset--color--charcoal); }

/* ---------- 02 Path split ---------- */
.adepa-contact-paths { background: var(--wp--preset--color--grey-100); padding-block: var(--wp--preset--spacing--60); margin-block: 0 !important; }
.adepa-contact-paths__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--wp--preset--spacing--40); }
.adepa-contact-paths__grid > * { margin: 0 !important; }
.adepa-contact-card { background: var(--wp--preset--color--white); border-top: 4px solid var(--wp--preset--color--brand-red); padding: var(--wp--preset--spacing--50); }
.adepa-contact-card--general { border-top-color: var(--wp--preset--color--grey-500); }
.adepa-contact-card > * { margin: 0 !important; }
.adepa-contact-card > * + * { margin-top: var(--wp--preset--spacing--30) !important; }
.adepa-contact-card__title { font-size: var(--wp--preset--font-size--heading-4); }
.adepa-contact-card__text, .adepa-contact-card__list { color: var(--wp--preset--color--grey-700); font-size: var(--wp--preset--font-size--small); line-height: 1.6; }
.adepa-contact-card__list { padding-left: 1.2em; }
.adepa-contact-card__link a { color: var(--wp--preset--color--brand-red); font-weight: 600; }
@media (min-width: 782px) { .adepa-contact-paths__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* ---------- 03 RFQ ---------- */
.adepa-contact-rfq { padding-block: var(--wp--preset--spacing--70); margin-block: 0 !important; scroll-margin-top: 96px; }
.adepa-contact-rfq__cols { gap: var(--wp--preset--spacing--60) !important; }
.adepa-contact-rfq__main > * { margin-top: 0; margin-bottom: 0; }
.adepa-contact-rfq__main > * + * { margin-top: var(--wp--preset--spacing--30); }
.adepa-contact-rfq__title { font-size: var(--wp--preset--font-size--heading-2); }
.adepa-contact-rfq__sub, .adepa-contact-rfq__fallback { color: var(--wp--preset--color--grey-700); font-size: var(--wp--preset--font-size--small); }
.adepa-contact-rfq__fallback { margin-top: var(--wp--preset--spacing--40) !important; }
.adepa-contact-rfq__aside { display: flex; flex-direction: column; gap: var(--wp--preset--spacing--40); }
.adepa-contact-rfq__aside > * { margin: 0 !important; }
.adepa-contact-box { border: 1px solid var(--wp--preset--color--grey-300); padding: var(--wp--preset--spacing--40); font-size: var(--wp--preset--font-size--small); line-height: 1.6; }
.adepa-contact-box > * { margin: 0 !important; }
.adepa-contact-box > * + * { margin-top: var(--wp--preset--spacing--20) !important; }
.adepa-contact-box__title { font-size: var(--wp--preset--font-size--body-lg); }
.adepa-contact-box__channels { font-weight: 600; }
.adepa-contact-quick { display: none; }
@media (max-width: 781px) {
	.adepa-contact-quick { display: grid; grid-template-columns: 1fr 1fr; gap: var(--wp--preset--spacing--30); margin-bottom: var(--wp--preset--spacing--40) !important; }
	.adepa-contact-quick__btn { display: flex; align-items: center; justify-content: center; min-height: 48px; border: 1px solid var(--wp--preset--color--grey-500); color: var(--wp--preset--color--ink); text-decoration: none; font-weight: 600; border-radius: var(--wp--custom--radius--sm); }
}

/* ---------- 04 After you send ---------- */
.adepa-contact-after { background: var(--wp--preset--color--grey-100); padding-block: var(--wp--preset--spacing--70); margin-block: 0 !important; }
.adepa-contact-after__inner > * { margin: 0 !important; }
.adepa-contact-after__inner > * + * { margin-top: var(--wp--preset--spacing--30) !important; }
.adepa-contact-steps { list-style: none; counter-reset: adepa-step; padding: 0; display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--wp--preset--spacing--40); margin-top: var(--wp--preset--spacing--50) !important; }
.adepa-contact-steps > li { counter-increment: adepa-step; border-top: 3px solid var(--wp--preset--color--brand-red); padding-top: var(--wp--preset--spacing--30); color: var(--wp--preset--color--grey-700); font-size: var(--wp--preset--font-size--small); line-height: 1.6; margin: 0; }
.adepa-contact-steps > li::before { content: counter(adepa-step, decimal-leading-zero); display: block; color: var(--wp--preset--color--brand-red); font-weight: 700; font-variant-numeric: tabular-nums; margin-bottom: var(--wp--preset--spacing--20); }
.adepa-contact-steps strong { color: var(--wp--preset--color--ink); font-size: var(--wp--preset--font-size--body); }
@media (min-width: 782px) { .adepa-contact-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .adepa-contact-steps { grid-template-columns: repeat(4, minmax(0, 1fr)); } }

/* ---------- RFQ Engine form ---------- */
.adepa-rfq { font-size: var(--wp--preset--font-size--body); color: var(--wp--preset--color--ink); }
.adepa-rfq__form > * + * { margin-top: var(--wp--preset--spacing--40); }
.adepa-rfq__intro { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--grey-700); margin: 0; }
.adepa-rfq__req { color: var(--wp--preset--color--brand-red); font-weight: 700; }
.adepa-rfq__opt, .adepa-rfq__hint, .adepa-rfq__only { color: var(--wp--preset--color--grey-700); font-size: var(--wp--preset--font-size--small); font-weight: 400; }
.adepa-rfq__only { display: block; margin-top: 2px; }
.adepa-rfq__group { border: 1px solid var(--wp--preset--color--grey-300); padding: var(--wp--preset--spacing--40); margin-inline: 0; min-width: 0; }
.adepa-rfq__legend { font-weight: 700; padding-inline: var(--wp--preset--spacing--20); margin: 0; }
p.adepa-rfq__legend { padding: 0; margin-bottom: var(--wp--preset--spacing--20); }
.adepa-rfq__step { display: inline-grid; place-items: center; width: 1.6em; height: 1.6em; background: var(--wp--preset--color--charcoal); color: var(--wp--preset--color--white); font-size: 0.8em; border-radius: var(--wp--custom--radius--sm); margin-right: 4px; }
.adepa-rfq__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40); margin-top: var(--wp--preset--spacing--30); }
.adepa-rfq__grid > .adepa-rfq__field--wide { grid-column: 1 / -1; }
@media (min-width: 600px) { .adepa-rfq__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.adepa-rfq__field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.adepa-rfq__field > p, .adepa-rfq__sub > p { margin: 0; }
.adepa-rfq__label { font-weight: 600; font-size: var(--wp--preset--font-size--small); }
.adepa-rfq__input {
	width: 100%;
	min-height: 48px;
	padding: 10px 12px;
	font: inherit;
	color: inherit;
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--grey-500);
	border-radius: var(--wp--custom--radius--sm);
}
.adepa-rfq__textarea { min-height: 120px; resize: vertical; }
.adepa-rfq__input[aria-invalid="true"] { border: 2px solid var(--wp--preset--color--brand-red); }
.adepa-rfq__phone-row { display: grid; grid-template-columns: 7.5rem minmax(0, 1fr); gap: var(--wp--preset--spacing--20); }
.adepa-rfq__cards { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--wp--preset--spacing--20); margin-top: var(--wp--preset--spacing--20); }
@media (min-width: 782px) { .adepa-rfq__cards { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.adepa-rfq__card, .adepa-rfq__chip {
	display: flex; align-items: center; gap: 10px; min-height: 48px; padding: 8px 12px;
	border: 1px solid var(--wp--preset--color--grey-500); border-radius: var(--wp--custom--radius--sm);
	cursor: pointer; font-size: var(--wp--preset--font-size--small); background: var(--wp--preset--color--white);
}
.adepa-rfq__card input, .adepa-rfq__chip input, .adepa-rfq__check input { width: 20px; height: 20px; margin: 0; accent-color: var(--wp--preset--color--brand-red); flex: none; }
.adepa-rfq__card:has(input:checked) { border: 2px solid var(--wp--preset--color--brand-red); background: var(--wp--preset--color--brand-red-tint); font-weight: 600; }
.adepa-rfq__chip:has(input:checked) { background: var(--wp--preset--color--charcoal); border-color: var(--wp--preset--color--charcoal); color: var(--wp--preset--color--white); }
.adepa-rfq__chips { display: flex; flex-wrap: wrap; gap: var(--wp--preset--spacing--20); margin-top: var(--wp--preset--spacing--20); }
.adepa-rfq__sub { border: 0; padding: 0; margin: var(--wp--preset--spacing--30) 0 0; min-width: 0; }
.adepa-rfq__sub > legend { padding: 0; }
.adepa-rfq__check { display: inline-flex; align-items: center; gap: 8px; min-height: 32px; font-size: var(--wp--preset--font-size--small); }
.adepa-rfq__check--block { display: flex; margin-top: var(--wp--preset--spacing--30); }
.adepa-rfq__rows { display: grid; gap: var(--wp--preset--spacing--30); margin-top: var(--wp--preset--spacing--30); }
.adepa-rfq__row { border: 1px dashed var(--wp--preset--color--grey-500); padding: var(--wp--preset--spacing--30); margin: 0; min-width: 0; }
.adepa-rfq__row-title { font-weight: 600; font-size: var(--wp--preset--font-size--small); padding-inline: 4px; }
.adepa-rfq__row-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--wp--preset--spacing--20); }
@media (min-width: 782px) { .adepa-rfq__row-grid { grid-template-columns: 1fr 2fr 1fr; } }
.adepa-rfq__add, .adepa-rfq__remove { min-height: 44px; padding: 8px 14px; font: inherit; font-size: var(--wp--preset--font-size--small); font-weight: 600; background: transparent; cursor: pointer; border-radius: var(--wp--custom--radius--sm); }
.adepa-rfq__add { color: var(--wp--preset--color--brand-red); border: 1px solid var(--wp--preset--color--brand-red); }
.adepa-rfq__add:disabled { opacity: 0.5; cursor: not-allowed; }
.adepa-rfq__remove { margin-top: var(--wp--preset--spacing--20); color: var(--wp--preset--color--grey-700); border: 1px solid var(--wp--preset--color--grey-500); }
.adepa-rfq__error { color: var(--wp--preset--color--brand-red-dark); font-size: var(--wp--preset--font-size--small); font-weight: 600; margin: 0; }
.adepa-rfq__error-icon { display: inline-grid; place-items: center; width: 1.2em; height: 1.2em; border-radius: 50%; background: var(--wp--preset--color--brand-red-dark); color: var(--wp--preset--color--white); font-size: 0.8em; }
.adepa-rfq__errors { border: 2px solid var(--wp--preset--color--brand-red); border-left-width: 6px; background: var(--wp--preset--color--brand-red-tint); padding: var(--wp--preset--spacing--40); margin-bottom: var(--wp--preset--spacing--40); scroll-margin-top: 96px; }
.adepa-rfq__errors-title { font-size: var(--wp--preset--font-size--body-lg); margin: 0 0 8px; }
.adepa-rfq__errors ul { margin: 8px 0 0; padding-left: 1.2em; }
.adepa-rfq__errors a { color: var(--wp--preset--color--brand-red-dark); font-weight: 600; }
.adepa-rfq__documents { background: var(--wp--preset--color--grey-100); }
.adepa-rfq__documents p { margin: 0; }
.adepa-rfq__documents p + p { margin-top: 6px; }
.adepa-rfq__privacy { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--grey-700); }
.adepa-rfq__button {
	min-height: 48px; padding: 12px 28px; border: 0; border-radius: var(--wp--custom--radius--sm);
	background: var(--wp--preset--color--brand-red); color: var(--wp--preset--color--white);
	font: inherit; font-weight: 600; cursor: pointer;
}
.adepa-rfq__button:hover { background: var(--wp--preset--color--brand-red-dark); }
@media (max-width: 599px) { .adepa-rfq__button { width: 100%; } }
.adepa-rfq--done, .adepa-rfq__notice { border-top: 4px solid var(--wp--preset--color--brand-red); background: var(--wp--preset--color--grey-100); padding: var(--wp--preset--spacing--50); scroll-margin-top: 96px; }
.adepa-rfq--done > * { margin: 0; }
.adepa-rfq--done > * + * { margin-top: var(--wp--preset--spacing--30); }
.adepa-rfq__ref strong { font-size: var(--wp--preset--font-size--heading-4); font-variant-numeric: tabular-nums; }
.adepa-rfq__summary { display: grid; grid-template-columns: max-content 1fr; gap: 4px 16px; font-size: var(--wp--preset--font-size--small); }
.adepa-rfq__summary dt { font-weight: 600; }
.adepa-rfq__summary dd { margin: 0; }

/* 0.4.38 (W10-R4): RFQ privacy disclosure directly before submit. Link focus uses base.css :focus-visible. */
.adepa-rfq__notice { margin-top: var(--wp--preset--spacing--40); }
.adepa-rfq__notice-title { font-size: var(--wp--preset--font-size--body-lg); margin: 0 0 4px; }
.adepa-rfq__notice p { margin: 0; }
.adepa-rfq__notice a { text-decoration: underline; }
