
/* V57: Reviews page mobile responsive refinement */

.review-page{
  overflow-x:hidden;
}
.review-page .reviews-hero,
.review-page .reviews-section,
.review-page .review-card,
.review-page .review-cta{
  max-width:100%;
}
.review-page .review-media img,
.review-page .mini-gallery img,
.review-page .gallery-item img{
  -webkit-user-select:none;
  user-select:none;
}

@media(max-width:900px){
  .review-page .nav{
    background:rgba(8,9,12,.96);
  }
  .review-page .nav-inner{
    height:64px;
    gap:12px;
  }
  .review-page .nav .logo img{
    height:30px;
  }
  .review-page .nav .btn{
    min-height:42px;
    padding:10px 15px;
    font-size:12px;
    white-space:nowrap;
  }
  .review-page .reviews-hero{
    min-height:0;
    padding:104px 0 58px;
    align-items:flex-end;
  }
  .review-page .reviews-hero:before{
    background:
      linear-gradient(180deg,rgba(8,9,12,.72) 0%,rgba(8,9,12,.84) 48%,rgba(8,9,12,.94) 100%),
      radial-gradient(circle at 22% 28%,rgba(111,66,245,.22),transparent 34%),
      radial-gradient(circle at 80% 18%,rgba(249,115,22,.16),transparent 28%),
      url("../reviews-hero-band.jpg") 58% center/cover no-repeat;
  }
  .review-page .reviews-eyebrow{
    font-size:10px;
    letter-spacing:.18em;
    margin-bottom:13px;
  }
  .review-page .reviews-hero h1{
    font-size:clamp(38px,11vw,52px);
    line-height:.96;
    letter-spacing:-.06em;
    max-width:96%;
  }
  .review-page .reviews-hero p{
    font-size:14.5px;
    line-height:1.68;
    max-width:96%;
  }
  .review-page .review-metrics{
    gap:8px;
    margin-top:20px;
  }
  .review-page .review-metric{
    font-size:10.5px;
    padding:8px 10px;
    max-width:100%;
  }
  .review-page .reviews-section{
    padding:54px 0;
  }
  .review-page .reviews-head{
    gap:14px;
    margin-bottom:20px;
  }
  .review-page .reviews-head h2{
    font-size:clamp(30px,8.6vw,40px);
    line-height:1.04;
  }
  .review-page .reviews-head p{
    font-size:14px;
    line-height:1.68;
  }
  .review-page .review-grid{
    gap:16px;
  }
  .review-page .review-card{
    padding:18px;
    border-radius:22px;
    box-shadow:0 18px 46px rgba(14,14,17,.075);
  }
  .review-page .review-card.featured{
    padding:0;
    border-radius:22px;
  }
  .review-page .review-card.featured .review-media{
    border-radius:22px 22px 0 0;
  }
  .review-page .review-media img{
    aspect-ratio:4/3;
  }
  .review-page .review-body{
    padding:18px;
  }
  .review-page .review-top{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    margin-bottom:12px;
  }
  .review-page .review-badge{
    width:max-content;
    max-width:100%;
    white-space:normal;
    line-height:1.2;
  }
  .review-page .review-title,
  .review-page .review-card:not(.featured) .review-title{
    font-size:20px;
    line-height:1.16;
  }
  .review-page .review-text{
    font-size:14px;
    line-height:1.72;
  }
  .review-page .review-chip{
    font-size:10.5px;
    padding:7px 9px;
  }
  .review-page .mini-gallery{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:7px;
  }
  .review-page .mini-gallery img{
    border-radius:12px;
    aspect-ratio:1/1;
  }
  .review-page .gallery-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .review-page .gallery-item{
    border-radius:18px;
  }
  .review-page .gallery-item img{
    aspect-ratio:1/1.18;
  }
  .review-page .review-note{
    font-size:11px;
    line-height:1.6;
  }
  .review-page .review-cta{
    grid-template-columns:1fr;
    gap:18px;
    margin-top:28px;
    padding:22px;
    border-radius:24px;
  }
  .review-page .review-cta h3{
    font-size:clamp(28px,8vw,34px);
    line-height:1.04;
  }
  .review-page .review-cta p{
    font-size:14px;
    line-height:1.68;
  }
  .review-page .review-cta-actions{
    justify-content:stretch;
    gap:10px;
  }
  .review-page .review-cta-actions .btn{
    width:100%;
    min-height:52px;
  }
  .review-page .footer{
    padding:38px 0 34px;
  }
  .review-page .footer p{
    font-size:13px;
  }
}

@media(max-width:520px){
  .review-page .container{
    width:calc(100% - 24px)!important;
  }
  .review-page .nav-inner{
    height:62px;
  }
  .review-page .nav .btn{
    padding:9px 13px;
    font-size:11.5px;
  }
  .review-page .reviews-hero{
    padding:96px 0 50px;
  }
  .review-page .reviews-hero h1{
    font-size:38px;
  }
  .review-page .reviews-hero p{
    font-size:14px;
  }
  .review-page .review-metrics{
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:stretch;
  }
  .review-page .review-metric{
    border-radius:16px;
    justify-content:center;
    text-align:center;
    line-height:1.25;
  }
  .review-page .review-metric:first-child{
    grid-column:1/-1;
  }
  .review-page .reviews-section{
    padding:48px 0;
  }
  .review-page .review-card{
    padding:16px;
  }
  .review-page .review-card.featured{
    padding:0;
  }
  .review-page .review-body{
    padding:16px;
  }
  .review-page .review-meta{
    gap:6px;
  }
  .review-page .mini-gallery{
    gap:6px;
  }
  .review-page .review-play{
    width:56px;
    height:56px;
  }
  .review-page .review-play:before{
    border-left-width:15px;
    border-top-width:10px;
    border-bottom-width:10px;
  }
  .review-page .gallery-grid{
    gap:8px;
  }
  .review-page .review-cta{
    padding:20px;
    border-radius:22px;
  }
}

@media(max-width:380px){
  .review-page .reviews-hero h1{
    font-size:34px;
  }
  .review-page .review-metrics{
    grid-template-columns:1fr;
  }
  .review-page .review-metric:first-child{
    grid-column:auto;
  }
  .review-page .mini-gallery{
    grid-template-columns:1fr 1fr 1fr;
  }
}
