/* Company: one vision and two product criteria, with dedicated art direction. */
@font-face {
  font-family: 'Archivo Company Wide';
  src: url('assets/Archivo-Expanded-Regular.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
.company-editorial {
  --company-muted: #53616a;
  --company-paper: #f4f5f2;
  background: var(--company-paper);
  color: #101619;
}
.company-editorial h1, .company-editorial h2 {
  font-family: 'Archivo Company Wide', 'Instrument Sans', Arial, sans-serif;
  font-weight: 400;
  letter-spacing: -.035em;
  line-height: 1.16;
  text-wrap: balance;
}
.company-editorial h1 > span, .company-editorial h2 > span {display:block}
.company-editorial h1, .company-editorial h2, .company-editorial h3, .company-editorial p {overflow-wrap:break-word}
.company-editorial .eyebrow {
  font-size: .8125rem;
  line-height: 1.6;
  letter-spacing: .14em;
  margin-bottom: 1.5rem;
  color: var(--company-muted);
}
.company-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: clamp(34rem, 76svh, 54rem);
  display: flex;
  align-items: flex-end;
  color: #fff;
  background: #253840;
}
.company-hero-photo, .company-hero-shade {position:absolute;inset:0;z-index:-1}
.company-hero-photo img {width:100%;height:100%;object-fit:cover;object-position:50% 62%}
.company-hero-shade {background:linear-gradient(0deg,#06121adb,#06121a55 56%,#06121a11)}
.company-hero-copy {width:100%;padding-block:6rem 4.5rem}
.company-hero .eyebrow {color:#f5f8fa}
.company-hero h1 {font-size:clamp(3.6rem,6.8vw,7.75rem);line-height:1.05;max-width:17ch}
.company-vision {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.95fr);
  align-items:start;
  gap:clamp(3rem,7vw,8rem);
  padding-block:clamp(3.5rem,6.5vw,7rem);
}
.company-vision h2 {font-size:clamp(2.3rem,3.4vw,3.7rem);max-width:18ch}
.company-vision-copy {padding-top:2.75rem}
.company-lead {font-size:clamp(1.125rem,1.45vw,1.375rem);line-height:1.65;max-width:43ch;text-wrap:pretty}
.company-vision-copy > p + p {font-size:1.0625rem;line-height:1.7;color:var(--company-muted);max-width:43ch;margin-top:1.5rem;text-wrap:pretty}
.company-approach {
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);
  background:#162127;
  color:#f4f6f7;
}
.company-horizon {position:relative;min-height:38rem;overflow:hidden;background:#4c5b62}
.company-horizon-photo {position:absolute;inset:0}
.company-horizon-photo img {width:100%;height:100%;object-fit:cover;object-position:50% 57%}
.company-principles {padding:clamp(3rem,5vw,6rem);counter-reset:principle}
.company-principles .eyebrow {color:#b2c4cd}
.company-principles-heading {margin-bottom:2.5rem}
.company-principles h2 {font-size:clamp(2.1rem,3.1vw,3.5rem);max-width:18ch}
.company-principles article {
  counter-increment:principle;
  display:grid;
  grid-template-columns:1.5rem minmax(0,1fr);
  gap:.5rem 1.5rem;
  padding-top:1.5rem;
  border-top:1px solid #536168;
}
.company-principles article + article {margin-top:1.8rem}
.company-principles article:before {content:'0' counter(principle);grid-row:1/3;color:#a8bbc5;font-size:.75rem;letter-spacing:.1em;line-height:2}
.company-principles h3 {font-size:1.2rem;font-weight:500;line-height:1.4}
.company-principles p {grid-column:2;max-width:39ch;color:#c6d1d7;font-size:1.0625rem;line-height:1.65;text-wrap:pretty}
.company-closing {background:var(--company-paper);color:#101619}
.company-closing-inner {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:3rem;
  padding-block:clamp(3.5rem,5.5vw,6rem) 3rem;
}
.company-closing h2 {font-size:clamp(2.1rem,3vw,3.5rem);max-width:23ch}
.company-contact-link {
  display:inline-flex;align-items:center;justify-content:center;
  gap:2rem;min-height:3.5rem;max-width:100%;
  padding:1rem 1.6rem;
  border:1px solid #162127;border-radius:999px;
  background:#162127;color:#f4f6f7;
  font-size:1rem;line-height:1.4;
  transition:background .25s,color .25s;
}
.company-contact-link > span {min-width:0;overflow-wrap:anywhere}
.company-development {font-size:.875rem;line-height:1.65;color:var(--company-muted);padding-bottom:2rem}
@media(hover:hover){.company-contact-link:hover{background:transparent;color:#162127}}
@media(max-width:1000px) {
  .company-principles {padding:3rem 2rem}
  .company-principles article {column-gap:1rem}
  .company-closing-inner {grid-template-columns:minmax(0,1fr)}
  .company-contact-link {justify-self:start}
}
@media(max-width:760px) {
  .company-hero {min-height:clamp(31rem,72svh,43rem)}
  .company-hero-copy {padding-block:9rem 3rem}
  .company-hero h1 {font-size:clamp(2.75rem,10vw,4.4rem)}
  .company-hero-photo img {object-position:61% 55%}
  .company-vision {grid-template-columns:minmax(0,1fr);gap:1.75rem;padding-block:3rem}
  .company-vision h2 {font-size:clamp(2.1rem,7.5vw,3.25rem);max-width:20ch}
  .company-vision-copy {padding-top:0}
  .company-vision-copy > p + p {font-size:1rem;margin-top:1.25rem}
  .company-approach {grid-template-columns:minmax(0,1fr)}
  .company-horizon {min-height:0;aspect-ratio:1.18}
  .company-principles {padding:2.75rem var(--gutter) 3rem}
  .company-principles h2 {font-size:clamp(2.1rem,7.5vw,3.25rem)}
  .company-principles-heading {margin-bottom:2rem}
  .company-principles p {font-size:1rem}
  .company-principles h3 {font-size:1.125rem}
  .company-closing-inner {padding-block:3rem 2rem;gap:1.75rem}
  .company-closing h2 {font-size:clamp(2rem,7.2vw,3rem)}
}
@media(prefers-reduced-motion:reduce){.company-contact-link{transition:none}}
