/* ========================================================================
   GaliVue V5.1.80 — MOBILE HEADER + HERO COMPOSITION CORRECTION
   Public homepage presentation only.

   Goals:
   - restore the mobile language control and hamburger without overflow;
   - preserve Login + Start free test in a dedicated compact mobile action row;
   - keep the V5.1.79 desktop composition untouched;
   - remove duplicated mobile Slide 3 export content;
   - make Slides 1–5 deliberate portrait compositions instead of shrinking
     the desktop artboard;
   - keep original V5.1.78 reference artwork/details wherever it improves
     fidelity while leaving semantic headline/copy live and sharp.
   ======================================================================== */

/* --------------------------- mobile public header ------------------------ */
@media (max-width:700px){
  body.gvf-homepage-v5180 .marketing-header{
    width:calc(100% - 16px)!important;
    max-width:none!important;
    left:50%!important;
    right:auto!important;
    top:6px!important;
    transform:translateX(-50%)!important;
    min-height:96px!important;
    padding:8px 10px!important;
    border-radius:18px!important;
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    grid-template-rows:38px 38px!important;
    align-items:center!important;
    column-gap:8px!important;
    row-gap:6px!important;
    overflow:visible!important;
  }
  body.gvf-homepage-v5180 .marketing-header .brand{
    grid-column:1!important;
    grid-row:1!important;
    margin:0!important;
    min-width:0!important;
    align-self:center!important;
  }
  body.gvf-homepage-v5180 .marketing-header .brand img{
    display:block!important;
    width:auto!important;
    height:30px!important;
    max-width:112px!important;
  }
  body.gvf-homepage-v5180 .marketing-header .desktop-nav{display:none!important}
  body.gvf-homepage-v5180 .marketing-header .marketing-header-actions{display:contents!important}
  body.gvf-homepage-v5180 .marketing-header .header-language-switcher{
    display:inline-flex!important;
    grid-column:2!important;
    grid-row:1!important;
    justify-self:end!important;
    align-self:center!important;
    min-width:52px!important;
    height:34px!important;
    padding:4px 6px!important;
    border-radius:999px!important;
    background:#fff!important;
    border:1px solid rgba(17,17,17,.10)!important;
    box-shadow:none!important;
  }
  body.gvf-homepage-v5180 .marketing-header .header-language-switcher .language-globe{display:none!important}
  body.gvf-homepage-v5180 .marketing-header .header-language-switcher select{
    display:block!important;
    max-width:48px!important;
    min-width:42px!important;
    padding:2px 12px 2px 1px!important;
    font-size:.67rem!important;
    font-weight:900!important;
    line-height:1!important;
  }
  body.gvf-homepage-v5180 .marketing-header .menu-button{
    display:block!important;
    grid-column:3!important;
    grid-row:1!important;
    justify-self:end!important;
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    min-height:38px!important;
    padding:0!important;
    margin:0!important;
  }
  body.gvf-homepage-v5180 .marketing-header .menu-button span{
    width:21px!important;
    height:2px!important;
    margin:4px auto!important;
  }
  body.gvf-homepage-v5180 .marketing-header .public-auth-actions{
    grid-column:1 / 4!important;
    grid-row:2!important;
    display:grid!important;
    grid-template-columns:minmax(88px,.7fr) minmax(0,1.3fr)!important;
    gap:7px!important;
    width:100%!important;
    min-width:0!important;
    align-items:stretch!important;
  }
  body.gvf-homepage-v5180 .marketing-header .header-login:not(.hidden),
  body.gvf-homepage-v5180 .marketing-header .header-dashboard:not(.hidden),
  body.gvf-homepage-v5180 .marketing-header .header-cta:not(.hidden){
    width:100%!important;
    min-width:0!important;
    min-height:38px!important;
    height:38px!important;
    padding:0 9px!important;
    margin:0!important;
    border-radius:11px!important;
    font-size:clamp(.67rem,2.8vw,.76rem)!important;
    line-height:1.05!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    text-align:center!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }

  body.gvf-homepage-v5180 .marketing-header .public-auth-logged-in.hidden,
  body.gvf-homepage-v5180 .marketing-header .public-auth-logged-out.hidden,
  body.gvf-homepage-v5180 .marketing-header .header-dashboard.hidden,
  body.gvf-homepage-v5180 .marketing-header .header-login.hidden,
  body.gvf-homepage-v5180 .marketing-header .header-cta.hidden{display:none!important}
  body.gvf-homepage-v5180 .marketing-header .header-login,
  body.gvf-homepage-v5180 .marketing-header .header-dashboard{
    border:1px solid rgba(17,17,17,.10)!important;
    background:#fff!important;
  }
  body.gvf-homepage-v5180 .marketing-header .header-cta{
    border:1px solid #9ed400!important;
    background:#c8ff3d!important;
    color:#111!important;
    box-shadow:none!important;
  }
  body.gvf-homepage-v5180 .marketing-page{
    padding-top:112px!important;
  }
}

/* On wider phones/small tablets, return to one compact row while keeping the
   language and menu visible. */
@media (min-width:601px) and (max-width:700px){
  body.gvf-homepage-v5180 .marketing-header{
    min-height:64px!important;
    grid-template-columns:auto 1fr!important;
    grid-template-rows:48px!important;
    padding:7px 12px 7px 16px!important;
  }
  body.gvf-homepage-v5180 .marketing-header .brand{grid-column:1!important;grid-row:1!important}
  body.gvf-homepage-v5180 .marketing-header .marketing-header-actions{
    display:flex!important;
    grid-column:2!important;
    grid-row:1!important;
    justify-content:flex-end!important;
    gap:6px!important;
    min-width:0!important;
  }
  body.gvf-homepage-v5180 .marketing-header .header-language-switcher,
  body.gvf-homepage-v5180 .marketing-header .menu-button,
  body.gvf-homepage-v5180 .marketing-header .public-auth-actions{
    grid-column:auto!important;grid-row:auto!important;
  }
  body.gvf-homepage-v5180 .marketing-header .public-auth-actions{
    display:flex!important;width:auto!important;gap:5px!important;
  }
  body.gvf-homepage-v5180 .marketing-header .header-login:not(.hidden),
  body.gvf-homepage-v5180 .marketing-header .header-dashboard:not(.hidden),
  body.gvf-homepage-v5180 .marketing-header .header-cta:not(.hidden){
    width:auto!important;height:38px!important;min-height:38px!important;white-space:nowrap!important;
  }
  body.gvf-homepage-v5180 .marketing-page{padding-top:78px!important}
}

/* ----------------------------- phone hero ------------------------------- */
@media (max-width:700px){
  body.gvf-homepage-v5180 .gvf-hero-slider{
    width:100%!important;
    padding:0!important;
    margin:0!important;
    background:#020402!important;
    overflow:hidden!important;
  }
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-carousel-shell{
    width:100%!important;
    height:790px!important;
    min-height:790px!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    margin:0!important;
    overflow:hidden!important;
    background:#020402!important;
  }
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide{
    grid-template-rows:34px minmax(0,1fr) 34px!important;
    padding:10px 14px 9px!important;
    overflow:hidden!important;
  }
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide-top{
    z-index:30!important;
    pointer-events:none!important;
  }
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide-count{
    font-size:.61rem!important;
    padding:.38rem .58rem!important;
    line-height:1!important;
  }
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide-body{
    position:relative!important;
    padding:4px 0 0!important;
    overflow:hidden!important;
  }
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide-body>*{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
  }
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-copy-block{
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:0!important;
    width:100%!important;
    height:auto!important;
    z-index:20!important;
  }
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-story-headline,
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-primary-h1{
    max-width:100%!important;
    margin:0!important;
    font-size:clamp(2.18rem,9.3vw,2.72rem)!important;
    line-height:.96!important;
    letter-spacing:-.052em!important;
    text-wrap:pretty!important;
    white-space:normal!important;
  }
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-story-headline br{display:none!important}
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-copy-block p{
    width:100%!important;
    max-width:none!important;
    margin:10px 0 0!important;
    font-size:clamp(.74rem,3.15vw,.82rem)!important;
    line-height:1.38!important;
  }
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-ref-layer{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    z-index:8!important;
    pointer-events:none!important;
    overflow:hidden!important;
  }
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-ref-art{
    position:absolute!important;
    max-width:none!important;
    object-fit:contain!important;
    object-position:center!important;
  }
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-device-wrap{display:none!important}
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-lang-strip{display:none!important}
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-edge{display:none!important}
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide-bottom{
    display:flex!important;
    align-items:flex-end!important;
    justify-content:center!important;
    z-index:35!important;
  }
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide-nav{
    display:flex!important;
    position:static!important;
    gap:7px!important;
    margin:0!important;
    padding:0!important;
    width:auto!important;
    opacity:1!important;
    pointer-events:auto!important;
  }
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide-nav button{
    width:27px!important;height:27px!important;min-width:27px!important;min-height:27px!important;
    font-size:.58rem!important;
  }

  /* Slide 1: exact stress + Old way / GaliVue way crop, then exact product. */
  body.gvf-homepage-v5180 .gvf-slide-1 .gvf-s1-bottom,
  body.gvf-homepage-v5180 .gvf-slide-1 .gvf-compare-card{display:none!important}
  body.gvf-homepage-v5180 .gvf-slide-1 .gvf-ref-s1-stress{
    display:block!important;left:0!important;top:39%!important;width:29%!important;height:auto!important;
  }
  body.gvf-homepage-v5180 .gvf-slide-1 .gvf-ref-s1-compare{
    display:block!important;left:27%!important;top:40%!important;width:72%!important;height:auto!important;
  }
  body.gvf-homepage-v5180 .gvf-slide-1 .gvf-ref-device{
    display:block!important;left:8%!important;top:65%!important;width:88%!important;height:auto!important;
  }

  /* Slide 2: semantic workflow stays live, but cards become a readable 2x2
     mobile grid and the exact product art stays large below it. */
  body.gvf-homepage-v5180 .gvf-slide-2 .gvf-step-row{
    position:relative!important;
    left:auto!important;right:auto!important;top:auto!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    margin:14px 0 0!important;
    z-index:20!important;
  }
  body.gvf-homepage-v5180 .gvf-slide-2 .gvf-step-card{
    min-height:92px!important;
    padding:9px 7px 8px!important;
    border-radius:13px!important;
  }
  body.gvf-homepage-v5180 .gvf-slide-2 .gvf-step-card>b{
    width:21px!important;height:21px!important;left:6px!important;top:6px!important;font-size:.56rem!important;
  }
  body.gvf-homepage-v5180 .gvf-slide-2 .gvf-step-card>i{
    width:33px!important;height:33px!important;margin:19px auto 5px!important;
  }
  body.gvf-homepage-v5180 .gvf-slide-2 .gvf-step-card>span{
    font-size:.61rem!important;line-height:1.15!important;
  }
  body.gvf-homepage-v5180 .gvf-slide-2 .gvf-shield{
    position:relative!important;
    left:auto!important;right:auto!important;top:auto!important;
    margin:10px 0 0!important;
    z-index:20!important;
    font-size:.68rem!important;
    line-height:1.2!important;
    gap:8px!important;
  }
  body.gvf-homepage-v5180 .gvf-slide-2 .gvf-shield::before{width:30px!important;height:30px!important;flex-basis:30px!important}
  body.gvf-homepage-v5180 .gvf-slide-2 .gvf-ref-device{
    display:block!important;left:5%!important;top:68%!important;width:92%!important;height:auto!important;
  }

  /* Slide 3: remove the live duplicate export panel completely. Keep only
     the two exact reference blocks (favourites + export), then the device. */
  body.gvf-homepage-v5180 .gvf-slide-3 .gvf-favorites-card,
  body.gvf-homepage-v5180 .gvf-slide-3 .gvf-export-card{
    display:none!important;visibility:hidden!important;opacity:0!important;
    width:0!important;height:0!important;overflow:hidden!important;
  }
  body.gvf-homepage-v5180 .gvf-slide-3 .gvf-s3-kicker{
    margin-top:8px!important;font-size:.77rem!important;line-height:1.24!important;
  }
  body.gvf-homepage-v5180 .gvf-slide-3 .gvf-s3-kicker strong{font-size:inherit!important;line-height:inherit!important}
  body.gvf-homepage-v5180 .gvf-slide-3 .gvf-s3-copy{
    margin-top:9px!important;font-size:.70rem!important;line-height:1.32!important;
  }
  body.gvf-homepage-v5180 .gvf-slide-3 .gvf-ref-s3-favorites{
    display:block!important;left:1%!important;top:43%!important;width:55%!important;height:auto!important;
  }
  body.gvf-homepage-v5180 .gvf-slide-3 .gvf-ref-s3-export{
    display:block!important;left:58%!important;top:43%!important;width:39%!important;height:auto!important;
  }
  body.gvf-homepage-v5180 .gvf-slide-3 .gvf-ref-device{
    display:block!important;left:8%!important;top:68%!important;width:89%!important;height:auto!important;
  }

  /* Slide 4: copy/shield on top, exact AI product visual centered and large. */
  body.gvf-homepage-v5180 .gvf-slide-4 .gvf-copy-block p+p{margin-top:8px!important}
  body.gvf-homepage-v5180 .gvf-slide-4 .gvf-shield{
    margin-top:10px!important;
    max-width:245px!important;
    font-size:.73rem!important;
    line-height:1.25!important;
    gap:9px!important;
  }
  body.gvf-homepage-v5180 .gvf-slide-4 .gvf-shield::before{width:35px!important;height:35px!important;flex-basis:35px!important}
  body.gvf-homepage-v5180 .gvf-slide-4 .gvf-ref-device{
    display:block!important;left:1%!important;top:49%!important;width:98%!important;height:auto!important;
  }

  /* Slide 5: one consistent 3 + 2 mobile workflow, never a giant fifth card. */
  body.gvf-homepage-v5180 .gvf-slide-5 .gvf-ref-s5-flow,
  body.gvf-homepage-v5180 .gvf-slide-5 .gvf-ref-s5-benefits,
  body.gvf-homepage-v5180 .gvf-slide-5 .gvf-mini-benefits,
  body.gvf-homepage-v5180 .gvf-slide-5 .gvf-slide5-tagline{display:none!important}
  body.gvf-homepage-v5180 .gvf-slide-5 .gvf-flow-row{
    position:relative!important;
    left:auto!important;right:auto!important;top:auto!important;
    display:grid!important;
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    gap:7px!important;
    margin:14px 0 0!important;
    z-index:20!important;
  }
  body.gvf-homepage-v5180 .gvf-slide-5 .gvf-flow-card{
    grid-column:span 2!important;
    min-height:93px!important;
    padding:11px 6px 7px!important;
    border-radius:13px!important;
  }
  body.gvf-homepage-v5180 .gvf-slide-5 .gvf-flow-card:nth-child(4){grid-column:2 / span 2!important}
  body.gvf-homepage-v5180 .gvf-slide-5 .gvf-flow-card:nth-child(5){grid-column:4 / span 2!important}
  body.gvf-homepage-v5180 .gvf-slide-5 .gvf-flow-card>b{
    width:21px!important;height:21px!important;top:-10px!important;font-size:.55rem!important;
  }
  body.gvf-homepage-v5180 .gvf-slide-5 .gvf-flow-card>i{
    width:30px!important;height:30px!important;margin:13px auto 5px!important;
  }
  body.gvf-homepage-v5180 .gvf-slide-5 .gvf-flow-card>strong{
    font-size:.56rem!important;line-height:1.12!important;
  }
  body.gvf-homepage-v5180 .gvf-slide-5 .gvf-flow-card>small{display:none!important}
  body.gvf-homepage-v5180 .gvf-slide-5 .gvf-ref-device{
    display:block!important;left:6%!important;top:69%!important;width:90%!important;height:auto!important;
  }
}

@media (max-width:430px){
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-carousel-shell{height:770px!important;min-height:770px!important}
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide{padding-left:12px!important;padding-right:12px!important}
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-story-headline,
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-primary-h1{font-size:clamp(2.02rem,9.35vw,2.48rem)!important}
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-copy-block p{font-size:.74rem!important;line-height:1.34!important}
  body.gvf-homepage-v5180 .gvf-slide-1 .gvf-ref-s1-stress{top:41%!important;width:28%!important}
  body.gvf-homepage-v5180 .gvf-slide-1 .gvf-ref-s1-compare{top:42%!important;left:26%!important;width:73%!important}
  body.gvf-homepage-v5180 .gvf-slide-1 .gvf-ref-device{top:66%!important;width:90%!important;left:6%!important}
  body.gvf-homepage-v5180 .gvf-slide-2 .gvf-ref-device{top:69%!important}
  body.gvf-homepage-v5180 .gvf-slide-3 .gvf-ref-s3-favorites,
  body.gvf-homepage-v5180 .gvf-slide-3 .gvf-ref-s3-export{top:44%!important}
  body.gvf-homepage-v5180 .gvf-slide-3 .gvf-ref-device{top:69%!important}
  body.gvf-homepage-v5180 .gvf-slide-4 .gvf-ref-device{top:51%!important}
  body.gvf-homepage-v5180 .gvf-slide-5 .gvf-ref-device{top:70%!important}
}

@media (max-width:380px){
  body.gvf-homepage-v5180 .marketing-header{width:calc(100% - 12px)!important;padding-left:8px!important;padding-right:8px!important}
  body.gvf-homepage-v5180 .marketing-header .brand img{height:28px!important;max-width:104px!important}
  body.gvf-homepage-v5180 .marketing-header .public-auth-actions{grid-template-columns:minmax(78px,.68fr) minmax(0,1.32fr)!important}
  body.gvf-homepage-v5180 .marketing-header .header-login,
  body.gvf-homepage-v5180 .marketing-header .header-cta{font-size:.65rem!important;padding-inline:6px!important}
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-carousel-shell{height:750px!important;min-height:750px!important}
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-story-headline,
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-primary-h1{font-size:1.96rem!important}
  body.gvf-homepage-v5180 .gvf-slide-5 .gvf-flow-card>strong{font-size:.52rem!important}
}

@media (prefers-reduced-motion:reduce){
  body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide{transition:none!important}
}

/* V5.1.80 specificity lock against older V5.1.77 portrait grid rules. */
@media (max-width:700px){
  html body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide-3 .gvf-export-card,
  html body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide-3 .gvf-favorites-card{
    display:none!important;visibility:hidden!important;opacity:0!important;width:0!important;height:0!important;overflow:hidden!important;
  }
  html body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide-5 .gvf-flow-row{
    display:grid!important;
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    grid-auto-flow:row!important;
    grid-auto-rows:auto!important;
    gap:7px!important;
    margin:14px 0 0!important;
  }
  html body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide-5 .gvf-flow-card,
  html body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide-5 .gvf-flow-card:last-child{
    width:auto!important;max-width:none!important;justify-self:stretch!important;
    min-height:92px!important;
  }
  html body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide-5 .gvf-flow-card:nth-child(1){grid-column:1 / 3!important;grid-row:1!important}
  html body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide-5 .gvf-flow-card:nth-child(2){grid-column:3 / 5!important;grid-row:1!important}
  html body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide-5 .gvf-flow-card:nth-child(3){grid-column:5 / 7!important;grid-row:1!important}
  html body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide-5 .gvf-flow-card:nth-child(4){grid-column:2 / 4!important;grid-row:2!important}
  html body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide-5 .gvf-flow-card:nth-child(5),
  html body.gvf-homepage-v5180 .gvf-hero-slider .gvf-slide-5 .gvf-flow-card:last-child{grid-column:4 / 6!important;grid-row:2!important}
}
