/* Base styles: reset, CSS variables (light + dark mode), typography, buttons */

:root {
  --navy:#0f172a;
  --blue:#3b82f6;
  --gold:#c7a35a;
  --green:#10b981;
  --paper:#f8fafc;
  --ink:#172033;
  --muted:#64748b;
  --line:#e3e9f1;
  --white:#fff;
  --glass:rgba(255,255,255,.86);
  --shadow:0 20px 50px rgba(15,23,42,.12);
  --testimonial-bg: #edf5ff;
}

* {
  box-sizing:border-box;
}

html {
  scroll-behavior:smooth;
}

section[id] {
  scroll-margin-top:90px;
}

body {
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font:15px/1.55 Inter,Arial,sans-serif;
}

html.menu-open,
body.menu-open {
  overflow:hidden;
  height:100%;
}

body.dark {
  --paper:#0b1222;
  --ink:#e7edf6;
  --muted:#a8b4c7;
  --line:#22304a;
  --white:#101a2c;
  --glass:rgba(16,26,44,.88);
  --shadow:0 20px 50px rgba(0,0,0,.25);
  --testimonial-bg: #131f38;
}

a {
  color:inherit;
  text-decoration:none;
}

button,input,select,textarea {
  font:inherit;
}

button {
  cursor:pointer;
}

.wrap {
  width:min(1180px,calc(100% - 40px));
  margin:auto;
}

.eyebrow {
  color:var(--blue);
  font-size:11px;
  font-weight:700;
  letter-spacing:1.5px;
  text-transform:uppercase;
}

.section {
  padding:96px 0;
}

.section-head {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:30px;
  margin-bottom:36px;
}

.section-head h2 {
  font:700 clamp(28px,4vw,45px)/1.14 Poppins;
  margin:7px 0 0;
}

.section-head p {
  max-width:390px;
  color:var(--muted);
  margin:0;
}

.btn {
  border:0;
  border-radius:5px;
  padding:13px 20px;
  font-weight:700;
  transition:.25s transform,.25s background,.25s box-shadow;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
}

.btn:hover {
  transform:translateY(-2px);
  box-shadow:0 9px 22px rgba(15,23,42,.18);
}

.btn.blue {
  background:var(--blue);
  color:white;
}

.btn.gold {
  background:var(--gold);
  color:#172033;
}

.btn.ghost {
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.45);
  color:#fff;
}

.btn.outline {
  background:transparent;
  border:1px solid var(--line);
  color:var(--ink);
}

.btn.wa {
  background: #25d366;
  color: #fff;
}