*,*::before,*::after{box-sizing:border-box}
body{margin:0;font-family:var(--tg-font-body);font-size:var(--tg-size-body);line-height:var(--tg-lh-body);color:var(--tg-text-body);background:var(--tg-surface-page);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4{font-family:var(--tg-font-display);font-weight:400;color:var(--tg-text-strong);margin:0}
h1{font-size:var(--tg-size-h1);line-height:var(--tg-lh-h1);letter-spacing:var(--tg-ls-h1)}
h2{font-size:var(--tg-size-h2);line-height:var(--tg-lh-h2);letter-spacing:var(--tg-ls-h2)}
h3{font-size:var(--tg-size-h3);line-height:var(--tg-lh-h3);letter-spacing:var(--tg-ls-h3)}
p{margin:0;text-wrap:pretty}
a{color:var(--tg-text-link);text-decoration:none;text-underline-offset:3px;transition:color var(--tg-dur-base) var(--tg-ease)}
a:hover{color:var(--tg-text-link-hover);text-decoration:underline}
:focus-visible{outline:none;box-shadow:var(--tg-focus-ring)}
::selection{background:var(--tg-teal-200);color:var(--tg-navy)}
.tg-eyebrow{font-family:var(--tg-font-body);font-weight:var(--tg-weight-semibold);font-size:var(--tg-size-eyebrow);letter-spacing:var(--tg-ls-eyebrow);line-height:var(--tg-lh-eyebrow);text-transform:uppercase;color:var(--tg-text-accent)}
.tg-display-1{font-family:var(--tg-font-display);font-size:var(--tg-size-display-1);line-height:var(--tg-lh-display-1);letter-spacing:var(--tg-ls-display-1);color:var(--tg-text-strong)}
.tg-display-2{font-family:var(--tg-font-display);font-size:var(--tg-size-display-2);line-height:var(--tg-lh-display-2);letter-spacing:var(--tg-ls-display-2);color:var(--tg-text-strong)}
.tg-display-3{font-family:var(--tg-font-display);font-size:var(--tg-size-display-3);line-height:var(--tg-lh-display-3);letter-spacing:var(--tg-ls-display-3);color:var(--tg-text-strong)}
