@import url("/static/themes/default/css/framework/theme.css");

.quote-page { margin: 0; overflow-x: clip; color: var(--ui-color-ink-700); font-family: var(--ui-font-sans); background: var(--ui-color-surface-0); }
.quote-page img { max-width: 100%; height: auto; }
.quote-container { width: min(100% - 48px, 1320px); margin-inline: auto; }
.quote-hero { background: linear-gradient(135deg, var(--ui-color-brand-50), var(--ui-color-surface-0) 68%); border-bottom: 1px solid var(--ui-color-line-100); }
.quote-hero__inner { padding-block: clamp(42px, 5.4vw, 72px); }
.quote-eyebrow { display: block; margin-bottom: var(--ui-space-3); color: var(--ui-color-brand-700); font-size: var(--ui-font-size-caption); font-weight: var(--ui-font-weight-bold); letter-spacing: .12em; text-transform: uppercase; }
.quote-hero h1, .quote-aside h2, .quote-card h2, .quote-thankyou h2 { margin: 0; color: var(--ui-color-ink-900); font-weight: var(--ui-font-weight-bold); line-height: var(--ui-line-height-heading); letter-spacing: var(--ui-letter-spacing-display); }
.quote-hero h1 { font-size: clamp(40px, 5vw, 64px); }
.quote-hero p { max-width: 660px; margin: var(--ui-space-4) 0 0; font-size: var(--ui-font-size-body-lg); line-height: var(--ui-line-height-relaxed); }
.quote-section { padding-block: clamp(48px, 5vw, 80px); background: var(--ui-color-surface-0); }
.quote-layout { display: grid; grid-template-columns: minmax(0, 35fr) minmax(0, 65fr); gap: clamp(36px, 4vw, 56px); align-items: start; }
.quote-aside { padding: var(--ui-space-4) 0; }
.quote-aside h2 { max-width: 15ch; font-size: clamp(28px, 3.2vw, 42px); }
.quote-steps { display: grid; gap: var(--ui-space-5); margin: var(--ui-space-8) 0 0; padding: 0; list-style: none; }
.quote-steps li { display: grid; grid-template-columns: 42px 1fr; gap: var(--ui-space-3); align-items: start; font-size: var(--ui-font-size-body); line-height: var(--ui-line-height-relaxed); }
.quote-steps span { color: var(--ui-color-brand-700); font-size: var(--ui-font-size-small); font-weight: var(--ui-font-weight-bold); letter-spacing: .06em; }
.quote-card { padding: clamp(24px, 3vw, 40px); border: 1px solid var(--ui-color-line-200); border-radius: var(--ui-radius-lg); background: var(--ui-color-surface-0); box-shadow: var(--ui-shadow-sm); }
.quote-card__heading { padding-bottom: var(--ui-space-6); border-bottom: 1px solid var(--ui-color-line-100); }
.quote-card h2 { font-size: clamp(26px, 2.7vw, 36px); }
.quote-card__heading p { margin: var(--ui-space-2) 0 0; color: var(--ui-color-ink-500); font-size: var(--ui-font-size-small); }
.quote-card em, .quote-form em { color: var(--ui-color-danger); font-style: normal; }
.quote-form { margin-top: var(--ui-space-6); }
.quote-form :is(.ui-input, .ui-select, .ui-textarea) { box-sizing: border-box; min-width: 0; }
.quote-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--ui-space-5) var(--ui-space-4); }
.quote-form__full { grid-column: 1 / -1; }
.quote-file-picker { position: relative; display: flex; min-width: 0; min-height: 52px; overflow: hidden; border: 1px solid var(--ui-color-line-200); border-radius: var(--ui-radius-md); background: var(--ui-color-surface-0); }
.quote-file-picker:focus-within { outline: 3px solid color-mix(in srgb, var(--ui-color-brand-600) 24%, transparent); outline-offset: 2px; border-color: var(--ui-color-brand-600); }
.quote-file-picker__input { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.quote-file-picker__button { display: inline-flex; flex: 0 0 auto; align-items: center; gap: var(--ui-space-2); padding: 0 var(--ui-space-4); color: var(--ui-color-surface-0); background: var(--ui-color-brand-700); font-size: var(--ui-font-size-small); font-weight: var(--ui-font-weight-bold); white-space: nowrap; }
.quote-file-picker__name { display: block; min-width: 0; padding: 15px var(--ui-space-4); overflow: hidden; color: var(--ui-color-ink-500); font-size: var(--ui-font-size-small); text-overflow: ellipsis; white-space: nowrap; }
.quote-consent { margin: var(--ui-space-6) 0 var(--ui-space-5); color: var(--ui-color-ink-500); font-size: var(--ui-font-size-caption); line-height: var(--ui-line-height-relaxed); }
.quote-form > .ui-button { min-width: 220px; }
.quote-page .culture { display: none; }
.quote-thankyou { padding-block: clamp(72px, 10vw, 140px); background: var(--ui-color-surface-50); text-align: center; }
.quote-thankyou__inner { max-width: var(--ui-container-narrow); }
.quote-thankyou .quote-eyebrow { margin-bottom: var(--ui-space-4); }
.quote-thankyou h2 { font-size: clamp(32px, 4vw, 52px); }
.quote-thankyou p { max-width: 620px; margin: var(--ui-space-4) auto 0; font-size: var(--ui-font-size-body-lg); line-height: var(--ui-line-height-relaxed); }
.quote-thankyou__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--ui-space-3); margin-top: var(--ui-space-7); }
html:lang(ar) .quote-page { direction: rtl; font-family: var(--ui-font-sans-ar); text-align: right; }
html:lang(ar) .quote-eyebrow { letter-spacing: 0; text-transform: none; }
html:lang(ar) .quote-thankyou { text-align: center; }
html:lang(ar) .quote-file-picker__button { flex-direction: row-reverse; }
@media (max-width: 1024px) { .quote-layout { gap: var(--ui-space-7); } .quote-aside { padding-top: 0; } .quote-aside h2 { max-width: 20ch; } }
@media (max-width: 900px) { .quote-layout { grid-template-columns: minmax(0, 1fr); } .quote-aside { max-width: 680px; } }
@media (max-width: 767px) { .quote-container { width: min(100% - 40px, 1320px); } .quote-hero__inner { padding-block: 48px; } .quote-section { padding-block: 48px; } .quote-layout, .quote-form__grid { grid-template-columns: minmax(0, 1fr); } .quote-card { padding: 24px 20px; } .quote-steps { margin-top: var(--ui-space-6); } .quote-file-picker { min-height: 50px; } .quote-file-picker__button { padding-inline: var(--ui-space-3); } .quote-file-picker__name { padding-inline: var(--ui-space-3); } .quote-thankyou { padding-block: 72px; } .quote-thankyou__actions .ui-button { width: 100%; } }
