/* LTO page refinements stay within this product page. */
.lto-page .brand span { width: 107px; }
.lto-hero { align-items: center; gap: 56px; padding-block: 54px 48px; }
.lto-hero-copy .lto-location { margin: 0 0 15px; font-size: 14px; }
.lto-hero-copy > p:not(.lto-location) { font-size: 16px; max-width: 54ch; margin-top: 18px; }
.lto-hero-copy > .lto-lead { color: var(--ink); font-weight: 500; }
.lto-hero > .lto-product-reference { align-self: center; }
.lto-hero > .lto-product-reference img { aspect-ratio: 1079 / 539; }
.lto-hero figcaption { margin-top: 14px; }
.lto-kicker { font-size: 12px; margin-bottom: 12px; }
.lto-manufacturer h3 { font-size: 32px; margin-bottom: 12px; }
.lto-manufacturer > p { max-width: 44ch; }
.lto-manufacturer .company-facts { margin-top: 24px; max-width: 440px; }
.lto-page .context-grid dt { font-size: 21px; }
@media (max-width: 800px) { .lto-hero { grid-template-columns: 1fr; gap: 30px; padding-block: 38px; } .lto-hero-copy h1 { max-width: 20ch; } .lto-hero > .lto-product-reference { max-width: 660px; } }
@media (max-width: 620px) { .lto-page .brand span { width: 96px; } .lto-hero-copy > p:not(.lto-location) { font-size: 16px; } .lto-page .context-grid dt { font-size: 18px; } }

/* Model-document review added within the existing LTO layout. */
.lto-review-section { border-top: 1px solid var(--rule); }
.lto-review-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 64px; }
.lto-review-layout h3 { font-size: 28px; margin: 0 0 16px; }
.lto-review-layout p { max-width: 52ch; }
.lto-review-deliverables { padding: 0; margin: 28px 0 12px; list-style: none; counter-reset: documents; }
.lto-review-deliverables li { counter-increment: documents; border-top: 1px solid var(--rule); padding: 15px 0; }
.lto-review-deliverables strong { display: block; font-size: 15px; font-weight: 500; }
.lto-review-deliverables strong::before { content: counter(documents, decimal-leading-zero) " / "; color: var(--muted); }
.lto-review-deliverables span { display: block; font-size: 14px; color: var(--muted); margin-top: 5px; }
.lto-review-table { width: 100%; border-collapse: collapse; font-size: 14px; line-height: 1.6; }
.lto-review-table caption { text-align: left; font-size: 16px; font-weight: 500; margin-bottom: 16px; }
.lto-review-table th, .lto-review-table td { text-align: left; vertical-align: top; padding: 14px 12px; border-bottom: 1px solid var(--rule); overflow-wrap: anywhere; }
.lto-review-table th { font-weight: 500; border-top: 1px solid var(--rule); }
.lto-review-table th:first-child, .lto-review-table td:first-child { padding-left: 0; }
.lto-review-table th:last-child, .lto-review-table td:last-child { padding-right: 0; width: 34%; }
.lto-review-table-wrap .lto-support-note { margin-top: 18px; font-size: 13px; }
.lto-review-section .section-heading { margin-bottom: 32px; }
.lto-hero-copy .hero-actions { flex-wrap: wrap; align-items: center; gap: 18px; }
.lto-contact-linkedin { display: inline-block; margin-top: 10px; }
@media (max-width: 800px) { .lto-review-layout { grid-template-columns: 1fr; gap: 32px; } }
@media (max-width: 620px) { .lto-review-table { font-size: 13px; } .lto-review-table th, .lto-review-table td { padding: 12px 8px; } .lto-review-layout h3 { font-size: 24px; } }

/* Model index, request choices and buyer questions use the existing page tokens. */
.lto-review-table th:last-child, .lto-review-table td:last-child { width: auto; }
.lto-review-table tbody th { border-top: 0; font-weight: 400; white-space: nowrap; }
.lto-service-rows .text-link { display: inline-block; margin-top: 12px; }
.lto-form-hint { font-size: 14px; line-height: 1.6; color: var(--muted); margin: -4px 0 24px; }
.lto-faq { border-top: 1px solid var(--rule); }
.lto-faq details { border-top: 1px solid var(--rule); padding: 20px 0; }
.lto-faq details:last-child { border-bottom: 1px solid var(--rule); }
.lto-faq summary { cursor: pointer; font-size: 18px; font-weight: 500; padding: 4px 0; }
.lto-faq summary:focus-visible { outline: 3px solid var(--accent); outline-offset: 4px; }
.lto-faq details p { max-width: 76ch; margin: 16px 0 0; }
@media (max-width: 620px) { .lto-review-table th, .lto-review-table td { padding: 10px 6px; } .lto-faq summary { font-size: 16px; } }
