.coffee-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(255,255,255,.12),transparent 60%);opacity:.6;transition:opacity .4s ease}.coffee-card:hover{transform:translateY(-6px) scale(1.01);box-shadow:0 30px 60px rgba(0,0,0,.45)}.coffee-card:hover::before{opacity:.9}.coffee-left{flex:1.2}.coffee-left h3{font-size:34px;margin-bottom:14px;text-transform:uppercase}.tag-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.tag{background:var(--tag-bg);color:var(--tag-text);padding:5px 12px;border-radius:10px;font-weight:500;font-size:12px}.bean-img{width:16px;height:22px;opacity:.25;filter:grayscale(100%)}.roast[data-roast=medium-dark] .bean-img:nth-child(-n+5){opacity:1;filter:none}.bar-container{margin-bottom:14px}.bar-container:first-of-type{margin-top:12px}.bar-label{font-size:12px}.track{height:6px;background:rgba(255,255,255,.12);border-radius:10px}.fill{height:100%;border-radius:10px;background:var(--bar-gradient);box-shadow:inset -1px 0 0 rgba(0,0,0,.25)}.w90{width:90%}.w85{width:85%}.w80{width:80%}.w75{width:75%}.w70{width:70%}.w60{width:60%}.info-box{display:flex;flex-direction:column;gap:16px;padding:14px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}.info-item{display:grid;grid-template-columns:100px 1fr;gap:6px 10px}.info-label{color:var(--accent);font-size:14px;font-weight:600}.info-value{color:var(--text-main);font-weight:600}.info-desc{color:var(--text-soft);font-size:12px;grid-column:2}.coffee-card.cappuccino{--bg-gradient:linear-gradient(135deg,#2e4a3f,#5f8f7a);.blend-box{display:flex;flex-direction:column;gap:12px}.blend-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:14px;background:rgba(255,255,255,.1);backdrop-filter:blur(4px)}.blend-value{font-weight:600;min-width:48px}.blend-label{opacity:.9}@media (max-width:768px){.coffee-card{backdrop-filter:none;-webkit-backdrop-filter:none}.coffee-card::before{display:none}.coffee-card{padding:18px;flex-direction:column}.coffee-left h3{font-size:26px}.bean-img{width:14px;height:20px}.notes{font-size:12px}.track{height:5px}}h2{font-family:Georgia,serif;font-size:13px;letter-spacing:2px;text-transform:uppercase;color:#b87b47;margin:40px 0 10px}.product-wrapper{max-width:420px;margin-bottom:10px;background:#fdf6f0;border-radius:20px;padding:10px}.zf-product-carousel{position:relative;width:100%}.zf-slide{display:none;animation:fadeIn .25s ease;box-sizing:border-box}.zf-slide.active{display:block}.zf-carousel-dots{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:20px}.zf-dot{width:10px;height:10px;border-radius:50%;background:#cfc5bb;cursor:pointer;transition:all .25s ease}.zf-dot.active{width:28px;border-radius:30px;background:#ff6f43}.zf-dot:hover{background:#ff6f43}.zf-info-card{background:linear-gradient(135deg,rgba(196,101,37,.08),rgba(138,58,0,.03));border:1px solid rgba(196,101,37,.12);border-radius:16px;padding:18px 20px;transition:all .25s ease;margin:8px}.zf-info-card strong{display:block;color:#7a3f1f;font-size:18px;margin-bottom:10px;font-weight:700}.zf-info-card:hover{transform:translateY(-2px);background:linear-gradient(135deg,rgba(196,101,37,.12),rgba(138,58,0,.05))}.zf-slide p{line-height:1.8;margin-bottom:18px}.zf-slide ul{margin:15px 0;padding-left:22px}.zf-slide li{margin-bottom:6px;line-height:1.7}.zf-slide .story-title,.story-title{font-size:15px;letter-spacing:1px;text-transform:uppercase;color:#b87b47;margin-bottom:20px}.zf-weight{background:linear-gradient(135deg,rgba(196,101,37,.08),rgba(138,58,0,.03));border:1px solid rgba(196,101,37,.12);border-radius:16px;padding:18px 20px;font-weight:700;margin:8px}.zf-spec-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width:768px){.zf-product-carousel{margin-top:10px}.zf-slide{padding:0}.zf-info-card{padding:14px 16px;margin:6px 0;border-radius:14px}.zf-info-card strong{font-size:16px;margin-bottom:6px}.zf-slide ul{margin:8px 0;padding-left:18px}.zf-slide li{margin-bottom:4px;line-height:1.5}.zf-weight{padding:14px 16px;margin-top:6px}.zf-spec-grid{grid-template-columns:1fr;gap:8px}.zf-carousel-dots{margin-top:12px;margin-bottom:8px}}}