/* Map-led composition with a restrained overlapping address plate. */
.company-map-section{padding:50px 0 120px;background:#f7f6f2}
.company-map-section>.container{position:relative;padding-bottom:24px}
.company-map-frame{margin-left:0;margin-right:120px;background:#e7e5dd;border:1px solid #d9d5cb}
.company-map-frame iframe{display:block;width:100%;height:460px;border:0}
.company-map-heading{position:absolute;z-index:2;left:auto;right:0;top:105px;bottom:auto;width:400px;padding:27px 30px 29px;background:#242623;color:#f7f6f2;box-shadow:0 12px 28px #17191710}
.company-map-heading .eyebrow{color:#c3ac88;font-size:11px}
.content-page .company-map-heading h2{font-size:32px;font-weight:500;line-height:1.12;letter-spacing:-.01em;margin:12px 0 18px;color:#f7f6f2}
.company-map-heading h2 br{display:none}
.company-map-address{display:flex;align-items:flex-start;gap:11px;padding-top:16px;border-top:1px solid #ffffff29}
.office-map-pin{display:block;flex:0 0 19px;width:19px;height:23px;color:#d3584c;margin-top:2px}
.office-map-pin svg{display:block;width:19px;height:22px}
.company-map-address strong{display:block;font-size:13px;font-weight:500;line-height:1.7;color:#f4f3ee}
.company-map-address address{font-style:normal;font-size:13px;line-height:1.9;color:#d1d3c9;margin:6px 0 14px}
.company-map-address a{display:inline-block;color:#d2bb97;font-size:12px;font-weight:500;line-height:1.7;border-bottom:1px solid #a28964;padding-bottom:4px;transition:color .2s}
.company-map-address a:hover{color:#fff}
@media(max-width:1000px) and (min-width:761px){.company-map-frame{margin-left:0;margin-right:85px}.company-map-frame iframe{height:450px}.company-map-heading{width:340px;top:95px;padding:25px}}
@media(max-width:760px){.company-map-section{padding:25px 0 76px}.company-map-section>.container{padding-bottom:0;display:flex;flex-direction:column}.company-map-frame{margin:0;order:0}.company-map-frame iframe{height:330px}.company-map-heading{position:relative;inset:auto;align-self:flex-end;order:1;width:calc(100% - 28px);margin:-28px 0 0;padding:25px;box-shadow:none}.content-page .company-map-heading h2{font-size:31px;margin:14px 0 20px}.company-map-address{padding-top:18px}.company-map-address address{font-size:14px}}
@media(prefers-reduced-motion:reduce){.company-map-address a{transition:none}}

/* A restrained cut corner with a fine offset gold outline. */
.company-profile-visual{position:relative;isolation:isolate;width:355px;max-width:calc(100% - 12px);height:238px;margin:33px 0 12px;overflow:visible;border-radius:0;background:transparent}
.content-page .company-profile-main-photo{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:cover;object-position:54% center;transform:none;clip-path:polygon(0 0,100% 0,100% calc(100% - 22px),calc(100% - 22px) 100%,0 100%)}
.company-profile-outline{position:absolute;z-index:0;top:10px;left:10px;width:100%;height:100%;color:#a28964;stroke-width:1;opacity:.65;overflow:visible}
@media(max-width:760px){.company-profile-visual{margin-top:26px;width:335px;height:220px}}

/* Taller portrait balances the company details; the first row needs no top rule. */
.content-page .company-profile dl>div:first-child{border-top:0}
.content-page .company-profile-visual{height:440px;width:355px;margin-top:0}
.content-page .company-profile-main-photo{object-position:54% center}
@media(max-width:760px){.content-page .company-profile-visual{height:360px;width:100%;max-width:calc(100% - 12px)}}

/* Give the portrait more presence beside the company information. */
.content-page .company-profile-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:6%}
.content-page .company-profile-visual{width:100%;max-width:calc(100% - 12px);height:440px}
@media(max-width:760px){.content-page .company-profile-grid{grid-template-columns:1fr;gap:30px}.content-page .company-profile-visual{height:360px}}
