:root{
  --bg1:#061522;
  --bg2:#0a2636;
  --text:#f2f6ff;
  --muted:rgba(242,246,255,.72);

  /* Green finance theme */
  --accent:#22c55e;
  --accent2:#4ade80;

  --card:rgba(10,18,24,.62);
  --shadow:0 12px 40px rgba(0,0,0,.45);
  --r:20px;
}

*{box-sizing:border-box}
html,body{height:100%}

body{
  margin:0;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--text);
  overflow-x:hidden;

  /* Landing page background */
  /* Replace BACKGROUND_IMAGE_URL with your own image */
  background:
    linear-gradient(180deg, rgba(6,21,34,.85), rgba(10,38,54,.9)),
    url("BACKGROUND_IMAGE_URL") center/cover no-repeat,
    linear-gradient(180deg,var(--bg1),var(--bg2));
}

.wrap{
  min-height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:22px 14px;
}

.card{
  width:min(560px,100%);
  background:var(--card);
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--r);
  box-shadow:var(--shadow);
  padding:16px 14px 14px;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

/* =========================
   Header person logo
   ========================= */
.headerLogo{
  display:flex;
  justify-content:center;
  margin-bottom:10px;
}

.headerLogo img{
  width:104px;
  height:104px;
  border-radius:50%;
  object-fit:cover;
  background:#0b1f2e;
  border:2px solid rgba(255,255,255,.25);
  box-shadow:0 8px 24px rgba(0,0,0,.45);
}

/* Speech bubble */
.bubble{
  background:linear-gradient(180deg,var(--accent2),var(--accent));
  border-radius:18px;
  padding:12px 14px;
  font-weight:800;
  line-height:1.35;
  box-shadow:0 14px 34px rgba(34,197,94,.28);
  position:relative;
  margin-bottom:12px;
}
.bubble:after{
  content:"";
  position:absolute;
  left:22px;
  bottom:-10px;
  border-left:10px solid transparent;
  border-right:10px solid transparent;
  border-top:12px solid var(--accent);
}

h1{
  margin:8px 0 6px;
  font-size:24px;
  line-height:1.15;
}

p{
  margin:0 0 12px;
  color:var(--muted);
  line-height:1.55;
}

.pill{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:12px;
  border-radius:16px;
  background:rgba(34,197,94,.12);
  border:1px solid rgba(34,197,94,.25);
  margin-bottom:12px;
}

.pill b{
  font-size:20px;
  letter-spacing:2px;
}

.btn{
  width:100%;
  border:0;
  border-radius:16px;
  padding:14px 12px;
  font-weight:900;
  font-size:16px;
  color:#fff;
  background:linear-gradient(180deg,var(--accent2),var(--accent));
  box-shadow:0 14px 34px rgba(34,197,94,.28);
  cursor:pointer;
}

.btn2{
  width:100%;
  margin-top:10px;
  border-radius:16px;
  padding:12px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.16);
  color:#fff;
  font-weight:800;
  cursor:pointer;
}

/* =========================
   Demo Trustpilot Reviews
   ========================= */
.reviewDemo{
  margin-top:16px;
  padding:14px;
  border-radius:16px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  overflow:hidden;
}

.reviewHeader{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
}

.reviewHeader img{
  height:18px;
}

.reviewHeader span{
  font-weight:900;
}

.reviewHeader small{
  font-size:12px;
  color:rgba(242,246,255,.55);
}

.reviewTrack{
  display:flex;
  gap:14px;
  animation: reviewScroll 24s linear infinite;
  will-change: transform;
}

.reviewItem{
  min-width:220px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  padding:10px;
}

.reviewItem .stars{
  color:#22c55e;
  font-size:14px;
  letter-spacing:1px;
}

.reviewItem p{
  margin:4px 0;
  font-size:13px;
  line-height:1.45;
  color:rgba(242,246,255,.78);
}

.reviewItem span{
  font-size:12px;
  color:rgba(242,246,255,.6);
}

.reviewNote{
  margin-top:8px;
  font-size:11px;
  color:rgba(242,246,255,.45);
  text-align:center;
}

@keyframes reviewScroll{
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.foot{
  margin-top:12px;
  font-size:12px;
  color:rgba(242,246,255,.55);
  line-height:1.45;
}

/* =========================
   Mobile responsive tuning
   ========================= */
@media (max-width: 768px){
  body{ background-position: center bottom; }
  .wrap{
    padding:16px 10px;
    align-items:flex-start;
  }
  .card{ margin-top:34px; }
  .headerLogo img{
    width:86px;
    height:86px;
  }
  .reviewItem{ min-width:200px; }
}
