/* QA readability and keyboard focus support; components own their hover styles.
   Never underline every hovered anchor: a linked card propagates that line
   through its heading/copy even when those children declare decoration:none. */
body a[href]:focus-visible, body button:focus-visible, body summary:focus-visible {
  outline: 3px solid currentColor !important; outline-offset: 4px;
}
.elementor-39 a.elementor-button, .elementor-39 button.dillon-navigation-toggle {
  min-height: 44px !important; min-width: 24px !important;
  display: inline-flex !important; align-items: center; justify-content: center;
}
.elementor-39 button.dillon-navigation-toggle {
  min-width: 24px !important; width: 24px !important; flex: 0 0 24px;
  position: static !important; transform: none !important;
}
.dillon-nav-group .elementor-widget-button:has(.dillon-navigation-toggle),
.dillon-nav-group .elementor-button-wrapper:has(> .dillon-navigation-toggle) { width:max-content !important; }
.dillon-nav-group .elementor-button-wrapper:has(> .dillon-navigation-toggle),
.dillon-nav-group .elementor-widget-button:has(> .dillon-navigation-toggle) {
  display:flex !important; align-items:center; gap:0;
}
/* Legal and error pages have no photo hero behind the transparent shared header. */
body.dillon-qa-solid-header header.elementor-element-17c16a9:not(.sher-scrolled) {
  background: #102b42 !important;
}
.elementor-42 :is(p,small,.elementor-widget-text-editor,.elementor-heading-title,.elementor-icon-box-description) {
  font-size: max(12px, 1em);
}
.elementor-42 .dillon-footer-legal, .dillon-qa-legal-links { font-size: 14px !important; line-height: 1.6; }
.dillon-qa-legal-links { display:flex; flex-wrap:wrap; gap:12px 24px; padding:24px; background:#102b42; color:#fff; justify-content:center; }
.dillon-qa-legal-links a { color:inherit; }
footer .dillon-qa-legal-links { padding:0; background:transparent; color:inherit; justify-content:flex-start; }
footer .dillon-qa-legal-links a { text-decoration:underline; }
.dillon-interior-legal .dillon-qa-legal-links { color:#102b42; }
.dillon-form-summary, .dillon-form-status { scroll-margin-top: 140px !important; scroll-margin-bottom: 48px; }
.dillon-required-note { font-size: 12px; font-weight: 400; }
.dillon-qa-document { max-width:1100px; margin:0 auto; padding:160px 24px 80px; color:#102b42; }
.dillon-qa-document h1 { font-size:clamp(40px,6vw,72px); line-height:1.1; margin-bottom:32px; }
.dillon-qa-document h2 { font-size:28px; margin:32px 0 12px; }
.dillon-qa-document :is(h1,h2) { font-family:"Barlow Condensed",Impact,sans-serif; text-transform:uppercase; }
.dillon-qa-document p { font-size:18px; line-height:1.7; max-width:75ch; }
.dillon-qa-policy :is(ul,ol) { font-size:18px; line-height:1.7; max-width:75ch; margin:0 0 1em; padding-left:1.5em; }
.dillon-qa-policy ul { list-style:disc; }
.dillon-qa-policy :is(p,ul,ol) { overflow-wrap:anywhere; }
.dillon-qa-document a { color:inherit; text-decoration:underline; }
.dillon-qa-actions { display:flex; flex-wrap:wrap; gap:24px; margin-top:32px; }
body.error404 .dillon-qa-document { box-sizing:border-box; min-height:100svh; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; }
body.error404 .dillon-qa-actions { justify-content:center; align-items:center; }
body.error404 .dillon-qa-actions .elementor-button { display:inline-flex; align-items:center; justify-content:center; font-family:inherit; font-size:14px; font-weight:600; line-height:1.3; text-transform:uppercase; border-radius:4px; padding:16px 24px; border:1px solid transparent; background:#c43322; color:#fff; text-decoration:none; transition:background-color .2s,color .2s; }
body.error404 .dillon-qa-actions .elementor-button + .elementor-button { background:transparent; color:#c43322; border-color:currentColor; }
body.error404 .dillon-qa-actions .elementor-button:is(:hover,:focus-visible) { background:#224ea4; color:#fff; text-decoration:none; }
body.error404 .dillon-qa-actions .elementor-button:focus-visible { outline-color:#102b42 !important; }
@media(max-width:767px) { .dillon-qa-document {padding-top:120px;} }
.elementor-element-ec2502b .elementor-element-b22771b .elementor-element-d60a151,
.elementor-element-ec2502b .elementor-element-b22771b .elementor-element-d60a151 p {
  color: #ffffff !important;
  opacity: 1 !important;
}
body.error404 .dillon-qa-document { background:radial-gradient(circle at 50% 42%, rgba(34,78,164,.09), transparent 60%); max-width:none; }
body.error404 .dillon-404-card { position:relative; box-sizing:border-box; width:100%; max-width:760px; padding:56px 48px 48px; background:#fff; border:1px solid rgba(16,43,66,.1); border-top:6px solid #c43322; border-radius:16px; box-shadow:0 24px 48px -28px rgba(16,43,66,.35); overflow:hidden; }
body.error404 .dillon-404-card::after { content:""; position:absolute; left:0; right:0; bottom:0; height:4px; background:linear-gradient(90deg,#c43322 0 50%,#224ea4 50% 100%); opacity:.85; }
body.error404 .dillon-404-code { margin:0 auto 4px; font-family:"Barlow Condensed",Impact,sans-serif; font-weight:800; font-size:clamp(88px,16vw,148px); line-height:.9; letter-spacing:.02em; color:transparent; -webkit-text-stroke:2px #224ea4; max-width:none; }
body.error404 .dillon-404-card h1 { margin:0 0 20px; color:#102b42; }
body.error404 .dillon-404-card h1::after { content:""; display:block; width:56px; height:3px; margin:18px auto 0; background:#c43322; border-radius:2px; }
body.error404 .dillon-404-card > p:not(.dillon-404-code) { margin:0 auto; max-width:52ch; color:#3a4d5e; }
body.error404 .dillon-404-card .dillon-qa-actions { gap:16px; margin-top:32px; }
body.error404 .dillon-qa-actions .elementor-button { transition:background-color .2s,color .2s,border-color .2s,transform .2s; }
body.error404 .dillon-qa-actions .elementor-button:hover { transform:translateY(-2px); border-color:#224ea4; }
@media(max-width:767px) { body.error404 .dillon-404-card { padding:40px 20px 36px; } body.error404 .dillon-404-card .dillon-qa-actions { flex-direction:column; align-items:stretch; } }
@media (prefers-reduced-motion:reduce) { body.error404 .dillon-qa-actions .elementor-button:hover { transform:none; } }
