/* Caledonian — cos-product-card.css */
.cos-product-card { position: relative; background: var(--cos-navy-mid); display: flex; flex-direction: column; overflow: hidden; transition: transform .35s var(--cos-ease); }
.cos-product-card:hover { transform: translateY(-6px); z-index: 1; }
.cos-product-card::before { content:''; position:absolute; inset:0; border:1px solid transparent; transition:border-color .35s; z-index:2; pointer-events:none; }
.cos-product-card:hover::before { border-color: rgba(201,168,76,.45); }
.cos-product-card__num { position:absolute; top:1rem; left:1.25rem; z-index:3; font-family:var(--cos-font-ui); font-size:.625rem; letter-spacing:.18em; color:rgba(201,168,76,.42); }
.cos-product-card__media { aspect-ratio:5/6; position:relative; overflow:hidden; }
.cos-product-card__media img { width:100%; height:100%; object-fit:cover; transition:transform .6s var(--cos-ease); }
.cos-product-card:hover .cos-product-card__media img { transform:scale(1.04); }

/* Hover overlay — gradient from bottom */
.cos-product-card__overlay { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:flex-end; padding:1.5rem 1.25rem; background:linear-gradient(to top,rgba(11,25,38,0) 0%,rgba(11,25,38,0) 100%); transition:background .4s var(--cos-ease); z-index:2; }
.cos-product-card:hover .cos-product-card__overlay { background:linear-gradient(to top,rgba(11,25,38,.96) 0%,rgba(11,25,38,.60) 55%,rgba(11,25,38,0) 100%); }
.cos-product-card__scent-detail { font-family:var(--cos-font-ui); font-size:.6875rem; letter-spacing:.10em; color:#F5F0E8; text-align:center; line-height:1.6; opacity:0; transform:translateY(10px); transition:opacity .35s var(--cos-ease) .05s,transform .35s var(--cos-ease) .05s; }
.cos-product-card:hover .cos-product-card__scent-detail { opacity:1; transform:none; }
.cos-product-card__quick-view { display:inline-block; margin-top:.875rem; padding:.5rem 1.5rem; background:transparent; color:var(--cos-gold); border:1px solid rgba(201,168,76,.55); font-family:var(--cos-font-ui); font-size:.5625rem; font-weight:400; letter-spacing:.22em; text-transform:uppercase; text-decoration:none; opacity:0; transform:translateY(10px); transition:opacity .35s var(--cos-ease) .12s,transform .35s var(--cos-ease) .12s,border-color .2s; }
.cos-product-card:hover .cos-product-card__quick-view { opacity:1; transform:none; }
.cos-product-card__quick-view:hover { border-color:var(--cos-gold); color:var(--cos-cream); }

/* Info area */
.cos-product-card__info { padding:1.25rem 1.25rem 1.5rem; flex:1; display:flex; flex-direction:column; gap:.25rem; }
.cos-product-card__name { font-size:1.0625rem; font-weight:400; color:var(--cos-cream); line-height:1.3; }
.cos-product-card__profile { font-family:var(--cos-font-ui); font-size:.75rem; font-weight:300; color:rgba(245,240,232,.5); margin-top:.125rem; }
.cos-product-card__footer { display:flex; align-items:center; justify-content:space-between; margin-top:auto; padding-top:1rem; border-top:1px solid rgba(201,168,76,.10); }
.cos-product-card__weight { font-family:var(--cos-font-ui); font-size:.6875rem; color:rgba(245,240,232,.35); letter-spacing:.06em; }
.cos-product-card__price { font-family:var(--cos-font-ui); font-size:.875rem; color:var(--cos-gold); }
.cos-product-card__cta { display:block; margin-top:1rem; padding:.75rem 1rem; text-align:center; font-family:var(--cos-font-ui); font-size:.5625rem; font-weight:400; letter-spacing:.22em; text-transform:uppercase; text-decoration:none; color:rgba(245,240,232,.55); border:1px solid rgba(245,240,232,.10); transition:color .35s var(--cos-ease),border-color .35s var(--cos-ease); }
.cos-product-card__cta:hover { color:var(--cos-cream); border-color:rgba(245,240,232,.28); }
