/* brand.css — Love Tile brand tokens + shared marketing primitives */
:root {
  --cream:   #FFF8F3;
  --cream-2: #FBEEE4;
  --ink:     #2D2D2D;
  --ink-60:  rgba(45,45,45,.62);
  --ink-40:  rgba(45,45,45,.40);
  --pink:    #FF6B9D;
  --pink-ink:#E14E81;
  --gold:    #FFC947;
  --lav:     #C9A0DC;
  --line:    rgba(45,45,45,.10);
  --font: 'Manrope', system-ui, -apple-system, sans-serif;
}
* { box-sizing: border-box; }
.lt-eyebrow {
  display: inline-flex; align-items: center; gap: 8px;
  font-weight: 700; font-size: 13px; letter-spacing: .02em;
  color: var(--pink-ink); text-transform: none;
}
.lt-eyebrow::before { content:''; width: 7px; height: 7px; border-radius: 50%; background: var(--pink); box-shadow: 0 0 0 4px rgba(255,107,157,.18); }

.h1 { font-weight: 800; letter-spacing: -.03em; line-height: 1.02; color: var(--ink); text-wrap: balance; }
.lead { font-weight: 500; color: var(--ink-60); line-height: 1.5; text-wrap: pretty; }

/* buttons */
.btn { display: inline-flex; align-items: center; gap: 9px; font-family: var(--font); font-weight: 800;
  border-radius: 999px; border: 0; cursor: pointer; text-decoration: none; white-space: nowrap; }
.btn--app { background: var(--ink); color: #fff; padding: 14px 22px 14px 18px; font-size: 16px;
  box-shadow: 0 14px 26px -14px rgba(45,45,45,.7); transition: transform .18s ease, box-shadow .18s ease; }
.btn--app:hover { transform: translateY(-2px); box-shadow: 0 20px 30px -14px rgba(45,45,45,.6); }
.btn--app .apple { font-size: 20px; line-height: 0; margin-top: -2px; }
.btn--app small { display:block; font-size: 10px; font-weight: 600; opacity: .8; letter-spacing:.04em; }
.btn--app b { display:block; font-size: 15px; font-weight: 800; letter-spacing: -.01em; }
.btn--ghost { background: rgba(255,255,255,.6); color: var(--ink); padding: 14px 20px; font-size: 15px;
  border: 1px solid var(--line); backdrop-filter: blur(6px); transition: background .18s ease; }
.btn--ghost:hover { background: rgba(255,255,255,.95); }
.btn--pink { background: var(--pink); color: #fff; padding: 12px 20px; font-size: 15px;
  box-shadow: 0 12px 24px -12px rgba(255,107,157,.9); transition: transform .18s ease; }
.btn--pink:hover { transform: translateY(-2px); }

.trust { display: flex; align-items: center; gap: 14px; font-size: 13px; font-weight: 600; color: var(--ink-60); flex-wrap: wrap; }
.trust span { display: inline-flex; align-items: center; gap: 6px; }
.trust .dot { width: 5px; height: 5px; border-radius: 50%; background: var(--ink-40); }

/* brand wordmark */
.brand { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; }
.brand__mark { width: 34px; height: 34px; border-radius: 10px; object-fit: contain; display: block;
  filter: drop-shadow(0 6px 14px rgba(255,107,157,.45)); }
.brand__name { font-weight: 800; font-size: 19px; letter-spacing: -.02em; color: var(--ink); }

/* page nav (for hero artboards) */
.nav { display: flex; align-items: center; justify-content: space-between; padding: 22px 40px; }
.nav__links { display: flex; align-items: center; gap: 28px; }
.nav__links a { font-weight: 700; font-size: 14px; color: var(--ink); text-decoration: none; opacity: .72; }
.nav__links a:hover { opacity: 1; }
