.store-button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: .5rem; padding: .75rem 1.5rem; border: 2px solid var(--store-navy); border-radius: 8px; color: white; background: var(--store-navy); box-shadow: 0 5px 14px rgb(23 50 77 / 10%); font-weight: 700; line-height: 1.4; text-decoration: none; transition: color var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-normal) var(--ease-standard), transform var(--duration-fast) var(--ease-standard); }
.store-button:active { box-shadow: 0 2px 7px rgb(23 50 77 / 10%); transform: translateY(1px); }
.store-button--outline { color: var(--store-navy); background: white; }
.store-button--small { min-height: 44px; padding: .55rem 1rem; font-size: .88rem; }
.store-button--header-placeholder { min-height: 44px; border-color: var(--store-border); color: var(--store-muted); background: var(--store-surface); cursor: default; transform: none; }
.store-button--header-placeholder:hover { color: var(--store-muted); background: var(--store-surface); transform: none; }
.store-button--header-placeholder small { padding: .1rem .35rem; border-radius: 3px; color: #7b4119; background: #f7e5d7; font-size: .65rem; }
.store-button--disabled { flex-direction: column; border-color: #c6ced3; color: #66727b; background: #e8ecee; cursor: not-allowed; transform: none; }
.store-button--disabled span { font-size: .75rem; font-weight: 500; }
.store-button-row { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 2rem; }
.store-wordmark { display: inline-grid; width: max-content; max-width: 100%; grid-template-columns: auto minmax(0, auto); align-items: center; justify-self: start; justify-content: start; column-gap: .75rem; color: var(--store-navy); line-height: 1.2; text-decoration: none; white-space: nowrap; }
.store-wordmark__mark { width: 40px; height: 40px; flex: 0 0 auto; }
.store-wordmark__copy { display: flex; min-width: 0; align-items: baseline; gap: .45rem; }
.store-wordmark strong { font-size: 1.2rem; letter-spacing: .05em; }
.store-wordmark small { color: var(--store-muted); font-size: .64rem; letter-spacing: .12em; }
.store-placeholder { position: relative; margin: 0; overflow: hidden; border-radius: var(--store-radius); background: #e8edef; }
.store-placeholder img { width: 100%; }
.store-placeholder figcaption { position: absolute; right: .75rem; bottom: .75rem; left: .75rem; padding: .5rem; border-radius: 6px; color: var(--store-text); background: rgb(255 255 255 / 92%); font-size: .72rem; text-align: center; }
.store-card-status { display: inline-block; align-self: flex-start; margin-top: auto; padding: .25rem .55rem; border-left: 3px solid var(--store-orange); color: #784019; background: #fbede3; font-size: .78rem; font-weight: 700; }
.store-tag-list { display: flex; flex-wrap: wrap; gap: .65rem; padding: 0; list-style: none; }
.store-tag-list li { padding: .55rem .9rem; border: 1px solid var(--store-border); border-radius: 999px; background: white; font-size: .88rem; }
@media (hover: hover) and (pointer: fine) {
  .store-button:hover { background: var(--store-navy-dark); box-shadow: 0 9px 20px rgb(23 50 77 / 16%); transform: translateY(var(--hover-lift)); }
  .store-button:hover:active { box-shadow: 0 3px 9px rgb(23 50 77 / 12%); transform: translateY(-1px); }
  .store-button--outline:hover { color: white; border-color: var(--store-navy); background: var(--store-navy); }
  .store-button--header-placeholder:hover, .store-button--disabled:hover { box-shadow: none; transform: none; }
}
@media (max-width: 767px) {
  .store-button-row, .store-button-row .store-button { width: 100%; }
  .store-navigation .store-button { min-height: 48px; }
}
