/* Mumzy's Attic Shop — storefront styles (Titanic palette) */
:root{
  --mumzy-midnight:#0c1c30;
  --mumzy-sapphire:#2f6fa6;
  --mumzy-gold:#c9a24b;
  --mumzy-gold-light:#e4c876;
  --mumzy-ivory:#f2ead6;
  --mumzy-ink:#10233a;
  --mumzy-line:rgba(201,162,75,.32);
}

.mumzy-grid{
  display:grid;
  gap:28px;
  margin:24px 0 40px;
}
.mumzy-cols-1{grid-template-columns:minmax(0,360px)}
.mumzy-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.mumzy-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.mumzy-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){.mumzy-cols-3,.mumzy-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.mumzy-grid{grid-template-columns:1fr!important}}

.mumzy-card{
  background:var(--mumzy-ivory);
  border:1px solid var(--mumzy-line);
  border-radius:4px;
  overflow:hidden;
  position:relative;
  transition:transform .25s ease,box-shadow .25s ease;
  font-family:'Cormorant Garamond',Georgia,serif;
}
.mumzy-card::before{
  content:"";position:absolute;inset:7px;border:1px solid rgba(201,162,75,.35);
  z-index:3;pointer-events:none;border-radius:2px;
}
.mumzy-card:hover{transform:translateY(-6px);box-shadow:0 22px 46px rgba(12,28,48,.22)}

.mumzy-card-media{display:block;aspect-ratio:1/1;overflow:hidden;background:linear-gradient(135deg,#1c4064,var(--mumzy-midnight))}
.mumzy-card-img{width:100%;height:100%;object-fit:cover;display:block}
.mumzy-noimg{display:grid;place-items:center;color:rgba(255,255,255,.45);font-size:44px;height:100%}

.mumzy-card-body{padding:20px 22px 26px;text-align:center}
.mumzy-card-cat{font-family:'Cinzel',Georgia,serif;font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--mumzy-gold);margin:0 0 7px}
.mumzy-card-title{margin:0 0 6px;font-family:'Cinzel',Georgia,serif;font-size:18px;font-weight:500;letter-spacing:.04em}
.mumzy-card-title a{color:var(--mumzy-ink);text-decoration:none}
.mumzy-card-title a:hover{color:var(--mumzy-sapphire)}
.mumzy-card-price{color:var(--mumzy-sapphire);font-size:22px;font-weight:600;margin-bottom:12px}

.mumzy-buy{margin:0}
.mumzy-buy-btn{
  display:inline-block;cursor:pointer;
  background:var(--mumzy-midnight);
  color:var(--mumzy-gold-light);
  font-family:'Cinzel',Georgia,serif;letter-spacing:.12em;text-transform:uppercase;font-size:12px;
  border:1px solid var(--mumzy-gold);border-radius:2px;
  padding:12px 26px;transition:.2s ease;
}
.mumzy-buy-btn:hover{background:var(--mumzy-gold);color:var(--mumzy-midnight)}

.mumzy-soldout{
  display:inline-block;font-family:'Cinzel',Georgia,serif;letter-spacing:.14em;text-transform:uppercase;
  font-size:12px;color:#8a8069;border:1px solid var(--mumzy-line);border-radius:2px;padding:11px 24px;
}
.mumzy-note{font-size:14px;color:#8a8069;font-style:italic;margin:8px 0 0}
.mumzy-empty{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:20px;color:#5a5238;text-align:center;padding:30px}

.mumzy-thankyou{
  background:var(--mumzy-ivory);
  border:1px solid var(--mumzy-gold);
  border-left:4px solid var(--mumzy-gold);
  padding:18px 22px;margin:0 0 24px;border-radius:3px;
  font-family:'Cormorant Garamond',Georgia,serif;font-size:19px;color:var(--mumzy-ink);
}

/* ---------- Shipping details step ---------- */
.mumzy-ship-wrap{max-width:640px;margin:10px auto 50px}
.mumzy-ship-summary{text-align:center;margin-bottom:26px;padding-bottom:22px;border-bottom:1px solid var(--mumzy-line)}
.mumzy-ship-eyebrow{font-family:'Cinzel',Georgia,serif;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--mumzy-gold)}
.mumzy-ship-title{font-family:'Cinzel',Georgia,serif;font-weight:500;font-size:26px;color:var(--mumzy-ink);margin:6px 0 8px}
.mumzy-ship-price{font-family:'Cinzel',Georgia,serif;font-size:20px;color:var(--mumzy-sapphire)}
.mumzy-ship-price span{display:block;font-family:inherit;font-size:12px;letter-spacing:.04em;color:#7a6f52;margin-top:4px;text-transform:none}
.mumzy-ship-error{background:#fbecec;border:1px solid #e3b7b7;color:#8a2b2b;border-radius:4px;padding:12px 16px;margin-bottom:20px;font-size:15px}
.mumzy-ship-msg{text-align:center;padding:30px 0;font-size:17px}
.mumzy-ship-form label{display:block;margin-bottom:16px;font-family:'Cinzel',Georgia,serif;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--mumzy-ink)}
.mumzy-ship-form label span{display:block;margin-bottom:6px}
.mumzy-ship-form input{width:100%;padding:12px 14px;border:1px solid var(--mumzy-line);border-radius:3px;background:#fff;font-family:Georgia,serif;font-size:16px;color:var(--mumzy-ink);text-transform:none;letter-spacing:0}
.mumzy-ship-form input:focus{outline:none;border-color:var(--mumzy-sapphire);box-shadow:0 0 0 3px rgba(47,111,166,.14)}
.mumzy-ship-row{display:flex;gap:16px}
.mumzy-ship-row>label{flex:1}
.mumzy-ship-row>label.mumzy-ship-small{flex:0 0 110px}
@media(max-width:520px){.mumzy-ship-row{flex-wrap:wrap}.mumzy-ship-row>label,.mumzy-ship-row>label.mumzy-ship-small{flex:1 1 100%}}
.mumzy-ship-btn{width:100%;margin-top:6px;padding:15px 22px;border:1px solid var(--mumzy-gold);border-radius:2px;background:var(--mumzy-gold);color:var(--mumzy-midnight);font-family:'Cinzel',Georgia,serif;font-size:13px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:.2s}
.mumzy-ship-btn:hover{background:var(--mumzy-gold-light);border-color:var(--mumzy-gold-light)}
.mumzy-ship-note{margin-top:14px;text-align:center;font-size:13px;color:#7a6f52;font-family:Georgia,serif}

/* In-store availability tag on cards */
.mumzy-card-instore{display:inline-block;margin:2px 0 10px;font-family:'Cinzel',Georgia,serif;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#2f6144;background:rgba(63,125,85,.12);border:1px solid rgba(63,125,85,.35);border-radius:40px;padding:4px 11px}
