@media (min-width:821px) {
  body.page-home .home-company {
    --company-photo-height:clamp(560px,50vw,710px);
    --company-copy-end:33.44vw;
    --company-photo-clear-left:calc(47vw - var(--company-photo-height) * .126 - 12px);
    --company-photo-clear-right:calc(47vw + var(--company-photo-height) * .116 + 12px);
    height:auto;min-height:var(--company-photo-height);
  }
  body.page-home .home-company .company-background {
    background-size:auto 100%;
    background-position:calc(47vw - var(--company-photo-height) * .88842) center;
  }
  body.page-home .home-company .company-background::after {
    background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.98) calc(var(--company-copy-end) + 8px),transparent var(--company-photo-clear-left),transparent var(--company-photo-clear-right),rgba(255,255,255,.65) 72%,#fff 96%);
  }
  body.page-home .home-company .company-layout {
    display:grid;width:100%;max-width:none;min-height:var(--company-photo-height);height:auto;
    grid-template-columns:minmax(0,32fr) minmax(0,20fr) minmax(0,44fr);
    column-gap:2%;padding:48px 4%;align-items:center;
  }
  body.page-home .home-company .company-copy {grid-column:1;width:100%;min-width:0}
  body.page-home .home-company .company-copy>p:not(.section-kicker) {font-size:clamp(12px,1.08vw,15px);color:#40575d;text-shadow:none}
  body.page-home .home-company .company-table {
    grid-column:3;width:100%;max-width:600px;justify-self:end;min-width:0;min-height:0;margin:0;
    padding:clamp(16px,2vw,26px);align-self:center;
  }
  body.page-home .home-company .company-table>div {
    grid-template-columns:minmax(54px,23%) minmax(0,1fr);
    gap:clamp(10px,1.25vw,21px);min-height:0;padding:clamp(10px,1.2vw,16px) 0;
  }
  body.page-home .home-company .company-table :is(dt,dd) {font-size:clamp(11px,1.02vw,14px)}
  body.page-home .home-company .company-table dd {min-width:0;overflow-wrap:anywhere}
  body.page-home .home-company .home-address-complete {white-space:normal!important}
}
@media (min-width:821px) and (max-width:1599px) {
  body.page-home .home-company .company-table {
    width:90%;
    padding-inline:clamp(16px,1.5vw,22px);
  }
  body.page-home .home-company .company-table>div {
    grid-template-columns:minmax(54px,21%) minmax(0,1fr);
    column-gap:12px;
  }
}
/* Fill wide screens to the right edge while keeping the door between the copy and table. */
@media (min-width:1600px) {
  body.page-home .home-company {--company-photo-clear-left:calc(100vw - var(--company-photo-height) * 1.166583 - 12px)}
  body.page-home .home-company .company-background {
    background-size:auto 115%;
    background-position:right center;
  }
  body.page-home .home-company .company-background::after {
    background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.98) calc(var(--company-copy-end) + 8px),transparent var(--company-photo-clear-left));
  }
  body.page-home .home-company .company-table {
    width:clamp(360px,24vw,460px);
    max-width:calc(var(--company-photo-height) * .762 - 4vw - 32px);
    padding-inline:20px;
  }
  body.page-home .home-company .company-table dd {font-size:13px}
}
