.crumbs a:hover,
.product-info__crumbs a:hover { text-decoration: underline; text-underline-offset: 4px; }
.crumbs a:focus-visible,
.product-info__crumbs a:focus-visible,
.overlay a:focus-visible,
.overlay button:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.policy-page .page-head h1 { font-size: clamp(30px, 4vw, 58px); overflow-wrap: anywhere; }
.policy-content { padding-bottom: 80px; line-height: 1.8; }
.policy-content p { max-width: 100ch; margin-bottom: 24px; }
.policy-content h2 { margin: 32px 0 12px; font-size: 22px; line-height: 1.3; }
.documents-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; padding-bottom: 80px; }
.documents-list article { padding: 28px; border: 1px solid var(--c-line); border-radius: 16px; }
.documents-list h2 { font-size: 26px; }
.documents-list h2 a { display: flex; justify-content: space-between; gap: 16px; }
.documents-list h2 span { color: var(--c-red); }
.documents-list p { margin: 18px 0; line-height: 1.6; }
.documents-list article > a { text-decoration: underline; text-underline-offset: 4px; }
.project-photo-dialog { position: fixed; inset: 0; margin: auto; width: min(1100px, calc(100vw - 24px)); max-height: calc(100dvh - 24px); padding: 0; border: 0; border-radius: 12px; background: #151515; color: white; }
.project-photo-dialog::backdrop { background: #000c; }
.project-photo-dialog header { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 12px 16px; }
.project-photo-dialog h2 { font-size: 18px; }
.project-photo-dialog button { width: 44px; height: 44px; background: transparent; border: 1px solid #ffffff60; border-radius: 50%; color: #fff; font-size: 28px; cursor: pointer; }
.project-photo-dialog img { display: block; width: 100%; max-height: calc(100dvh - 110px); object-fit: contain; }
body.project-photo-open { overflow: hidden; }
.max-link { display: inline-flex !important; align-items: center; gap: 10px; }
.max-link img { flex: 0 0 auto; display: block; }
#max-contact { scroll-margin-top: 100px; }
.contact-channels .dealer-card { background: #1a1a1a; color: var(--c-paper); }
.contact-channels .dealer-card__num { color: var(--c-paper); opacity: 1; }
.contact-channels .meta { color: #ffffffb3; }
.contact-channels a { text-underline-offset: 4px; }
.contact-channels a:hover { text-decoration: underline; }
.stat__num a:hover { text-decoration: underline; text-underline-offset: 5px; }
@media (max-width: 800px) { .documents-list { grid-template-columns: 1fr; } }
.contact-max-action { display: inline-block; border-bottom: 1px solid currentColor; padding-bottom: 3px; }

/* Shared phone numbers on every page. */
.topbar .topbar__right { flex-direction: column; justify-content: center; align-items: flex-end; gap: 2px; }
.topbar .topbar__phone { line-height: 1.4; }
.interior-collection-specs { display: flex; flex-wrap: wrap; gap: 8px 28px; margin: 0 0 24px; font-size: 14px; line-height: 1.6; }

/* The menu is outside the transformed page wrapper, anchored to the viewport. */
#navOverlay { height: 100vh; height: 100dvh; grid-template-rows: auto minmax(0, 1fr) auto; }
#navOverlay .overlay__body { min-height: 0; }
@media (min-width: 901px) {
  #navOverlay .overlay__nav { overflow-y: auto; grid-template-rows: repeat(10, minmax(36px, 1fr)); }
  #navOverlay .overlay__aside { overflow-y: auto; }
}
@media (max-width: 900px) {
  #navOverlay .overlay__nav { overflow: visible; }
}
.request-dialog { position: fixed; inset: 0; margin: auto; width: min(560px, calc(100vw - 28px)); max-height: calc(100dvh - 28px); overflow-y: auto; padding: 32px; border: 1px solid var(--c-line); border-radius: 16px; background: var(--c-paper); color: var(--c-ink); }
.request-dialog::backdrop { background: #000a; }
.request-dialog__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.request-dialog__head h2 { font-family: var(--f-display); font-size: clamp(24px, 5vw, 32px); line-height: 1.15; }
.request-dialog__close { flex: 0 0 44px; height: 44px; border: 1px solid var(--c-line); border-radius: 50%; background: transparent; color: inherit; font-size: 28px; cursor: pointer; }
.request-dialog__intro { margin-bottom: 24px; line-height: 1.5; }
.request-dialog .form { gap: 18px; }
.request-dialog textarea { min-height: 96px; }
.request-dialog a, [data-lead-form] .small a { text-decoration: underline; }
.request-dialog input, .request-dialog textarea { width: 100%; min-width: 0; }
body.request-open { overflow: hidden; }
.form-status { line-height: 1.5; overflow-wrap: anywhere; }
.form-status:empty { display: none; }
.form-status[data-state="error"] { color: #b5211e; }
.form-status[data-state="success"] { color: #24602b; }
[data-lead-form] [type="submit"]:disabled { opacity: .6; cursor: wait; }
.form-honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
@media (max-width: 600px) { .request-dialog { padding: 22px; } .request-dialog input, .request-dialog textarea { font-size: 16px; } }
