/* Base element defaults. Cream page, near-black ink, editorial serif for reading. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--surface-page);color:var(--text-body);font-family:var(--font-editorial);font-size:var(--type-body);line-height:var(--leading-body);text-wrap:pretty;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--font-editorial);font-weight:var(--weight-editorial);color:var(--text-heading);margin:0;text-wrap:balance}
h1{font-size:var(--type-h1);line-height:var(--leading-tight);letter-spacing:var(--tracking-heading)}
h2{font-size:var(--type-h2);line-height:var(--leading-heading);letter-spacing:var(--tracking-heading)}
h3{font-size:var(--type-h3);line-height:var(--leading-heading)}
h4{font-size:var(--type-h4);line-height:var(--leading-heading)}
p{margin:0 0 1em;max-width:var(--measure-body);text-align:left}
a{color:var(--link);text-decoration:none;border-bottom:1px solid var(--ink-a32);transition:var(--transition-control)}
a:hover{color:var(--link-hover);border-bottom-color:currentColor}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:1.5px solid var(--focus-ring);outline-offset:3px}
hr{border:0;border-top:var(--border-rule-1);margin:var(--space-8) 0}
small{font-family:var(--font-sans);font-size:var(--type-micro);letter-spacing:var(--tracking-micro);text-transform:uppercase}
strong{font-weight:var(--weight-editorial-medium)}
::selection{background:var(--terracotta-500);color:var(--cream-200)}
img{max-width:100%;display:block}
button{font-family:inherit}

/* Reusable brand utilities */
.av-eyebrow{font-family:var(--font-sans);font-size:var(--type-eyebrow);font-weight:var(--weight-sans-semibold);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;line-height:var(--leading-label)}
.av-display{font-family:var(--font-display);font-weight:400;letter-spacing:var(--tracking-display);line-height:var(--leading-display)}
.av-script{font-family:var(--font-script);font-weight:400;line-height:1.1}
.av-measure{max-width:var(--measure-body)}
.av-field-olive{background:var(--surface-olive);color:var(--text-on-dark)}
.av-field-oxblood{background:var(--surface-oxblood);color:var(--text-on-dark)}
.av-field-brown{background:var(--surface-brown);color:var(--text-on-dark)}
.av-field-dark{background:var(--surface-dark);color:var(--text-on-dark)}
.av-field-cream{background:var(--surface-page);color:var(--text-body)}
.av-field-sage{background:var(--surface-muted);color:var(--text-body)}
.av-field-terracotta{background:var(--surface-accent);color:var(--text-on-accent)}
.av-pattern-sage{background-image:url("../assets/brand/pattern-badge-sage.png");background-size:374px auto;background-repeat:repeat}
