/* Lovetere hallmark 1.0.0. The shared frame; a site sets --hm-bg, --hm-ink, --hm-muted, --hm-accent and --hm-font. */
.hm { background: var(--hm-bg); color: var(--hm-muted); font-family: var(--hm-font); font-size: .875rem; line-height: 1.5; text-align: left; }
.hm a { color: var(--hm-ink); text-decoration-color: var(--hm-accent); text-decoration-thickness: 2px; text-underline-offset: 3px; }
.hm p, .hm div { margin: 0; }
.hm.hm > * + * { margin-top: 16px; }
.hm.hm > .hm-stores { margin-top: 20px; }
.hm-row { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px 16px; }
.hm-legal { display: flex; flex-wrap: wrap; gap: 8px 20px; }
.hm-legal a { display: inline-block; padding: 8px 0; }
.hm-maker { display: flex; align-items: center; gap: 8px; color: var(--hm-ink); font-weight: 600; }
.hm-maker picture { display: block; line-height: 0; }
.hm-maker img { width: 22px; height: 22px; border-radius: 5px; display: block; }
.hm-dot { width: .22em; height: .22em; border-radius: 50%; background: #F5A800; display: inline-block; margin-left: -4px; }
.hm-stores { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.hm-stores a { line-height: 0; }
.hm-stores img { height: 40px; width: auto; display: block; }
.hm-siblings { justify-content: flex-start; }
.hm-icons { display: flex; flex-wrap: wrap; gap: 8px; }
.hm-icons a { display: block; line-height: 0; }
.hm-siblings img { width: 26px; height: 26px; border-radius: 6px; display: block; }
@media (max-width: 479px) { .hm-icons { display: grid; grid-template-columns: repeat(6, 26px); } }
.hm-imprint { color: var(--hm-muted); }
