/*
 * PSFM shared contact alignment layer.
 * Loaded after legacy public styles so every contact list uses one predictable
 * icon column without changing links, tracking attributes, or content.
 */

html body[class]:not(#psfm-public-visual-unlock) main.main .seo-panel > .contact-line,
html body[class]:not(#psfm-public-visual-unlock) main.main .operational-snapshot-links > .operational-snapshot-link,
html body[class]:not(#psfm-public-visual-unlock) main.main .operational-snapshot-links > a,
html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main .seo-panel > .contact-line,
html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main .operational-snapshot-links > .operational-snapshot-link,
html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main .operational-snapshot-links > a {
    display: grid !important;
    grid-template-columns: 28px minmax(0, 1fr) !important;
    align-items: start !important;
    column-gap: 12px !important;
    min-width: 0 !important;
    text-align: start !important;
}

html body[class]:not(#psfm-public-visual-unlock) main.main :is(.contact-line, .operational-snapshot-link) > i,
html body[class]:not(#psfm-public-visual-unlock) main.main .operational-snapshot-links > a > i {
    grid-column: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    min-width: 28px !important;
    height: 28px !important;
    min-height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #ed1c24 !important;
    -webkit-text-fill-color: #ed1c24 !important;
    font-size: 1rem !important;
    line-height: 1 !important;
}

html body[class]:not(#psfm-public-visual-unlock) main.main :is(.contact-line, .operational-snapshot-link) > :not(i),
html body[class]:not(#psfm-public-visual-unlock) main.main .operational-snapshot-links > a > :not(i) {
    grid-column: 2 !important;
    min-width: 0 !important;
    margin-block: 0 !important;
}

html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main .seo-panel > .contact-line,
html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main .operational-snapshot-links > .operational-snapshot-link,
html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main .operational-snapshot-links > a {
    grid-template-columns: 28px minmax(0, 1fr) !important;
    direction: rtl !important;
    text-align: right !important;
}

html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main :is(.contact-line, .operational-snapshot-link) > i,
html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main .operational-snapshot-links > a > i {
    grid-column: 1 !important;
}

html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main :is(.contact-line, .operational-snapshot-link) > :not(i),
html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main .operational-snapshot-links > a > :not(i) {
    grid-column: 2 !important;
}

html body[class]:not(#psfm-public-visual-unlock) main.main .seo-page .local-contact-card .local-contact-row,
html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main .seo-page .local-contact-card .local-contact-row {
    display: grid !important;
    grid-template-columns: 32px minmax(0, 1fr) !important;
    align-items: start !important;
    column-gap: 12px !important;
}

html body[class]:not(#psfm-public-visual-unlock) main.main .seo-page .local-contact-card .local-contact-row > i {
    grid-column: 1 !important;
    width: 32px !important;
    min-width: 32px !important;
    height: 32px !important;
    min-height: 32px !important;
    margin: 0 !important;
}

html body[class]:not(#psfm-public-visual-unlock) main.main .seo-page .local-contact-card .local-contact-row > div {
    grid-column: 2 !important;
    min-width: 0 !important;
}

html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main .seo-page .local-contact-card .local-contact-row {
    grid-template-columns: 32px minmax(0, 1fr) !important;
    direction: rtl !important;
    text-align: right !important;
}

html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main .seo-page .local-contact-card .local-contact-row > i {
    grid-column: 1 !important;
}

html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main .seo-page .local-contact-card .local-contact-row > div {
    grid-column: 2 !important;
}

html body[class]:not(#psfm-public-visual-unlock) main.main .psfm-contact-page .contact-info,
html body[class]:not(#psfm-public-visual-unlock) main.main .psfm-contact-page .psfm-contact-support-final {
    display: grid !important;
    grid-template-columns: 76px minmax(0, 1fr) !important;
    align-items: center !important;
    column-gap: 18px !important;
    text-align: start !important;
}

html body[class]:not(#psfm-public-visual-unlock) main.main .psfm-contact-page .contact-info-icon,
html body[class]:not(#psfm-public-visual-unlock) main.main .psfm-contact-page .psfm-contact-support-icon {
    grid-column: 1 !important;
    width: 68px !important;
    min-width: 68px !important;
    height: 68px !important;
    min-height: 68px !important;
    margin: 0 !important;
}

html body[class]:not(#psfm-public-visual-unlock) main.main .psfm-contact-page .contact-info-content {
    grid-column: 2 !important;
    min-width: 0 !important;
    margin: 0 !important;
}

html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main .psfm-contact-page .contact-info,
html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main .psfm-contact-page .psfm-contact-support-final {
    grid-template-columns: 76px minmax(0, 1fr) !important;
    direction: rtl !important;
    text-align: right !important;
}

html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main .psfm-contact-page .contact-info-icon,
html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main .psfm-contact-page .psfm-contact-support-icon {
    grid-column: 1 !important;
}

html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main .psfm-contact-page .contact-info-content {
    grid-column: 2 !important;
}

html body[class]:not(#psfm-public-visual-unlock) .footer-area .footer-contact > ul {
    display: grid !important;
    gap: 14px !important;
}

html body[class]:not(#psfm-public-visual-unlock) .footer-area .footer-contact > ul > li:not(.footer-contact-hours) {
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr) !important;
    align-items: start !important;
    column-gap: 12px !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    text-align: start !important;
}

html body[class]:not(#psfm-public-visual-unlock) .footer-area .footer-contact > ul > li:not(.footer-contact-hours) > i {
    grid-column: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    min-width: 24px !important;
    height: 24px !important;
    min-height: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    line-height: 1 !important;
}

html body[class]:not(#psfm-public-visual-unlock) .footer-area .footer-contact > ul > li:not(.footer-contact-hours) > a {
    grid-column: 1 / -1 !important;
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr) !important;
    align-items: start !important;
    column-gap: 12px !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

html body[class]:not(#psfm-public-visual-unlock) .footer-area .footer-contact > ul > li:not(.footer-contact-hours) > a > i {
    grid-column: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    min-width: 24px !important;
    height: 24px !important;
    min-height: 24px !important;
    margin: 0 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html body[class]:not(#psfm-public-visual-unlock) .footer-area .footer-contact > ul > li:not(.footer-contact-hours) > a > :not(i),
html body[class]:not(#psfm-public-visual-unlock) .footer-area .footer-contact > ul > li.footer-phone-item > a.footer-phone-link,
html body[class]:not(#psfm-public-visual-unlock) .footer-area .footer-contact > ul > li.footer-support-line-contact-list > span {
    grid-column: 2 !important;
    min-width: 0 !important;
    margin: 0 !important;
}

html body[class]:not(#psfm-public-visual-unlock) .footer-area .footer-contact > ul > li.footer-phone-item > a.footer-phone-link {
    display: block !important;
}

html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) .footer-area .footer-contact > ul > li:not(.footer-contact-hours),
html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) .footer-area .footer-contact > ul > li:not(.footer-contact-hours) > a {
    grid-template-columns: 24px minmax(0, 1fr) !important;
    direction: rtl !important;
    text-align: right !important;
}

html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) .footer-area .footer-contact > ul > li:not(.footer-contact-hours) > i,
html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) .footer-area .footer-contact > ul > li:not(.footer-contact-hours) > a > i {
    grid-column: 1 !important;
}

html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) .footer-area .footer-contact > ul > li:not(.footer-contact-hours) > a > :not(i),
html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) .footer-area .footer-contact > ul > li.footer-phone-item > a.footer-phone-link,
html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) .footer-area .footer-contact > ul > li.footer-support-line-contact-list > span {
    grid-column: 2 !important;
}

@media (max-width: 575.98px) {
    html body[class]:not(#psfm-public-visual-unlock) main.main .psfm-contact-page .contact-info,
    html body[class]:not(#psfm-public-visual-unlock) main.main .psfm-contact-page .psfm-contact-support-final {
        grid-template-columns: 56px minmax(0, 1fr) !important;
        column-gap: 14px !important;
    }

    html body[class]:not(#psfm-public-visual-unlock) main.main .psfm-contact-page .contact-info-icon,
    html body[class]:not(#psfm-public-visual-unlock) main.main .psfm-contact-page .psfm-contact-support-icon {
        width: 52px !important;
        min-width: 52px !important;
        height: 52px !important;
        min-height: 52px !important;
    }

    html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main .psfm-contact-page .contact-info,
    html[dir="rtl"] body[class]:not(#psfm-public-visual-unlock) main.main .psfm-contact-page .psfm-contact-support-final {
        grid-template-columns: 56px minmax(0, 1fr) !important;
    }
}
