@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@500;700;800&family=Inter:wght@400;500;600&family=IBM+Plex+Mono:wght@500;600&display=swap');

:root{
  --bg:#FFFFFF;
  --ink:#0B0B0E;
  --ink-soft:#52525B;
  --ink-faint:#8A8A93;
  --accent:#5850EC;
  --accent-deep:#3B32C4;
  --surface:#F5F5F7;
  --surface-2:#EFEFF3;
  --line:#E4E4E7;
  --radius-lg:22px;
  --radius-md:14px;
  --maxw:1080px;
}

*{box-sizing:border-box;}
body{
  margin:0; background:var(--bg); color:var(--ink);
  font-family:'Inter',sans-serif; -webkit-font-smoothing:antialiased;
}
h1,h2{font-family:'Plus Jakarta Sans',sans-serif; margin:0; letter-spacing:-0.02em;}
p{margin:0;}
a{color:inherit;}
.wrap{max-width:var(--maxw); margin:0 auto; padding:0 28px;}

.eyebrow{
  font-family:'IBM Plex Mono',monospace; font-size:12px; font-weight:600;
  letter-spacing:0.12em; text-transform:uppercase; color:var(--accent);
}

.btn{
  display:inline-flex; align-items:center; gap:10px;
  background:var(--accent); color:#fff; font-family:'Plus Jakarta Sans',sans-serif;
  font-weight:700; font-size:16px; padding:16px 28px; border-radius:999px; border:none;
  cursor:pointer; transition:background .18s ease, transform .18s ease;
}
.btn:hover{background:var(--accent-deep); transform:translateY(-1px);}
.btn:focus-visible{outline:3px solid var(--ink); outline-offset:3px;}

/* Top strip */
.topbar{border-bottom:1px solid var(--line); padding:16px 0;}
.topbar-inner{display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap;}
.who{display:flex; align-items:center; gap:12px;}
.avatar{width:38px; height:38px; border-radius:50%; overflow:hidden; flex-shrink:0;}
.avatar img{width:100%; height:100%; object-fit:cover;}
.who-text b{font-family:'Plus Jakarta Sans',sans-serif; font-size:13.5px; font-weight:700; display:block;}
.who-text span{font-size:12px; color:var(--ink-soft);}
.logo-row{display:flex; align-items:center; gap:6px;}
.logo-badge{width:34px; height:34px; display:flex; align-items:center; justify-content:center;}
.logo-badge img{width:100%; height:100%; object-fit:contain;}

/* Hero */
.hero{padding:64px 0 48px; text-align:center; display:flex; flex-direction:column; align-items:center;}
.hero h1{font-size:48px; font-weight:800; line-height:1.08; max-width:760px;}
.hero h1 .accent{color:var(--accent);}
.hero-sub{font-size:18px; line-height:1.55; color:var(--ink-soft); margin-top:20px; max-width:480px;}

.section{padding:76px 0;}
.section-alt{background:var(--surface); border-radius:32px;}
.section-head{max-width:600px; margin:0 auto 38px; text-align:center;}
.section-head h2{font-size:32px; font-weight:800; margin-top:10px; line-height:1.15;}
.section-head p{font-size:15.5px; color:var(--ink-soft); margin-top:12px; line-height:1.6;}

.proof-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:16px;}
.proof-card{background:#fff; border:1px solid var(--line); border-radius:var(--radius-md); padding:22px 18px; text-align:center;}
.proof-num{font-family:'IBM Plex Mono',monospace; font-size:34px; font-weight:600; color:var(--accent);}
.proof-desc{font-size:13.5px; color:var(--ink-soft); margin-top:8px; line-height:1.5;}
.proof-src{font-size:11.5px; color:var(--ink-faint); margin-top:8px; font-weight:500;}
.proof-footnote{font-size:12px; color:var(--ink-faint); margin:22px auto 0; line-height:1.6; max-width:620px; text-align:center;}

.testi-grid{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
.testi-feature{max-width:680px; margin:0 auto;}
.testi-feature .testi-quote{font-size:19px; line-height:1.6;}
.testi-card{background:#fff; border:1px solid var(--line); border-radius:var(--radius-lg); padding:26px 24px; text-align:center;}
.testi-quote{font-size:16px; line-height:1.6; color:var(--ink); font-weight:500;}
.testi-who{display:flex; align-items:center; justify-content:center; gap:12px; margin-top:18px;}
.testi-avatar{width:38px; height:38px; border-radius:50%; background:var(--surface); border:1px solid var(--line); flex-shrink:0; overflow:hidden;}
.testi-avatar img{width:100%; height:100%; object-fit:cover; display:block;}
.testi-who b{font-size:13.5px; display:block;}
.testi-who span{font-size:12.5px; color:var(--ink-soft);}

.creds{display:flex; flex-wrap:wrap; gap:10px 28px; align-items:center; justify-content:center;}
.cred-item{font-size:13.5px; color:var(--ink-soft); display:flex; gap:6px;}
.cred-item b{color:var(--ink); font-weight:600;}
.about-quote{font-size:18px; font-weight:500; color:var(--ink); line-height:1.55; max-width:680px; margin:0 auto 24px; text-align:center;}

/* Booking */
.book-inner{padding:0 40px; text-align:center;}
.book-head{text-align:center; max-width:520px; margin:0 auto 34px;}
.book-head h2{font-size:32px; font-weight:800;}
.book-head p{font-size:15px; color:var(--ink-soft); margin-top:10px;}
.cal-embed{
  max-width:720px; margin:0 auto;
  border-radius:var(--radius-lg); overflow:hidden;
}
.cal-embed iframe{
  width:100%; min-height:620px; border:none; display:block;
}

footer{padding:36px 0 50px; border-top:1px solid var(--line); margin-top:20px;}
footer p{font-size:11.5px; color:var(--ink-faint); max-width:600px; margin:0 auto; text-align:center; line-height:1.6;}

@media (max-width:880px){
  .hero h1{font-size:36px;}
  .proof-grid{grid-template-columns:1fr 1fr;}
  .testi-grid{grid-template-columns:1fr;}
  .section{padding:52px 0;}
  .book-inner{padding:0;}
}
