/* DriveQuery v828: origin story and readable trust pages. */
.dq-trust-page .feature-hero { padding-block: 3rem 2rem; }
.dq-trust-page .feature-hero h1 { max-width: 24ch; }
.dq-trust-meta { color: var(--muted); font-size: .9375rem; }
.dq-trust-layout { display: grid; gap: 2.5rem; align-items: start; }
.dq-trust-copy { max-width: 76ch; min-width: 0; font-size: 1rem; line-height: 1.75; }
.dq-trust-block { margin-block: 0 2rem; }
.dq-trust-block h2 { font-size: clamp(1.25rem, 2.4vw, 1.65rem); line-height: 1.3; margin: 0 0 .75rem; }
.dq-trust-copy p { margin: 0 0 1rem; }
.dq-trust-copy a { color: var(--accent-dark); text-decoration: underline; text-underline-offset: .18em; overflow-wrap: anywhere; }
.dq-trust-copy details { border-bottom: 1px solid var(--line); padding-block: 1rem; }
.dq-trust-copy summary { cursor: pointer; font-size: 1.0625rem; line-height: 1.5; font-weight: 700; }
.dq-trust-copy details p { margin-top: 1rem; }
.dq-trust-copy details:last-of-type { margin-bottom: 2rem; }
.dq-trust-links { display: flex; flex-wrap: wrap; gap: .75rem 1.25rem; border-top: 1px solid var(--line); padding-top: 1.25rem; }
.dq-trust-sources { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; padding-left: 1.25rem; font-size: .9375rem; }
.dq-origin-photo { margin: 0; max-width: 60rem; }
.dq-origin-photo img, .dq-origin-thumb img { display: block; width: 100%; height: auto; border-radius: var(--radius); }
.dq-origin-photo figcaption { font-size: .9375rem; color: var(--muted); margin-top: .75rem; }
.dq-origin-teaser { display: grid; grid-template-columns: 1.4fr 1fr; gap: 3rem; align-items: center; }
.dq-origin-teaser h2 { font-size: clamp(1.75rem, 3.5vw, 2.7rem); line-height: 1.15; max-width: 23ch; margin-block: .5rem 1.25rem; text-wrap: balance; }
.dq-origin-teaser p { max-width: 62ch; font-size: 1rem; }
.dq-origin-thumb { min-width: 0; }
.dq-trust-page a:focus-visible, .dq-trust-page summary:focus-visible, .dq-origin-teaser a:focus-visible { outline: 3px solid var(--accent); outline-offset: 5px; }
@media (min-width: 960px) {
 .dq-trust-layout:has(.dq-origin-photo) { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 3rem; }
}
@media (max-width: 680px) {
 .dq-origin-teaser { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
 .dq-origin-thumb { max-width: 28rem; }
 .dq-trust-page .feature-hero { padding-top: 2rem; }
 .dq-trust-page .feature-hero h1 { max-width: none; font-size: clamp(2rem, 8vw, 2.8rem); overflow-wrap: break-word; }
}
.dq-contact-form { display: grid; gap: 1.1rem; max-width: 42rem; margin-block: 1.5rem 2rem; }
.dq-contact-form[hidden] { display: none; }
.dq-contact-form label { display: grid; gap: .4rem; font-weight: 650; }
.dq-contact-form input, .dq-contact-form select, .dq-contact-form textarea { width: 100%; min-width: 0; padding: .8rem; border: 1px solid var(--muted); border-radius: .6rem; background: var(--panel); color: var(--ink); font: inherit; font-weight: 400; }
.dq-contact-form textarea { min-height: 12rem; resize: vertical; }
.dq-contact-form .button { justify-self: start; }
.dq-contact-form .button:disabled { opacity: .6; cursor: wait; transform: none; }
.dq-contact-trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
#dq-contact-status { overflow-wrap: anywhere; font-weight: 650; }
#dq-contact-turnstile { max-width: 100%; overflow: auto; }
