.coffee-card{display:flex;flex-direction:column}
.coffee-card .card-photo{flex-shrink:0}
.coffee-card .card-copy{display:flex;flex-direction:column;flex:1}
.coffee-card .card-meta{margin-bottom:14px}
.card-quick-add{width:100%;min-height:44px;margin-top:auto;justify-content:space-between;background:transparent;border-color:var(--line);font-size:12px}
.card-quick-add:hover{border-color:var(--ink);background:var(--pink-soft)}
.shopping-field{display:grid;gap:7px;font-size:13px;min-width:0}
.shopping-field select{width:100%;min-height:46px;font-size:16px;padding:10px 34px 10px 12px;background-color:var(--paper);border:1px solid #adb1b7;border-radius:3px}
.shopping-size{font-size:13px;padding-block:5px}
html.quick-shop-open{overflow:hidden}
dialog.quick-shop{position:fixed;inset:0;margin:auto;padding:0;border:0;border-radius:6px;width:580px;max-width:calc(100% - 32px);height:fit-content;max-height:calc(100dvh - 48px);color:var(--ink);background:var(--paper);overflow:hidden}
.quick-shop[open]{display:flex;flex-direction:column}
.quick-shop::backdrop{background:#0006}
.quick-shop__header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;border-bottom:1px solid var(--line);flex:none}
.quick-shop__header h2{font-size:18px;line-height:1.3}
.quick-shop__header .icon-button{height:44px;width:44px;flex:none}
.quick-shop__body{padding:24px;overflow:auto;overscroll-behavior:contain;min-height:0}
.quick-shop__loading{font-size:14px;min-height:120px;padding:20px 0}
.quick-shop__product{display:grid;grid-template-columns:160px minmax(0,1fr);gap:22px;align-items:center;margin-bottom:22px}
.quick-shop__product>img{width:100%;aspect-ratio:1;object-fit:contain;background:#eee7e3}
.quick-shop__product h3{font-size:27px;line-height:1.2;margin:7px 0;overflow-wrap:break-word}
.quick-shop__notes{font-size:13px;line-height:1.5;color:var(--muted)}
.quick-shop__price{font-size:20px;font-weight:500;margin-top:10px}
.quick-shop__form{display:grid;gap:16px}
.quick-shop__form p{margin:0}
.quick-shop__bottom{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:stretch}
.quick-shop__bottom .quantity-control{height:48px}
.quick-shop__bottom .button{min-height:48px;padding-inline:12px;gap:8px}
.quick-shop__terms{font-size:11px;line-height:1.6;color:var(--muted)}
.quick-shop__form .text-link{justify-self:start;font-size:12px}
.tasting-band{border-block:1px solid var(--line);background:var(--green-soft);margin-block:44px}
.tasting-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:54px;align-items:center;padding-block:42px}
.tasting-copy h2{font-size:30px;line-height:1.15;margin:12px 0 18px}
.tasting-copy>p:not(.eyebrow){font-size:14px;line-height:1.65}
.tasting-price{display:flex;gap:14px;align-items:center;margin-top:18px}
.tasting-price strong{font-size:25px;font-weight:500;white-space:nowrap}
.tasting-price span{font-size:12px;color:var(--muted);max-width:170px}
.tasting-copy .tasting-delivery{font-size:11px!important;color:var(--muted);margin-top:6px}
.tasting-copy form{margin-top:20px;display:grid;gap:12px;max-width:380px}
.tasting-coffees{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-self:center}
.tasting-coffees article{min-width:0}
.tasting-coffees a{text-decoration:none}
.tasting-coffees img{width:100%;aspect-ratio:1;object-fit:contain;background:#eee7e3}
.tasting-coffees h3{font-size:17px;line-height:1.3;margin:13px 0 5px}
.tasting-coffees p{font-size:11px;line-height:1.5;color:var(--muted);margin:5px 0 0}
.bag-compact{padding-top:18px}
.bag-compact__heading{display:flex;justify-content:space-between;align-items:center;gap:10px}
.bag-compact__heading h2{font-size:17px;line-height:1.3}
.bag-compact__intro{font-size:11px;color:var(--muted);margin:0 0 6px}
.bag-compact__offer{display:grid;grid-template-columns:64px minmax(0,1fr);gap:8px 12px;padding:15px 0;border-bottom:1px solid var(--line);align-items:start}
.bag-compact__photo{grid-row:1 / span 2}
.bag-compact__photo img{width:64px;height:64px;object-fit:contain;background:#eee7e3}
.bag-compact__title{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.bag-compact__title h3{font-size:15px;line-height:1.3}
.bag-compact__title a{text-decoration:none}
.bag-compact__title strong{font-size:14px;font-weight:500;white-space:nowrap}
.bag-compact__notes{font-size:11px;color:var(--muted);line-height:1.4;margin-top:5px}
.bag-compact__controls{display:grid;grid-template-columns:minmax(0,1fr) 66px;gap:8px;grid-column:2}
.bag-compact__controls select{min-width:0;width:100%;height:44px;font-size:14px;padding:8px 26px 8px 8px;border:1px solid #adb1b7;background-color:var(--paper);border-radius:3px}
.bag-compact__controls .button{min-height:44px;padding:8px;gap:0;font-size:12px}
.bag-compact__error{font-size:12px;color:#a31632;line-height:1.5;margin-block:10px}
.bag-pack{padding-top:18px}
.bag-pack__intro{font-size:12px;line-height:1.6;color:var(--muted);margin:4px 0 10px}
.bag-pack__coffees{list-style:none;padding:0;margin:0 0 16px}
.bag-pack__coffees li{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}
.bag-pack__coffees img{width:48px;height:48px;object-fit:contain;background:#eee7e3}
.bag-pack__coffees a{font-size:14px;line-height:1.4;text-decoration:none}
.bag-pack__coffees div>span{display:block;font-size:11px;line-height:1.5;color:var(--muted)}
.bag-pack__coffees strong{font-size:14px;font-weight:500;white-space:nowrap}
.bag-pack>.button{width:100%;justify-content:space-between;margin-top:12px;min-height:46px}
.bag-pack__small{font-size:11px;line-height:1.5;color:var(--muted);margin-top:10px}
.addon-preview{padding-block:42px}
.addon-preview__notice{font-size:12px;background:var(--pink-soft);border-left:3px solid var(--pink);padding:14px;margin-bottom:28px}
.addon-preview h1{font-size:36px;text-transform:none;line-height:1.15;margin:12px 0}
.addon-preview__intro{max-width:650px;color:var(--muted);margin-bottom:24px}
.addon-preview__grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:860px}
.addon-preview__offer{display:grid;grid-template-columns:110px minmax(0,1fr);gap:16px;border-top:1px solid var(--line);padding-block:24px}
.addon-preview__offer img{width:110px;aspect-ratio:1;object-fit:contain;background:#eee7e3}
.addon-preview__offer h2{font-size:21px}
.addon-preview__offer p{font-size:13px;margin-block:8px;color:var(--muted)}
.addon-preview__offer form{grid-column:1 / -1;display:grid;gap:12px}
.addon-preview__offer output{font-size:13px;color:var(--green);line-height:1.5}
@media(max-width:860px){.tasting-layout{gap:28px;grid-template-columns:1fr 1.15fr}.tasting-coffees{gap:8px}.tasting-copy h2{font-size:26px}.tasting-coffees h3{font-size:15px}}
@media(max-width:600px){dialog.quick-shop{position:fixed;inset:auto 0 0;margin:0;width:100%;max-width:100%;max-height:calc(100dvh - 12px);border-radius:8px 8px 0 0}.quick-shop__header{padding:8px 18px}.quick-shop__body{padding:18px 18px max(18px,env(safe-area-inset-bottom))}.quick-shop__product{grid-template-columns:86px minmax(0,1fr);gap:14px;margin-bottom:18px}.quick-shop__product h3{font-size:22px}.quick-shop__notes{font-size:12px}.quick-shop__price{font-size:18px;margin-top:5px}.quick-shop__form{gap:12px}.quick-shop__bottom{grid-template-columns:110px minmax(0,1fr);gap:10px}.quick-shop__bottom .button{font-size:12px}.tasting-layout{display:flex;flex-direction:column;align-items:stretch;gap:24px;padding-block:30px}.tasting-coffees{order:-1;gap:10px}.tasting-coffees h3{font-size:14px}.tasting-copy h2{font-size:27px}.tasting-copy form{max-width:none}.tasting-band{margin-block:32px}.bag-compact__controls select{font-size:16px}.addon-preview__grid{grid-template-columns:1fr}.addon-preview h1{font-size:30px}}
@media(max-width:359px){.bag-compact__offer{grid-template-columns:48px minmax(0,1fr);gap:8px}.bag-compact__photo img{width:48px;height:48px}.bag-compact__controls{grid-column:1 / -1}.quick-shop__bottom{grid-template-columns:100px minmax(0,1fr)}.quick-shop__bottom .quantity-control{grid-template-columns:30px 38px 30px}.quick-shop__product h3{font-size:20px}}
