*{box-sizing:border-box}
body{margin:0;background:var(--bg-page);color:var(--text-body);font-family:var(--font-body);font-size:var(--text-body-size);line-height:var(--lh-body);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,blockquote{text-wrap:pretty;hyphens:manual;overflow-wrap:break-word;font-family:var(--font-display);font-weight:var(--weight-display);font-variation-settings:var(--display-variation);letter-spacing:var(--ls-display);line-height:var(--lh-heading);color:var(--text-heading);margin:0}
h1{font-size:var(--text-display);line-height:var(--lh-display)}h2{font-size:var(--text-h2)}h3{font-size:var(--text-h3)}
p{margin:0;text-wrap:pretty;hyphens:auto;overflow-wrap:break-word}
a{color:var(--action);text-decoration:none;transition:color var(--dur-hover) var(--ease-reveal)}
a:hover{color:var(--action-hover)}
::selection{background:var(--terra-soft);color:var(--ink)}
.ds-eyebrow{font-family:var(--font-mono);font-size:var(--text-label-size);text-transform:uppercase;letter-spacing:var(--ls-label);color:var(--action)}
.ds-container{max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}
.ds-organic{background:var(--organic-field)}
@keyframes ds-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes ds-reveal{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
