/* V1.53.6 — desktop/laptop homepage composition.
   Loaded only by the homepage, after the existing stylesheet.
   The approved <=820px mobile composition and both photographic layers
   are deliberately untouched. Keep the logo's native aspect ratio. */
@media (min-width:821px){
  .page-home .hero,
  .page-home .hero-inner{
    min-height:max(480px,100vh);
    min-height:max(480px,100svh);
  }
  .page-home .hero-inner{
    position:relative;
    display:block;
    width:100%;
    max-width:none;
    margin:0;
    padding:0;
  }
  .page-home .hero-copy{
    position:absolute;
    left:50%!important;
    top:50%!important;
    /* The copyIn animation also sets transform. Protect the centring at
       ALL desktop widths, including the former 821–1060px gap. */
    transform:translate(-50%,-50%)!important;
    translate:none!important;
    width:min(590px,calc(100% - 2rem),70vh);
    width:min(590px,calc(100% - 2rem),70svh);
    max-width:590px;
    margin:0;
    padding:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    background:none;
  }
  .page-home .hero-logo{
    width:min(500px,34vw,40vh);
    width:min(500px,34vw,40svh);
    height:auto;
    max-height:min(300px,30vh);
    max-height:min(300px,30svh);
    flex:0 0 auto;
    object-fit:contain;
    object-position:center;
    margin:0 auto clamp(.5rem,1.28vh,.8rem);
    margin-bottom:clamp(.5rem,1.28svh,.8rem);
  }
  .page-home .hero-cta-panel{
    width:auto;
    max-width:100%;
    margin:0 auto;
    align-items:center;
    text-align:center;
    padding:clamp(.75rem,1.76vh,1.1rem) clamp(.85rem,2.24vh,1.4rem) clamp(.8rem,2vh,1.25rem);
    padding:clamp(.75rem,1.76svh,1.1rem) clamp(.85rem,2.24svh,1.4rem) clamp(.8rem,2svh,1.25rem);
  }
  .page-home .hero h1{
    width:100%;
    max-width:100%;
    margin:0 0 clamp(.65rem,1.68vh,1.05rem);
    margin-bottom:clamp(.65rem,1.68svh,1.05rem);
    font-size:clamp(.64rem,1.568vh,.98rem);
    font-size:clamp(.64rem,1.568svh,.98rem);
    line-height:1.6;
    letter-spacing:.26em;
    text-align:center;
    white-space:normal;
  }
  .page-home .hero-copy .actions{
    width:100%;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:center;
    gap:clamp(.6rem,1.36vh,.85rem);
    gap:clamp(.6rem,1.36svh,.85rem);
  }
  .page-home .hero-copy .actions .btn{
    flex:0 1 auto;
    min-width:0;
    min-height:clamp(44px,5.4vh,54px);
    min-height:clamp(44px,5.4svh,54px);
    padding:clamp(.7rem,1.52vh,.95rem) clamp(.85rem,2.32vh,1.45rem);
    padding:clamp(.7rem,1.52svh,.95rem) clamp(.85rem,2.32svh,1.45rem);
    font-size:clamp(.65rem,1.152vh,.72rem);
    font-size:clamp(.65rem,1.152svh,.72rem);
    letter-spacing:.14em;
    line-height:1.6;
    text-align:center;
  }
}
