/* Full-bleed office portrait for o-korrektore.html only. */
.ab-office-hero {
  position: relative;
  isolation: isolate;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 760px;
  height: 100svh;
  max-height: 1100px;
  overflow: hidden;
  padding: clamp(160px, 21vh, 220px) max(40px, calc((100vw - 1600px) / 2)) 58px;
  color: #fff;
  background: #242624;
}
.ab-office-hero__media { position: absolute; inset: 0; z-index: -2; }
.ab-office-hero__media picture { display: block; height: 100%; }
.ab .ab-office-hero__media img { width: 100%; height: 100%; object-fit: cover; object-position: 70% 50%; }
.ab-office-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(10,15,15,.32) 0%, rgba(10,15,15,.18) 36%, rgba(10,15,15,.03) 68%), linear-gradient(180deg, rgba(10,15,15,.2), transparent 30%, transparent 60%, rgba(10,15,15,.46));
}
.ab-office-hero__top { max-width: 610px; }
.ab-office-hero__eyebrow { margin: 0 0 24px; color: rgba(255,255,255,.8); font-size: 10px; line-height: 1.5; letter-spacing: .18em; font-weight: 500; text-transform: uppercase; }
.ab-office-hero h1 { margin: 0; font-family: var(--ab-serif); font-size: clamp(60px, 6.1vw, 96px); line-height: 1.01; font-weight: 300; letter-spacing: -.04em; }
.ab-office-hero h1 em { font-weight: inherit; }
.ab-office-hero__bottom { max-width: 390px; }
.ab-office-hero__lead { margin: 0; font-family: var(--ab-serif); font-size: clamp(20px,1.8vw,26px); font-style: italic; line-height: 1.27; }
.ab-office-hero .fn-mark { font-family: var(--ab-sans); font-size: .6em; vertical-align: super; color: inherit; text-decoration: none; }
.ab-office-hero__link { display: inline-flex; align-items: center; gap: 32px; margin-top: 22px; padding: 9px 0; border-bottom: 1px solid rgba(255,255,255,.45); font-size: 11px; color: #fff; text-decoration: none; }
.ab-office-hero__link span { font-size: 20px; line-height: 1; }
.ab-office-hero__link:hover { border-color: #fff; }
.ab-office-hero a:focus-visible { outline: 2px solid #fff; outline-offset: 5px; }
@media (max-width: 1100px) and (min-width: 981px) {
  .ab-office-hero { padding-left: 32px; padding-right: 32px; }
  .ab-office-hero__top { max-width: 440px; }
  .ab-office-hero h1 { font-size: 64px; }
  .ab .ab-office-hero__media img { object-position: 72% center; }
}
@media (max-width: 980px) {
  .ab-office-hero { min-height: 800px; height: 100svh; max-height: 1100px; justify-content: flex-end; gap: 20px; padding: 100px 24px 30px; }
  .ab .ab-office-hero__media img { object-position: 54% top; }
  .ab-office-hero::after { background: linear-gradient(180deg, rgba(10,15,15,.3) 0%, rgba(10,15,15,.03) 22%, rgba(10,15,15,.04) 42%, rgba(10,15,15,.76) 67%, rgba(10,15,15,.95) 100%); }
  .ab-office-hero__eyebrow { margin-bottom: 12px; font-size: 9px; }
  .ab-office-hero h1 { max-width: 11ch; font-size: clamp(43px, 11.8vw, 58px); line-height: .98; }
  .ab-office-hero__bottom { max-width: 370px; }
  .ab-office-hero__lead { font-size: 18px; line-height: 1.25; }
  .ab-office-hero__link { margin-top: 10px; }
}
