
html,body{width:100%;max-width:100%;min-width:0;margin:0;overflow-x:hidden!important}
*,*::before,*::after{box-sizing:border-box} img,svg{max-width:100%}
.container{width:min(1180px,calc(100% - 32px))!important;max-width:1180px!important;margin-inline:auto!important}

/* top bar */
.topbar .container{display:flex!important;align-items:center;gap:14px}
.release-label{font-weight:900;white-space:nowrap}.release-date{white-space:nowrap}.topbar .right{margin-left:auto}

/* header/logo/menu */
.brandrow{position:relative!important;z-index:200!important;background:#fff;overflow:visible!important}
.brandrow .container{display:flex!important;align-items:center!important;min-height:76px!important;gap:18px!important;overflow:visible!important}
.gvl-home-logo{display:flex!important;align-items:center!important;gap:8px!important;margin-right:auto!important;text-decoration:none!important;min-width:0}
.gvl-logo-mark{display:block!important;width:56px!important;height:48px!important;flex:0 0 56px!important}
.gvl-logo-wordmark{display:block!important;font-size:24px!important;font-weight:900!important;letter-spacing:.035em!important;line-height:1!important;white-space:nowrap!important}
.brandrow .nav{display:flex!important;align-items:center!important;gap:17px!important;margin-left:auto!important}.brandrow .nav a{white-space:nowrap}
.menu{display:none!important;width:44px!important;height:44px!important;padding:0!important;border:1px solid #d4ded7!important;border-radius:10px!important;background:#fff!important;cursor:pointer!important;align-items:center!important;justify-content:center!important;position:relative!important;z-index:205!important}
.menu-lines{display:grid;gap:4px;width:18px}.menu-lines i{display:block;width:18px;height:2px;background:#0b3d2c;border-radius:2px;transition:.18s}.menu.is-open .menu-lines i:nth-child(1){transform:translateY(6px) rotate(45deg)}.menu.is-open .menu-lines i:nth-child(2){opacity:0}.menu.is-open .menu-lines i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.mobile-nav{display:none!important}.mobile-nav.open{display:grid!important}

/* hero */
.hero .container{display:grid!important;grid-template-columns:minmax(0,1.03fr) minmax(360px,.97fr)!important;align-items:stretch!important;padding:0!important}
.hero-copy{min-width:0!important;padding:44px 42px!important}.hero-copy h1{margin-top:0!important;line-height:.96!important}
.hero-photo{min-width:0!important;min-height:440px!important;height:auto!important;margin:0!important;transform:none!important;background-size:cover!important;background-position:center!important}
.hero-traits{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin-top:24px!important;width:100%!important}
.trait{display:grid!important;grid-template-columns:38px minmax(0,1fr)!important;gap:9px!important;align-items:center!important;min-width:0!important;padding:9px 8px!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:9px!important;background:rgba(255,255,255,.07)!important}
.trait .trait-icon{display:flex!important;align-items:center!important;justify-content:center!important;width:36px!important;height:36px!important;border-radius:50%!important;background:#62b637!important;color:#fff!important;font-weight:900!important;font-size:.78rem!important;line-height:1!important;position:static!important;margin:0!important}
.trait-copy{display:block!important;min-width:0!important;line-height:1.15!important}.trait-copy b{display:block!important;font-size:.72rem!important}.trait-copy small{display:block!important;margin-top:3px!important;font-size:.64rem!important;line-height:1.25!important;opacity:.92}

/* top 10 desktop */
#top-ten.rank-strip,#full-rankings.rank-strip{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:16px!important;width:100%!important;max-width:1180px!important;margin:0 auto!important;overflow:visible!important;align-items:stretch!important}
#top-ten .product-card,#full-rankings .product-card{display:flex!important;flex-direction:column!important;width:100%!important;min-width:0!important;height:100%!important;min-height:500px!important;position:relative!important;overflow:hidden!important}
#top-ten .product-image-link,#full-rankings .product-image-link{display:flex!important;align-items:center!important;justify-content:center!important;height:170px!important;min-height:170px!important;background:#fff!important;border-bottom:1px solid #edf1ee!important}
#top-ten .product-img,#full-rankings .product-img{width:100%!important;height:158px!important;object-fit:contain!important;padding:8px!important}
#top-ten .card-body,#full-rankings .card-body{display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-width:0!important;padding:13px!important}
#top-ten h3,#full-rankings h3{min-height:46px!important;margin:0 0 9px!important;font-size:.98rem!important;line-height:1.2!important}
.card-attributes{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:4px!important;margin:0 0 9px!important}
.card-attributes>div{min-width:0!important;padding:6px 4px!important;border:1px solid #e0e8e2!important;border-radius:6px!important;background:#f7faf7!important}
.card-attributes dt{display:block!important;font-size:.51rem!important;line-height:1.05!important;text-transform:uppercase!important;font-weight:800!important;color:#748078!important}.card-attributes dd{margin:3px 0 0!important;font-size:.71rem!important;font-weight:900!important;color:#153b2a!important}
#top-ten .score-pair,#full-rankings .score-pair{margin:0 0 8px!important}#top-ten .value-row,#full-rankings .value-row{margin:0 0 8px!important}
.card-price-block{display:flex!important;flex-direction:column!important;justify-content:flex-end!important;margin-top:auto!important;padding-top:9px!important;border-top:1px solid #edf1ee!important;min-height:50px!important}.best-badge{z-index:5!important}

@media(max-width:1100px){
 .brandrow .nav{gap:11px!important}.brandrow .nav a{font-size:.78rem!important}
 #top-ten.rank-strip,#full-rankings.rank-strip{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

@media(max-width:900px){
 .topbar .container{min-height:34px!important;justify-content:center!important;padding:5px 10px!important}.release-label{font-size:.66rem!important;letter-spacing:.02em}.release-date,.topbar .right{display:none!important}
 .brandrow .container{width:100%!important;max-width:100%!important;min-height:64px!important;padding:6px 12px!important;gap:8px!important}.brandrow .nav{display:none!important}
 .menu{display:inline-flex!important;flex:0 0 44px!important;margin-left:auto!important}
 .gvl-home-logo{max-width:calc(100vw - 76px)!important;overflow:hidden!important}.gvl-logo-mark{width:44px!important;height:40px!important;flex-basis:44px!important}.gvl-logo-wordmark{font-size:18px!important;overflow:hidden!important}
 .mobile-nav{position:absolute!important;top:100%!important;left:0!important;right:0!important;z-index:210!important;grid-template-columns:1fr!important;gap:0!important;padding:8px 12px 12px!important;background:#fff!important;border-top:1px solid #e3e8e4!important;border-bottom:1px solid #d7dfd9!important;box-shadow:0 14px 28px rgba(14,45,33,.14)!important;max-height:calc(100vh - 105px)!important;overflow-y:auto!important}
 .mobile-nav a{display:block!important;padding:12px 10px!important;border-bottom:1px solid #edf1ee!important;background:transparent!important;color:#173c2b!important;font-weight:800!important;text-decoration:none!important}.mobile-nav a:last-child{border-bottom:0!important}

 .hero .container{display:flex!important;flex-direction:column!important;width:100%!important;max-width:100%!important;padding:0!important}.hero-copy{width:100%!important;max-width:100%!important;padding:28px 16px 24px!important}.hero-copy h1{font-size:clamp(2.25rem,10vw,3.1rem)!important;line-height:.97!important;margin-bottom:14px!important}.hero-copy p{font-size:.97rem!important;line-height:1.5!important}
 .hero-traits{grid-template-columns:1fr!important;gap:7px!important;margin-top:18px!important}.trait{grid-template-columns:38px minmax(0,1fr)!important;padding:8px!important}.trait-copy b{font-size:.76rem!important}.trait-copy small{font-size:.68rem!important}
 .hero-photo{width:100%!important;min-height:245px!important;height:245px!important;margin:0!important;border-radius:0!important}

 .section{padding:30px 0!important}.section-titlebar{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:12px!important}

 #top-ten.rank-strip,#full-rankings.rank-strip{grid-template-columns:1fr!important;gap:12px!important;width:100%!important}
 #top-ten .product-card,#full-rankings .product-card{display:grid!important;grid-template-columns:118px minmax(0,1fr)!important;min-height:0!important;height:auto!important;width:100%!important}
 #top-ten .product-image-link,#full-rankings .product-image-link{grid-column:1!important;grid-row:1!important;width:118px!important;height:100%!important;min-height:205px!important;border-right:1px solid #edf1ee!important;border-bottom:0!important}
 #top-ten .product-img,#full-rankings .product-img{width:108px!important;height:135px!important;padding:7px!important}
 #top-ten .card-body,#full-rankings .card-body{grid-column:2!important;grid-row:1!important;padding:12px!important}
 #top-ten h3,#full-rankings h3{min-height:0!important;margin-bottom:7px!important;font-size:1.03rem!important}
 .card-attributes{margin-bottom:7px!important}.card-attributes>div{padding:5px 3px!important}.card-attributes dt{font-size:.48rem!important}.card-attributes dd{font-size:.68rem!important}
 #top-ten .score-pair,#full-rankings .score-pair{margin-bottom:6px!important}#top-ten .score-pair>div,#full-rankings .score-pair>div{padding:6px!important}#top-ten .score-pair span,#full-rankings .score-pair span{font-size:.57rem!important}#top-ten .score-pair strong,#full-rankings .score-pair strong{font-size:.98rem!important}
 #top-ten .value-row,#full-rankings .value-row{margin-bottom:5px!important}.value-badge{font-size:.57rem!important;padding:5px 7px!important}.confidence{font-size:.62rem!important}
 .card-price-block{min-height:0!important;margin-top:2px!important;padding-top:6px!important}.card-price{font-size:.94rem!important}.card-price-basis{font-size:.61rem!important}
}

@media(max-width:390px){
 .gvl-logo-wordmark{font-size:16px!important}
 #top-ten .product-card,#full-rankings .product-card{grid-template-columns:102px minmax(0,1fr)!important}
 #top-ten .product-image-link,#full-rankings .product-image-link{width:102px!important;min-height:200px!important}
 #top-ten .product-img,#full-rankings .product-img{width:94px!important;height:125px!important}
}


/* =========================================================
   GVL V15 FINAL TWEAKS
   ========================================================= */

/* Buying Guides — clean, intentional desktop cards */
main .article-card-grid {
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:18px !important;
  width:100% !important;
  max-width:none !important;
}
main .article-card-grid .article-card {
  display:flex !important;
  flex-direction:column !important;
  min-width:0 !important;
  min-height:250px !important;
  padding:20px !important;
  border:1px solid #dce5df !important;
  border-radius:11px !important;
  background:#fff !important;
}
main .article-card-grid .article-card small {
  color:#3a7053 !important;
  font-size:.68rem !important;
  font-weight:850 !important;
  text-transform:uppercase !important;
  letter-spacing:.045em !important;
}
main .article-card-grid .article-card h3 {
  margin:8px 0 !important;
  font-size:1.08rem !important;
  line-height:1.22 !important;
}
main .article-card-grid .article-card p {
  flex:1 1 auto !important;
  margin:0 0 18px !important;
  line-height:1.5 !important;
  color:#65736b !important;
}
main .article-card-grid .article-card .cta {
  align-self:flex-start !important;
  margin-top:auto !important;
}

/* Comparison dropdowns */
.compare-controls select {
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

/* Mobile hero artwork is normal-flow content BELOW the text/cards */
@media(max-width:900px){
  .hero-copy{
    position:relative !important;
    z-index:2 !important;
  }
  .hero-photo{
    position:relative !important;
    inset:auto !important;
    top:auto !important;
    right:auto !important;
    bottom:auto !important;
    left:auto !important;
    z-index:1 !important;
    display:block !important;
    width:100% !important;
    min-height:230px !important;
    height:230px !important;
    margin:0 !important;
    transform:none !important;
    background-position:center bottom !important;
  }
  .hero-photo::before{
    display:none !important;
  }

  main .article-card-grid{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  main .article-card-grid .article-card{
    min-height:0 !important;
  }
}

@media(min-width:901px) and (max-width:1200px){
  main .article-card-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
