.area-landscape {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: #102330;
  color: #f6f5ef;
}
.area-cartography, .area-cartography img, .area-landscape::before {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.area-cartography { z-index: -2 }
.area-cartography img { object-fit: cover; object-position: 70% 44% }
.area-landscape::before {
  content: "";
  z-index: -1;
  background: linear-gradient(90deg, #0b1822 2%, rgba(11,24,34,.94) 22%, rgba(11,24,34,.76) 39%, rgba(11,24,34,.08) 63%, transparent 75%);
}
.local-strip.area-landscape, .in-area-hero.area-landscape { padding: 0 }
.local-strip .local-inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 1.1rem;
  min-height: clamp(370px,34vw,570px);
  padding-block: 3.5rem;
}
.local-strip .local-inner > div { max-width: min(36vw, 34rem) }
.area-landscape .eyebrow, .area-landscape .in-kicker { color: #f7a77d }
.local-strip .local-inner h2 { font-size: clamp(42px,4.5vw,80px); line-height: 1.02 }
.local-strip .local-inner > div > p:not(.eyebrow), .area-landscape .in-area-text .in-lead { color: #dee6e8 }
.local-strip .text-link { color: #fff; border-color: #71818a }
.local-strip .text-link .icon, .area-place .in-icon { color: #ff995e }
.map-sources {
  position: absolute;
  right: clamp(12px,2vw,32px);
  bottom: .55rem;
  z-index: 1;
  padding: 3px 6px;
  border-radius: 3px;
  background: rgba(11,24,34,.82);
  color: #c5d5dd;
  font: 10px/1.55 var(--body);
}
.map-sources a { text-decoration: underline; text-underline-offset: 2px }
.area-landscape .in-area-layout {
  min-height: clamp(490px,43vw,670px);
  padding-block: clamp(3.5rem,6vw,6rem);
  align-items: center;
}
.area-landscape .in-area-text { max-width: 32rem }
.area-place {
  align-self: end;
  justify-self: end;
  padding: .85rem 1.15rem;
  border-left: 2px solid var(--orange);
  background: rgba(12,27,37,.92);
  color: #f6f5ef;
}
.area-place h2 { margin: .25rem 0 .1rem; font-size: 1.35rem; letter-spacing: -.035em }
.area-place .in-loc-label { font-size: .6rem; color: #b7cbd5 }
.area-place a { display: inline-flex; gap: .4rem; align-items: center; padding-block: .35rem; font-size: .82rem; font-weight: 600 }
.area-place .in-icon { width: 1em; height: 1em }
@media(min-width:701px) {
  .area-place { position: absolute; right: var(--gutter); bottom: 2.15rem }
}
@media(max-width:700px) {
  .area-landscape .area-cartography { height: 350px }
  .area-cartography img { object-position: center 41% }
  .area-landscape::before { background: linear-gradient(to bottom, transparent 110px, rgba(16,35,48,.07) 172px, #102330 346px) }
  .local-strip .local-inner, .area-landscape .in-area-layout {
    display: block;
    min-height: 0;
    padding-top: 250px;
    padding-bottom: 3.25rem;
  }
  .local-strip .local-inner > div, .area-landscape .in-area-text { max-width: 32rem }
  .local-strip .local-inner > div + div { margin-top: .9rem }
  .area-landscape .in-area-text .in-lead { margin-block: 1rem 1.25rem }
  .area-place { display: inline-block; margin-top: 1.8rem }
  .map-sources { left: var(--gutter); right: auto; font-size: 9px; padding-left: 0 }
}

.partner-band { color: #f4f7f6; background: #142a32; padding-block: clamp(44px,5.1vw,80px) }
.partner-layout { display: grid; grid-template-columns: minmax(190px,.68fr) minmax(0,1.5fr); align-items: center; gap: clamp(42px,6.5vw,106px) }
.partner-logo {
  background: white;
  border-radius: 3px;
  display: grid;
  place-items: center;
  align-self: stretch;
  min-height: 220px;
  padding: clamp(21px,2.5vw,48px);
}
.partner-logo img { width: clamp(145px,15vw,230px); height: auto; max-width: 100% }
.partner-copy .eyebrow { color: #c9dbdc }
.partner-copy h2, .social-copy h2 { font-size: clamp(38px,3.65vw,66px); line-height: 1.03; letter-spacing: -.055em; margin: 0; font-weight: 680 }
.partner-copy .orange-text { color: var(--orange) }
.partner-copy > p:not(.eyebrow), .social-copy > p:not(.eyebrow) { margin: 1.05rem 0 1.45rem; font-size: clamp(1rem,1.2vw,1.2rem); line-height: 1.55; max-width: 52ch }
.partner-copy > p:not(.eyebrow) { color: #d5e1e2 }
.partner-links, .social-links { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem 1.65rem }
.partner-links .text-link { color: #ecf1ef; border-color: #7e979c }
.social-section { padding-block: clamp(44px,5.5vw,86px); background: #f6f5ef }
.social-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,500px); gap: clamp(30px,7vw,115px); align-items: start }
.social-copy { align-self: center }
.social-copy .button { display: inline-flex }
.social-links { margin-top: .65rem }
.social-widget { width: 100%; max-width: 500px; min-width: 0 }
.social-view { width: 100%; background: white; border-radius: 4px; overflow: hidden; box-shadow: 0 0 0 1px #d5d9d7 }
.social-view iframe { display: block; width: 100%; border: 0 }
.social-help { margin: .6rem 0 0; color: #4e5c64; font-size: .8rem; line-height: 1.5 }
#facebook, #fujitsu-airstage { scroll-margin-top: var(--home-header-height,80px) }
@media (max-width: 760px) {
  .partner-layout { grid-template-columns: minmax(0,1fr); gap: 1.65rem }
  .partner-logo { justify-self: start; width: 158px; min-height: 0; padding: 12px 22px }
  .partner-logo img { width: 114px }
  .social-layout { grid-template-columns: minmax(0,1fr); gap: 1.5rem }
  .partner-copy h2, .social-copy h2 { font-size: clamp(34px,7.5vw,46px) }
}
.social-fallback { margin: 0 }
.social-fallback a { display: block }
.social-cover { width: 100%; aspect-ratio: 3.5; height: auto; object-fit: cover }
.social-profile { display: flex; gap: .85rem; align-items: center; padding: 1rem 1.15rem; font-size: 1rem; font-weight: 650 }
.social-profile small { display: block; margin-top: .15rem; font-size: .78rem; color: #53636b; font-weight: 500 }
.social-profile .icon { margin-left: auto; width: 18px; height: 18px }

.job-clips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,3vw,40px);margin-top:2rem}.job-clips figure{margin:0}.job-clips video{display:block;width:100%;height:clamp(280px,38vw,490px);background:#11191e;object-fit:contain}.job-clips figcaption{padding:1rem 0;line-height:1.5}.job-clips strong{display:block;font-size:1.2rem}.social-cover{object-position:50% 44%}@media(max-width:600px){.job-clips{grid-template-columns:1fr}}
