/* Responsive framing shared by every dedicated product hero. */
.product-v2-hero{
  --product-hero-top:clamp(102px,10vh,132px);
  --product-hero-bottom:clamp(24px,4vh,44px);
  box-sizing:border-box;
  height:auto!important;
}
/* Match the desktop header inset when calculating the available image height. */
body.has-header-socials .product-v2-hero{--product-hero-top:210px}
.product-v2-shell{box-sizing:border-box}
/* Fixed grid tracks let the photo shrink below its intrinsic bitmap height. */
.product-v2-stage{
  min-width:0;
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:minmax(0,1fr);
}
.product-v2-product-wrap{
  min-width:0;
  min-height:0;
  margin-inline:0!important;
  justify-self:center;
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:minmax(0,1fr);
}
.product-v2-product-wrap img{
  min-width:0;
  min-height:0;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
}
@media(min-width:1181px){
  .product-v2-hero{
    min-height:100svh;
    padding:clamp(102px,10vh,132px) 0 clamp(24px,4vh,44px)!important;
  }
  .product-v2-shell{
    width:min(1600px,calc(100% - clamp(48px,5vw,96px)))!important;
    min-height:calc(100svh - var(--product-hero-top) - var(--product-hero-bottom))!important;
    grid-template-columns:minmax(360px,.72fr) minmax(0,1.28fr)!important;
    gap:clamp(18px,2.5vw,44px)!important;
  }
  .product-v2-copy{max-width:610px;padding-left:0!important}
  .product-v2-copy h1{
    margin-bottom:clamp(12px,2vh,20px)!important;
    font-size:clamp(4.5rem,6.2vw,8rem)!important;
    line-height:.82!important;
  }
  .product-v2-copy>p{font-size:clamp(.88rem,1vw,1rem)!important;line-height:1.6!important}
  .product-v2-stage{
    height:clamp(280px,calc(100svh - var(--product-hero-top) - var(--product-hero-bottom)),740px)!important;
    min-height:0!important;
  }
  .product-v2-product-wrap{width:100%!important;height:92%!important}
  .product-v2-product-wrap[data-slug="spider-pro"]{width:106%!important;height:108%!important}
  .product-v2-product-wrap[data-slug="clean-pro"]{width:104%!important;height:102%!important}
  .product-v2-product-wrap[data-slug="classic"]{width:106%!important;height:110%!important}
  .product-v2-product-wrap[data-slug="iate"]{width:106%!important;height:108%!important}
  .product-v2-product-wrap[data-slug="stradeiro"]{top:-2%!important;width:88%!important;height:88%!important}
}

@media(min-width:901px) and (max-width:1180px){
  .product-v2-hero{--product-hero-top:108px;--product-hero-bottom:30px;min-height:100svh;padding:108px 0 30px!important}
  .product-v2-shell{
    width:min(100% - 38px,1120px)!important;
    min-height:calc(100svh - var(--product-hero-top) - var(--product-hero-bottom))!important;
    grid-template-columns:minmax(340px,.82fr) minmax(0,1.18fr)!important;
    gap:18px!important;
    padding-top:0!important;
  }
  .product-v2-copy{max-width:520px;padding:0!important}
  .product-v2-copy h1{font-size:clamp(3.7rem,7.2vw,5.8rem)!important;line-height:.83!important}
  .product-v2-copy>p{font-size:.88rem!important;line-height:1.55!important}
  .product-v2-specs{margin-top:18px!important}
  .product-v2-colors{margin-top:13px!important}
  .product-v2-actions{margin-top:20px!important;gap:9px!important}
  .product-v2-actions a{min-height:50px!important;padding:10px 16px!important;font-size:.74rem!important}
  .product-v2-stage{height:clamp(280px,calc(100svh - var(--product-hero-top) - var(--product-hero-bottom)),620px)!important;min-height:0!important}
  .product-v2-product-wrap{width:100%!important;height:92%!important}
  .product-v2-product-wrap[data-slug="spider-pro"]{width:102%!important;height:106%!important}
  .product-v2-product-wrap[data-slug="clean-pro"]{width:102%!important;height:102%!important}
  .product-v2-product-wrap[data-slug="classic"]{width:102%!important;height:110%!important}
  .product-v2-product-wrap[data-slug="iate"]{width:102%!important;height:106%!important}
  .product-v2-product-wrap[data-slug="stradeiro"]{top:-1%!important;width:88%!important;height:89%!important}
}

@media(min-width:681px) and (max-width:900px){
  .product-v2-hero{min-height:0;padding:104px 0 26px!important}
  .product-v2-shell{
    width:min(100% - 36px,760px)!important;
    min-height:0!important;
    grid-template-columns:1fr!important;
    gap:4px!important;
    padding-top:18px!important;
  }
  .product-v2-copy{max-width:680px;padding:0!important}
  .product-v2-copy h1{font-size:clamp(4.2rem,11vw,6rem)!important}
  .product-v2-stage{height:clamp(450px,62vw,540px)!important;min-height:0!important}
  .product-v2-product-wrap{width:98%!important;height:92%!important}
  .product-v2-product-wrap[data-slug="spider-pro"]{width:102%!important;height:102%!important}
  .product-v2-product-wrap[data-slug="clean-pro"]{width:102%!important;height:100%!important}
  .product-v2-product-wrap[data-slug="classic"],
  .product-v2-product-wrap[data-slug="iate"]{width:102%!important;height:102%!important}
  .product-v2-product-wrap[data-slug="stradeiro"]{top:0!important;width:88%!important;height:88%!important}
}

@media(max-width:680px){
  .product-v2-hero{min-height:0;padding:86px 0 18px!important}
  .product-v2-shell{
    width:min(100% - 20px,560px)!important;
    min-height:0!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    padding-top:8px!important;
  }
  .product-v2-copy{padding:4px 3px 0!important}
  .product-v2-copy h1{
    margin:0 0 11px!important;
    font-size:clamp(3.1rem,16vw,4.8rem)!important;
    line-height:.84!important;
  }
  .product-v2-copy>p{font-size:.82rem!important;line-height:1.5!important}
  .product-v2-specs{
    flex-wrap:nowrap!important;
    gap:6px!important;
    margin-top:14px!important;
    padding-bottom:5px;
    overflow-x:auto;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
  }
  .product-v2-specs::-webkit-scrollbar{display:none}
  .product-v2-specs span{
    flex:0 0 auto;
    padding:7px 10px!important;
    font-size:.62rem!important;
    scroll-snap-align:start;
  }
  .product-v2-colors{margin-top:10px!important;padding:9px!important;border-radius:15px!important}
  .product-v2-color{min-height:37px!important}
  .product-v2-actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px!important;
    margin-top:13px!important;
  }
  .product-v2-actions a{
    min-width:0;
    min-height:48px!important;
    justify-content:center;
    gap:6px!important;
    padding:9px 10px!important;
    font-size:.67rem!important;
    line-height:1.2;
    text-align:center;
  }
  .product-v2-actions a b{width:23px!important;height:23px!important;flex-basis:23px!important}
  .product-v2-stage{
    height:clamp(330px,92vw,410px)!important;
    min-height:0!important;
    margin-top:2px;
  }
  .product-v2-stage::before{width:76%!important;box-shadow:0 0 0 34px rgba(80,202,237,.018)!important}
  .product-v2-stage::after{left:17%!important;right:8%!important;bottom:10%!important;height:32px!important}
  .product-v2-ghost{font-size:clamp(5rem,27vw,8rem)!important}
  .product-v2-product-wrap{top:0!important;width:96%!important;height:92%!important}
  .product-v2-product-wrap[data-slug="spider-pro"]{width:102%!important;height:100%!important}
  .product-v2-product-wrap[data-slug="clean-pro"]{width:102%!important;height:100%!important}
  .product-v2-product-wrap[data-slug="classic"]{width:102%!important;height:100%!important}
  .product-v2-product-wrap[data-slug="iate"]{width:102%!important;height:100%!important}
  .product-v2-product-wrap[data-slug="stradeiro"]{width:88%!important;height:88%!important}
}

@media(max-width:360px){
  .product-v2-actions{grid-template-columns:1fr}
  .product-v2-stage{height:320px!important}
}

@media(min-width:1181px) and (max-height:760px){
  .product-v2-hero{--product-hero-top:96px;--product-hero-bottom:18px;padding-top:96px!important;padding-bottom:18px!important}
  .product-v2-copy h1{font-size:clamp(4rem,5.4vw,6.4rem)!important}
  .product-v2-specs{margin-top:13px!important}
  .product-v2-colors{margin-top:9px!important;padding-block:9px!important}
  .product-v2-actions{margin-top:14px!important}
  .product-v2-stage{height:clamp(280px,calc(100svh - var(--product-hero-top) - var(--product-hero-bottom)),560px)!important}
}

/* V2: denser and more visual smartphone composition. */
@media(max-width:680px){
  .product-v2-copy h1{max-width:100%;text-wrap:balance}
  .product-v2-copy>p{max-width:34rem}
  .product-v2-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    margin-top:12px!important;
  }
  .product-v2-actions a{
    min-height:46px!important;
    padding:8px 8px!important;
  }
  .product-v2-stage{margin-top:-2px!important}
  .product-v2-stage::before{width:72%!important}
}

@media(max-width:360px){
  .product-v2-shell{width:calc(100% - 16px)!important}
  .product-v2-copy h1{font-size:clamp(2.85rem,15vw,3.45rem)!important}
  .product-v2-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}
  .product-v2-actions a{font-size:.62rem!important}
  .product-v2-actions a b{width:21px!important;height:21px!important;flex-basis:21px!important}
  .product-v2-stage{height:350px!important}
}

@media(min-width:361px) and (max-width:430px){
  .product-v2-stage{height:400px!important}
}

@media(min-width:431px) and (max-width:680px){
  .product-v2-stage{height:clamp(420px,92vw,470px)!important}
}

/* Enlarge the boot while keeping clearance above the cuff and below the sole. */
.product-v2-product-wrap[data-slug="stradeiro"]{
  top:0!important;
  width:94%!important;
  height:94%!important;
}

/* Lift the low-shoe product photos so their outsoles stay inside the hero. */
@media(min-width:681px){
  body.product-page-v2 .product-v2-product-wrap:not([data-slug="stradeiro"]){
    top:-7%!important;
  }
}

@media(max-width:680px){
  body.product-page-v2 .product-v2-product-wrap:not([data-slug="stradeiro"]){
    top:-5%!important;
  }
}

