/*
 * Brivo brand tokens.
 * Copied from the internal brand kit; derived from the live brivo.com
 * Elementor global kit (post-6.css) on 2026-08-05. There is no official
 * internal brand-guidelines document - do not invent values, and re-derive
 * from the same source if brivo.com is redesigned.
 */

:root {
  /* Core palette */
  --brivo-primary: #1250CB;      /* primary blue */
  --brivo-secondary: #0CB7EB;    /* bright cyan */
  --brivo-text: #10181E;         /* near-black body text */
  --brivo-accent: #FF9718;       /* accent orange */

  /* Supporting palette */
  --brivo-blue-tint: #D3E3FF;
  --brivo-bg-offwhite: #F4F7FD;
  --brivo-orange-tint: #FFC278;
  --brivo-gray-light: #DEDEDE;
  --brivo-white: #FFFFFF;

  /* Typography */
  --brivo-font-primary: "Open Sans", sans-serif;
  --brivo-font-accent: "Roboto", sans-serif;

  /* Layout */
  --brivo-content-max-width: 1440px;
}

body {
  color: var(--brivo-text);
  font-family: var(--brivo-font-primary);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.1px;
  background: var(--brivo-white);
}

/* Headings are regular weight (400) on brivo.com; bold is reserved for H5/emphasis. */
h1 { font-family: var(--brivo-font-primary); font-size: clamp(2rem, 1.5rem + 2.5vw, 4rem); font-weight: 400; line-height: 1.2; letter-spacing: -0.005em; }
h2 { font-family: var(--brivo-font-primary); font-size: clamp(1.75rem, 1.35rem + 1.25vw, 3rem); font-weight: 400; line-height: 1.3; letter-spacing: -0.005em; }
h3 { font-family: var(--brivo-font-primary); font-size: clamp(1.5rem, 1.25rem + 0.78vw, 2.1875rem); font-weight: 400; line-height: 1.33; }
h4 { font-family: var(--brivo-font-primary); font-size: clamp(1.375rem, 1.225rem + 0.47vw, 1.625rem); font-weight: 400; line-height: 1.35; }
h5 { font-family: var(--brivo-font-primary); font-size: clamp(0.9375rem, 0.8575rem + 0.25vw, 1.125rem); font-weight: 700; line-height: 1.4; }
h6 { font-family: var(--brivo-font-primary); font-size: 1rem; font-weight: 300; line-height: 1.4; text-transform: uppercase; letter-spacing: 0.1em; }

a { color: var(--brivo-primary); }

.brivo-btn {
  font-family: var(--brivo-font-accent);
  font-weight: 500;
  background: var(--brivo-primary);
  color: var(--brivo-white);
  border: none;
  border-radius: 4px;
  padding: 0.667em 1.333em;
  cursor: pointer;
  text-decoration: none;
  display: inline-block;
}
.brivo-btn:hover { background: var(--brivo-secondary); }
.brivo-btn--accent { background: var(--brivo-accent); color: var(--brivo-text); }
