.contact-page { color: #343a40; }
html.safari:not(.no-safari-overflow-x-fix) .body { overflow-x: clip; }
#header { z-index: 1030; }
.contact-tabs { position: sticky; top: var(--contact-header-height, 0px); z-index: 1020; display: flex; gap: .75rem; border-bottom: 1px solid #e2e5e8; margin-bottom: 2.5rem; background: #fff; box-shadow: 0 4px 10px rgba(28, 39, 51, .08); }
.contact-tab { padding: 1rem 1.5rem; border: 1px solid #e2e5e8; border-bottom: 3px solid transparent; border-radius: .5rem .5rem 0 0; background: #fff; color: #303744; font-weight: 700; cursor: pointer; }
.contact-tab:hover, .contact-tab.is-active { color: #a84000; }
.contact-tab.is-active { border-bottom-color: #F36B21; background: #fff7f2; }
.contact-page button:focus-visible, .contact-page input:focus-visible, .contact-page select:focus-visible, .contact-page textarea:focus-visible, .contact-page a:focus-visible { outline: 3px solid #F36B21; outline-offset: 3px; }
.contact-panel[hidden], .contact-card-wrap[hidden], .contact-empty[hidden], #inquiryStatus[hidden] { display: none !important; }
.contact-panel-heading { margin-bottom: 2rem; }
.contact-panel-heading h2 { font-size: clamp(1.65rem, 3vw, 2.25rem); font-weight: 700; margin-bottom: .6rem; }
.contact-panel-heading p { color: #616b74; margin-bottom: 0; }
.contact-filters { position: sticky; top: calc(var(--contact-header-height, 0px) + var(--contact-tabs-height, 4rem) + 1rem); }
.contact-filters h3, .contact-search label { font-size: 1rem; font-weight: 700; margin-bottom: 1rem; display: block; }
.contact-filter-list { display: flex; flex-direction: column; align-items: flex-start; gap: .55rem; }
.contact-filter { background: #fff; color: #3b4450; border: 1px solid #dfe3e8; border-radius: 2rem; padding: .55rem 1rem; text-align: left; cursor: pointer; }
.contact-filter:hover, .contact-filter.is-active { border-color: #F36B21; color: #9e3d00; background: #fff5ee; }
.contact-filter.is-active { font-weight: 700; }
.contact-search { margin-bottom: 1.5rem; }
.contact-search label { margin-bottom: .5rem; }
.contact-search .form-control { min-height: 3rem; }
.contact-search small { color: #616b74; display: block; margin-top: .35rem; }
.contact-card { border: 1px solid #e3e6e9; border-radius: .65rem; padding: 1.4rem; background: #fff; overflow-wrap: anywhere; box-shadow: 0 3px 15px rgba(28, 39, 51, .04); }
.contact-card-country { text-transform: uppercase; letter-spacing: .1em; color: #c64c0b; font-size: .72rem; font-weight: 700; margin-bottom: .6rem; }
.contact-card h3 { font-size: 1.16rem; line-height: 1.4; font-weight: 700; margin-bottom: 1rem; }
.contact-card p { font-size: .9rem; line-height: 1.55; margin: 0 0 .65rem; }
.contact-card p:last-child { margin-bottom: 0; }
.contact-card p span { font-weight: 700; }
.contact-card a, .contact-office a { text-decoration: underline; text-underline-offset: 2px; }
.contact-card a, .contact-card a:hover { color: #000; }
.contact-office a { color: #b4232d; }
.contact-office a:hover { color: #8f1c24; }
.contact-card-address { white-space: normal; }
.contact-empty { border: 1px solid #e2e5e8; border-radius: .5rem; padding: 1.5rem; }
.contact-field label { display: block; font-weight: 700; margin-bottom: .5rem; }
.contact-required { color: #b34000; }
.contact-field .form-control { min-height: 3rem; }
.contact-field textarea.form-control { min-height: 10rem; }
.contact-field-error { color: #a12c23; display: block; margin-top: .25rem; }
.contact-field [aria-invalid="true"] { border-color: #b73228; }
.contact-submit { width: 100%; padding: .85rem 1.25rem; background: #F36B21; color: #171717; border: 1px solid #d85c19; border-radius: .35rem; font-weight: 700; cursor: pointer; }
.contact-submit:hover { background: #e45e16; }
.contact-submit:disabled { opacity: .65; cursor: wait; }
.contact-office { padding: 1.5rem; }
.contact-office h3 { font-size: 1.3rem; font-weight: 700; margin-bottom: .75rem; }
.contact-office dl { margin: 1.75rem 0; }
.contact-office dt { font-weight: 700; margin-top: 1rem; }
.contact-office-icon { display: inline-block; width: 1.4rem; margin-right: .3rem; color: #b4232d; text-align: center; }
.contact-office dd { margin: .25rem 0 0; }
.contact-map { min-height: 500px; height: 100%; border-radius: .65rem; }
.contact-team-heading { font-size: 1.5rem; font-weight: 700; margin: 2.5rem 0 1.25rem; }
.contact-team-card h4 { font-size: 1.16rem; font-weight: 700; margin-bottom: 1rem; }
.contact-team-card p { overflow-wrap: anywhere; }
.contact-team-card i { color: #b4232d; margin-right: .4rem; }
.contact-team-card a { color: #000; }
@media (max-width: 991.98px) {
    .contact-filters { position: static; }
    .contact-filter-list { flex-direction: row; flex-wrap: wrap; }
    .contact-map { min-height: 400px; }
}
@media (max-width: 575.98px) {
    .contact-tabs { gap: .25rem; }
    .contact-tab { flex: 1; min-width: 0; padding: .8rem .25rem; font-size: .8rem; min-height: 3.25rem; overflow-wrap: anywhere; }
    .contact-card { padding: 1.1rem; }
}