/* Base reset, typography, layout container, and buttons — loaded on every page. */

*{ box-sizing: border-box; }
html{ scroll-behavior: smooth; }
body{
  margin:0;
  font-family: var(--body);
  color: var(--ink);
  background: var(--cream);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  font-size: 17px;
  line-height: 1.55;
}
img{ display:block; max-width:100%; }
a{ color: inherit; }
button{ font-family: inherit; cursor:pointer; }

h1,h2,h3,h4{
  font-family: var(--display);
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.04;
  margin: 0;
  text-wrap: balance;
}
h1{ font-size: clamp(2.6rem, 5.4vw, 4.8rem); line-height: 1; letter-spacing: -0.015em; }
h2{ font-size: clamp(2.1rem, 3.8vw, 3.2rem); }
h3{ font-size: clamp(1.4rem, 2vw, 1.7rem); line-height:1.15; }
h4{ font-size: 1.1rem; line-height:1.2; }
p{ margin: 0 0 1em; color: var(--ink-2); }
p.lead{ font-size: clamp(1.05rem, 1.4vw, 1.25rem); color: var(--ink-2); line-height:1.55; }

.container{
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 var(--gutter);
}

/* -------- buttons -------- */
.btn{
  display:inline-flex; align-items:center; gap:8px;
  border:none; font-weight: 700; font-size: 0.97rem;
  padding: 12px 22px;
  border-radius: var(--radius-pill);
  text-decoration:none;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
  white-space: nowrap;
}
.btn-primary{
  background: var(--magenta);
  color: white;
  box-shadow: 0 6px 18px rgba(233,30,118,.32), inset 0 -2px 0 rgba(0,0,0,.08);
}
.btn-primary:hover{
  background: var(--magenta-deep);
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(233,30,118,.42), inset 0 -2px 0 rgba(0,0,0,.08);
}
.btn-primary .arrow{ transition: transform .2s ease; }
.btn-primary:hover .arrow{ transform: translateX(3px); }
.btn-ghost{
  background: transparent;
  color: var(--ink);
  border: 1.5px solid var(--ink);
}
.btn-ghost:hover{ background: var(--ink); color: white; }
.btn-lg{ padding: 16px 30px; font-size: 1.05rem; }

/* Free Trial button turns yellow on the magenta nav bar (all pages share the nav). */
.nav .btn-primary{
  background: #FFD23F;
  color: var(--ink);
  box-shadow: 0 6px 18px rgba(0,0,0,.16), inset 0 -2px 0 rgba(0,0,0,.10);
}
.nav .btn-primary:hover{
  background: #FFC107;
  box-shadow: 0 10px 24px rgba(0,0,0,.22), inset 0 -2px 0 rgba(0,0,0,.10);
}
