/* Generated by tools/build_frontend_css.py. Do not edit directly. */
/* Ownership output: v2-hero-context-front */

/* Source 1: assets/src/hero/hero-layout-home.css | media: all */
/* ------------------------------------------------------------




   Homepage Hero Layout Contract




   Scope: body.home only. Keeps home-page polish out of page/CPT heroes.




------------------------------------------------------------- */









body.home .vh-hero-context-home{




  --vh-hero-copy-max: 50rem;




  --vh-hero-media-max: 48rem;




}









body.home .vh-hero-context-home.vh-layout-hero{




  min-height: clamp(34rem, 78vh, 48rem);




}









body.home .vh-hero-context-home .vh-hero-title{




  max-width: min(100%, 24ch);




}









body.home .vh-hero-context-home .vh-hero-lead{




  max-width: min(100%, 46rem);




}









body.home .vh-hero-context-home .vh-hero-media,




body.home .vh-hero-context-home .vh-hero-wide-media{




  margin-left: auto;




  margin-right: auto;




}









body.home .vh-hero-context-home .vh-hero-proof,




body.home .vh-hero-context-home .vh-hero-inline-detail-stack{




  margin-top: 1.25rem;




}

/* Source 2: assets/src/hero/frontpage-responsive-transitions.css | media: all */
/*
 * Responsive transition contract for real front-page sections.
 * One overlay element stores Desktop/Tablet/Mobile geometry in CSS variables;
 * the active breakpoint selects the effective state without duplicating content.
 *
 * Shell side effects are responsive too. A transition disabled on Tablet or
 * Mobile restores clipping and does not hide that device's configured border.
 */
body.home .vh-section-transition-overlay--responsive{
  display:none !important;
}

@media (min-width:992px){
  body.home .vh-section-transition-source.vh-section-has-seamless-overlap{
    overflow:hidden !important;
  }
  body.home .vh-section-transition-source.vh-section-transition-desktop--overlap-active{
    overflow:visible !important;
    clip-path:none !important;
  }
  body.home .vh-section-transition-desktop--top-requested{
    --vh-transition-responsive-top-border-color:transparent;
  }
  body.home .vh-section-transition-desktop--bottom-requested{
    --vh-transition-responsive-bottom-border-color:transparent;
  }
  body.home .vh-section-transition-overlay--responsive{
    display:var(--vh-transition-desktop-display,none) !important;
    height:var(--vh-transition-desktop-height-fallback,0px) !important;
    height:var(--vh-transition-desktop-height,0px) !important;
    transform:var(--vh-transition-desktop-transform,none) !important;
    background:var(--vh-transition-desktop-background,none) !important;
  }
}
@media (min-width:600px) and (max-width:991.98px){
  body.home .vh-section-transition-source.vh-section-has-seamless-overlap{
    overflow:hidden !important;
  }
  body.home .vh-section-transition-source.vh-section-transition-tablet--overlap-active{
    overflow:visible !important;
    clip-path:none !important;
  }
  body.home .vh-section-transition-tablet--top-requested{
    --vh-transition-responsive-top-border-color:transparent;
  }
  body.home .vh-section-transition-tablet--bottom-requested{
    --vh-transition-responsive-bottom-border-color:transparent;
  }
  body.home .vh-section-transition-overlay--responsive{
    display:var(--vh-transition-tablet-display,none) !important;
    height:var(--vh-transition-tablet-height-fallback,0px) !important;
    height:var(--vh-transition-tablet-height,0px) !important;
    transform:var(--vh-transition-tablet-transform,none) !important;
    background:var(--vh-transition-tablet-background,none) !important;
  }
}
@media (max-width:599.98px){
  body.home .vh-section-transition-source.vh-section-has-seamless-overlap{
    overflow:hidden !important;
  }
  body.home .vh-section-transition-source.vh-section-transition-mobile--overlap-active{
    overflow:visible !important;
    clip-path:none !important;
  }
  body.home .vh-section-transition-mobile--top-requested{
    --vh-transition-responsive-top-border-color:transparent;
  }
  body.home .vh-section-transition-mobile--bottom-requested{
    --vh-transition-responsive-bottom-border-color:transparent;
  }
  body.home .vh-section-transition-overlay--responsive{
    display:var(--vh-transition-mobile-display,none) !important;
    height:var(--vh-transition-mobile-height-fallback,0px) !important;
    height:var(--vh-transition-mobile-height,0px) !important;
    transform:var(--vh-transition-mobile-transform,none) !important;
    background:var(--vh-transition-mobile-background,none) !important;
  }
}
