.marketing .company-related,
.marketing .company-directory {
    --company-line: color-mix(in oklab, var(--color-ink) 18%, var(--color-paper));
    --company-muted: color-mix(in oklab, var(--color-ink) 78%, var(--color-paper));
}
.marketing .company-breadcrumb { display: flex; flex-wrap: wrap; align-items: baseline; gap: .35rem .6rem; }
.marketing .company-breadcrumb > * { min-width: 0; overflow-wrap: anywhere; }
.marketing .company-profile-logo { display: block; margin-top: 1.5rem; width: 10rem; height: 10rem; object-fit: contain; padding: 1rem; background: var(--color-paper); border-radius: .25rem; }
.marketing .company-profile-logo[hidden] { display: none; }
.marketing .company-related { margin-top: 4.5rem; padding-top: 2.75rem; border-top: 2px solid var(--color-brand); }
.marketing .company-kicker { color: var(--company-muted); font-size: .6875rem; font-weight: 650; letter-spacing: .14em; text-transform: uppercase; margin: 0 0 .8rem; }
.marketing .company-related-heading { max-width: 46rem; margin-bottom: 2rem; }
.marketing .company-related h2,
.marketing .company-directory h2 { font-family: var(--font-display); font-size: clamp(1.9rem, 3.4vw, 2.8rem); line-height: 1.12; letter-spacing: -.025em; }
.marketing .company-related-heading > p:last-child { margin-top: 1rem; color: var(--company-muted); }
.marketing .company-related-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); align-items: start; gap: clamp(2rem, 5vw, 4.5rem); }
.marketing .company-related h3 { font: 600 1.5rem/1.25 var(--font-display); margin-bottom: .8rem; }
.marketing .company-related-places > p { color: var(--company-muted); max-width: 55ch; line-height: 1.75; font-size: .9375rem; }
.marketing .company-link-list { list-style: none; padding: 0; margin: 1.25rem 0 0; }
.marketing .company-link-list > li { border-bottom: 1px solid var(--company-line); }
.marketing .company-link-list a { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1rem 0; min-height: 3.5rem; font-size: .9375rem; text-decoration: none; }
.marketing .company-link-list a > span:first-child { min-width: 0; overflow-wrap: anywhere; }
.marketing .company-link-list a > span:last-child { flex: none; color: var(--color-brand-ink); }
.marketing .company-link-list a:hover > span:first-child { text-decoration: underline; text-underline-offset: .2em; }
.marketing .company-directory-link { display: inline-block; margin-top: 1.25rem; padding-block: .4rem; font-size: .875rem; font-weight: 600; color: var(--color-brand-ink); text-decoration: underline; text-underline-offset: .2em; }
.marketing .company-related-guides { background: radial-gradient(color-mix(in oklab, var(--color-paper) 12%, transparent) .7px, transparent .7px) 0 0 / 22px 22px, var(--color-ink-deep); color: var(--color-paper); padding: clamp(1.5rem, 3vw, 2.5rem); border-top: 3px solid var(--color-brand); }
.marketing .company-related-guides .company-kicker { color: color-mix(in oklab, var(--color-paper) 78%, var(--color-ink)); }
.marketing .company-guide-list { list-style: none; padding: 0; margin: 1.25rem 0 0; }
.marketing .company-guide-list li { border-bottom: 1px solid color-mix(in oklab, var(--color-paper) 22%, var(--color-ink)); }
.marketing .company-guide-list a { display: grid; grid-template-columns: 1.5rem minmax(0, 1fr) 1rem; gap: .8rem; padding: 1.1rem 0; align-items: baseline; font-size: .9375rem; text-decoration: none; }
.marketing .company-guide-list a:hover > span:nth-child(2) { text-decoration: underline; text-underline-offset: .2em; }
.marketing .company-guide-number { font-size: .6875rem; color: color-mix(in oklab, var(--color-paper) 78%, var(--color-ink)); font-variant-numeric: tabular-nums; }
.marketing .company-related-guides .company-directory-link { color: var(--color-paper); }
.marketing .company-related a:focus-visible,
.marketing .company-directory a:focus-visible,
.marketing .company-directory-actions a:focus-visible { outline: 2px solid var(--color-brand-ink); outline-offset: 5px; }
.marketing .company-related-guides a:focus-visible { outline-color: var(--color-paper); }
.marketing .company-directory-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1.25rem 2rem; margin-top: 2rem; }
.marketing .company-directory-text-link { color: var(--color-paper); font-size: .9375rem; text-decoration: underline; text-underline-offset: .2em; }
.marketing .company-directory-intro { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 3rem; align-items: end; }
.marketing .company-directory-intro > p { font-size: .9375rem; color: var(--company-muted); line-height: 1.7; max-width: 58ch; }
.marketing .company-alphabet { display: flex; flex-wrap: wrap; gap: .5rem; margin-block: 2rem 3rem; padding-block: 1.25rem; border-block: 1px solid var(--company-line); }
.marketing .company-alphabet a { display: grid; place-items: center; min-width: 2.75rem; height: 2.75rem; padding-inline: .5rem; color: var(--color-brand-ink); font: 600 1.125rem/1 var(--font-display); text-decoration: none; }
.marketing .company-alphabet a:hover { background: color-mix(in oklab, var(--color-brand) 10%, var(--color-paper)); text-decoration: underline; text-underline-offset: .2em; }
.marketing .company-alphabet-group { display: grid; grid-template-columns: 5rem minmax(0, 1fr); gap: 2rem; margin-bottom: 2.5rem; scroll-margin-top: 7rem; }
.marketing .company-alphabet-group > h3 { font: 500 clamp(2.5rem, 5vw, 4.25rem)/1 var(--font-display); color: var(--color-brand-ink); padding-top: .8rem; }
.marketing .company-index-list { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--company-line); }
.marketing .company-index-list li { border-bottom: 1px solid var(--company-line); }
.marketing .company-index-list a { display: grid; grid-template-columns: minmax(0, 1fr) minmax(8rem, .35fr) 1rem; align-items: baseline; gap: 1.5rem; padding: 1.1rem .5rem 1.1rem 0; text-decoration: none; }
.marketing .company-index-name { font: 500 1.125rem/1.4 var(--font-display); overflow-wrap: anywhere; }
.marketing .company-index-location { color: var(--company-muted); font-size: .8125rem; overflow-wrap: anywhere; }
.marketing .company-index-arrow { color: var(--color-brand-ink); }
.marketing .company-index-list a:hover .company-index-name { color: var(--color-brand-ink); text-decoration: underline; text-underline-offset: .2em; }
.marketing .company-region-index { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr); gap: clamp(2rem, 5vw, 4.5rem); margin-top: 4rem; padding-top: 3rem; border-top: 2px solid var(--color-brand); }
.marketing .company-region-index > div > p:last-child { margin-top: 1rem; font-size: .9375rem; color: var(--company-muted); line-height: 1.7; max-width: 40ch; }
.marketing .company-region-index .company-link-list { margin-top: 0; }
@media (max-width: 767px) {
    .marketing .company-related { margin-top: 3rem; padding-top: 2rem; }
    .marketing .company-related-grid,
    .marketing .company-directory-intro,
    .marketing .company-region-index { grid-template-columns: minmax(0, 1fr); gap: 1.75rem; }
    .marketing .company-breadcrumb { font-size: .75rem; }
    .marketing .company-alphabet { margin-bottom: 2rem; gap: .25rem; }
    .marketing .company-alphabet-group { grid-template-columns: 2.5rem minmax(0, 1fr); gap: .75rem; }
    .marketing .company-alphabet-group > h3 { font-size: 2rem; }
    .marketing .company-index-list a { grid-template-columns: minmax(0, 1fr) 1rem; gap: .25rem .75rem; }
    .marketing .company-index-location { grid-row: 2; grid-column: 1; }
    .marketing .company-index-arrow { grid-row: 1; grid-column: 2; }
    .marketing .company-index-name { font-size: 1.0625rem; }
}
