/* Auxiliary pages and accessible native dialogs. */
dialog { border: 1px solid #ffffff2a; padding: 0; background: var(--color-background); color: var(--color-text); border-radius: 6px; max-width: min(1040px, calc(100vw - 40px)); width: 100%; max-height: 90svh; overflow-y: auto; }
dialog::backdrop { background: #060a0be6; backdrop-filter: blur(6px); }
.dialog-close { position: absolute; top: 15px; right: 15px; z-index: 2; background: var(--color-paper); color: var(--color-ink); border-radius: 50%; width: 44px; height: 44px; font-size: 1.8rem; display: grid; place-items: center; }
.vehicle-dialog[open] { display: grid; grid-template-columns: 1.1fr 1fr; }
.dialog-media { background: #e5e7e0; min-height: 100%; display: flex; align-items: center; }
.dialog-media img { width: 100%; height: 100%; object-fit: contain; }
.dialog-copy { padding: 48px 35px 35px; }
.dialog-copy h2 { font-size: 2.5rem; margin: 19px 0; }
.dialog-copy>.eyebrow { font-size: .59rem; color: var(--color-accent); }
.dialog-copy>[data-dialog-tag] { margin-bottom: 22px; }
.dialog-copy>p { font-size: .88rem; color: var(--color-muted); }
.dialog-specs { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; border-block: 1px solid #ffffff2e; padding-block: 20px; margin-block: 24px; }
.dialog-specs p { font-size: .83rem; }.dialog-specs p span { display: block; color: var(--color-muted); font-size: .66rem; }
.dialog-copy>.small { margin-top: 16px; font-size: .72rem; }
.dialog-copy .dialog-price { margin-block: 24px; color: var(--color-text); font-size: 1.15rem; font-weight: 700; }
.video-dialog { padding: 35px; }.video-dialog h2 { font-size: 1.8rem; padding-right: 45px; margin-bottom: 24px; }.video-dialog video { width: 100%; max-height: 66svh; }.video-dialog [role='status'] { margin-top: 20px; font-size: .85rem; }
.legal-page,.source-section { padding-top: 160px; min-height: 80vh; }
.legal-content { max-width: 850px; }
.legal-content h1 { margin-top: 24px; font-size: 3.8rem; }
.legal-content h2 { font-size: 1.6rem; margin-top: 40px; margin-bottom: 18px; }
.legal-content p { font-size: .96rem; max-width: 780px; }
.legal-warning { padding: 20px; background: #e6ddd1; border-left: 3px solid #a46645; margin-top: 28px; }
.legal-content .button { margin-top: 40px; }
.source-page h1 { font-size: 3rem; margin-block: 20px 25px; }
.source-page>p { max-width: 850px; }.source-page h2 { font-size: 2rem; margin-block: 45px 25px; }
.source-note { border-left: 3px solid #a46645; background: #e9e2d7; padding: 24px; margin-top: 25px; }.source-note p+p { margin-top: 15px; }
.source-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; margin-block: 25px; }
.source-field { background: #fff; border: 1px solid #cbd3d0; padding: 24px; overflow-wrap: anywhere; }
.source-field h3 { font-size: 1rem; line-height: 1.4; letter-spacing: -.015em; }
.source-field .field-key { font: .7rem/1.7 monospace; color: #536769; margin-block: 10px 20px; }
.source-field [data-shared-key],.source-field [data-color-for] { padding: 12px; background: #f0f2eb; display: block; border-left: 2px solid #c89370; }
.source-field img { height: 100px; width: 100%; object-fit: contain; background: #182126 !important; }
@media (max-width: 850px) { .source-grid { grid-template-columns: 1fr 1fr; }.vehicle-dialog[open] { grid-template-columns: 1fr; max-width: 620px; }.dialog-media { min-height: auto; }.dialog-media img { aspect-ratio: 1.7; }.dialog-copy { padding: 25px; } }
@media (max-width: 500px) { .source-grid { grid-template-columns: 1fr; }.source-page h1 { font-size: 2.25rem; }.legal-page,.source-section { padding-top: 120px; }.legal-content h1 { font-size: 3rem; }dialog { max-width: calc(100vw - 24px); }.dialog-copy h2 { font-size: 2rem; }.video-dialog { padding: 23px; }.video-dialog h2 { font-size: 1.4rem; } }
