/* Coffey Systems store homepage. Loaded after styles.min.css on index.html only. */
.store-hero { padding: clamp(64px, 8vw, 110px) 0 clamp(40px, 5vw, 64px); background: linear-gradient(126deg, var(--cream) 0 64%, var(--cream-deep) 64% 100%); }
.store-eyebrow { margin: 0 0 12px; color: var(--rust); font-size: .9rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.store-hero h1 { max-width: 820px; margin: 0 0 16px; color: var(--navy); font: 700 clamp(2.6rem, 6vw, 4.6rem)/.96 var(--display); text-wrap: balance; }
.store-sub { max-width: 620px; margin: 0; color: #384254; font-size: 18px; line-height: 1.6; }
.store-products { padding: clamp(48px, 6vw, 84px) 0; background: var(--paper); }
.store-h2 { margin: 0 0 26px; color: var(--navy); font: 700 clamp(1.9rem, 3.4vw, 2.6rem)/1.02 var(--display); }
.store-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
.store-card { display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--line); border-radius: 14px; background: white; box-shadow: var(--shadow-soft); }
.store-card-media { display: flex; justify-content: center; align-items: center; height: 320px; padding: 22px; background: var(--cream); }
.store-card-media picture { display: flex; justify-content: center; height: 100%; }
.store-card-media img { height: 100%; width: auto; max-width: 100%; object-fit: contain; border-radius: 8px; box-shadow: var(--shadow-soft); }
.store-card-body { display: flex; flex: 1; flex-direction: column; padding: 24px 26px 28px; }
.store-tag { margin: 0 0 8px; color: var(--rust); font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.store-card h3 { margin: 0 0 10px; font: 700 1.7rem/1.05 var(--display); }
.store-card h3 a { color: var(--navy); text-decoration: none; }
.store-card-body > p { margin: 0 0 12px; color: #384254; font-size: 16px; line-height: 1.55; }
.store-meta { color: var(--muted) !important; font-size: 14px !important; }
.store-meta strong { color: var(--navy); }
.store-button { margin-top: auto; align-self: flex-start; }
.store-promise { padding: clamp(48px, 6vw, 84px) 0; background: var(--cream); }
.store-promise ul { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 0; padding: 0; list-style: none; }
.store-promise li { padding: 22px 24px; border: 1px solid var(--line); border-radius: 12px; background: var(--paper); color: #384254; font-size: 15px; line-height: 1.55; }
.store-promise strong { display: block; margin-bottom: 6px; color: var(--navy); font-size: 16px; }
@media (max-width: 860px) {
  .store-grid, .store-promise ul { grid-template-columns: 1fr; }
  .store-card-media { height: 260px; }
}
