
:root{
  --blue:#2f6eb2;
  --orange:#e47828;
  --navy:#16395f;
  --white:#ffffff;
  --bg:#f6f8fb;
  --line:#d9e3ef;
  --text:#24486f;
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family:'Montserrat', Arial, sans-serif;
  color:var(--text);
  background:var(--bg);
  line-height:1.55;
}
img{display:block;max-width:100%}
.wrap{width:min(1180px, calc(100% - 36px)); margin:0 auto}
.topbar{background:var(--blue); color:#fff; padding:10px 0}
.topbar .wrap{text-align:center; font-weight:800; letter-spacing:.02em}
.site-header{
  position:sticky; top:0; z-index:50;
  background:#fff; border-bottom:1px solid rgba(22,57,95,.08);
}
.site-header .nav{
  display:flex; align-items:center; justify-content:space-between; gap:20px; padding:14px 0;
}
.brand img{height:92px; width:auto}
.site-nav{display:flex; gap:18px; align-items:center; flex-wrap:wrap}
.site-nav a{text-decoration:none; color:var(--navy); font-weight:700; font-size:.96rem}
.site-nav a.active{color:var(--orange)}
.header-cta{
  background:var(--orange); color:#fff; text-decoration:none;
  padding:13px 18px; border-radius:999px; font-weight:800; white-space:nowrap;
}
.reviews-hero{
  position:relative;
  background:url('../img/reviews-photo-2.jpg') center/cover no-repeat;
  min-height:500px; color:#fff;
}
.hero-overlay{position:absolute; inset:0; background:linear-gradient(135deg, rgba(15,42,71,.85), rgba(15,42,71,.62))}
.reviews-hero-grid{
  position:relative;
  display:grid; grid-template-columns:1.1fr .9fr; gap:28px;
  align-items:center; min-height:500px; padding:42px 0;
}
.hero-card{
  background:#fff; color:var(--navy); border-radius:28px; padding:26px 28px;
  border:1px solid rgba(255,255,255,.55); box-shadow:0 18px 42px rgba(0,0,0,.16);
}
.hero-copy p,.hero-aside p{margin-top:0}
.eyebrow{margin:0 0 10px; color:#ffd7bc; text-transform:uppercase; letter-spacing:.14em; font-weight:800; font-size:.92rem}
.orange{color:var(--orange)}
.hero-copy h1{margin:0 0 14px; font-size:clamp(2.1rem,4.4vw,3.9rem); line-height:1.06}
.hero-actions{display:flex; gap:14px; flex-wrap:wrap; margin-top:22px}
.btn{
  display:inline-flex; align-items:center; justify-content:center; text-decoration:none;
  padding:14px 22px; border-radius:999px; font-weight:800; transition:.2s ease;
}
.btn-primary{background:var(--orange); color:#fff}
.btn-secondary{background:rgba(255,255,255,.12); color:#fff; border:1px solid rgba(255,255,255,.35)}
.secondary-light{background:#eef4fb; color:var(--blue); border:none}
.rating-big{font-size:2rem; font-weight:800; margin:0 0 6px}
.star-line{color:var(--orange); font-size:1.35rem; letter-spacing:.08em; margin-bottom:16px}
.note-list{margin:0; padding-left:18px}
.stats-strip{padding:28px 0 18px}
.stats-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px}
.stat-card{
  background:#fff; border:1px solid var(--line); border-radius:24px; padding:22px;
  box-shadow:0 14px 34px rgba(22,57,95,.06); text-align:center;
}
.stat-card strong{display:block; color:var(--navy); font-size:2.1rem; margin-bottom:6px}
.photo-strip{padding:8px 0 26px}
.photo-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px}
.photo-grid img{width:100%; height:240px; object-fit:cover; border-radius:22px}
.reviews-section{padding:6px 0 26px}
.section-heading{text-align:center; margin-bottom:22px}
.section-heading h2{margin:0 0 10px; color:var(--navy); font-size:clamp(1.9rem,3vw,3rem)}
.reviews-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:18px}
.review-card{
  background:#fff; border:1px solid var(--line); border-radius:24px; padding:24px;
  box-shadow:0 14px 34px rgba(22,57,95,.06);
}
.review-highlight{
  display:inline-block; background:#eef4fb; color:var(--blue); padding:8px 12px;
  border-radius:999px; font-weight:800; font-size:.9rem; margin-bottom:12px;
}
.review-stars{color:var(--orange); font-size:1.08rem; margin-bottom:10px}
.review-card h3{margin:14px 0 4px; color:var(--navy)}
.review-card span{font-size:.95rem; color:#56718f}
.cta-wrap{padding:6px 0 34px}
.cta-card{
  background:#fff; border:1px solid var(--line); border-radius:28px; padding:30px;
  box-shadow:0 14px 34px rgba(22,57,95,.06);
  display:grid; grid-template-columns:1fr auto; gap:24px; align-items:center;
}
.cta-card h2{margin:0 0 10px; color:var(--navy); font-size:clamp(1.8rem,2.8vw,2.8rem)}
.cta-actions{display:flex; gap:12px; flex-wrap:wrap}
.site-footer{background:var(--navy); color:#fff; padding:30px 0 24px}
.footer-grid{display:grid; grid-template-columns:1.1fr .9fr .9fr; gap:24px}
.footer-logo{width:220px; height:auto; margin-bottom:12px}
.site-footer h3{margin:0 0 10px}
.site-footer ul{list-style:none; padding:0; margin:0}
.site-footer a{color:#dbe9f8; text-decoration:none}
.site-footer li{margin:6px 0}
@media (max-width:980px){
  .site-header .nav{flex-wrap:wrap; justify-content:center}
  .reviews-hero-grid,.cta-card,.footer-grid{grid-template-columns:1fr}
  .stats-grid,.photo-grid,.reviews-grid{grid-template-columns:1fr}
}
@media (max-width:640px){
  .wrap{width:min(100% - 24px, 1180px)}
  .brand img{height:72px}
  .site-nav{justify-content:center; gap:12px}
}
