/* LinkTrans professional visual system — 2026-10-26.
   Loaded last. Every rule is gated by body.lt-professional; original CSS is intact.
   Explicit component selectors outrank site.css's language rules and the document /
   regional styles. !important is limited to five pre-existing important text rules.
   No generated copy, visual reordering, full-bleed hero or hidden content is added. */

/* Shared shell, navigation, reading scale and interactive controls. */
html body.lt-professional {
  --lt-gutter: clamp(28px, 5vw, 80px);
  --lt-header-height: 94px;
  --lt-body: 17px;
  --lt-card: 16px;
  --lt-small: 14px;
  font-size: var(--lt-body);
  line-height: 1.85;
}
html body.lt-professional :is(.container,.dd-shell,.city-shell,.rd-shell) {
  width: min(1440px, calc(100% - var(--lt-gutter) - var(--lt-gutter)));
  margin-inline: auto;
}
html body.lt-professional .header-inner {
  height: var(--lt-header-height);
  gap: clamp(16px, 1.4vw, 26px);
}
html body.lt-professional .brand { width: 176px; }
html body.lt-professional .navigation {
  gap: clamp(14px, 1.2vw, 22px);
  font-size: 15px;
  line-height: 1.75;
  white-space: nowrap;
}
html body.lt-professional .navigation > a { min-height: 46px; }
html body.lt-professional .navigation .button.small {
  font-size: 15px;
  padding: 11px 18px;
}
html body.lt-professional .language-switch {
  font-size: 14px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}
html body.lt-professional .utility,
html body.lt-professional .utility-inner > span,
html body.lt-professional .utility a { font-size: 13px; line-height: 1.8; }
html body.lt-professional .utility-inner { min-height: 38px; gap: 8px 24px; }
html body.lt-professional :is(.button,.outline-button,.dd-button,.dd-secondary,.city-primary,.city-secondary,.rd-primary) {
  font-size: 16px;
  line-height: 1.75;
  min-height: 48px;
}
html body.lt-professional :is(.inline-button,.text-link,.dd-text-link) {
  font-size: 16px;
  line-height: 1.8;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}
html body.lt-professional :is(input,select,textarea) {
  font-size: 16px;
  line-height: 1.75;
  min-width: 0;
  max-width: 100%;
}
html body.lt-professional :is(.quote-dialog,.dd-form,.city-quote,.dd-search,.rd-controls,.directory-search-label,.search-field) :is(input,select,textarea) { font-size: 16px; line-height: 1.75; }
html body.lt-professional :is(input,select) { min-height: 48px; }
html body.lt-professional textarea { min-height: 120px; }
html body.lt-professional :is(.hero-actions,.dd-actions,.city-actions,.rd-actions) {
  flex-wrap: wrap;
  gap: 16px 24px;
}
html body.lt-professional :is(.breadcrumbs,.dd-crumbs,.city-crumbs,.rd-breadcrumbs) {
  font-size: 14px;
  line-height: 1.8;
  flex-wrap: wrap;
  overflow-wrap: anywhere;
}
html body.lt-professional :is(.section-index,.dd-page .dd-eyebrow,.city-kicker,.rd-eyebrow) {
  font-size: 14px;
  line-height: 1.8;
}
html body.lt-professional :is(.page-hero,.dd-hero,.city-hero,.document-hero,.rd-hero) {
  padding-block: 32px 60px;
}
html body.lt-professional :is(.page-hero,.dd-page,.city-proto,.document-hero,.rd-page) h1 {
  font-size: clamp(36px, 3.6vw, 54px);
  line-height: 1.35;
  max-width: 1080px;
  overflow-wrap: break-word;
}
html body.lt-professional :is(.page-lead,.dd-page .dd-lead,.city-hero-lead,.document-lead,.rd-lead) {
  font-size: 18px;
  line-height: 1.85;
  max-width: 850px;
}
html body.lt-professional :is(.page-article,.dd-page,.city-proto,.document-content,.rd-page) p,
html body.lt-professional :is(.editorial-list,.refresh-checklist,.delivery-grid ul) {
  font-size: var(--lt-body);
  line-height: 1.85;
}
html body.lt-professional :is(.page-article,.dd-article,.city-article,.document-content) > section > p {
  max-width: 78ch;
}
html:lang(en) body.lt-professional :is(.page-article,.dd-article,.city-article,.document-content) > section > p {
  max-width: 72ch;
}
html body.lt-professional :is(.editorial-section,.final-section,.dd-section,.city-section,.document-section) {
  padding-block: 42px;
  scroll-margin-top: 160px;
}
html body.lt-professional :is(.editorial-section,.final-section,.dd-section,.city-section,.document-section) > h2,
html body.lt-professional :is(.dd-page,.city-proto,.rd-page) h2 {
  font-size: clamp(27px, 2.3vw, 34px);
  line-height: 1.5;
}
html body.lt-professional :is(.page-layout,.dd-layout,.city-body,.document-body) {
  grid-template-columns: minmax(0, 1fr) 296px;
  gap: clamp(36px, 4.2vw, 72px);
}
html body.lt-professional :is(.dd-hero-grid,.city-hero-grid,.document-hero-grid) {
  grid-template-columns: minmax(0, 1.55fr) minmax(300px, .85fr);
  gap: clamp(32px, 4.5vw, 76px);
  align-items: start;
}
html body.lt-professional :is(.page-sidebar,.dd-aside,.city-aside,.document-aside) { top: 126px; }
html body.lt-professional :is(.page-sidebar,.dd-aside,.city-aside,.consult-panel) {
  padding: 28px 24px;
  overflow-wrap: anywhere;
}
html body.lt-professional :is(.page-sidebar,.dd-aside,.city-aside,.consult-panel) h2,
html body.lt-professional :is(.dd-summary,.city-summary,.document-range) h2 { font-size: 23px; line-height: 1.5; }
html body.lt-professional :is(.page-sidebar > p:not(.section-index),.dd-aside p,.city-aside p,.consult-panel ol,.aside-small,.aside-brand p) {
  font-size: 15px;
  line-height: 1.85;
}
html body.lt-professional :is(.sidebar-links a,.dd-aside > a:not(.dd-button),.city-aside a:not(.city-primary),.aside-brand a) {
  font-size: 15px;
  line-height: 1.8;
  min-height: 44px;
}
html body.lt-professional :is(.page-sidebar > .button,.dd-aside .dd-button,.city-aside .city-primary,.consult-panel > .button) { font-size: 16px; }
html body.lt-professional :is(.page-sidebar > a.sidebar-email,.aside-email) { font-size: 14px; overflow-wrap: anywhere; word-break: normal; }
/* These match the existing important declarations in document-detail / city CSS. */
html body.lt-professional .dd-page .dd-aside-email { font-size: 14px !important; }
html body.lt-professional .dd-page .dd-aside-phone { font-size: 25px !important; }
html body.lt-professional :is(.city-note,.city-mini) { font-size: 14px !important; line-height: 1.85; }
html body.lt-professional .dd-hub-entry p { font-size: 16px !important; line-height: 1.85 !important; }
html body.lt-professional .dd-hub-entry h2 { font-size: 26px !important; }
html body.lt-professional :is(.directory-card,.dd-directory-card,.city-service,.final-task-grid > section,.region-scenario-grid > section) { min-width: 0; }
html body.lt-professional :is(.directory-card,.dd-directory-card,.city-service) { padding: 27px 24px; }
html body.lt-professional .industry-directory .directory-card { padding: 0; }
html body.lt-professional :is(.directory-card,.directory-grid.compact,.dd-directory-card,.scope-grid,.process-grid,.final-task-grid,.dd-use-grid,.dd-review-grid,.dd-delivery-grid,.dd-steps,.city-service,.city-review,.city-steps,.region-scenario-grid,.use-grid,.detail-grid,.delivery-grid,.document-steps,.related-grid) h3 {
  font-size: 19px;
  line-height: 1.6;
}
html body.lt-professional :is(.directory-card,.dd-directory-card,.scope-grid,.process-grid,.final-task-grid,.dd-use-grid,.dd-review-grid,.dd-delivery-grid,.dd-steps,.city-service,.city-review,.city-steps,.region-scenario-grid,.use-grid,.detail-grid,.delivery-grid,.document-steps,.related-grid) p,
html body.lt-professional .region-scenario-grid dd { font-size: var(--lt-card); line-height: 1.85; }
html body.lt-professional :is(.region-scenario-grid dt,.dd-summary dt,.city-summary dt,.city-facts span,.dd-credentials,.city-credentials,.document-meta,.small-note,.dd-page .dd-small,.final-small) {
  font-size: 14px;
  line-height: 1.85;
}
html body.lt-professional :is(.dd-summary dd,.city-summary dd,.city-facts strong) { font-size: 16px; line-height: 1.8; }
html body.lt-professional .city-summary .summary-phone { font-size: 26px; }
html body.lt-professional :is(.final-task-grid,.scope-grid,.dd-use-grid) { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
html body.lt-professional .dd-directory .dd-use-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
html body.lt-professional :is(.dd-directory-grid,.final-notary-grid) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
html body.lt-professional .final-notary-grid strong { font-size: 16px; line-height: 1.8; }
html body.lt-professional .final-notary-grid span { font-size: 14px; }
html body.lt-professional :is(.final-map-grid > a,.final-related,.dd-related,.city-related,.refresh-links) { font-size: 16px; line-height: 1.85; }
html body.lt-professional :is(.final-map-grid > a,.dd-related a,.city-related a,.final-related a) { min-height: 44px; }
html body.lt-professional :is(.final-faq,.dd-faq,.city-faq,.faq-list) summary { font-size: 17px; line-height: 1.8; min-height: 52px; }
html body.lt-professional :is(.final-faq,.dd-faq,.city-faq,.faq-list) details > p { font-size: 17px; line-height: 1.85; }
html body.lt-professional :is(.city-table,.dd-material-table,.material-table) { font-size: 16px; line-height: 1.85; }
html body.lt-professional :is(.city-table,.dd-material-table,.material-table) :is(th,td) { overflow-wrap: break-word; }
html body.lt-professional .material-table thead th { font-size: 15px; }
html body.lt-professional .dd-material-table caption { font-size: 14px; }
html body.lt-professional :is(.dd-search label,.dd-form label,.city-quote label,.quote-dialog label,.directory-search-label) { font-size: 15px; line-height: 1.8; }
html body.lt-professional :is(.dd-search > p,.city-quote small,[data-directory-status]) { font-size: 14px; line-height: 1.85; }
html body.lt-professional :is(.dd-result pre,.city-quote-result pre,.quote-result pre) { font-size: 16px; line-height: 1.85; }
html body.lt-professional .document-jump { top: var(--lt-header-height); }
html body.lt-professional .document-jump a { font-size: 15px; min-height: 44px; display: inline-flex; align-items: center; }
html body.lt-professional .document-jump > .container { padding-block: 8px; }
html body.lt-professional .document-aside { top: 170px; }
html body.lt-professional .document-range :is(h3,li p) { font-size: 16px; line-height: 1.85; }
html body.lt-professional :is(.range-label,.range-footer,.range-footer a) { font-size: 14px; }
html body.lt-professional .document-range li { grid-template-columns: 24px minmax(0,1fr); }
html body.lt-professional .document-range .range-footer { flex-wrap: wrap; }

/* Home: original office photography remains in its own column. */
html body.lt-professional.lt-home-professional .hero { padding-block: 64px 56px; }
html body.lt-professional.lt-home-professional .hero-grid {
  grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr);
  gap: clamp(32px, 4vw, 68px);
  align-items: center;
}
html body.lt-professional.lt-home-professional .hero h1 {
  font-size: clamp(38px, 3.5vw, 60px);
  line-height: 1.35;
  letter-spacing: -.045em;
  overflow-wrap: break-word;
}
html body.lt-professional.lt-home-professional .hero h1 > span { white-space: normal; }
html:lang(en) body.lt-professional.lt-home-professional .hero h1 {
  font-size: clamp(38px, 3.4vw, 60px);
  line-height: 1.18;
}
html body.lt-professional.lt-home-professional .eyebrow { font-size: 14px; line-height: 1.85; }
html body.lt-professional.lt-home-professional .hero-lead { font-size: 18px; line-height: 1.85; max-width: 620px; }
html body.lt-professional.lt-home-professional .hero-image img {
  width: 100%;
  height: auto;
  aspect-ratio: 1.25;
  object-fit: cover;
  object-position: center;
}
html body.lt-professional.lt-home-professional .hero-visual-brand figcaption { flex-wrap: wrap; align-items: center; gap: 14px 20px; }
html body.lt-professional.lt-home-professional :is(.hero-footnote,.since > span,.image-caption,.hero-visual-brand .image-caption) {
  font-size: 14px;
  line-height: 1.8;
  white-space: normal;
}
html body.lt-professional.lt-home-professional .since > span { max-width: none; }
html body.lt-professional.lt-home-professional .hero-footnote { flex-wrap: wrap; gap: 8px 14px; }
html body.lt-professional.lt-home-professional .hero-visual-brand .image-caption { display: flex; flex-wrap: wrap; gap: 7px 12px; }
html body.lt-professional.lt-home-professional .finder { grid-template-columns: minmax(230px,.8fr) minmax(0,1.7fr); gap: 36px; padding: 34px; }
html body.lt-professional.lt-home-professional .finder-heading h2 { font-size: 27px; line-height: 1.5; }
html body.lt-professional.lt-home-professional :is(.finder-heading p,.quick-search,.quick-search > span,.quick-search button) { font-size: 14px; line-height: 1.8; }
html body.lt-professional.lt-home-professional .quick-search { gap: 4px 18px; }
html body.lt-professional.lt-home-professional .quick-search button { min-height: 40px; }
html body.lt-professional.lt-home-professional .search-field input { font-size: 16px; }
html body.lt-professional.lt-home-professional .search-field .button { font-size: 16px; }
html body.lt-professional.lt-home-professional .section { padding-block: clamp(64px,6vw,100px); }
html body.lt-professional.lt-home-professional :is(.section-heading h2,.services h2,.quality-intro h2,.about-copy h2,.faq-layout h2,.contact-section h2) {
  font-size: clamp(30px, 2.8vw, 42px);
  line-height: 1.5;
}
html body.lt-professional.lt-home-professional :is(.section-intro,.services-heading > p:not(.section-index),.quality-intro > p,.about-copy > p:not(.section-index),.contact-section p:not(.section-index)) { font-size: 17px; line-height: 1.85; }
html body.lt-professional.lt-home-professional .document-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
html body.lt-professional.lt-home-professional .document-card { align-items: flex-start; padding: 28px 22px; gap: 15px; min-height: 154px; }
html body.lt-professional.lt-home-professional .document-card > span:last-child { min-width: 0; }
html body.lt-professional.lt-home-professional .document-card h3 { font-size: 19px; line-height: 1.6; overflow-wrap: break-word; }
html body.lt-professional.lt-home-professional .document-card p { font-size: 16px; line-height: 1.8; }
html body.lt-professional.lt-home-professional .document-icon { width: 26px; height: 32px; margin-top: 5px; }
html body.lt-professional.lt-home-professional .filters { flex-wrap: wrap; overflow: visible; gap: 8px 26px; }
html body.lt-professional.lt-home-professional .filters button { font-size: 16px; min-height: 48px; }
html body.lt-professional.lt-home-professional #result-count { font-size: 14px; }
html body.lt-professional.lt-home-professional :is(.section-bottom p,.section-bottom p button) { font-size: 15px; line-height: 1.85; }
html body.lt-professional.lt-home-professional .industry-choice { padding: 22px; min-height: 134px; }
html body.lt-professional.lt-home-professional .industry-choice strong { font-size: 17px; line-height: 1.7; }
html body.lt-professional.lt-home-professional .industry-choice .num { font-size: 14px; }
html body.lt-professional.lt-home-professional .industry-photo { height: auto; aspect-ratio: 1.9; }
html body.lt-professional.lt-home-professional .industry-description { grid-template-columns: 28px minmax(0,1fr); gap: 12px 20px; }
html body.lt-professional.lt-home-professional .industry-description > .inline-button { grid-column: 2; }
html body.lt-professional.lt-home-professional :is(.industry-description h3,.service-row h3) { font-size: 23px; line-height: 1.5; }
html body.lt-professional.lt-home-professional :is(.industry-description p,.service-row p,.quality-columns p) { font-size: 16px; line-height: 1.85; }
html body.lt-professional.lt-home-professional :is(.topic-tags,.credential-strip small,.credential-label,.about-date p,.muted) { font-size: 14px; line-height: 1.85; }
html body.lt-professional.lt-home-professional .credential-strip > span:not(.credential-label) { font-size: 17px; line-height: 1.8; }
html body.lt-professional.lt-home-professional .credential-strip { flex-wrap: wrap; gap: 24px 32px; }
html body.lt-professional.lt-home-professional :is(.services-layout,.quality-intro,.about-layout,.faq-layout) { gap: clamp(36px,5vw,84px); }
html body.lt-professional.lt-home-professional .quality-section { padding-block: 80px; }

/* Region directory, footer, contact and dialogs share the same readable scale. */
html body.lt-professional .rd-page :is(.rd-hero-note,.rd-directory-heading > p,.rd-project-grid p) { font-size: 16px; line-height: 1.85; }
html body.lt-professional .rd-page :is(.rd-note,.rd-kind,.rd-group-count,.rd-province-nav,.rd-contact,.rd-controls [role=status]) { font-size: 14px; line-height: 1.8; }
html body.lt-professional .rd-page :is(.rd-chips a,.rd-chips span,.rd-control-buttons button,.rd-hot-chips a,.rd-hot-chips span) { font-size: 16px; line-height: 1.75; min-height: 44px; }
html body.lt-professional .rd-page .rd-group { scroll-margin-top: 126px; }
html body.lt-professional .rd-page .rd-group-name { font-size: 21px; }
html body.lt-professional .rd-page .rd-subgroup h3 { font-size: 16px; }
html body.lt-professional .contact-section p:not(.section-index) { font-size: 17px; line-height: 1.85; }
html body.lt-professional .contact-actions .contact-email { font-size: 16px; overflow-wrap: anywhere; }
html body.lt-professional .contact-layout > * { min-width: 0; }
html body.lt-professional .footer :is(p,a:not(.footer-brand > a),button) { font-size: 14px; line-height: 1.85; overflow-wrap: anywhere; }
html body.lt-professional .footer h2 { font-size: 16px; line-height: 1.8; }
html body.lt-professional .footer-grid { gap: 32px 42px; }
html body.lt-professional .footer-grid > div { min-width: 0; }
html body.lt-professional .footer-grid > div > a { padding-block: 5px; }
html body.lt-professional .footer-bottom { flex-wrap: wrap; font-size: 14px; line-height: 1.85; gap: 12px 24px; }
html body.lt-professional .dialog { max-width: 740px; padding: 44px; }
html body.lt-professional .dialog-close { width: 44px; height: 44px; }
html body.lt-professional .dialog :is(.dialog-intro,ul,.dialog-note p,.dialog-direct) { font-size: 16px; line-height: 1.85; }
html body.lt-professional .dialog h3 { font-size: 18px; line-height: 1.6; }
html body.lt-professional .dialog .result-actions :is(.button,.outline-button) { font-size: 16px; }
html body.lt-professional #copy-status { font-size: 14px; }

/* Menu switches before the larger bilingual navigation can collide with the logo. */
@media (max-width: 1399px) {
  html body.lt-professional { --lt-header-height: 84px; }
  html body.lt-professional .header-inner > .brand { margin-right: auto; }
  html body.lt-professional .header-inner > .navigation { order: 4; }
  html body.lt-professional .menu-toggle {
    display: flex; align-items: center; gap: 10px; border: 0;
    background: none; padding: 10px 0 10px 12px; font-size: 16px;
    min-height: 46px; color: var(--wine);
  }
  html body.lt-professional .navigation {
    display: none; position: absolute; top: var(--lt-header-height); left: 0; right: 0;
    flex-direction: column; align-items: stretch; white-space: normal; gap: 4px;
    padding: 20px var(--lt-gutter) 28px; background: #fff;
    border-bottom: 1px solid var(--line); box-shadow: 0 16px 30px #3320200a;
    max-height: calc(100dvh - var(--lt-header-height)); overflow-y: auto;
  }
  html body.lt-professional .navigation.is-open { display: flex; }
  html body.lt-professional .navigation > a { padding: 10px 0; }
  html body.lt-professional .navigation .button { margin-top: 9px; }
  html body.lt-professional .language-switch { border: 0; padding: 8px 0; }
}
@media (min-width: 1400px) {
  html body.lt-professional .navigation { display: flex; }
  html body.lt-professional .menu-toggle { display: none; }
}
@media (max-width: 1199px) {
  html body.lt-professional.lt-home-professional .document-grid,
  html body.lt-professional .dd-directory-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  html body.lt-professional :is(.page-layout,.dd-layout,.city-body,.document-body) { grid-template-columns: minmax(0,1fr) 260px; gap: 32px; }
  html body.lt-professional :is(.final-task-grid,.scope-grid,.dd-use-grid) { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 1000px) {
  html body.lt-professional :is(.page-layout,.dd-layout,.city-body,.document-body) { grid-template-columns: minmax(0,1fr); gap: 0; }
  html body.lt-professional :is(.page-sidebar,.dd-aside,.city-aside,.document-aside) { position: static; margin-block: 24px 36px; }
  html body.lt-professional .document-aside { display: block; }
  html body.lt-professional :is(.dd-hero-grid,.city-hero-grid,.document-hero-grid) { grid-template-columns: minmax(0,1fr); gap: 32px; }
  html body.lt-professional .city-summary dl { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 28px; }
  html body.lt-professional.lt-home-professional .hero-grid { grid-template-columns: minmax(0,1fr); gap: 36px; }
  html body.lt-professional.lt-home-professional .hero h1 { font-size: clamp(38px,5.5vw,60px); }
  html body.lt-professional.lt-home-professional .hero-image img { aspect-ratio: 1.85; }
  html body.lt-professional.lt-home-professional .finder { grid-template-columns: minmax(0,1fr); gap: 24px; }
  html body.lt-professional.lt-home-professional :is(.industry-layout,.services-layout,.quality-intro,.about-layout,.faq-layout) { grid-template-columns: minmax(0,1fr); gap: 32px; }
  html body.lt-professional.lt-home-professional .industry-picker { grid-template-columns: repeat(4,minmax(0,1fr)); }
  html body.lt-professional.lt-home-professional .industry-choice { padding: 20px 16px; }
  html body.lt-professional.lt-home-professional .section-heading { display: block; }
  html body.lt-professional.lt-home-professional .section-intro { margin-top: 22px; max-width: 680px; }
  html body.lt-professional .contact-layout { flex-wrap: wrap; }
  html body.lt-professional .rd-project-grid { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 760px) {
  html body.lt-professional { --lt-gutter: 24px; --lt-header-height: 78px; --lt-body: 16px; }
  html body.lt-professional .brand { width: 152px; }
  html body.lt-professional .utility-inner { flex-wrap: wrap; gap: 2px 16px; padding-block: 7px; }
  html body.lt-professional .utility a { white-space: normal; }
  html body.lt-professional :is(.page-hero,.dd-hero,.city-hero,.document-hero,.rd-hero) { padding-block: 26px 40px; }
  html body.lt-professional :is(.page-hero,.dd-page,.city-proto,.document-hero,.rd-page) h1 { font-size: clamp(30px,7vw,42px); }
  html body.lt-professional :is(.page-lead,.dd-page .dd-lead,.city-hero-lead,.document-lead,.rd-lead) { font-size: 17px; line-height: 1.85; }
  html body.lt-professional :is(.editorial-section,.final-section,.dd-section,.city-section,.document-section) { padding-block: 32px; }
  html body.lt-professional :is(.editorial-section,.final-section,.dd-section,.city-section,.document-section) > h2,
  html body.lt-professional :is(.dd-page,.city-proto,.rd-page) h2 { font-size: 27px; }
  html body.lt-professional :is(.final-task-grid,.scope-grid,.process-grid,.dd-use-grid,.dd-review-grid,.dd-steps,.region-scenario-grid,.city-review,.city-steps,.dd-form-grid,.city-form-grid,.form-row,.use-grid,.detail-grid,.delivery-grid,.document-steps,.related-grid) { grid-template-columns: minmax(0,1fr); gap: 24px; }
  html body.lt-professional .dd-directory .dd-use-grid { grid-template-columns: minmax(0,1fr); }
  html body.lt-professional :is(.dd-directory-grid,.final-notary-grid) { grid-template-columns: repeat(2,minmax(0,1fr)); }
  html body.lt-professional :is(.directory-card,.dd-directory-card,.city-service) { padding: 24px 20px; }
  html body.lt-professional .industry-directory .directory-card { padding: 0; }
  html body.lt-professional :is(.directory-card,.directory-grid.compact,.dd-directory-card) h3 { font-size: 18px; }
  html body.lt-professional .final-wechat { grid-template-columns: minmax(0,1fr); }
  html body.lt-professional .final-wechat h2 { grid-column: auto; }
  html body.lt-professional :is(.dd-form,.city-quote) { padding: 24px 20px; }
  html body.lt-professional .dd-material-table tbody th { font-size: 17px; }
  html body.lt-professional .dd-material-table td::before { font-size: 14px; }
  html body.lt-professional .city-table { min-width: 640px; }
  html body.lt-professional :is(.city-table-wrap,.material-table-wrap) { max-width: 100%; overflow-x: auto; }
  html body.lt-professional .city-mobile-action { gap: 8px; padding-inline: var(--lt-gutter); flex-wrap: wrap; }
  html body.lt-professional .city-mobile-action .city-primary { font-size: 15px; padding: 10px 16px; }
  html body.lt-professional.lt-home-professional .hero { padding-block: 40px; }
  html body.lt-professional.lt-home-professional .hero h1 { font-size: clamp(32px,6.5vw,48px); line-height: 1.38; }
  html:lang(en) body.lt-professional.lt-home-professional .hero h1 { font-size: clamp(34px,7.8vw,48px); line-height: 1.2; }
  html body.lt-professional.lt-home-professional .hero-lead { font-size: 18px; }
  html body.lt-professional.lt-home-professional .hero-image img { aspect-ratio: 1.45; }
  html body.lt-professional.lt-home-professional .hero-visual-brand .image-caption { display: flex; text-align: left; }
  html body.lt-professional.lt-home-professional .finder { padding: 26px 20px; }
  html body.lt-professional.lt-home-professional .search-field { flex-wrap: wrap; padding: 0 12px; }
  html body.lt-professional.lt-home-professional .search-field input { flex: 1; width: 0; }
  html body.lt-professional.lt-home-professional .search-field .button { flex-basis: calc(100% + 24px); margin: 0 -12px -1px; }
  html body.lt-professional.lt-home-professional .document-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  html body.lt-professional.lt-home-professional .document-card { display: block; padding: 24px 18px; min-height: 0; }
  html body.lt-professional.lt-home-professional .document-icon { display: block; margin: 0 0 14px; }
  html body.lt-professional.lt-home-professional .document-card h3 { font-size: 18px; }
  html body.lt-professional.lt-home-professional .document-toolbar { flex-wrap: wrap; }
  html body.lt-professional.lt-home-professional .industry-picker { grid-template-columns: repeat(2,minmax(0,1fr)); }
  html body.lt-professional.lt-home-professional .industry-choice { display: flex; gap: 8px; min-height: 120px; }
  html body.lt-professional.lt-home-professional .quality-columns { grid-template-columns: minmax(0,1fr); gap: 28px; }
  html body.lt-professional.lt-home-professional .quality-section { padding-block: 56px; }
  html body.lt-professional.lt-home-professional .section-bottom { display: block; }
  html body.lt-professional.lt-home-professional .section-bottom p { margin-top: 18px; }
  html body.lt-professional .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px 24px; }
  html body.lt-professional .footer-brand { grid-column: 1/-1; }
  html body.lt-professional .footer-project { grid-column: 1/-1; }
  html body.lt-professional .dialog { padding: 38px 24px 28px; }
}
@media (max-width: 480px) {
  html body.lt-professional { --lt-gutter: 20px; }
  html body.lt-professional .header-inner { gap: 12px; }
  html body.lt-professional .brand { width: 132px; }
  html body.lt-professional .language-switch { font-size: 13px; }
  html body.lt-professional .menu-toggle { font-size: 15px; padding-left: 0; gap: 8px; }
  html body.lt-professional :is(.directory-grid,.dd-directory-grid,.final-map-grid,.city-services) { grid-template-columns: minmax(0,1fr); }
  html body.lt-professional .city-summary dl { grid-template-columns: minmax(0,1fr); }
  html body.lt-professional.lt-home-professional .document-grid { grid-template-columns: minmax(0,1fr); }
  html body.lt-professional.lt-home-professional .document-card { display: flex; gap: 18px; padding: 25px 22px; }
  html body.lt-professional.lt-home-professional .document-icon { margin-top: 5px; }
  html body.lt-professional.lt-home-professional .hero h1 { font-size: clamp(29px,6.5vw,34px); }
  html:lang(en) body.lt-professional.lt-home-professional .hero h1 { font-size: 34px; }
  html body.lt-professional .contact-section h2 { font-size: 28px; }
  html body.lt-professional .footer-grid { grid-template-columns: minmax(0,1fr); }
}
