/* ============================================================
   Base element defaults — light-touch, mirrors the site's
   Open Sans body / Oswald heading rhythm.
   ============================================================ */
*,*::before,*::after{box-sizing:border-box;}

body{
  margin:0;
  font-family:var(--font-body);
  font-size:var(--fs-body);
  line-height:var(--lh-body);
  color:var(--color-text);
  background:var(--color-bg);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

h1,h2,h3,h4,h5{
  font-family:var(--font-display);
  color:var(--color-heading);
  line-height:var(--lh-heading);
  margin:0 0 .4em;
  font-weight:var(--fw-regular);
}
h1{font-size:var(--fs-h1);text-transform:uppercase;}
h2{font-size:var(--fs-h2);}
h3{font-size:var(--fs-h3);}
h4{font-size:var(--fs-h4);font-family:var(--font-body);font-weight:var(--fw-bold);}

p{margin:0 0 1em;text-wrap:pretty;}

a{color:var(--color-link);text-decoration:none;transition:color var(--dur-fast) var(--ease-standard);}
a:hover{color:var(--color-link-hover);}

hr,.separator{border:0;border-bottom:var(--border-hairline) solid var(--color-border);height:0;margin:var(--space-6) 0;}

img{max-width:100%;height:auto;display:block;}

::selection{background:var(--vc-cyan-400);color:var(--vc-slate-900);}

/* Utility helpers used by cards & kits */
.vc-wrap{max-width:var(--container-max);margin:0 auto;padding:0 var(--gutter);}
.vc-eyebrow{font-family:var(--font-ui);text-transform:uppercase;letter-spacing:var(--ls-nav);font-size:var(--fs-caption);font-weight:var(--fw-bold);}
