:root{
  --ink:        #0B0B0C;
  --ink-soft:   #6E6E73;
  --ink-muted:  #A1A1A6;
  --bg:         #FFFFFF;
  --surface:    #F4F4F5;
  --border:     #E7E7E9;
  --white:      #FFFFFF;

  --radius-pill: 999px;
  --radius-card: 24px;
  --radius-input:16px;

  --shadow-soft: 0 12px 40px rgba(0,0,0,.06);
  --shadow-input:0 8px 30px rgba(0,0,0,.10);

  --maxw: 1140px;
}

body{
  font-family:'Manrope', system-ui, sans-serif;
  color:var(--ink);
  background:var(--bg);
  overflow-x:hidden;
}

.fw-700{ font-weight:700; }
.fw-800{ font-weight:800; }
.fw-600{ font-weight:600; }

.eyebrow{
  display:inline-flex; align-items:center; gap:.5rem;
  background:var(--surface); border-radius:var(--radius-pill);
  padding:.35rem .8rem; font-size:.72rem; font-weight:600;
  letter-spacing:.08em; text-transform:uppercase; color:var(--ink);
}

.btn-pill{ border-radius:var(--radius-pill); font-weight:600; padding:.75rem 1.5rem; transition:transform .15s ease, opacity .15s ease; }
.btn-dark{ background:var(--ink); color:var(--white); border:1px solid var(--ink); }
.btn-dark:hover{ opacity:.88; color:var(--white); transform:translateY(-1px); }
.btn-outline-ink{ background:var(--white); color:var(--ink); border:1px solid var(--border); }
.btn-outline-ink:hover{ border-color:var(--ink); color:var(--ink); transform:translateY(-1px); }

.btn-sm.btn-pill{ padding:.5rem 1rem; }

.text-muted-ink{ color:var(--ink-muted); }

.link-footer{ color:var(--ink-soft); text-decoration:none; }
.link-footer:hover{ color:var(--ink); }

.link-underline-white{ color:rgba(255,255,255,.9); text-decoration:underline; }

.navbar{ border-bottom:1px solid transparent; }
.nav-link{ font-weight:500; }

.hero-card{
  border-radius:var(--radius-card);
  box-shadow:var(--shadow-soft);
  background:
    radial-gradient(120% 120% at 20% 30%, #F6C9E8 0%, transparent 55%),
    radial-gradient(120% 120% at 85% 70%, #B9E08A 0%, transparent 50%),
    linear-gradient(120deg, #EFA9D8 0%, #E86BB8 35%, #CDE3A8 100%);
}

.badge-chip{
  display:inline-block; background:rgba(255,255,255,.35); color:var(--white);
  border-radius:var(--radius-pill); padding:.35rem .9rem; font-size:.8rem; font-weight:600;
}

.input-mock{
  max-width:520px;
  background:var(--white);
  border-radius:var(--radius-input);
  box-shadow:var(--shadow-input);
}

.send-btn{
  display:inline-flex; align-items:center; justify-content:center;
  width:32px; height:32px; border-radius:50%;
  background:var(--ink); color:var(--white); font-size:.9rem;
}

.text-white-70{ color:rgba(255,255,255,.75); }

.accordion-button:not(.collapsed){ background:var(--surface); color:var(--ink); box-shadow:none; }
.accordion-button:focus{ box-shadow:none; border-color:var(--border); }

img{ max-width:100%; }

@media (prefers-reduced-motion: reduce){
  * { transition:none !important; animation:none !important; }
}
