/* =========================================================
   MAGICBRICK — REVIEWS PAGE
   Pixel-matched to the approved design. Uses theme tokens
   (--navy / --gold / --serif / --sans) so colours & fonts
   follow the global "Colours & Fonts" admin panel.
   Fallbacks included so nothing breaks if a token is missing.
   ========================================================= */

.rv{
  --rv-navy:var(--navy,#0a1b33);
  --rv-gold:var(--gold,#c79a4b);
  --rv-serif:var(--serif,"Playfair Display",Georgia,serif);
  --rv-sans:var(--sans,"Inter","Helvetica Neue",Arial,sans-serif);
  --rv-ink:#1d2433;
  --rv-muted:#6b7280;
  --rv-line:#e7e9ee;
  --rv-soft:#f6f7f9;
  --rv-gold-soft:#f7eeda;
  font-family:var(--rv-sans);
  color:var(--rv-ink);
  background:#fdfdfd;
}
.rv *{box-sizing:border-box;}
.rv .rv-wrap{margin:0 auto;padding:0 50px; }
.rv .rv-gold{color:var(--rv-gold);}

/* gold stars + google logo (built-in) ------------------- */
.rv .rv-stars{display:inline-flex;gap:3px;align-items:center;line-height:0;}
.rv .rv-stars svg{width:16px;height:16px;display:block;}
.rv .rv-stars--lg svg{width:22px;height:22px;}
.rv .rv-glogo{width:26px;height:26px;flex:0 0 auto;display:block;}
.rv .rv-glogo--lg{width:34px;height:34px;}

/* ============================ 1. BANNER ============================ */
.rv-banner{
  position:relative;
  background:var(--rv-navy);
  overflow:hidden;
}
.rv-banner__bg{position:absolute;inset:0;}
.rv-banner__bg img{width:100%;height:100%;object-fit:cover;display:block;}
.rv-banner__bg::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,
    var(--rv-navy) 0%,
    var(--rv-navy) 30%,
    rgba(10,27,51,.92) 40%,
    rgba(10,27,51,.35) 60%,
    rgba(10,27,51,.08) 100%);
}
.rv-banner__inner{position:relative;z-index:2;padding:64px 0 150px;  min-height: 550px; display: flex; align-items: center;}
.rv-banner__col{max-width:560px;}
.rv-banner__eyebrow{
  color:var(--rv-gold);font-weight:700;font-size:13px;
  letter-spacing:.18em;text-transform:uppercase;margin:0 0 14px;
}
.rv-banner__title{
  font-family:var(--rv-serif);color:#fff;font-weight:600;
  font-size:clamp(34px,5vw,58px);line-height:1.04;margin:0 0 20px;
}
.rv-banner__text{
  color:#cdd5e1;font-size:16px;line-height:1.7;margin:0 0 26px;max-width:470px;
}
.rv-banner__badge{display:inline-flex;align-items:center;gap:12px;}
.rv-banner__badge .rv-stars svg{width:20px;height:20px;}
.rv-banner__badge-text{color:#eef2f7;font-size:15px;}
.rv-banner__badge-text b{color:#fff;font-weight:700;}
.rv-banner__badge-img{max-height:30px;width:auto;display:block;}

/* ============================ 2. STATS CARD ============================ */
.rv-stats{position:relative;z-index:3;margin-top:-110px;}
.rv-stats__card{
  background:#fff;border-radius:14px;
  box-shadow:0 24px 60px rgba(10,27,51,.14);
  display:grid;grid-template-columns:minmax(240px,300px) 1fr 1fr 1fr;
  padding:34px 8px;
}
.rv-stats__col{padding:6px 30px;border-left:1px solid var(--rv-line);}
.rv-stats__col:first-child{border-left:0;}
.rv-stats__rating{
  font-family:var(--rv-serif);font-weight:600;font-size:46px;
  line-height:1;color:var(--rv-ink);margin:0 0 10px;
}
.rv-stats__rating-stars{margin:0 0 10px;}
.rv-stats__rating-label{color:var(--rv-muted);font-size:14px;margin:0 0 20px;}
.rv-stats__btn{
  display:inline-flex;align-items:center;gap:9px;
  border:1px solid var(--rv-gold);color:var(--rv-gold);
  background:transparent;border-radius:8px;
  padding:12px 18px;font-size:12.5px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;text-decoration:none;
  transition:.2s;
}
.rv-stats__btn:hover{background:var(--rv-gold);color:#fff;}
.rv-stats__btn svg{width:15px;height:15px;}
.rv-stats__ico{
  width:54px;height:54px;border-radius:50%;background:var(--rv-gold-soft);
  display:flex;align-items:center;justify-content:center;margin-bottom:14px;
}
.rv-stats__ico img{width:28px;height:28px;object-fit:contain;}
.rv-stats__ico svg{width:28px;height:28px;}
.rv-stats__num{font-size:28px;font-weight:700;color:var(--rv-ink);margin:0 0 4px;}
.rv-stats__ttl{font-size:15px;font-weight:700;color:var(--rv-ink);margin:0 0 14px;}
.rv-stats__sub{font-size:13.5px;color:var(--rv-muted);line-height:1.55;margin:0;max-width:200px;}

/* ============================ 3. GOOGLE REVIEWS ============================ */
.rv-greviews{padding:62px 0 10px;}
.rv-greviews__head{
  display:flex;align-items:center;justify-content:space-between;
  gap:16px;margin-bottom:22px;
}
.rv-greviews__title{
  font-family:var(--rv-serif);font-size:30px;font-weight:600;
  color:var(--rv-ink);margin:0;
}
.rv-greviews__link{
  color:var(--rv-gold);font-weight:700;font-size:13px;letter-spacing:.06em;
  text-transform:uppercase;text-decoration:none;display:inline-flex;
  align-items:center;gap:8px;white-space:nowrap;
}
.rv-greviews__link svg{width:15px;height:15px;}
.rv-greviews__viewport{position:relative;}
.rv-greviews__track{
  display:flex;gap:22px;overflow-x:auto;scroll-behavior:smooth;
  padding:4px 2px 8px;scroll-snap-type:x mandatory;
  -ms-overflow-style:none;scrollbar-width:none;
}
.rv-greviews__track::-webkit-scrollbar{display:none;}
.rv-gcard{
  flex:0 0 calc(25% - 16.5px);min-width:260px;scroll-snap-align:start;
  background:#fff;border:1px solid var(--rv-line);border-radius:12px;
  padding:22px 22px 24px;display:flex;flex-direction:column;
}
.rv-gcard__top{display:flex;align-items:center;gap:10px;margin-bottom:16px;}
.rv-gcard__top .rv-stars{margin-right:auto;}
.rv-gcard__time{color:#9aa1ad;font-size:12.5px;white-space:nowrap;}
.rv-gcard__text{color:#4b5563;font-size:14.5px;line-height:1.7;margin:0 0 22px;flex:1;}
.rv-gcard__person{display:flex;align-items:center;gap:12px;}
.rv-gcard__avatar{
  width:42px;height:42px;border-radius:50%;object-fit:cover;flex:0 0 auto;
  background:var(--rv-soft);
}
.rv-gcard__name{font-size:14.5px;font-weight:700;color:var(--rv-ink);margin:0;}
.rv-gcard__role{font-size:12.5px;color:var(--rv-muted);margin:2px 0 0;}
.rv-greviews__nav{
  position:absolute;top:50%;right:-14px;transform:translateY(-50%);
  width:40px;height:40px;border-radius:50%;border:1px solid var(--rv-line);
  background:#fff;box-shadow:0 6px 18px rgba(10,27,51,.12);
  display:flex;align-items:center;justify-content:center;cursor:pointer;
  z-index:4;transition:.2s;
}
.rv-greviews__nav:hover{background:var(--rv-soft);}
.rv-greviews__nav svg{width:16px;height:16px;color:var(--rv-ink);}
.rv-greviews__nav--prev{right:auto;left:-14px;}
.rv-greviews__nav[disabled]{opacity:0;pointer-events:none;}

/* ============================ 4. TESTIMONIALS ============================ */
.rv-testi{padding:60px 0 10px;}
.rv-testi__head{
  font-family:var(--rv-serif);font-size:30px;font-weight:600;
  text-align:center;color:var(--rv-ink);margin:0 0 34px;
}
.rv-testi__grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;}
.rv-tcard{
  background:var(--rv-soft);border:1px solid var(--rv-line);
  border-radius:14px;padding:30px 32px 26px;
}
.rv-tcard__head{display:flex;gap:16px;align-items:flex-start;margin-bottom:8px;}
.rv-tcard__ico{
  width:48px;height:48px;border-radius:50%;flex:0 0 auto;
  display:flex;align-items:center;justify-content:center;
}
.rv-tcard__ico--gold{background:var(--rv-gold);}
.rv-tcard__ico--navy{background:var(--rv-navy);}
.rv-tcard__ico img{width:24px;height:24px;object-fit:contain;}
.rv-tcard__ico svg{width:24px;height:24px;}
.rv-tcard__ico--gold svg{color:#fff;}
.rv-tcard__ico--navy svg{color:var(--rv-gold);}
.rv-tcard__title{font-family:var(--rv-serif);font-size:21px;font-weight:600;color:var(--rv-ink);margin:0 0 5px;}
.rv-tcard__sub{font-size:14px;color:var(--rv-muted);line-height:1.55;margin:0;}
.rv-tcard__slider{position:relative;margin-top:24px;overflow:hidden;}
.rv-tcard__track{display:flex;transition:transform .4s ease;}
.rv-tcard__slide{flex:0 0 100%;min-width:100%;}
.rv-tcard__quote-mark{font-family:var(--rv-serif);color:var(--rv-gold);font-size:46px;line-height:.6;height:24px;display:block;}
.rv-tcard__quote{font-style:italic;color:#3a4252;font-size:15.5px;line-height:1.75;margin:6px 0 22px;}
.rv-tcard__person{display:flex;align-items:center;gap:12px;}
.rv-tcard__avatar{width:46px;height:46px;border-radius:50%;object-fit:cover;background:var(--rv-line);flex:0 0 auto;}
.rv-tcard__name{font-size:15px;font-weight:700;color:var(--rv-ink);margin:0;}
.rv-tcard__role{font-size:13px;color:var(--rv-muted);margin:2px 0 0;}
.rv-tcard__dots{display:flex;gap:8px;justify-content:center;margin-top:22px;}
.rv-tcard__dot{
  width:9px;height:9px;border-radius:50%;border:0;padding:0;cursor:pointer;
  background:#d4d8e0;transition:.2s;
}
.rv-tcard__dot.is-active{background:var(--rv-gold);width:22px;border-radius:5px;}
.rv-tcard--navy .rv-tcard__dot.is-active{background:var(--rv-navy);}

/* ============================ 5. WHY CHOOSE ============================ */
.rv-why{padding:64px 0 8px;}
.rv-why__head{
  font-family:var(--rv-serif);font-size:30px;font-weight:600;
  text-align:center;color:var(--rv-ink);margin:0 0 40px;
}
.rv-why__grid{
  display:grid;grid-template-columns:repeat(6,1fr);
  border-top:1px solid transparent;
}
.rv-why__item{
  text-align:center;padding:6px 22px;border-left:1px solid var(--rv-line);
}
.rv-why__item:first-child{border-left:0;}
.rv-why__ico{height:46px;display:flex;align-items:center;justify-content:center;margin-bottom:16px;}
.rv-why__ico img{width:40px;height:40px;object-fit:contain;}
.rv-why__ico svg{width:40px;height:40px;color:var(--rv-gold);}
.rv-why__ttl{font-size:14.5px;font-weight:700;color:var(--rv-ink);margin:0 0 8px;}
.rv-why__txt{font-size:13px;color:var(--rv-muted);line-height:1.55;margin:0;}

/* ============================ 6. SHARE CTA ============================ */
.rv-cta{padding:48px 0 64px;}
.rv-cta__bar{
  position:relative;border-radius:14px;overflow:hidden;
  background:var(--rv-navy);min-height:150px;display:flex;align-items:center;
}
.rv-cta__bg{position:absolute;inset:0;}
.rv-cta__bg img{width:100%;height:100%;object-fit:cover;display:block;}
.rv-cta__bg::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,
    var(--rv-navy) 0%,var(--rv-navy) 42%,
    rgba(10,27,51,.85) 55%,rgba(10,27,51,.2) 100%);
}
.rv-cta__inner{
  position:relative;z-index:2;width:100%;
  display:flex;align-items:center;gap:24px;
  padding:30px 36px;flex-wrap:wrap;
}
.rv-cta__ico{
  width:60px;height:60px;border-radius:50%;flex:0 0 auto;
  border:1.5px solid var(--rv-gold);
  display:flex;align-items:center;justify-content:center;
}
.rv-cta__ico img{width:28px;height:28px;object-fit:contain;}
.rv-cta__ico svg{width:28px;height:28px;color:var(--rv-gold);}
.rv-cta__txt{flex:1 1 auto;min-width:220px;}
.rv-cta__title{font-family:var(--rv-serif);color:#fff;font-size:26px;font-weight:600;margin:0 0 6px;}
.rv-cta__sub{color:#cfd6e2;font-size:14.5px;line-height:1.6;margin:0;max-width:360px;}
.rv-cta__btn{
  display:inline-flex;align-items:center;gap:10px;flex:0 0 auto;
  background:var(--rv-gold);color:#fff;border-radius:8px;
  padding:15px 26px;font-size:13px;font-weight:700;letter-spacing:.07em;
  text-transform:uppercase;text-decoration:none;transition:.2s;
}
.rv-cta__btn:hover{filter:brightness(1.07);}
.rv-cta__btn svg{width:16px;height:16px;}

/* ============================ RESPONSIVE ============================ */
@media (max-width:1024px){
  .rv-stats__card{grid-template-columns:1fr 1fr;gap:8px 0;}
  .rv-stats__col{border-left:0;border-top:1px solid var(--rv-line);padding:24px 26px;}
  .rv-stats__col:first-child,.rv-stats__col:nth-child(2){border-top:0;}
  .rv-gcard{flex:0 0 calc(50% - 11px);}
  .rv-why__grid{grid-template-columns:repeat(3,1fr);row-gap:34px;}
  .rv-why__item{border-left:1px solid var(--rv-line);}
  .rv-why__item:nth-child(3n+1){border-left:0;}
}
@media (max-width:768px){
   .rv .rv-wrap{padding:0 20px; }
  .rv-banner__inner{padding:50px 0 130px;}
  .rv-stats{margin-top:-100px;}
  .rv-stats__card{grid-template-columns:1fr;}
  .rv-stats__col{border-top:1px solid var(--rv-line);text-align:center;}
  .rv-stats__col:first-child{border-top:0;}
  .rv-stats__ico,.rv-stats__btn{margin-left:auto;margin-right:auto;}
  .rv-stats__sub{margin-left:auto;margin-right:auto;}
  .rv-greviews__head{flex-direction:column;align-items:flex-start;gap:8px;}
  .rv-gcard{flex:0 0 86%;min-width:86%;}
  .rv-greviews__nav{display:none;}
   .rv-testi__grid { display: flex; flex-direction: column;}
  .rv-why__grid{grid-template-columns:repeat(2,1fr);}
  .rv-why__item{border-left:1px solid var(--rv-line);}
  .rv-why__item:nth-child(3n+1){border-left:1px solid var(--rv-line);}
  .rv-why__item:nth-child(2n+1){border-left:0;}
  .rv-cta__inner{padding:26px;}
  .rv-cta__btn{width:100%;justify-content:center;}
}
@media (max-width:480px){
  .rv-why__grid{grid-template-columns:1fr;}
  .rv-why__item,.rv-why__item:nth-child(2n+1){border-left:0;border-top:1px solid var(--rv-line);padding-top:26px;}
  .rv-why__item:first-child{border-top:0;}
}