/* BookMore — v5 with spacing fixes */
:root{
  --bg:#FFFFFF;
  --text:#0E1116;
  --muted:#5A6270;
  --line:#E6E8EE;
  --hair:rgba(14,17,22,.06);
  --cta:#6B4EFC;
  --cta-press:#5b3ef0;
  --ring:rgba(107,78,252,.38);
  --max-ch:80ch;
  --radius-2:18px;
  --shadow-1:0 8px 24px rgba(0,0,0,.06);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){ html{scroll-behavior:auto} }
body{
  margin:0;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol", sans-serif;
  background:var(--bg);
  color:var(--text);
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.container{max-width:1200px;margin-inline:auto;padding:20px}
@media(min-width:960px){ .container{padding:28px} }
h1{font-weight:800;letter-spacing:-0.02em;line-height:1.06;font-size:clamp(42px,7.2vw,58px);margin:0 0 12px}
h2{font-weight:750;letter-spacing:-0.01em;line-height:1.12;font-size:clamp(28px,4.2vw,40px);margin:0 0 10px}
h3{font-weight:650;line-height:1.18;font-size:clamp(20px,3vw,22px);margin:0 0 8px}
p,li{color:var(--muted);max-width:var(--max-ch)}
.lead{font-size:clamp(18px,2.6vw,20px);color:var(--muted);line-height:1.6;}
.section{padding:72px 0;border-top:1px solid var(--hair)}
@media(min-width:960px){ .section{padding:96px 0} }
.grid{display:grid;gap:24px}
.grid-2{grid-template-columns:1fr;gap:24px}
.grid-3{grid-template-columns:1fr;gap:24px}
@media(min-width:960px){
  .grid-2{grid-template-columns:1fr 1fr;gap:40px}
  .grid-3{grid-template-columns:repeat(3,1fr);gap:32px}
}
.header{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.85);
  backdrop-filter:saturate(180%) blur(10px);
  border-bottom:1px solid var(--hair);
}
.header .container{
  display:grid;grid-template-columns:1fr auto 1fr;
  align-items:center;gap:16px;min-height:74px;
}
.brand{font-weight:900;letter-spacing:-0.02em;font-size:clamp(22px,2.6vw,28px)}
.nav{display:none;gap:28px;justify-content:center;align-items:center}
.nav a{font-weight:550;color:#1a1f29}
.actions{display:flex;gap:12px;justify-content:flex-end;align-items:center}
.menu-btn{display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--line);padding:10px 14px;border-radius:14px;background:#fff}
@media(min-width:900px){ .nav{display:flex} .menu-btn{display:none} }
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:12px 18px;border-radius:14px;border:1px solid var(--line);
  font-weight:700;letter-spacing:.005em;
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease;
  will-change:transform;background:#fff;
}
.btn:focus{outline:3px solid var(--ring);outline-offset:2px}
.btn:hover{transform:scale(1.04);box-shadow:var(--shadow-1)}
.btn:active{transform:scale(0.98)}
.btn-primary{background:var(--cta);color:#fff;border-color:transparent}
.btn-primary:hover{box-shadow:0 10px 28px rgba(107,78,252,.32)}
.btn-primary:active{background:var(--cta-press)}
.btn-secondary{background:#fff;color:#0E1116;border-color:var(--line)}
.hero{
  /* moved up by reducing top padding */
  padding:64px 0 48px;
  background:
    radial-gradient(1200px 400px at 50% -10%, rgba(107,78,252,.10), transparent 60%),
    linear-gradient(180deg, #fff 0%, #fff 100%);
}
.kicker{display:inline-block;font-weight:700;color:#3a3f4b;
  background:#F6F7FB;border:1px solid var(--line);padding:6px 12px;border-radius:999px;
  /* tighter to headline */
  margin-top:0;margin-bottom:8px;
}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.card{border:1px solid var(--hair);border-radius:var(--radius-2);padding:24px;background:#fff;box-shadow:var(--shadow-1)}
.card.tight{padding:16px}
.surface{border:1px solid var(--hair);border-radius:var(--radius-2);padding:28px;background:linear-gradient(180deg,#fff 0%,#fcfcff 100%);box-shadow:var(--shadow-1)}
.checklist{display:grid;gap:8px;padding-left:0;list-style:none}
.checklist li{display:flex;align-items:flex-start;gap:10px}
.checklist li::before{content:"";flex:0 0 10px;height:10px;border-radius:999px;background:var(--cta);transform:translateY(6px)}
.footer{padding:48px 0;border-top:1px solid var(--hair);color:var(--muted)}
.pricing-grid{display:grid;grid-template-columns:1fr;gap:24px}
@media(min-width:1000px){.pricing-grid{grid-template-columns:repeat(3,1fr)}}
.price{font-size:34px;font-weight:900;letter-spacing:-0.02em}
.tier{display:flex;flex-direction:column;gap:16px}
.tier .btn{margin-top:auto}
.table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--hair);border-radius:16px;overflow:hidden}
.table th,.table td{padding:14px 16px;border-bottom:1px solid var(--hair);text-align:left}
.table thead th{background:#F8F9FC;font-weight:800;color:#171b25}
.table tbody tr:nth-child(even){background:#fbfbfe}
input,select,textarea{width:100%;padding:12px 14px;border:1px solid var(--line);
  border-radius:12px;background:#fff;color:#0E1116;font-size:16px}
input:focus,select:focus,textarea:focus{outline:3px solid var(--ring);outline-offset:2px;border-color:transparent}
label{font-weight:650;margin-bottom:6px;display:block}
.form-row{display:grid;gap:12px}
button{font-family:inherit}
.payment{max-width:560px;margin-inline:auto}
.help{font-size:14px;color:var(--muted)}
.muted{color:var(--muted)}
.center{text-align:center}
.badge{display:inline-block;padding:6px 10px;border-radius:999px;background:#efeaff;color:#4b35ce;font-weight:800;font-size:12px;border:1px solid #e1dcff}
.hr{height:1px;background:var(--hair);margin:28px 0}
.small{font-size:14px;color:var(--muted)}
.prose{max-width:var(--max-ch)}
.hidden{display:none}

/* helper to center the pricing subline under the title */
.lead.center-under{text-align:center;margin-inline:auto;}
