/* Hallmark · shared foundation · editorial · Shapes Instagram references */
*, *::before, *::after { box-sizing: border-box; }
html { overflow-x: clip; scroll-behavior: smooth; scroll-padding-top: 24px; }
body { margin: 0; overflow-x: clip; color: var(--color-ink); background: var(--color-paper); font-family: var(--font-body); font-size: 16px; line-height: 1.55; padding-bottom: 64px; }
img { display: block; max-width: 100%; height: auto; }
button, input { font: inherit; }
a { color: inherit; text-decoration: none; text-underline-offset: 5px; }
a:hover { text-decoration: underline; }
a:active, button:active { text-decoration: underline; }
:focus-visible { outline: 2px solid var(--color-focus); outline-offset: 5px; }
h1, h2, h3, p, figure { margin: 0; }
h1, h2, h3 { font-style: normal; font-weight: 400; min-width: 0; overflow-wrap: anywhere; }
ul { margin: 0; padding: 0; list-style: none; }
button { cursor: pointer; }
[hidden] { display: none !important; }
.wrap { width: min(1440px, 100%); margin-inline: auto; padding-inline: clamp(20px, 4.2vw, 72px); }
.wordmark { font-family: var(--font-body); font-weight: 600; letter-spacing: -.065em; line-height: .86; }
.text-link { display: inline-flex; align-items: center; gap: 28px; min-height: 44px; font-size: var(--text-sm); border-bottom: 1px solid currentColor; white-space: nowrap; }
.text-link span:last-child { font-size: 1.25rem; }
.text-link:hover { text-decoration: none; border-bottom-width: 2px; }
.muted { color: var(--color-muted); }
.skip-link { position: fixed; top: 8px; left: 8px; padding: 12px 20px; z-index: 400; background: var(--color-paper); color: var(--color-ink); transform: translateY(-150%); }
.skip-link:focus { transform: none; }
.draft-nav { position: fixed; inset: auto 0 0; z-index: var(--z-sticky); display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 8px clamp(16px, 3vw, 48px); background: var(--color-paper); color: var(--color-ink); border-top: 1px solid var(--color-rule); font-size: 12px; }
.draft-home { display: flex; align-items: center; gap: 16px; font-weight: 600; min-height: 44px; white-space: nowrap; }
.draft-home span { font-weight: 400; color: var(--color-muted); }
.draft-nav>div { display: flex; gap: 4px; }
.draft-nav>div a { min-width: 44px; min-height: 44px; display: grid; place-items: center; padding-inline: 12px; white-space: nowrap; }
.draft-nav [aria-current] { background: var(--color-ink); color: var(--color-paper); }
.draft-short { display: inline; }
.draft-long { display: none; }
@media (min-width: 48rem) { .draft-long { display: inline; } .draft-short { display: none; } }
@media (max-width: 24rem) { .draft-home span { display: none; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation: none !important; transition: none !important; } }
