/* Shopping hierarchy, legible presentations and secondary contact channels. */
.contact-link{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;color:var(--green);border-radius:50%}
.contact-link svg{stroke-width:1.6}
.contact-link:hover{background:var(--sage)}
#store-view .allergen-note{display:inline;font-size:12px;line-height:1.6;color:#62685c;margin:0}
.allergen-ingredient{white-space:nowrap}
#store-view .pickup-overview{margin-top:14px}
#store-view .pickup-overview>span{font:600 20px/1.5 var(--sans);color:var(--green);letter-spacing:0}
#store-view .purchase-panel{margin-top:24px}
#store-view .store-pickup-day>.purchase-step{display:flex;align-items:center;gap:12px;font:600 24px/1.35 var(--sans);letter-spacing:0;text-transform:none;color:var(--green);margin:0 0 12px}
.step-number{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:30px;height:30px;border:1px solid var(--green);border-radius:50%;font:600 15px/1 var(--sans);color:var(--green)}
#store-view .section-label h2{display:flex;align-items:center;gap:12px;font:600 20px/1.4 var(--sans);letter-spacing:0}
#store-view .variant-name h3{font:500 18px/1.4 var(--sans)}
#store-view .variant-name>span{font:400 15px/1.6 var(--sans);color:#62685c}
#store-view .variant-price{font:500 18px/1.4 var(--sans)}
#store-view .variant .stepper{height:46px;gap:0}
#store-view .variant .stepper button{width:44px;height:44px;font-size:23px}
#store-view .variant .stepper output{width:26px;font-size:16px}
#store-view .order-cta{font-size:16px;gap:16px}
#store-view .order-cta>span:first-child{text-align:left}
#store-view .confirmation-note{font:400 13px/1.7 var(--sans)}
.allergen-note.checkout-allergens{font:500 15px/1.6 var(--sans);margin-top:22px;padding-top:16px;border-top:1px solid var(--line)}
#checkout-dialog .consent{font:400 15px/1.6 var(--sans);gap:12px}
#checkout-dialog .consent input{width:20px;height:20px;margin-top:3px}
#checkout-dialog .consent small{display:block;font-size:13px;line-height:1.6;margin-top:4px;color:var(--muted)}
#checkout-dialog #customer-phone-help{font:400 13px/1.6 var(--sans);color:#62685c}
#customer-phone-help a,.footer-privacy a{text-decoration:underline;text-underline-offset:3px}
.anytime-receipt{background:var(--cream);color:var(--dark);border:0;border-left:2px solid #a6b49c;padding:14px 16px;box-shadow:none;cursor:default}
#checkout-dialog #pickup-anytime-note{background:transparent;color:#62685c;border:0;border-left:2px solid var(--line);padding:6px 10px;margin-top:8px;box-shadow:none;cursor:default}
#checkout-dialog #pickup-anytime-note>strong{display:block;font:400 14px/1.5 var(--sans)}
#checkout-dialog .payment-section h3{font:600 16px/1.5 var(--sans);letter-spacing:0}
#checkout-dialog .payment-section .choice{font-size:17px;line-height:1.5;padding:10px 12px}
#checkout-dialog .payment-section .choice input{width:18px;height:18px;margin-top:4px}
#checkout-dialog .payment-section .choice small{font-size:14px;line-height:1.5;margin-top:3px}
#checkout-dialog .payment-section p.small{font-size:14px;line-height:1.6}
.store-footer{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:24px;max-width:1440px;margin:auto;padding:32px 4.4%;border-top:1px solid var(--line)}
.store-footer .footer-wordmark{font:400 24px/1.4 var(--serif);letter-spacing:2px}
.store-footer p{font:400 14px/1.7 var(--sans);letter-spacing:0;margin-top:5px;color:var(--muted)}
.store-footer small{display:block;font:400 12px/1.7 var(--sans);color:var(--muted);margin-top:12px}
.footer-privacy{flex:1 1 280px;max-width:380px}
.footer-privacy h2{font:600 15px/1.5 var(--sans);color:var(--green);letter-spacing:0}
.store-footer .footer-privacy p{font-size:13px;line-height:1.65}
.footer-uber-link{display:inline-flex;align-items:center;gap:12px;min-height:48px;color:var(--green);margin-top:8px}
.store-footer .footer-uber-link{font-size:14px}
.store-footer .footer-uber-link span{margin:0}
.footer-uber-link>span{text-decoration:underline;text-underline-offset:4px}
.footer-uber-link img{width:32px;height:32px}
.is-admin .store-footer{display:none}
@media(min-width:1000px){
  #store-view .photo-column{position:sticky;top:24px;align-self:start}
  #store-view .main-photo{height:min(705px,calc(100svh - 48px))}
}
@media(max-width:999px){#store-view .photo-column{position:static}}
@media(max-width:1100px){
  #store-view .variant{grid-template-columns:58px minmax(0,1fr) auto;gap:6px 10px}
}
@media(max-width:760px){
  .brand-header .brand{width:clamp(126px,38vw,174px);min-width:0}
  .brand-header .brand img{width:100%}
  .brand-header .header-actions{gap:0}
  .brand-header .bag{padding-left:4px}
  #store-view .purchase-panel{margin-top:16px}
  #store-view .store-pickup-day>.purchase-step{font-size:22px}
  #store-view .variant{grid-template-columns:58px minmax(0,1fr) auto;gap:6px 10px;padding:16px 0;min-height:120px}
  .store-footer{padding:26px 20px 32px;gap:22px}
  .store-footer p{order:initial;width:auto;font-size:14px}
}
@media(max-width:390px){
  #store-view .variant{grid-template-columns:50px minmax(0,1fr) auto;gap:6px 8px}
  #store-view .variant-photo,#store-view .variant>.size-marker{width:50px;height:76px}
}
@media(max-width:340px){
  #store-view .variant{grid-template-columns:50px minmax(0,1fr)}
  #store-view .variant-photo,#store-view .variant>.size-marker{grid-column:1;grid-row:1/4}
  #store-view .variant-name{grid-column:2;grid-row:1}
  #store-view .variant-price{grid-column:2;grid-row:2;justify-self:start}
  #store-view .variant>.stepper,#store-view .variant>.sold-out{grid-column:2;grid-row:3;justify-self:start}
  #store-view .section-label h2{font-size:19px}
}
