/* Contact-first source order on mobile; portrait remains in the left desktop column. */
body.corporate-site.contact-page .contact-grid.contact-grid-clear{grid-template-areas:"intro person" "photo person" "office cooperation";grid-template-rows:max-content minmax(0,1fr) auto;row-gap:32px}
body.corporate-site.contact-page .contact-grid-clear .contact-intro-copy{display:block!important}
body.corporate-site.contact-page .contact-grid-clear>.contact-photo{grid-area:photo!important;margin:0!important}
body.corporate-site.contact-page .contact-cooperation details{margin:0;padding:0}
body.corporate-site.contact-page .contact-cooperation summary{display:flex;align-items:baseline;justify-content:space-between;gap:20px;min-height:44px;cursor:pointer;list-style:none;padding:0}
body.corporate-site.contact-page .contact-cooperation summary::-webkit-details-marker{display:none}
body.corporate-site.contact-page .contact-cooperation summary::marker{content:''}
body.corporate-site.contact-page .contact-grid-clear .contact-cooperation summary .contact-subheading{margin:0!important}
body.corporate-site.contact-page .contact-cooperation summary:focus-visible{outline:2px solid currentColor;outline-offset:5px}
body.corporate-site.contact-page .contact-cooperation .contact-disclosure-icon{flex:none;line-height:1}
body.corporate-site.contact-page .contact-cooperation .contact-disclosure-icon::before{content:'+'}
body.corporate-site.contact-page .contact-cooperation details[open] .contact-disclosure-icon::before{content:'−'}
body.corporate-site.contact-page .contact-cooperation .contact-cooperation-content{padding-top:20px}
@layer typoint-type-system{body.corporate-site.contact-page .contact-disclosure-icon{font-family:Nnnouvellegrotesk-Normal,Arial,sans-serif!important;font-size:var(--type-body)!important;font-weight:400!important}}
@media(max-width:760px){
 body.corporate-site.contact-page .contact-grid.contact-grid-clear{grid-template-columns:minmax(0,1fr);grid-template-areas:"intro" "person" "photo" "office" "cooperation";grid-template-rows:auto;row-gap:32px}
}

/* Bring the office address slightly closer to the portrait. */
body.corporate-site.contact-page .contact-grid-clear>.contact-office{margin-top:calc(-52px - var(--type-large) * 1.2)!important}
@media(max-width:760px){body.corporate-site.contact-page .contact-grid-clear>.contact-office{margin-top:-16px!important}}
