/* Joia Personalizada quote form on its own subdomain: Figma frame 60:420 (form column of 60:238, 532 wide) */
:root {
  --plum: #47072c;
  --plum-hover: #5e0b3b;
  --gray-600: #606060;
  --gray-100: #eee;
  --error: #a3001b;
}

*, *::before, *::after { box-sizing: border-box; }
body { display: flex; min-height: 100vh; min-height: 100dvh; margin: 0; background: #fff; color: #000; font-family: 'Encode Sans', sans-serif; -webkit-font-smoothing: antialiased; }
img { display: block; max-width: 100%; }

/* Intro + form, centered in the window on every screen size, vertically too
   (auto margins fall back to the top when the window is shorter than the form) */
.quote-form { display: flex; flex: 1 1 auto; flex-direction: column; gap: 48px; max-width: 564px; margin: auto; padding: 58px 16px; }
.quote-intro h1 { margin: 0 0 12px; font-size: 16px; font-weight: 500; line-height: 20px; color: var(--plum); }
.quote-intro p { margin: 0; font-size: 12px; font-weight: 300; line-height: 20px; }

/* Form fields (60:465, 532x530) */
.yc-qf { position: relative; display: flex; flex-direction: column; gap: 12px; margin: 0; }
.yc-qf-field { display: flex; flex-direction: column; gap: 12px; }
.yc-qf-label { margin: 0; font: 500 11px/14px 'Encode Sans', sans-serif; color: var(--gray-600); text-transform: uppercase; }
.yc-qf-control { display: block; width: 100%; height: 38px; margin: 0; padding: 0 12px; border: 1px solid var(--gray-100); border-radius: 4px; background: #fff; box-shadow: none; font: 400 14px/20px 'Encode Sans', sans-serif; color: #000; -webkit-appearance: none; appearance: none; }
.yc-qf-control:focus { outline: 0; border-color: var(--gray-600); }
textarea.yc-qf-control { height: 150px; padding: 9px 12px; resize: vertical; }
.yc-qf-select { position: relative; }
select.yc-qf-control { padding-right: 30px; cursor: pointer; }
.yc-qf-chevron { position: absolute; top: 13.7px; right: 10.3px; width: 5.43586px; height: 10.0242px; transform: rotate(90deg); pointer-events: none; }
.yc-qf-hp { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.yc-qf-submit { display: block; width: 100%; height: 38px; margin: 0; padding: 0; border: 0; border-radius: 4px; background: var(--plum); font: 400 10px/12px 'Libre Franklin', sans-serif; letter-spacing: 2px; text-transform: uppercase; color: #fff; cursor: pointer; }
.yc-qf-submit:hover { background: var(--plum-hover); }
.yc-qf-submit:disabled { opacity: .6; cursor: default; }
.yc-qf-status { margin: 0; font-size: 13px; line-height: 18px; color: var(--plum); }
.yc-qf-status.is-error { color: var(--error); }
.yc-qf-status a { color: inherit; text-decoration: underline; }

/* Desktop: form inside a floating card */
@media (min-width: 768px) {
  body { padding: 40px 16px; background: #f6f4f5; }
  .quote-form { max-width: 630px; padding: 48px; border: 1px solid var(--gray-100); border-radius: 8px; background: #fff; box-shadow: 0 2px 6px rgba(0, 0, 0, .04), 0 16px 40px rgba(71, 7, 44, .08); }
}
@media (max-width: 767px) {
  .quote-form { padding: 32px 16px; }
  .yc-qf-control { font-size: 16px; }
}
