
.au main > section + section { margin-top: 0; }

.au-hero { margin-top: var(--hdm, -84px); padding: 136px 0 40px; background: var(--warm); }
.au-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start; }
.au-l { grid-column: 1 / span 5; min-width: 0; }
.au-hero h1 { margin: 0 0 0 -3px; font-size: 72px; font-weight: 500; line-height: 72px; letter-spacing: -1.44px; }
.au-meta { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-top: 80px; }
.au-role { padding: 4px 16px; border-radius: 16px; background: #fff; font-size: 16px; line-height: 24px; color: #000; }
.au-li { flex: none; font-size: 20px; font-weight: 500; line-height: 30px; color: #000; text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
.au-li:hover { color: var(--accent); }
.au-li:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.au-pic { margin-top: 16px; padding: 16px; border-radius: 4px; background: var(--navy); }
.au-pic img { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; object-position: center 22%; border-radius: 4px; }
.au-bio { grid-column: 7 / span 6; position: sticky; top: 160px; min-width: 0; }
.au-bio p { margin: 0 0 8px; font-size: 20px; line-height: 30px; color: #000; }
.au-bio p:last-child { margin-bottom: 0; }

.au-sec { padding-top: 80px; }
.au-res { padding-bottom: 96px; }
.au-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 32px; padding-bottom: 24px; border-bottom: 1px solid rgba(0,0,0,.08); }
.au-head h2 { max-width: 460px; font-size: 48px; font-weight: 400; line-height: 57.6px; letter-spacing: -.48px; }
.au-head p { flex: 0 1 405px; margin: 0; font-size: 20px; line-height: 30px; color: var(--muted); }

.au-cards { margin-top: 48px; }
.au-libs { margin: 64px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.au-libs li { border-bottom: 1px solid var(--line); }
.au-libs a { display: flex; align-items: center; gap: 24px; padding: 22px 0; color: var(--ink); }
.au-lib-n { flex: 1; font-size: 24px; line-height: 31.2px; letter-spacing: -.24px; }
.au-lib-c { font-size: 16px; line-height: 24px; color: var(--muted); }
.au-libs svg { flex: none; width: 20px; height: 20px; transition: transform .2s; }
.au-libs a:hover .au-lib-n { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
.au-libs a:hover svg { transform: translateX(3px); }
.au-libs a:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }

.au-res-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px 20px; margin-top: 48px; }
.au-rc { display: flex; flex-direction: column; gap: 16px; color: inherit; }
.au-rc-v { display: flex; align-items: center; justify-content: center; aspect-ratio: 578 / 320; border-radius: 8px; overflow: hidden; }
.au-rc-v.rt1 { background: var(--navy); }
.au-rc-v.rt2 { background: var(--sky-2); }
.au-rc-v img { width: 56.05%; height: auto; aspect-ratio: 324 / 159; border-radius: 4px; transition: transform .4s; }
.au-rc:hover .au-rc-v img { transform: scale(1.03); }
.au-rc-c { max-width: 400px; }
.au-rc h3 { font-size: 24px; font-weight: 400; line-height: 31.2px; letter-spacing: 0; }
.au-rc p { margin: 8px 0 0; font-size: 16px; line-height: 24px; color: #000; }
.au-rc:hover h3 { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
.au-rc:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; border-radius: 8px; }

@media (max-width: 991px) {
  .au-grid { grid-template-columns: minmax(0, 1fr); row-gap: 40px; }
  .au-l, .au-bio { grid-column: 1; }
  .au-l { max-width: 476px; }
  .au-bio { position: static; max-width: 640px; }
  .au-head h2 { font-size: 40px; line-height: 48px; }
}
@media (max-width: 760px) {
  .au-hero { margin-top: var(--hdm, -68px); padding: 120px 0 40px; }
  .au-hero h1 { margin-left: -2px; font-size: 60px; line-height: 60px; letter-spacing: -1.2px; }
  .au-meta { margin-top: 80px; gap: 12px; }
  .au-role { padding: 3px 13px; font-size: 14px; line-height: 20px; }
  .au-li { font-size: 16px; line-height: 24px; }
  .au-pic { margin-top: 16px; padding: 13px; }
  .au-grid { row-gap: 24px; }
  .au-bio p { font-size: 16px; line-height: 25px; }
  .au-sec { padding-top: 80px; }
  .au-res { padding-bottom: 72px; }
  .au-head { flex-direction: column; gap: 32px; padding-bottom: 20px; }
  .au-head h2 { font-size: 40px; line-height: 48px; letter-spacing: -.4px; }
  .au-head p { flex: none; font-size: 16px; line-height: 25px; }
  .au-cards .bc:nth-child(n+4) { display: none; }
  .au-libs { margin-top: 48px; }
  .au-libs a { gap: 16px; padding: 18px 0; }
  .au-lib-n { font-size: 20px; line-height: 26px; }
  .au-res-grid { grid-template-columns: minmax(0, 1fr); gap: 48px; }
  .au-rc-v { aspect-ratio: 351 / 194; }
  .au-rc h3 { font-size: 20px; line-height: 26px; }
}
@media (prefers-reduced-motion: reduce) {
  .au-libs svg, .au-rc-v img { transition: none; }
  .au-libs a:hover svg, .au-rc:hover .au-rc-v img { transform: none; }
}
