/* DRUK R5.20 — TRUE STICKY MAIN HEADER + MOBILE HERO COPY INSIDE VISUAL VIEWPORT
   Patch-only. Does not alter desktop hero typography/images/stats/content order. */

/* Let the main header itself stick to the viewport instead of being constrained
   by the injected #siteHeader wrapper. The top contact bar can scroll away. */
#siteHeader{
  display:contents!important;
}
#siteHeader>.site-header,
.site-header{
  position:sticky!important;
  top:0!important;
  z-index:3200!important;
  width:100%!important;
  background:rgba(255,255,255,.98)!important;
  -webkit-backdrop-filter:blur(12px)!important;
  backdrop-filter:blur(12px)!important;
}

/* The mobile navigation opens below the visible sticky header, not over it. */
@media (max-width:1050px){
  .mobile-panel{
    top:80px!important;
    bottom:0!important;
    left:0!important;
    right:0!important;
    height:calc(100dvh - 80px)!important;
    padding-top:14px!important;
  }
  .mobile-panel .mobile-head{display:none!important;}
}

/* MOBILE: guarantee that the hero itself fits the visual viewport below header
   and that the copy is always 1rem above the hero bottom edge. */
@media (max-width:520px){
  #siteHeader>.topbar{display:none!important;}
  #siteHeader>.site-header .header-inner,
  .site-header .header-inner{height:80px!important;}

  body.v83-home .vh-section.vh-hero{
    height:calc(100vh - 80px)!important;
    height:calc(100dvh - 80px)!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden!important;
  }

  body.v83-home .vh-hero-inner{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    padding:0!important;
    display:block!important;
  }

  body.v83-home .vh-hero-card{
    position:absolute!important;
    left:16px!important;
    right:16px!important;
    bottom:16px!important;
    top:auto!important;
    width:auto!important;
    max-width:none!important;
    height:auto!important;
    max-height:none!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    transform:none!important;
  }

  body.v83-home .vh-copy-visibility,
  body.v83-home .vh-copy-click-target{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
  }

  body.v83-home .vh-cinematic-tag{
    display:block!important;
    margin:0 0 6px!important;
    font-size:9px!important;
    line-height:1.05!important;
    letter-spacing:1.05px!important;
  }

  body.v83-home .vh-copy-click-target h1,
  body.v83-home .vh-copy-click-target h2{
    display:block!important;
    margin:0!important;
    max-width:100%!important;
    font-size:clamp(22px,7vw,28px)!important;
    line-height:1.03!important;
    letter-spacing:-.025em!important;
    overflow:visible!important;
    -webkit-line-clamp:unset!important;
    text-wrap:balance!important;
  }
  body.v83-home .vh-copy-click-target h1>span,
  body.v83-home .vh-copy-click-target h2>span{
    display:block!important;
    white-space:normal!important;
  }

  /* Controls stay clear of copy: arrows top-right; count/dots hidden on mobile. */
  body.v83-home .vh-slider-controls{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    pointer-events:none!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
  body.v83-home .vh-slider-controls>*{pointer-events:auto!important;}
  body.v83-home .home-slider-prev,
  body.v83-home .home-slider-next{
    position:absolute!important;
    top:14px!important;
    bottom:auto!important;
    width:34px!important;
    height:34px!important;
    transform:none!important;
  }
  body.v83-home .home-slider-prev{right:56px!important;}
  body.v83-home .home-slider-next{right:14px!important;}
  body.v83-home .home-slider-count,
  body.v83-home .home-slider-dots{display:none!important;}

  /* Keep quick facts below the hero on mobile; no overlap with copy. */
  body.v83-home .v82-home-trust{
    margin-top:0!important;
    padding-top:12px!important;
  }
}

@media (max-width:340px){
  #siteHeader>.site-header .header-inner,
  .site-header .header-inner{height:76px!important;}
  .mobile-panel{top:76px!important;height:calc(100dvh - 76px)!important;}
  body.v83-home .vh-section.vh-hero{
    height:calc(100vh - 76px)!important;
    height:calc(100dvh - 76px)!important;
  }
  body.v83-home .vh-hero-card{left:14px!important;right:14px!important;bottom:16px!important;}
  body.v83-home .vh-copy-click-target h1,
  body.v83-home .vh-copy-click-target h2{font-size:22px!important;}
}
