




.ab-sec__h { color: var(--fg-2); }


.ab-head { padding-top: calc(var(--hdr-h) + clamp(32px, 5vw, 80px)); padding-bottom: clamp(64px, 8vw, 128px); }
.ab-head__grid { row-gap: clamp(32px, 4vw, 48px); align-items: start; }
.ab-head__lbl { color: var(--fg-2); }
.ab-head__top > .ab-head__lbl + * { margin-top: clamp(20px, 2.2vw, 32px); }
.ab-head__line { max-width: 40ch; }
.ab-head__pic { --ar: 4 / 5; max-width: 560px; }
.ab-head__bio .t-lead { color: var(--head); max-width: 38ch; }
.ab-head__bio .t-lead + .t-body { margin-top: var(--s5); }
.ab-head__bio .t-body { max-width: 58ch; color: var(--fg); }
.ab-head__bio .acts { margin-top: var(--s6); }
@media (min-width: 1024px) {
  .ab-head__grid { grid-template-rows: auto 1fr; row-gap: clamp(40px, 4vw, 64px); }
  .ab-head__pic { --col-lg: 1 / span 5; grid-row: 1 / span 2; max-width: none; }
  .ab-head__top { --col-lg: 7 / -1; grid-row: 1; padding-top: clamp(8px, 2vw, 40px); }
  .ab-head__bio { --col-lg: 7 / -1; grid-row: 2; }
  .ab-head__h { --fit-w: (100vw - 2 * var(--margin)) * .5; }
}


.ab-films { padding-top: 0; }
.ab-cr { margin-top: var(--s5); border-top: 1px solid var(--line); }
.ab-cr__row { display: grid; grid-template-columns: 7.5rem minmax(0, 1fr); gap: 6px var(--gutter); align-items: baseline;
  padding-block: clamp(18px, 1.8vw, 26px); border-bottom: 1px solid var(--line); }
.ab-cr__y { grid-row: 1 / span 3; font: 600 var(--t-label)/1.35 var(--sans); letter-spacing: var(--track-label); text-transform: uppercase;
  font-variant-numeric: tabular-nums; color: var(--fg-2); padding-top: .55em; }
.ab-cr__main { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.ab-cr__t { font: 800 var(--t-h3)/.96 var(--display); font-stretch: var(--w-display); letter-spacing: normal;
  text-transform: uppercase; color: var(--head); text-wrap: balance; }
a.ab-cr__t { width: fit-content; background: linear-gradient(var(--accent), var(--accent)) 0 100% / 0 2px no-repeat;
  padding-bottom: 3px; transition: background-size var(--d2) var(--e-out); }
a.ab-cr__t:hover, a.ab-cr__t:focus-visible { background-size: 100% 2px; }
.ab-cr__en { font-family: var(--sans); font-size: var(--t-lead); line-height: 1.4; color: var(--fg-2); }
.ab-cr__note { max-width: 56ch; font-size: var(--t-small); line-height: 1.5; color: var(--fg-2); }
.ab-cr__fmt, .ab-cr__r { font: 600 var(--t-label)/1.45 var(--sans); letter-spacing: var(--track-label); text-transform: uppercase; color: var(--fg); }
.ab-cr__fmt { color: var(--fg-2); }
.ab-cr__fmt:empty, .ab-cr__go:empty { display: none; }
.ab-cr__go .lnk { font-size: var(--t-small); }
@media (max-width: 599.98px) {
  .ab-cr__row { grid-template-columns: minmax(0, 1fr); }
  .ab-cr__y { grid-row: auto; padding-top: 0; }
}
@media (min-width: 1024px) {
  .ab-cr__row { grid-template-columns: 9rem minmax(0, 1fr) 10rem 13rem 5rem; }
  .ab-cr__y, .ab-cr__fmt, .ab-cr__r, .ab-cr__main, .ab-cr__go { grid-row: 1; }
  .ab-cr__y { grid-column: 1; padding-top: .6em; }
  .ab-cr__main { grid-column: 2; }
  .ab-cr__fmt { grid-column: 3; padding-top: .6em; }
  .ab-cr__r { grid-column: 4; padding-top: .6em; }
  .ab-cr__go { grid-column: 5; padding-top: .35em; justify-self: end; }
  .ab-cr__fmt:empty, .ab-cr__go:empty { display: block; }
}


.ab-co__top { row-gap: var(--s5); }
.ab-co__lead { max-width: 24ch; }
@media (min-width: 1024px) {
  .ab-co__lbl { --col-lg: 1 / span 3; padding-top: .9em; }
  .ab-co__lead { --col-lg: 4 / -1; }
}
.ab-co__pair { margin-top: clamp(48px, 6vw, 96px); row-gap: clamp(40px, 5vw, 56px); }
.ab-co__one { padding-top: var(--s5); border-top: 1px solid var(--line-2); }
.ab-co__where { color: var(--fg-2); }
.ab-co__name { margin-top: var(--s4); font: 800 var(--t-h2)/.9 var(--display); font-stretch: var(--w-display);
  letter-spacing: normal; text-transform: uppercase; color: var(--head); }
.ab-co__name + .t-body { margin-top: var(--s5); }
.ab-co__one .t-body { max-width: 50ch; }
.ab-co__go { margin-top: var(--s5); }
@media (min-width: 768px) {
  .ab-co__one:first-child { --col-md: 1 / span 6; }
  .ab-co__one:last-child { --col-md: 7 / -1; }
}
@media (min-width: 1024px) {
  .ab-co__one:first-child { --col-lg: 4 / span 4; }
  .ab-co__one:last-child { --col-lg: 9 / -1; }
}
.ab-still { margin-top: clamp(64px, 8vw, 128px); --ar: 4 / 3; }
.ab-still__img { object-position: 30% 50%; }
@media (min-width: 600px) { .ab-still { --ar: 16 / 9; } }
@media (min-width: 1024px) { .ab-still { --ar: 2.39 / 1; } }
.ab-co__quote { margin-top: clamp(48px, 6vw, 96px); }
@media (min-width: 1024px) { .ab-co__quote { margin-left: calc((100% - 11 * var(--gutter)) / 12 * 3 + 3 * var(--gutter)); } }


.ab-mk__head { display: flex; flex-direction: column; gap: var(--s4); }
.ab-mk__with { color: var(--fg-2); max-width: 34ch; }
.ab-mk__list { margin-top: var(--s6); border-top: 1px solid var(--line); }
.ab-mk__row { display: grid; grid-template-columns: 4.5rem minmax(0, 1fr); gap: 4px var(--gutter); align-items: baseline;
  padding-block: clamp(16px, 1.6vw, 22px); border-bottom: 1px solid var(--line); }
.ab-mk__y { grid-row: 1 / span 2; font: 600 var(--t-label)/1.35 var(--sans); letter-spacing: var(--track-label); text-transform: uppercase; font-variant-numeric: tabular-nums; color: var(--fg-2); }
.ab-mk__e { font: 800 var(--t-title)/1.02 var(--display); font-stretch: var(--w-display); text-transform: uppercase; color: var(--head); }
.ab-mk__c { font-size: var(--t-small); line-height: 1.5; color: var(--fg-2); }
@media (min-width: 1024px) {
  .ab-mk__head { --col-lg: 1 / span 3; }
  .ab-mk__list { --col-lg: 4 / -1; margin-top: 0; }
  .ab-mk__row { grid-template-columns: 5rem minmax(0, 1fr) auto; }
  .ab-mk__y, .ab-mk__e, .ab-mk__c { grid-row: 1; }
  .ab-mk__y { grid-column: 1; } .ab-mk__e { grid-column: 2; } .ab-mk__c { grid-column: 3; text-align: right; }
}


.ab-reach__head .t-lead { max-width: 46ch; color: var(--head); }
.ab-reach__cols { margin-top: clamp(40px, 5vw, 72px); row-gap: clamp(48px, 6vw, 64px); }
.ab-reach__col { padding-top: var(--s5); border-top: 1px solid var(--line-2); }
.ab-reach__h { color: var(--fg-2); }
.ab-reach__h i { font-style: normal; color: var(--fg); }
.ab-reach__big { margin-top: var(--s5); }
.ab-reach__big li { font: 800 var(--t-h3)/1 var(--display); font-stretch: var(--w-display); text-transform: uppercase; color: var(--head); }
.ab-reach__dl { display: grid; gap: var(--s4); margin-top: var(--s7); }
.ab-reach__dl > div { display: grid; gap: 2px; }
.ab-reach__dl dt { color: var(--fg-2); }
.ab-reach__dl dd { margin: 0; color: var(--fg); }
.ab-reach__go { margin-top: var(--s6); }
.ab-reach__terr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px var(--gutter); margin-top: var(--s5); }
.ab-reach__terr li { font-size: var(--t-body); line-height: 1.4; color: var(--fg); }
.ab-reach__note { margin-top: var(--s6); max-width: 46ch; }
@media (min-width: 768px) {
  .ab-reach__col--aud { --col-md: 1 / span 5; }
  .ab-reach__col--cc { --col-md: 7 / -1; }
  .ab-reach__terr { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 1024px) {
  .ab-reach__head { --col-lg: 4 / span 8; }
  .ab-reach__col--aud { --col-lg: 4 / span 4; }
  .ab-reach__col--cc { --col-lg: 9 / -1; }
  .ab-reach__terr { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1440px) { .ab-reach__terr { grid-template-columns: repeat(3, minmax(0, 1fr)); } }


.ab-values__grid { row-gap: clamp(32px, 4vw, 48px); align-items: center; }
.ab-values__txt .t-statement { max-width: 22ch; }
.ab-values__focus { display: flex; flex-wrap: wrap; gap: 6px 0; }
.ab-values__focus li { font: 600 var(--t-label)/1.35 var(--sans); letter-spacing: var(--track-label); text-transform: uppercase; color: var(--fg-2); }
.ab-values__focus li + li::before { content: "·"; margin-inline: 12px; }
@media (min-width: 1024px) {
  .ab-values__pic { --col-lg: 1 / span 6; }
  .ab-values__txt { --col-lg: 8 / -1; }
}


.ab-fot__body { margin-top: var(--s4); }
.ab-fot__body .t-body { max-width: 58ch; }
.ab-fot__go { margin-top: var(--s5); }
@media (min-width: 1024px) {
  .ab-fot__head { --col-lg: 1 / span 3; padding-top: .35em; }
  .ab-fot__body { --col-lg: 4 / span 7; margin-top: 0; }
}


.ab-close__lbl { color: var(--fg-2); }
.ab-close__head > .ab-close__lbl + * { margin-top: clamp(20px, 2.2vw, 32px); }
.ab-close .grid { row-gap: clamp(40px, 5vw, 64px); }
@media (min-width: 1024px) {
  .ab-close__head { --col-lg: 1 / span 6; }
  .ab-close__paths { --col-lg: 8 / -1; align-self: end; }
  .ab-close__head .t-h2 { --fit-w: (100vw - 2 * var(--margin)) * .5; }
}


@media (forced-colors: active) {
  a.ab-cr__t { text-decoration: underline; }
}
@media print {
  .ab-still, .ab-values__pic, .ab-close__paths { display: none; }
}
