* { box-sizing: border-box; }
.grid:after {
  content: '';
  display: block;
  clear: both;
}

/* ---- .grid-item ---- */
.grid-sizer,
.grid-item {
  width: 50%;
}

.grid-item {
  float: left;
}
.grid-item img {
  display: block;
  max-width: 100%;
}
.product-reviews-flex {
    display: flex;
}
.product-reviews-heading {
    padding-right: 1.67vw;
    border-right: 1px solid #3e434780;
    margin-right: 7.8vw;
}
.product-reviews-heading h2 {
    margin: 0;
    font-family: "Montserrat", sans-serif;
    font-weight: 400;
    font-size: 3.27vw;
    color: rgb(var(--color-base-text));
    line-height: 1;
    text-wrap: nowrap;
    min-width: 12.5vw;
}
.product-reviews-content {
    width: 100%;
}
.product-reviews-content .grid-item-wrap.has-img .item-img {
    width: 30%;
    order: 2;
}
.product-reviews-content .grid-item-wrap.has-img .main {
    width: 70%;
    order: 1;
    padding: 0 0 0 10px;
}
.grid__box {
    box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
    background: #fff;
    border-radius: 8px;
    display: flex;
    flex-flow: wrap;
    flex-wrap: wrap;
    flex-basis: 100%;
    padding: 10px;
    margin: 7px;
        overflow: hidden;
    position: relative;
    font-family: "Montserrat", sans-serif;
}
.grid__box .item-img img {
    border-radius: 8px;
}
.grid__box .title {
    font-weight: bold;
    font-size: 16px;
    display: flex;
    align-items: center;
	    text-transform: capitalize;
}
.grid__box .time {
    color: #3E4347;
    font-size: 11px;
    padding: 5px 0 0;
    height: 20px;
}
.product-reviews-content .text-block p {
    color: #3E4347;
    font-size: 14px;
}
.product-reviews-content .stars ul{
  display: inline-flex;
    margin: unset;
    padding: unset;
    text-indent: unset;
    list-style-type: none;
}
.grid__box .text-block {
    padding-top: 10px;
}
.grid__box .text-block p{
    margin: 0px;
}
.product-reviews-content .item-type-block .value, .product-reviews-content .item-type-block .text-muted {
    color: #3E4347;
    font-size: 14px;
}
.product-reviews-content .grid__box:hover {
    background-color: #e8e8e8;
}
.product-reviews-content .stars ul li img {
    display: block;
    width: 1em;
    height: 1em;
}
.product-reviews-content .stars {
    padding-top: 10px;
    height: 27px;
}
.rating-summary-avg ul {
    display: inline-flex;
    margin: unset;
    padding: unset;
    text-indent: unset;
    list-style-type: none;
    margin-right: 10px;
}
.review__sec_left {
    display: flex;
        align-items: center;
	gap:10px;
}
.review__sec {
    display: flex;
    justify-content: space-between;
    margin: 20px auto 7px;
    padding: 0 7px 7px;
}
.review__sec_left .summary-text span {
    font-size: 16px;
     font-family: "Montserrat", sans-serif;
    font-weight: 400;
    overflow: hidden;
    text-overflow: ellipsis;
}
.rating-summary-avg ul li {
    line-height: 0;
}
.summary-text span img {
    width: 14px;
     margin-left: 8px;
}
button#write {
    background: #fff;
    padding: 4px 12px;
    font-size: 16px;
    margin: 0;
    color: #3E4347;
    border-radius: 8px;
    border: 1px solid #3E4347;
    height: 40px !important;
    cursor: pointer;
}
button#menu-btn {
    border-radius: 8px;
    font-size: 16px;
    border: 1px solid #3E4347;
    height: 40px !important;
    cursor: pointer;
    background: none;
    padding: 8px 6px 2px;
    width: 37px;
        margin-right: 7px;
        font-family: "Montserrat", sans-serif;
}
.review__sec_right {
    display: flex;
    align-items: center;
}
button#write:hover {
    background: #3E4347;
    color: #fff;
}
#loadMore {
    border-radius: 8px;
    color: #3E4347;
    border: 1px solid #3E4347;
    display: inline-block;
    padding: 6px 12px;
    cursor: pointer;
}
#loadMore:hover, #loadMore:focus {
    background:#3E4347;
    color: #fff;
}
.more__review{
	text-align:center;
	margin-top:40px;
}
@media only screen and (max-width:991px){
  .product-reviews-flex {
      display: block;
  }
  .product-reviews-heading {
    padding-right: 0;
    border-right: 0;
    margin-right: 0;
}
.grid-sizer, .grid-item {
    width: 100%;
}

}






/*popup css*/
.modal {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    opacity: 0;
    visibility: hidden;
    transform: scale(1.1);
    transition: visibility 0s linear 0.25s, opacity 0.25s 0s, transform 0.25s;
	z-index: 9999999;
	    display: none;
  }
  .modal-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: white;
    padding: 16px;
      width: 100%;
      border-radius: 0.5rem;
      max-width: 768px;
      height: 90vh;
          max-height: 680px;
  }
  .close-button {
    float: left;
    width: 1.5rem;
    font-size: 2em;
    line-height: 1;
    padding: 0 .2em .15em;
    text-align: center;
    cursor: pointer;
    border-radius: 0.25rem;
    background-color: var(--clr-neutral);
    color: var(--clr-dark);
    transition: color 0.12s ease-in-out;
    position: absolute;
      top: 15px;
    	left: 30px;
  }
  .close-button:hover {
    color: var(--clr-main);
  }
  .show-modal {
    opacity: 1;
    visibility: visible;
    transform: scale(1.0);
    transition: visibility 0s linear 0s, opacity 0.25s 0s, transform 0.25s;
	  display:block;
  }
  
  .modal__boxed {
      width: 100%;
      height: 100%;
  }
  #multistepsform {
    width: 100%;
    height: calc(100% - 76px);;
    margin: 0px auto;
    text-align: center;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
  }
  #multistepsform fieldset {
    border: 0 none;
    position: relative;  
    width: 100%;
  }
  #multistepsform .fieldset__center {
       display: flex;
      justify-content: center;
      align-items: center;
  }
  .reviewBox__steps{
      display: flex;
      align-items: center;
      overflow: hidden;
      width: 100%;
      height: var(--ugc-form-footer-height);
      padding: 16px;
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
  }
  .share__rating{
      display: inline-flex;
      margin: unset;
      padding: unset;
      text-indent: unset;
      list-style-type: none;
      gap: 10px;
      margin-top: 48px;
  }
  .share__rating li img {
      width: 50px;
      height: 50px;
  }
  #multistepsform fieldset:not(:first-of-type) {
    display: none;
  }
  #multistepsform input,
  #multistepsform textarea {
    padding: 15px;
    border: 1px solid #ccc;
    border-radius: 3px;
    margin-bottom: 10px;
    width: 100%;
    box-sizing: border-box;
    font-family: montserrat;
    color: #2c3e50;
    font-size: 16px;
	   z-index:9;
	  cursor:pointer;
  }
  #multistepsform input:focus,
  #multistepsform textarea:focus {
    border-color: #679b9b;
    outline: none;
    color: #637373;
  }
  #multistepsform .action-button {
      width: 90px;
      background: none;
      font-weight: bold;
      color: #000;
      transition: 150ms;
      border: 0 none;
      border-radius: 1px;
      cursor: pointer;
      padding: 0;
      margin: 0;
          display: flex;
      align-items: center;
      justify-content: center;
      font-size: 16px;
  }
  #multistepsform .action-button img {
      margin-right: 5px;
	      order: 2;
    margin-top: 3px;
  }
  #multistepsform .action-button:hover,
  #multistepsform .action-button:focus {
    box-shadow: 0 0 0 2px #f08a5d, 0 0 0 3px #ff976;
    color: #000;
  }
  #multistepsform .fs-title {
    font-size: 15px;
    text-transform: uppercase;
    color: #2c3e50;
    margin-bottom: 10px;
  }
  #multistepsform .fs-subtitle {
    font-weight: normal;
    font-size: 13px;
    color: #666;
    margin-bottom: 20px;
  }
  #multistepsform #progressbar {
      margin: 0 auto;
    overflow: hidden;
    counter-reset: step;
    padding: 0;
  }
  #multistepsform #progressbar li {
    list-style-type: none;
    color: #679b9b;
    text-transform: uppercase;
    font-size: 9px;
    width: 80px;
    float: left;
    position: relative;
  }
  #multistepsform #progressbar li:before {
      content: counter(step);
      counter-increment: step;
      line-height: 7px;
      display: block;
      font-size: 0;
      color: #fff;
      background: #e2e2e2;
      border-radius: 3px;
      margin-right: 10px;
  }
  #multistepsform #progressbar li:after {
    content: "";
    width: 100%;
    height: 2px;
    background: #679b9b;
    position: absolute;
    left: -50%;
    top: 9px;
    z-index: -1;
  }
  #multistepsform #progressbar li:first-child:after {
    content: none;
  }
  #multistepsform #progressbar li.active {
    color: #ff9a76;
  }
  #multistepsform #progressbar li.active:before, #multistepsform #progressbar li.active:after {
    background: #000;
    color: white;
  }
  .previous__btn, .next__btn {
      position: relative;
       padding: 12px 16px;
       width: 105px;
      display: flex;
      justify-content: center;
      align-items: center;
  }
  .previous__btn:hover, .next__btn:hover {
      background: #ebebeb;
      border-radius: 10px;
  }
  .share__rating li img:hover {
      opacity: 0.7;
      cursor: pointer;
  }
  
  .share__rating_text {
      display: flex;
      justify-content: space-between;
      line-height: 0;
      padding: 0 10px;
      font-family: simona, sans-serif;
      font-weight: 300;
      max-width: 300px;
      margin: 5px auto;
      font-size: 14px;
  }
  .box__review_share {
      font-family: simona, sans-serif;
      font-weight: 600;
      font-size: 20px;
      width: 100%;
  }
  .upload__add input[type="file"]{
      opacity: 0;
      position: absolute;
      left:0;
      width: 100%;
      height: 100%;
  }
  .upload__add span.file__text {
      position: relative;
      border: 1px solid #e0e0e0;
      border-radius: 6px;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 10px;
      text-align: center;
      background: #000;
      width: 100% !important;
      color: #fff;
      cursor: pointer;
      font-size: 16px;
      font-weight: 400;
	 
  }
  .upload__add span.file__text img {
      margin-left: 5px;
  }
  .upload__photos {
      margin-bottom: 15px;
          position: relative;
  }
  .box__review_share h2 + p {
      font-size: 16px;
      font-weight: 300;
      margin: 0;
  }
  .box__review_share h2{
      margin: 0;
      font-weight: 300;
      font-size: 20px;
  }
  .box__upload {
      border: 1px solid #c1c1c1;
      max-width: 480px;
      padding: 20px;
      border-radius: 10px;
      margin: 20px auto;
  }
  .box__upload p {
      margin-top: 0;
      margin-bottom:10px;
  }
  .review__field {
      resize: none;
      max-height: 500px;
      min-height: 120px;
      height: 256px;
      margin-top: 20px;
      border-radius: 10px !important;
      max-width: 480px !important;
  }
  .boxes__field {
      gap: 20px;
      display: flex;
  }
  .boxes__field .field__control {
      margin-bottom: 20px;
      width: 50%;
          text-align: left;
  }
  .field__control label{
      font-size: 16px;
      font-weight: 400;
      text-align: left;
      width:100%;
          display: block;
	  margin-bottom: 5px;
  }
  .box__Reviewform {
      max-width: 480px;
      margin:40px auto 0;
  }
  .upload__add {
      position: relative;
  }
  h2.title__review {
      font-size: 28px;
      line-height: 30px;
      font-weight: 600;
      margin-bottom: 10px;
          color: #000;
  }
  .box__Reviewform p {
      font-weight: 300;
      font-size: 14px;
      line-height: 20px;
      text-align: center;
      color: #474747;
      margin-bottom: 0;
  }
  .box__Reviewform p a {
      color: #474747;
  }
  #multistepsform .error { color: red;font-size: 12px;
    font-weight: 400;
}
#sortableImgThumbnailPreview .preview-container {
    position: relative;
	    width: 100px;
}
#sortableImgThumbnailPreview .preview-container img {
    width: 100px;
    height: 100px;
    object-fit: cover;
    border: 1px solid #959595;
    border-radius: 5px;
}
#sortableImgThumbnailPreview .preview-container .remove-btn {
    font-size: 10px;
    border-radius: 50px;
    width: 20px;
    height: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
    border-color: #000;
    color: #000;
	position: absolute;
    top: 0;
    left: 0;
	z-index:9;
	background:#fff;
}
#sortableImgThumbnailPreview {
    display: flex;
	gap:5px;
	    flex-wrap: wrap;
}
.img__upload {
    position: relative;
	display:none;
}
.img__upload input {
    padding: 15px;
    border: 1px solid #ccc;
    border-radius: 3px;
    margin-bottom: 10px;
    width: 100%;
    box-sizing: border-box;
    font-family: montserrat;
    color: #2c3e50;
    font-size: 16px;
    z-index: 9;
    cursor: pointer;
	opacity: 0;
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
}
.img__upload .file__text{
position: relative;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
    text-align: center;
    background: #fff;
    width: 100px;
    height: 100px;
    color: #616161;
    cursor: pointer;
    font-size: 35px;
    font-weight: 300;
}
#sortableImgThumbnailPreview .preview-container video {
    height: 100px;
    width: 100px;
    border-radius: 10px;
    object-fit: cover;
}
  @media only screen and (max-width:991px){
  .show-modal {
      padding: 20px;
  }
	  .modal-content{
		  width:calc(100% - 20px)
	  }
  }
  @media only screen and (max-width:768px){
      #multistepsform #progressbar li {
          width: 25%;
      }
  .share__rating li img {
      width: 30px;
      height: 30px;
  }
  .share__rating {
      gap: 5px;
      margin-top: 20px;
  }
      .modal-content {
          max-height: none;
      }
      .reviewBox__steps {
      display: block;
      align-items: center;
      width: 100%;
  }
  .next__btn {
      position: absolute;
          top: 15px;
          left: 0;
  }
  .previous__btn, .next__btn {
      padding: 0;
  }
  .previous__btn:hover, .next__btn:hover {
      background: none;
  }
  #multistepsform #progressbar {
      margin: 5px auto;
  }
  #multistepsform .action-button {
      width: auto;
  }
  #multistepsform input, #multistepsform textarea {
      padding: 10px 15px;
      margin-bottom: 5px;
  }
  .boxes__field .field__control {
      margin-bottom: 10px;
      width: 100%;
  }
  .boxes__field {
      gap: 20px;
      display: block;
  }
  .box__Reviewform {
      margin: 15px auto 0;
  }
  .field__control label {
      font-size: 14px;
  }
  .review__field {
      height: 200px;
      margin-top: 5px;
  }
#sortableImgThumbnailPreview .preview-container img, .img__upload .file__text, #sortableImgThumbnailPreview .preview-container {
    width: 60px;
    height: 60px;
}
}

@media only screen and (max-width:476px){
.review__sec {
    display: block;
    margin: 0px auto 7px;
}
.review__sec_left {
    margin-bottom: 10px;
}
}

