/* Jerkiss Pro Cams V5.7 - tighter top spacing and centered webcam pages */

/* Main frame: center the whole experience instead of letting content drift */
body.jk-v57 .jk-main-content{
  width:min(100%,1450px)!important;
  max-width:1450px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-top:3.25rem!important;
  padding-left:clamp(.9rem,2vw,1.55rem)!important;
  padding-right:clamp(.9rem,2vw,1.55rem)!important;
}

/* Homepage and webcam listing pages share the same centered rhythm */
body.jk-v57.home .jk-main-content,
body.jk-v57.blog .jk-main-content,
body.jk-v57.post-type-archive-webcam .jk-main-content,
body.jk-v57[class*="tax-webcam_"] .jk-main-content,
body.jk-v57.search .jk-main-content{
  width:min(100%,1450px)!important;
  max-width:1450px!important;
}

/* Keep every homepage block on the same clean center axis */
body.jk-v57 .jk-v55-hero,
body.jk-v57 .jk-v55-home-paths,
body.jk-v57 .text-title,
body.jk-v57.home #webcams-grid,
body.jk-v57.blog #webcams-grid,
body.jk-v57.post-type-archive-webcam #webcams-grid,
body.jk-v57[class*="tax-webcam_"] #webcams-grid,
body.jk-v57.search #webcams-grid,
body.jk-v57 #related-webcams-grid,
body.jk-v57 .jk-home-grid,
body.jk-v57 .home-featured-text,
body.jk-v57 .jk-v5-seo-blocks,
body.jk-v57 .jk-v4-seo-blocks,
body.jk-v57 .jk-v3-seo-blocks,
body.jk-v57 .jk-v5-archive-intro,
body.jk-v57 .jk-v4-archive-intro,
body.jk-v57 .jk-v3-archive-intro,
body.jk-v57 .jk-v2-archive-intro,
body.jk-v57 .jk-v5-toolbar,
body.jk-v57 .jk-v4-toolbar,
body.jk-v57 .jk-v3-toolbar,
body.jk-v57 .jk-v5-hot-rail,
body.jk-v57 .jk-v5-spotlight-wall,
body.jk-v57 .jk-v5-tax-tail,
body.jk-v57 .jk-v5-archive-tail{
  width:100%!important;
  max-width:1360px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Hero: less top gap, still premium, but better aligned with the grid below */
body.jk-v57 .jk-v55-hero{
  margin-top:0!important;
  margin-bottom:1.15rem!important;
  min-height:clamp(300px,38vh,430px)!important;
  padding:clamp(1.05rem,2.1vw,2.05rem)!important;
  grid-template-columns:minmax(0,1.05fr) minmax(310px,.44fr)!important;
  align-items:center!important;
}
body.jk-v57 .jk-v55-hero h1{
  font-size:clamp(2.75rem,4.85vw,5.35rem)!important;
  line-height:.9!important;
  margin:.35rem 0 .55rem!important;
}
body.jk-v57 .jk-v55-hero p{
  max-width:620px!important;
  font-size:clamp(.92rem,1vw,1.03rem)!important;
  line-height:1.55!important;
}
body.jk-v57 .jk-v55-hero-search{
  margin:1rem 0 .75rem!important;
  width:min(625px,100%)!important;
}
body.jk-v57 .jk-v55-hero-panel{
  align-self:center!important;
}
body.jk-v57 .jk-v55-hero-models a{
  min-height:72px!important;
}

/* Shortcut cards follow the hero width and stop pulling the page off center */
body.jk-v57 .jk-v55-home-paths{
  max-width:1360px!important;
  gap:1.05rem!important;
}

/* Grids: centered, wider thumbnails, clean spacing */
body.jk-v57.home #webcams-grid,
body.jk-v57.blog #webcams-grid,
body.jk-v57.post-type-archive-webcam #webcams-grid,
body.jk-v57[class*="tax-webcam_"] #webcams-grid,
body.jk-v57.search #webcams-grid,
body.jk-v57 #related-webcams-grid,
body.jk-v57 .jk-home-grid{
  display:grid!important;
  max-width:1360px!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:1.45rem!important;
  justify-content:center!important;
  align-items:stretch!important;
}
@media(min-width:1180px) and (max-width:1499px){
  body.jk-v57.home #webcams-grid,
  body.jk-v57.blog #webcams-grid,
  body.jk-v57.post-type-archive-webcam #webcams-grid,
  body.jk-v57[class*="tax-webcam_"] #webcams-grid,
  body.jk-v57.search #webcams-grid,
  body.jk-v57 #related-webcams-grid,
  body.jk-v57 .jk-home-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
}
@media(min-width:820px) and (max-width:1179px){
  body.jk-v57.home #webcams-grid,
  body.jk-v57.blog #webcams-grid,
  body.jk-v57.post-type-archive-webcam #webcams-grid,
  body.jk-v57[class*="tax-webcam_"] #webcams-grid,
  body.jk-v57.search #webcams-grid,
  body.jk-v57 #related-webcams-grid,
  body.jk-v57 .jk-home-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media(min-width:560px) and (max-width:819px){
  body.jk-v57.home #webcams-grid,
  body.jk-v57.blog #webcams-grid,
  body.jk-v57.post-type-archive-webcam #webcams-grid,
  body.jk-v57[class*="tax-webcam_"] #webcams-grid,
  body.jk-v57.search #webcams-grid,
  body.jk-v57 #related-webcams-grid,
  body.jk-v57 .jk-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

/* Larger, cleaner webcam cards across home, archives and related blocks */
body.jk-v57 #webcams-grid .jk-v5-card,
body.jk-v57 .jk-home-grid .jk-v5-card,
body.jk-v57 #related-webcams-grid > div{
  border-radius:28px!important;
  overflow:hidden!important;
}
body.jk-v57 #webcams-grid .jk-v5-card .t-thumb-wrap,
body.jk-v57 .jk-home-grid .jk-v5-card .t-thumb-wrap,
body.jk-v57 #related-webcams-grid .t-thumb-wrap{
  aspect-ratio:16/11.25!important;
  margin:.6rem!important;
  border-radius:22px!important;
  overflow:hidden!important;
}
body.jk-v57 #webcams-grid .jk-v5-card .p-4,
body.jk-v57 .jk-home-grid .jk-v5-card .p-4,
body.jk-v57 #related-webcams-grid .p-4{
  padding:1rem .95rem 1.05rem!important;
  min-height:124px!important;
  align-items:flex-start!important;
  gap:.72rem!important;
}
body.jk-v57 #webcams-grid .jk-v4-card-tags,
body.jk-v57 .jk-home-grid .jk-v4-card-tags{
  margin-top:.55rem!important;
  padding-bottom:.05rem!important;
  max-height:1.5rem!important;
  overflow:hidden!important;
}
body.jk-v57 #webcams-grid .jk-v4-card-tags span,
body.jk-v57 .jk-home-grid .jk-v4-card-tags span{
  font-size:.6rem!important;
  line-height:1!important;
  padding:.22rem .42rem!important;
  max-width:5.9rem!important;
}

/* Webcam profile pages: centered main page + related cams centered below */
body.jk-v57.single-webcam .jk-main-content,
body.jk-v57.single .jk-main-content{
  width:min(100%,1420px)!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.jk-v57.single-webcam .jk-main-content > .max-w-screen-xl,
body.jk-v57.single .jk-main-content > .max-w-screen-xl{
  width:100%!important;
  max-width:1280px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
body.jk-v57.single-webcam .text-title,
body.jk-v57.single .text-title{
  max-width:1360px!important;
  justify-content:center!important;
  text-align:center!important;
}

/* Mobile: no top crush, keep page centered and readable */
@media(max-width:980px){
  body.jk-v57 .jk-main-content{
    max-width:100%!important;
    padding-top:4.15rem!important;
  }
  body.jk-v57 .jk-v55-hero{
    min-height:auto!important;
    margin-top:0!important;
    grid-template-columns:1fr!important;
  }
  body.jk-v57 .jk-v55-hero-panel{display:none!important;}
}
@media(max-width:640px){
  body.jk-v57 .jk-main-content{
    padding-top:3.85rem!important;
    padding-left:.85rem!important;
    padding-right:.85rem!important;
  }
  body.jk-v57 .jk-v55-hero{
    padding:1rem!important;
    border-radius:24px!important;
    margin-bottom:1rem!important;
  }
  body.jk-v57 .jk-v55-hero h1{font-size:clamp(2.35rem,12vw,4rem)!important;}
  body.jk-v57.home #webcams-grid,
  body.jk-v57.blog #webcams-grid,
  body.jk-v57.post-type-archive-webcam #webcams-grid,
  body.jk-v57[class*="tax-webcam_"] #webcams-grid,
  body.jk-v57.search #webcams-grid,
  body.jk-v57 #related-webcams-grid,
  body.jk-v57 .jk-home-grid{
    grid-template-columns:1fr!important;
    gap:1.05rem!important;
  }
  body.jk-v57 #webcams-grid .jk-v5-card .p-4,
  body.jk-v57 .jk-home-grid .jk-v5-card .p-4,
  body.jk-v57 #related-webcams-grid .p-4{min-height:110px!important;}
}
