:root {
  --lbd-v5-ink: #1f2326;
  --lbd-v5-muted: #66645f;
  --lbd-v5-line: #d9d5cb;
  --lbd-v5-paper: #f6f2e9;
  --lbd-v5-card: #fff;
  --lbd-v5-gold: #caa553;
  --lbd-v5-gold-dark: #9c792e;
  --lbd-v5-error: #a92f2f;
  --lbd-v5-success: #2d7146;
}

.lbd-rfq-v5-page {
  background: var(--lbd-v5-paper);
  color: var(--lbd-v5-ink);
  min-height: 70vh;
  padding: 64px 20px 96px;
}

.lbd-rfq-v5-hero,
.lbd-rfq-v5-shell,
.lbd-rfq-v5-result {
  margin-inline: auto;
  max-width: 1120px;
}

.lbd-rfq-v5-hero {
  max-width: 850px;
  margin-bottom: 42px;
  text-align: center;
}

.lbd-rfq-v5-kicker {
  color: var(--lbd-v5-gold-dark);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .2em;
  margin: 0 0 14px;
}

.lbd-rfq-v5-hero h1,
.lbd-rfq-v5-result h1 {
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(36px, 5vw, 62px);
  font-weight: 500;
  line-height: 1.08;
  margin: 0 0 18px;
}

.lbd-rfq-v5-hero > p:last-child,
.lbd-rfq-v5-result > p {
  color: var(--lbd-v5-muted);
  font-size: 17px;
  line-height: 1.7;
}

.lbd-rfq-v5-shell {
  background: var(--lbd-v5-card);
  border: 1px solid var(--lbd-v5-line);
  box-shadow: 0 24px 70px rgba(31, 35, 38, .08);
  padding: clamp(24px, 5vw, 64px);
}

.lbd-rfq-v5-qa,
.lbd-rfq-v5-errors {
  border-left: 4px solid var(--lbd-v5-gold);
  margin-bottom: 28px;
  padding: 14px 18px;
}

.lbd-rfq-v5-qa { background: #fff8df; }
.lbd-rfq-v5-errors { background: #fff2f2; border-color: var(--lbd-v5-error); }
.lbd-rfq-v5-errors p { margin: 6px 0 0; }

.lbd-rfq-v5-shell fieldset {
  border: 0;
  border-top: 1px solid var(--lbd-v5-line);
  margin: 0 0 44px;
  padding: 32px 0 0;
}

.lbd-rfq-v5-shell fieldset:first-of-type { border-top: 0; padding-top: 0; }

.lbd-rfq-v5-shell legend {
  float: left;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 28px;
  font-weight: 500;
  margin: 0 0 28px;
  width: 100%;
}

.lbd-rfq-v5-shell legend + * { clear: both; }
.lbd-rfq-v5-shell legend span { color: var(--lbd-v5-gold-dark); font: 700 11px/1 Arial, sans-serif; letter-spacing: .15em; margin-right: 10px; }

.lbd-rfq-v5-grid,
.lbd-rfq-v5-dimensions,
.lbd-rfq-v5-phone {
  display: grid;
  gap: 22px;
}

.lbd-rfq-v5-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.lbd-rfq-v5-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.lbd-rfq-v5-dimensions { grid-template-columns: 1fr 1fr 160px; margin: 22px 0; }
.lbd-rfq-v5-phone { grid-template-columns: 120px 1fr; }

.lbd-rfq-v5-shell label {
  color: var(--lbd-v5-ink);
  display: block;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.45;
}

.lbd-rfq-v5-shell input[type="text"],
.lbd-rfq-v5-shell input[type="email"],
.lbd-rfq-v5-shell input[type="tel"],
.lbd-rfq-v5-shell input[type="number"],
.lbd-rfq-v5-shell input[type="file"],
.lbd-rfq-v5-shell select,
.lbd-rfq-v5-shell textarea {
  background: #fff;
  border: 1px solid #bfbab0;
  border-radius: 0;
  color: var(--lbd-v5-ink);
  display: block;
  font: 400 16px/1.4 Arial, sans-serif;
  margin-top: 8px;
  padding: 13px 14px;
  width: 100%;
}

.lbd-rfq-v5-shell textarea { min-height: 150px; resize: vertical; }
.lbd-rfq-v5-shell input:focus,
.lbd-rfq-v5-shell select:focus,
.lbd-rfq-v5-shell textarea:focus { border-color: var(--lbd-v5-gold-dark); box-shadow: 0 0 0 3px rgba(202, 165, 83, .22); outline: 0; }
.lbd-rfq-v5-shell small { color: var(--lbd-v5-muted); display: block; font-size: 12px; font-weight: 400; margin-top: 7px; }
.lbd-rfq-v5-error { color: var(--lbd-v5-error); display: block; font-size: 13px; font-weight: 600; margin-top: 7px; }

.lbd-rfq-v5-file {
  background: #faf8f3;
  border: 1px dashed #aaa395;
  padding: 24px;
}

.lbd-rfq-v5-consent {
  background: #f8f7f3;
  border: 1px solid var(--lbd-v5-line);
  margin: 0 0 24px;
  padding: 18px;
}
.lbd-rfq-v5-consent label { align-items: flex-start; display: flex; gap: 10px; font-weight: 400; }
.lbd-rfq-v5-consent input { flex: 0 0 auto; margin-top: 4px; }

.lbd-rfq-v5-submit,
.lbd-rfq-v5-link-button {
  align-items: center;
  background: var(--lbd-v5-gold);
  border: 1px solid var(--lbd-v5-gold);
  color: #171717;
  cursor: pointer;
  display: inline-flex;
  font-size: 13px;
  font-weight: 750;
  justify-content: center;
  letter-spacing: .12em;
  min-height: 52px;
  padding: 15px 28px;
  text-decoration: none;
  text-transform: uppercase;
}
.lbd-rfq-v5-submit:hover,
.lbd-rfq-v5-link-button:hover { background: var(--lbd-v5-gold-dark); border-color: var(--lbd-v5-gold-dark); color: #fff; }
.lbd-rfq-v5-submit:disabled { cursor: wait; opacity: .65; }
.lbd-rfq-v5-footnote { color: var(--lbd-v5-muted); font-size: 12px; margin: 14px 0 0; }
.lbd-rfq-v5-hp { height: 1px; left: -10000px; overflow: hidden; position: absolute; top: auto; width: 1px; }

.lbd-rfq-v5-result-page { align-items: center; display: flex; }
.lbd-rfq-v5-result { background: #fff; border: 1px solid var(--lbd-v5-line); max-width: 850px; padding: clamp(28px, 6vw, 72px); }
.lbd-rfq-v5-result-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 20px; margin-top: 30px; }
.lbd-rfq-v5-result-actions > a:not(.lbd-rfq-v5-link-button) { color: var(--lbd-v5-ink); font-weight: 650; }

@media (max-width: 800px) {
  .lbd-rfq-v5-page { padding: 42px 14px 72px; }
  .lbd-rfq-v5-grid-3,
  .lbd-rfq-v5-grid-2,
  .lbd-rfq-v5-dimensions,
  .lbd-rfq-v5-phone { grid-template-columns: 1fr; }
  .lbd-rfq-v5-shell { padding: 26px 18px; }
  .lbd-rfq-v5-shell fieldset { margin-bottom: 34px; padding-top: 26px; }
  .lbd-rfq-v5-shell legend { font-size: 24px; }
  .lbd-rfq-v5-shell input,
  .lbd-rfq-v5-shell select,
  .lbd-rfq-v5-shell textarea,
  .lbd-rfq-v5-submit,
  .lbd-rfq-v5-link-button { min-height: 48px; }
  .lbd-rfq-v5-submit { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .lbd-rfq-v5-page * { scroll-behavior: auto !important; transition: none !important; }
}

