.reviews-hero{
    width:100%;
    height:380px;
    background:url('https://www.centerforveinwellness.com/wp-content/uploads/2020/05/042.jpg')
               center/cover no-repeat;
    position:relative;
}

.reviews-hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(to bottom,rgba(0,0,0,.2),rgba(0,0,0,.45));
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    color:#fff;
}

.reviews-hero-overlay h1{
    font-size:42px;
    font-weight:700;
    letter-spacing:.5px;
    margin:0 0 10px;
}

.hero-line{
    width:80px;
    height:2px;
    background:#fff;
    display:block;
}

/* Mobile */
@media(max-width:768px){
  .reviews-hero{ height:260px; }
  .reviews-hero-overlay h1{ font-size:28px; }
}


@media(max-width:768px){
  .reviews-hero{ height:260px; }
  .reviews-hero-overlay h1{ font-size:28px; }
}



/* ---------- Page Container ---------- */
.reviews-container{
    max-width: 1140px;
    margin: auto;
    padding: 25px 18px 40px;
}

/* ---------- Reviews Grid ---------- */
#locationReview .row{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:22px;
}

@media(max-width:992px){
    #locationReview .row{ grid-template-columns:repeat(2,1fr); }
}
@media(max-width:600px){
    #locationReview .row{ grid-template-columns:1fr; }
}

/* ---------- Review Card ---------- */
.review_container{
    background:#fff;
    border-radius:10px;
    padding:18px;
    min-height:200px;
    box-shadow:0 8px 18px rgba(0,0,0,.08);
    transition:.25s ease;
}

.review_container:hover{
    transform:translateY(-4px);
    box-shadow:0 14px 28px rgba(0,0,0,.12);
}

.reveiw_comment p{
    color:#333;
    font-size:15px;
    margin-bottom:8px;
}

.review_user h3{
    margin:8px 0;
    font-size:14px;
    font-weight:700;
    color:#111;
    text-transform:uppercase;
}

.rating_st{
    display:flex;
    gap:4px;
}
.rating_st .fa-star{ color:#ddd; font-size:14px; }
.rating_st .checked{ color:#f7a400; }

/* ---------- Pagination ---------- */
.pagination{
    display:flex;
    gap:10px;
    justify-content:center;
    margin-top:25px;
}
.pagination li{
    border:1px solid #ccc;
    padding:6px 12px;
    border-radius:6px;
    cursor:pointer;
}
.pagination li.active{
    background:#000;
    color:#fff;
}
.pagination li.prev,
.pagination li.next{
    display:none !important;
}
.pagination li a::after{
    content:none !important;
}
.pagination,
.pagination li{
    list-style:none;
}
.title{
align-items: center;
    display: flex;
    justify-content: center;
    padding-bottom: 20px;
    }
.pagination li::after{
    content:none !important;
}

/* ---------- Add Review Card Wrapper ---------- */
.add-review-wrapper{
    background:#fff;
    border-radius:12px;
    padding:25px;
    box-shadow:0 10px 24px rgba(0,0,0,.08);
}

/* ---------- Form Labels & Inputs ---------- */
.form_container label{
    font-weight:600;
    color:#222;
    margin-bottom:4px;
}

.form_container .form-control,
.form_container select,
.form_container textarea{
    border-radius:8px;
    border:1px solid #cfcfcf;
    padding:10px 12px;
    font-size:15px;
    background:#fff;
}

.form_container textarea{
    min-height:110px;
    resize:vertical;
}

/* ---------- 3-Column Form Layout ---------- */
.form_container .row{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px 20px;
}

/* Full width rows (textarea, checkbox etc) */
.form_container .row .col-full{
    grid-column:1 / 4;
}

/* Tablet — 2 columns */
@media(max-width:992px){
    .form_container .row{
        grid-template-columns:repeat(2,1fr);
    }
    .form_container .row .col-full{
        grid-column:1 / 3;
    }
}

/* Mobile — 1 column */
@media(max-width:600px){
    .form_container .row{
        grid-template-columns:1fr;
    }
    .form_container .row .col-full{
        grid-column:1 / 2;
    }
}

/* ---------- Submit Button ---------- */
.button_btn_form{
    background:#c62828;
    border:none;
    padding:10px 26px;
    border-radius:8px;
    color:#fff;
    font-size:16px;
    text-transform:uppercase;
    cursor:pointer;
}
.button_btn_form:hover{
    background:#b71c1c;
}

/* Checkbox row */
.checkbox-container{
    margin-top:8px;
    display:flex;
    gap:8px;
    align-items:flex-start;
}


/* Mobile layout fix */
@media(max-width:600px){

  .reviews-container{
    width:100%;
    max-width:100%;
    margin:0;
    padding:15px;
  }

  #locationReview .row{
    grid-template-columns:1fr;
    gap:16px;
  }

  .review_container{
    min-height:auto;
    padding:14px;
  }

  .add-review-wrapper{
    margin-top:20px;
    padding:18px;
  }
}
@media(max-width:600px){

#show_review_new{
    margin-top: 50px !important;
    }
  .reviews-container{
    width:100% !important;
    max-width:100% !important;
    padding:15px 12px !important;
    margin:0 auto !important;
    box-sizing:border-box;
  }

  #locationReview .row{
    grid-template-columns:1fr !important;
    margin:10 !important;
  }

  .review_container{
    width:100%;
    max-width:100%;
  }
  
  /* Keep pagination inside viewport */
  .pagination{
      display:flex;
      justify-content:center;
      flex-wrap:wrap;
      max-width:100%;
      width:100%;
      padding:0 8px;
      overflow-x:hidden;
  }

  /* Prevent items from stretching */
  .pagination li{
      flex:0 0 auto;
      white-space:normal;
      max-width:36px;
      text-align:center;
  }

  /* Force container to remain stable */
  #add_review_section,
  #locationReview{
      max-width:100%;
      width:100%;
      margin:0 auto;
  }

  /* Block horizontal scroll from pagination */
  html, body{
      overflow-x:hidden !important;
  }
}