/* V420 public hero alignment. The established shared hero token is the single
   block-start reference; alternate artwork and typography remain page-owned. */
:root{
  --v420-public-hero-eyebrow-start:var(--hero-standard-padding-top);
  --v420-public-hero-breadcrumb-height:2rem;
  --v420-public-hero-breadcrumb-gap:1.25rem;
  --detail-hero-top:max(0rem,calc(var(--v420-public-hero-eyebrow-start) - var(--v420-public-hero-breadcrumb-height) - var(--v420-public-hero-breadcrumb-gap)));
}

@media(min-width:761px){
  main#main>section[data-v420-public-hero]{
    align-items:flex-start!important;
  }
  main#main>section[data-v420-public-hero]:not([data-v420-hero-breadcrumbs]){
    padding-top:var(--v420-public-hero-eyebrow-start)!important;
  }
  main#main>section[data-v420-public-hero][data-v420-hero-breadcrumbs]:not([data-v412-detail-hero]){
    padding-top:max(0rem,calc(var(--v420-public-hero-eyebrow-start) - var(--v420-public-hero-breadcrumb-height) - var(--v420-public-hero-breadcrumb-gap)))!important;
  }
  [data-v420-public-hero]>.wrap{
    align-items:flex-start!important;
    margin-block:0!important;
    padding-top:0!important;
  }
  [data-v420-public-hero] [data-hero-copy],
  [data-v420-public-hero] [class*="hero-copy"],
  [data-v420-public-hero]>.wrap>:has(>.eyebrow){
    align-self:flex-start!important;
    margin-top:0!important;
    padding-top:0!important;
  }
  [data-v420-public-hero][data-v420-hero-breadcrumbs] .breadcrumbs{
    min-height:var(--v420-public-hero-breadcrumb-height)!important;
    margin:0 0 var(--v420-public-hero-breadcrumb-gap)!important;
    padding:0!important;
    line-height:var(--v420-public-hero-breadcrumb-height)!important;
  }
}
