/* Contact content inherits the shared catalogue, sidebar and footer. */
.contact-banner { background: linear-gradient(105deg, #e7edf3, #f8fafc 50%, #dceaf3); }
.contact-banner::before { display: none; }
.contact-banner .catalog-banner-title { color: #009bd6; border-color: #b2c6d3; }
.contact-banner p { color: #475e6e; }
.contact-banner .catalog-banner-inner { grid-template-columns: 1.25fr 1fr; }
.contact-banner-art { width: 100%; max-width: 440px; height: 250px; justify-self: end; }
.contact-panel { padding-bottom: 38px; }
.contact-information { font-style: normal; color: #687781; font-size: 15px; line-height: 1.9; padding: 0 0 10px; }
.contact-information h3 { margin: 0 0 10px; color: #46545e; font-size: 17px; }
.contact-information dl { margin: 0; }
.contact-information dl > div { display: grid; grid-template-columns: 65px minmax(0,1fr); gap: 6px; padding: 3px 0; }
.contact-information dt { color: #7d8891; }
.contact-information dt::after { content: '：'; }
.contact-information dd { margin: 0; overflow-wrap: anywhere; }
.contact-person { margin-left: 12px; white-space: nowrap; }
.contact-information a:hover { color: #009bd6; }
.contact-information a:focus-visible { outline: 2px solid #009bd6; outline-offset: 3px; }
@media(max-width:760px) {
 .contact-banner .catalog-banner-inner { min-height: 220px; gap: 12px; }
 .contact-banner-art { height: 200px; }
}
@media(max-width:540px) {
 .contact-banner .catalog-banner-inner { grid-template-columns: 1fr; min-height: 195px; padding-block: 26px; }
 .contact-banner-copy { position: relative; z-index: 1; }
 .contact-banner .catalog-banner-copy { position: relative; z-index: 1; padding: 0; }
 .contact-banner-art { position: absolute; right: -35px; width: 280px; opacity: .16; }
 .contact-information { font-size: 14px; }
 .contact-information h3 { font-size: 16px; }
 .contact-information dl > div { grid-template-columns: 58px minmax(0,1fr); padding-block: 5px; }
 .contact-panel { padding-bottom: 22px; }
}
