.gift-page{--gift-accent:var(--caramel);--gift-accent-hover:var(--caramel-hover);--gift-accent-2:var(--espresso);--gift-accent-tint:#c4883a1a}.gift-theme--holiday{--gift-accent:var(--holiday-cranberry);--gift-accent-hover:var(--holiday-cranberry-hover);--gift-accent-2:var(--holiday-pine);--gift-accent-tint:#a33a3a14}.gift-theme--valentines{--gift-accent:var(--valentines-rose);--gift-accent-hover:var(--valentines-rose-hover);--gift-accent-2:var(--valentines-wine);--gift-accent-tint:#b4475e14}.gift-theme--mothers-day{--gift-accent:var(--mothers-day-plum);--gift-accent-hover:var(--mothers-day-plum-hover);--gift-accent-2:var(--mothers-day-sage);--gift-accent-tint:#7a4e7e14}.gift-page{max-width:640px;padding:var(--space-md)0 calc(var(--space-2xl) + 80px);margin:0 auto}.gift-hero__media{aspect-ratio:4/3;margin:0 var(--space-lg);border-radius:var(--radius-lg);background:var(--cream);position:relative;overflow:hidden}.gift-hero__img{object-fit:cover;object-position:center 55%}.gift-hero{padding:var(--space-lg)var(--space-lg)0}.gift-hero__eyebrow{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--gift-accent);margin:0 0 var(--space-xs)}.gift-hero__title{font-family:var(--font-display);font-size:min(var(--text-4xl),7vw);font-weight:var(--font-normal);color:var(--espresso);margin:0 0 var(--space-sm);text-wrap:balance;letter-spacing:var(--tracking-tight);line-height:1.05}.gift-hero__lede{font-size:var(--text-base);color:var(--text-secondary);margin:0;line-height:1.5}.gift-flow{padding:var(--space-lg)var(--space-lg)0}.gift-step{padding:var(--space-lg)0;border-top:1px solid var(--border)}.gift-step:first-child{border-top:0;padding-top:0}.gift-step__title{align-items:center;gap:var(--space-sm);font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--font-normal);color:var(--espresso);margin:0 0 var(--space-md);line-height:1.2;display:flex}.gift-step__num{border-radius:var(--radius-full);width:26px;height:26px;font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--font-bold);color:var(--white);background:var(--gift-accent);flex:none;justify-content:center;align-items:center;line-height:1;display:inline-flex}.gift-tiles--mode{grid-template-columns:repeat(2,minmax(0,1fr))}.gift-field--spaced,.gift-fieldset--spaced,.gift-fields--address{margin-top:var(--space-md)}.gift-pick--flush{margin-top:0}.gift-pick__price{font-size:var(--text-xs);color:var(--text-secondary);font-variant-numeric:tabular-nums;margin-top:auto}.gift-pick__grid:last-child{margin-bottom:0}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.gift-fields{gap:var(--space-md);display:grid}.gift-field{flex-direction:column;gap:6px;display:flex}.gift-field label,.gift-fieldset legend{font-size:var(--text-xs);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--text-light);padding:0}.gift-optional{font-weight:var(--font-normal);color:var(--text-light);margin-left:4px}.gift-field input,.gift-textarea{border:1.5px solid var(--border);border-radius:var(--radius-sm);width:100%;min-height:48px;font-size:var(--text-base);color:var(--espresso);background:var(--white);transition:border-color var(--duration-fast)var(--ease-out),box-shadow var(--duration-fast)var(--ease-out);padding:12px 14px;font-family:inherit}.gift-field input:focus,.gift-textarea:focus{border-color:var(--espresso);box-shadow:var(--shadow-glow);outline:none}.gift-field--inline{margin-top:var(--space-md);max-width:240px}.gift-textarea{resize:vertical;line-height:1.5}.gift-fieldset{margin:0 0 var(--space-md);border:0;min-width:0;padding:0}.gift-fieldset:last-child{margin-bottom:0}.gift-fieldset legend{margin-bottom:var(--space-sm)}.gift-note{font-size:var(--text-sm);color:var(--text-secondary);margin:var(--space-sm)0 0;line-height:1.5}.gift-note--right{text-align:right;font-size:var(--text-xs);color:var(--text-light);margin-top:4px}.gift-callout{margin-top:var(--space-md);padding:var(--space-lg);background:var(--gift-note-green);border-radius:var(--radius-md)}.gift-callout__title{margin:0 0 var(--space-sm);font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--espresso);text-underline-offset:4px;text-decoration:underline;text-decoration-thickness:2px}.gift-callout__body{font-size:var(--text-base);color:var(--text-secondary);margin:0;line-height:1.6}.gift-callout__body strong{color:var(--espresso);font-weight:var(--font-semibold)}.gift-field.is-invalid input,.gift-field.is-invalid textarea{border-color:var(--danger)}.gift-field.is-invalid label{color:var(--danger)}.gift-field-error{font-size:var(--text-sm);color:var(--danger);margin:var(--space-xs)0 0}.gift-tile input,.gift-chip input,.gift-pick__bean input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.gift-tiles{gap:var(--space-sm);display:grid}.gift-tiles--sizes{grid-template-columns:repeat(3,minmax(0,1fr))}.gift-tiles--counts{grid-template-columns:repeat(2,minmax(0,1fr))}.gift-tile{text-align:center;min-height:60px;padding:var(--space-sm)var(--space-xs);border:2px solid var(--border);border-radius:var(--radius-md);background:var(--white);cursor:pointer;transition:border-color var(--duration-fast)var(--ease-out),background var(--duration-fast)var(--ease-out);flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex;position:relative}.gift-tile:hover{border-color:var(--text-light)}.gift-tile.is-selected{border-color:var(--espresso);background:var(--white)}.gift-tiles--mode .gift-tile.is-selected,.gift-tiles--counts .gift-tile.is-selected{background:var(--espresso)}.gift-tiles--mode .gift-tile.is-selected .gift-tile__main,.gift-tiles--counts .gift-tile.is-selected .gift-tile__main{color:var(--cream)}.gift-tiles--mode .gift-tile.is-selected .gift-tile__sub,.gift-tiles--counts .gift-tile.is-selected .gift-tile__sub{color:var(--cream);opacity:.75}.gift-tile:has(input:focus-visible):not(.is-selected){outline:2px solid var(--espresso);outline-offset:2px}.gift-tile__bag{justify-content:center;align-items:flex-end;height:64px;margin-bottom:2px;display:flex}.gift-tile__bag img,.gift-pick__img{object-fit:contain}.gift-tile__main{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--espresso);font-variant-numeric:tabular-nums;line-height:1.25}.gift-tile__sub{font-size:var(--text-xs);color:var(--text-secondary);font-variant-numeric:tabular-nums;line-height:1.3}.gift-chips{gap:var(--space-sm);flex-wrap:wrap;display:flex}.gift-chip{min-height:44px;padding:0 var(--space-md);border:2px solid var(--border);border-radius:var(--radius-full);background:var(--cream);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary);cursor:pointer;transition:background var(--duration-fast)var(--ease-out),border-color var(--duration-fast)var(--ease-out);align-items:center;display:inline-flex;position:relative}.gift-chip:hover{background:var(--latte);color:var(--espresso)}.gift-chip.is-selected{background:var(--espresso);border-color:var(--espresso);color:var(--cream)}.gift-chip:has(input:focus-visible){outline:2px solid var(--espresso);outline-offset:2px}.gift-pick{margin-top:var(--space-md)}.gift-pick__grid{gap:var(--space-sm);margin-bottom:var(--space-md);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.gift-pick__bean{padding:var(--space-sm)var(--space-xs);border:2px solid var(--border);border-radius:var(--radius-md);background:var(--white);cursor:pointer;text-align:center;flex-direction:column;align-items:center;gap:6px;min-height:44px;display:flex;position:relative}.gift-pick__bean:hover{border-color:var(--text-light)}.gift-pick__bean.is-selected{border-color:var(--espresso);background:var(--white)}.gift-pick__bean:has(input:focus-visible):not(.is-selected){outline:2px solid var(--espresso);outline-offset:2px}.gift-pick__img{object-fit:contain;width:72px;height:72px;display:block}.gift-pick__name{font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--espresso);line-height:1.3}.gift-summary{background:var(--cream);border-radius:var(--radius-md);padding:var(--space-md);margin-bottom:var(--space-md)}.gift-summary__row{justify-content:space-between;gap:var(--space-sm);font-size:var(--text-sm);color:var(--espresso);padding:3px 0;display:flex}.gift-summary__row--muted{color:var(--text-secondary)}.gift-summary__row--email span:last-child{font-weight:var(--font-bold);text-align:right;word-break:break-all}.gift-summary__row--total{border-top:1px solid var(--border);margin-top:var(--space-sm);padding-top:var(--space-sm);font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--font-normal);color:var(--roast);font-variant-numeric:tabular-nums}.gift-summary .gift-note{font-size:var(--text-xs)}.gift-error{margin-top:var(--space-md)}.gift-pay{width:100%;min-height:52px;margin-top:var(--space-md);border-radius:var(--radius-full);background:var(--espresso);color:var(--white);font-family:inherit;font-size:var(--text-sm);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;transition:filter var(--duration-fast)var(--ease-out),box-shadow var(--duration-fast)var(--ease-out);border:none}.gift-pay:hover:not(:disabled){filter:brightness(.85);box-shadow:var(--shadow-lg)}.gift-pay:disabled{opacity:.6;cursor:not-allowed}.gift-pay:focus-visible{outline:3px solid var(--caramel);outline-offset:2px}.gift-bar{z-index:40;justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-sm)var(--space-lg)calc(var(--space-sm) + env(safe-area-inset-bottom));background:var(--espresso);transition:transform var(--duration-normal)var(--ease-out);display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #2c181040}.gift-bar.is-hidden{transform:translateY(110%)}.gift-bar__total{flex-direction:column;min-width:0;display:flex}.gift-bar__label{font-size:var(--text-xs);color:var(--latte);opacity:.8}.gift-bar__amount{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--cream);font-variant-numeric:tabular-nums;line-height:1.1}.gift-bar__btn{min-height:48px;padding:0 var(--space-lg);border-radius:var(--radius-full);background:var(--caramel);color:var(--white);font-family:inherit;font-size:var(--text-sm);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;white-space:nowrap;border:none}.gift-bar__btn:hover{background:var(--caramel-hover)}.gift-bar__btn:focus-visible{outline:3px solid var(--cream);outline-offset:2px}.gift-sent{margin:var(--space-xl)var(--space-lg)var(--space-2xl);padding:var(--space-xl)var(--space-lg);text-align:center;background:var(--white);border-radius:var(--radius-lg);border-top:4px solid var(--gift-accent);box-shadow:var(--shadow-md)}.gift-sent__tag{color:var(--gift-accent);border-radius:var(--radius-full);background:var(--gift-accent-tint);width:88px;height:88px;margin-bottom:var(--space-md);justify-content:center;align-items:center;display:inline-flex}.gift-sent__title{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--font-normal);color:var(--espresso);margin:0 0 var(--space-sm);line-height:1.1}.gift-sent__lede{font-size:var(--text-base);color:var(--text-secondary);margin:0 auto var(--space-lg);max-width:32ch;line-height:1.5}.gift-sent__details{text-align:left;margin:0 0 var(--space-lg);border-top:1px dashed var(--border)}.gift-sent__details div{justify-content:space-between;gap:var(--space-md);padding:var(--space-sm)0;border-bottom:1px dashed var(--border);display:flex}.gift-sent__details dt{font-size:var(--text-sm);color:var(--text-secondary)}.gift-sent__details dd{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--espresso);text-align:right;flex-direction:column;margin:0;display:flex}.gift-sent__details dd span{font-weight:var(--font-normal);color:var(--text-light);font-size:var(--text-xs)}.gift-sent__note{font-size:var(--text-sm);color:var(--text-secondary);margin:0 0 var(--space-lg)}.gift-sent__cta{min-height:48px;padding:0 var(--space-xl);border-radius:var(--radius-full);background:var(--espresso);color:var(--white);font-size:var(--text-sm);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.04em;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.gift-sent__cta:hover{filter:brightness(.85)}@media (prefers-reduced-motion:reduce){.gift-bar,.gift-step__num,.gift-tile,.gift-chip{transition:none}}@media (min-width:720px){.gift-page{max-width:560px;padding-top:20px;padding-bottom:var(--space-2xl)}.gift-hero__media{aspect-ratio:auto;height:300px}.gift-hero{padding-top:var(--space-lg)}.gift-hero__title{font-size:var(--text-4xl)}.gift-fields{grid-template-columns:1fr 1fr}.gift-fields--address .gift-field:first-child{grid-column:1/-1}.gift-tiles--counts{grid-template-columns:repeat(4,minmax(0,1fr))}.gift-choice{grid-template-columns:1fr 1fr}.gift-pick__grid{grid-template-columns:repeat(4,minmax(0,1fr))}.gift-bar{display:none}}.gift-page--redeem{max-width:1100px;padding:96px var(--space-lg)var(--space-2xl)}.gift-page--redeem .checkout{padding:var(--space-lg)0 var(--space-2xl)}.gift-page--redeem .gift-hero{min-height:0;margin:0 0 var(--space-xl);background:0 0;border-radius:0;max-width:640px;padding:0;display:block;overflow:visible}.gift-page--redeem .gift-hero__eyebrow{color:var(--caramel);background:0 0;padding:0}.gift-page--redeem .gift-hero__lede{color:var(--text-secondary);opacity:1;font-size:var(--text-base)}.gift-page--redeem .gift-summary{background:var(--white);border-radius:var(--radius-lg);padding:var(--space-lg);margin:0;position:sticky;top:96px}.gift-page--redeem .gift-summary__row--total{font-family:inherit;font-size:var(--text-lg);font-weight:var(--font-bold)}.gift-pills{gap:var(--space-sm);flex-wrap:wrap;align-items:center;display:flex}.gift-pills .product-pill label{text-transform:none;letter-spacing:0;font-size:var(--text-sm);margin-bottom:0}.gift-redeem__from{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--espresso);margin:0 0 var(--space-sm);line-height:1.3}.gift-redeem__quote{padding:var(--space-sm)var(--space-md);margin:var(--space-md)0 0;background:var(--cream);border-radius:var(--radius-sm);color:var(--espresso);white-space:pre-line;font-style:italic}.gift-beans{gap:var(--space-sm);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));display:grid}.gift-bean{text-align:left;padding:var(--space-sm);border:2px solid var(--border);border-radius:var(--radius-md);background:var(--white);cursor:pointer;transition:border-color var(--duration-fast)var(--ease-out);font-family:inherit;position:relative}.gift-bean:hover{border-color:var(--caramel)}.gift-bean.is-selected{border-color:var(--espresso);background:var(--cream)}.gift-bean__img{aspect-ratio:1;object-fit:cover;border-radius:var(--radius-sm);background:var(--cream);width:100%;margin-bottom:var(--space-sm);display:block}.gift-bean__name{font-size:var(--text-base);font-weight:var(--font-bold);color:var(--espresso)}.gift-bean__desc{font-size:var(--text-sm);color:var(--text-secondary);margin-top:4px;line-height:1.5}.gift-page--redeem .gift-note{font-size:var(--text-sm);color:var(--text-secondary);margin-top:var(--space-xs);line-height:1.5}.gift-page--redeem .gift-note--lead{margin:0 0 var(--space-md);color:var(--espresso)}.gift-page--redeem .gift-summary__row{font-size:var(--text-base);padding:6px 0}.gift-page--redeem .gift-summary__row span:first-child{color:var(--text-secondary)}.gift-page--redeem .gift-summary__row span:last-child{font-weight:var(--font-semibold);text-align:right}.gift-picked{gap:var(--space-xl);grid-template-columns:160px 1fr;align-items:center;display:grid}.gift-picked__img{object-fit:contain;object-position:center;width:100%;height:220px;display:block}.gift-picked__by{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--caramel);margin:0 0 4px}.gift-picked__name{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--espresso);margin:0 0 var(--space-xs);line-height:1.2}.gift-picked__desc{font-size:var(--text-base);color:var(--espresso);margin:0 0 var(--space-md);line-height:1.6}.gift-picked__ask{font-size:var(--text-sm);color:var(--text-secondary);margin:0 0 var(--space-sm)}.gift-picked__change{font:inherit;font-size:var(--text-base);font-weight:var(--font-bold);color:var(--cream);background:var(--espresso);border:2px solid var(--espresso);border-radius:var(--radius-full);cursor:pointer;min-height:48px;box-shadow:var(--shadow-md);transition:filter var(--duration-fast)var(--ease-out),box-shadow var(--duration-fast)var(--ease-out);padding:0 28px}.gift-picked__change:hover{filter:brightness(.85);box-shadow:var(--shadow-lg)}.gift-picked__change:focus-visible,.gift-link-btn:focus-visible{outline:2px solid var(--caramel);outline-offset:2px}.gift-card-head{justify-content:space-between;align-items:baseline;gap:var(--space-md);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.gift-card-head .checkout__card-title{margin:0}.gift-link-btn{font:inherit;color:var(--espresso);font-weight:var(--font-semibold);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}@media (max-width:560px){.gift-picked{gap:var(--space-md);grid-template-columns:1fr}.gift-picked__img{width:auto;max-width:100%;height:200px;margin:0 auto}}.gift-page--redeem .gift-textarea{min-height:0}.gift-page--redeem .gift-redeem__from{font-size:min(var(--text-3xl),7vw);font-weight:var(--font-normal);letter-spacing:var(--tracking-tight);text-wrap:balance;line-height:1.1}.gift-page--redeem .checkout__card-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--font-normal);color:var(--espresso);margin:0 0 var(--space-md);line-height:1.2}.gift-page--redeem .checkout__field label{font-size:var(--text-xs);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);color:var(--text-light)}.gift-page--redeem .checkout__field input{border:1.5px solid var(--border);min-height:48px;font-size:var(--text-base);color:var(--espresso);padding:12px 14px}.gift-page--redeem .checkout__field input:focus{border-color:var(--espresso);box-shadow:var(--shadow-glow)}.gift-page--redeem .checkout__field.is-invalid input{border-color:var(--danger)}.gift-page--redeem .gift-pills .product-pill label{min-height:44px;padding:0 var(--space-md)}.gift-page--redeem .checkout__radio-option{border:2px solid var(--border);background:var(--white);padding:var(--space-sm)var(--space-md)}.gift-page--redeem .checkout__radio-option.is-selected{border-color:var(--espresso);background:var(--espresso)}.gift-page--redeem .checkout__radio-option-label{font-size:var(--text-sm);font-weight:var(--font-semibold)}.gift-page--redeem .checkout__radio-option.is-selected .checkout__radio-option-label,.gift-page--redeem .checkout__radio-option.is-selected .checkout__radio-option-desc{color:var(--cream)}.gift-page--redeem .gift-pay{margin-top:0}.gift-page--redeem .gift-beans{align-items:start}@supports (grid-template-rows:subgrid){.gift-page--redeem .gift-bean{grid-template-rows:subgrid;grid-row:span 3;align-content:start;row-gap:0;display:grid}}.gift-page--redeem .gift-bean__img{aspect-ratio:auto;object-fit:contain;object-position:center bottom;height:150px;margin-bottom:var(--space-sm);background:0 0;border-radius:0}.gift-page--redeem .gift-bean,.gift-page--redeem .gift-bean.is-selected{background:var(--white)}.gift-page--redeem .gift-bean__desc:empty{display:block}@media (max-width:900px){.gift-page--redeem{padding:80px var(--space-md)var(--space-2xl)}.gift-page--redeem .checkout{grid-template-columns:1fr}.gift-page--redeem .checkout__summary{order:-1}.gift-page--redeem .gift-summary{position:static}}.gift-done{max-width:720px;margin:var(--space-lg)0 var(--space-2xl);padding:var(--space-xl)}.gift-done__title{font-family:var(--font-display);font-size:min(var(--text-3xl),8vw);font-weight:var(--font-normal);color:var(--espresso);margin:0 0 var(--space-md);line-height:1.1}.gift-done__lead{font-size:var(--text-lg);color:var(--espresso);margin:0 0 var(--space-sm);line-height:1.5}.gift-done__text{font-size:var(--text-base);color:var(--text-secondary);margin:0 0 var(--space-lg);line-height:1.6}.gift-done__actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.gift-done__btn{width:auto;min-height:52px;padding:0 var(--space-xl);justify-content:center;align-items:center;margin:0;text-decoration:none;display:inline-flex}.gift-done__btn--outline{border:2px solid var(--espresso);border-radius:var(--radius-full);color:var(--espresso);background:var(--white);font-size:var(--text-sm);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.04em}.gift-done__btn--outline:hover{background:var(--espresso);color:var(--cream)}@media (max-width:560px){.gift-done{padding:var(--space-lg)}.gift-done__btn{width:100%}}.gift-account-email{word-break:break-all}.gift-page--redeem .gift-note--switch{margin:0 0 var(--space-md)}.gift-page input[type=date]{appearance:none;box-sizing:border-box;text-align:left;background:var(--white);width:100%;min-width:0;max-width:100%;min-height:48px;color:var(--espresso);display:block}.gift-page input[type=date]::-webkit-date-and-time-value{text-align:left;margin:0}.gift-page--redeem .checkout__field:has(input[type=date]){max-width:280px}.gift-page--redeem .gift-pills+.checkout__field{margin-top:var(--space-md)}.gift-summary__row--email{flex-direction:column;align-items:flex-start;gap:2px}.gift-summary__row--email span:last-child{text-align:left;word-break:normal;overflow-wrap:anywhere}.gift-summary__pending{font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-secondary)}.gift-note a{color:var(--espresso);font-weight:var(--font-semibold);text-underline-offset:2px;text-decoration:underline}.gift-page--redeem .checkout{row-gap:var(--space-lg);grid-template-areas:"form summary""submit summary"}.gift-page--redeem .checkout__form{grid-area:form}.gift-page--redeem .checkout__summary{grid-area:summary}.gift-page--redeem .gift-submit{gap:var(--space-md);flex-direction:column;grid-area:submit;display:flex}@media (max-width:900px){.gift-page--redeem .checkout{grid-template-areas:"form""summary""submit"}.gift-page--redeem .checkout__summary{order:0}}
