/* El Sazón: charcoal, warm orange and golden points, with clear status colors. */
#memberOffers .reward-checkpoint{border-color:#ddc3a3;background:#fffaf2;box-shadow:0 5px 19px #4b2b1005}
#memberOffers .reward-checkpoint>header{padding:18px;margin:-20px -20px 17px;border-radius:19px 19px 0 0;background:linear-gradient(115deg,#201b16,#38281b);border-bottom:3px solid #ed742f}
#memberOffers .reward-checkpoint>header h3{color:#fff6e8}
#memberOffers .reward-checkpoint>header p{color:#e1c7ac}
#memberOffers .reward-checkpoint .reward-tier-cost{background:#ffc36b;color:#4d290e;border-color:#ffd99a;box-shadow:inset 0 1px #fff8}
#memberOffers .reward-checkpoint .reward-tier-cost small{color:#613711}
#memberOffers .reward-checkpoint .reward-tier-state{color:#f2ddc0;background:#ffffff13;border:1px solid #cba46b44}
#memberOffers .reward-checkpoint .reward-tier-state.is-reached{color:#202a17;background:#f4cc69;border-color:#f4cc69}
#memberOffers .reward-checkpoint .member-offer{border-radius:14px;border-color:#e9d7bf}
#memberOffers .reward-checkpoint .reward-swipe-hint{color:#965024}
.home-wallet-balance{display:flex;align-items:center;gap:14px;margin:0 0 15px}.home-wallet-balance .wallet-icon{margin:0;flex-shrink:0;width:45px;height:45px;background:#ffc65b;color:#3a230d}
.home-wallet-balance>div{min-width:0}.home-wallet-balance p{margin:0 0 4px!important;font-size:8px!important;letter-spacing:1.5px;font-weight:750;color:#e9c68f!important}
#rewardWallet .home-wallet-balance h3{font:800 38px/1 system-ui,sans-serif;letter-spacing:-1px;margin:0;color:#fff5e5}#rewardWallet .home-wallet-balance h3 small{font:500 12px/1.5 system-ui,sans-serif;letter-spacing:0;color:#e7d6bf}
#rewardWallet .home-wallet-note{margin:0 0 16px;font-size:12px;line-height:1.7;color:#e5cfb6}
.home-wallet-goals{display:grid;gap:8px;margin:0 0 17px}.home-wallet-goals>a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;border:1px solid #d9b38433;border-radius:11px;background:#ffffff06;text-decoration:none;color:#ffe3b3}.home-wallet-goals strong{font:800 19px/1 system-ui,sans-serif;white-space:nowrap}.home-wallet-goals strong small{font-size:10px;font-weight:600;color:#d8bea0}.home-wallet-goals span{font-size:10px;line-height:1.5;text-align:right;color:#dec7aa}.home-wallet-goals .is-reached{border-color:#e7b85c66;background:#e7b85c0e}
.home-wallet-link{display:flex;justify-content:space-between;align-items:center;gap:15px;min-height:44px;font-size:12px;font-weight:750;color:#ffc384;text-decoration:none;border-top:1px solid #d0ac7c30;padding-top:12px}
#rewards.rewards-section{gap:26px}#rewards>div:not(#rewardWallet){min-width:0}#rewardSummary{font-size:14px;line-height:1.7;margin-bottom:20px}#rewards #rewardAccount{min-height:48px;font-size:13px}#rewards #rewardWallet{background:linear-gradient(130deg,#ffffff08,#d28b2c0a);border:1px solid #c59b6038;padding:25px}
#hours.hours-section{gap:22px;padding:32px 0 40px;align-items:stretch}
.contact-card,.hours-card{border:1px solid #e3cfb5;border-radius:22px;padding:28px;background:#fffaf3;box-shadow:0 5px 20px #44291304}
.contact-card{position:relative;background:linear-gradient(135deg,#28211b,#3b291a);color:#fff2df;border-color:#6b4524;display:flex;align-items:flex-start;flex-direction:column}
#hours .contact-card .eyebrow{color:#ffc266}.contact-card .contact-location{display:grid;place-items:center;width:43px;height:43px;font-size:21px;color:#ffbc6c;background:#ffffff09;border:1px solid #d9ab6c44;border-radius:13px;margin-bottom:23px}
#hours .contact-card h2{font-size:31px;margin-bottom:17px;color:#fff5e7}.contact-card>p:not(.eyebrow){font-size:14px;line-height:1.8;color:#e1c9ad;margin-bottom:19px}.contact-card .contact-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:auto}#hours .contact-card a{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:12px;min-height:44px;border-radius:11px;padding:10px 13px;text-decoration:none;border:1px solid #ffffff25;color:#ffd296;background:#ffffff08}#hours .contact-card .contact-call{background:#ed742f;color:#22180f;border-color:#ed742f}
.hours-card>header{display:flex;justify-content:space-between;align-items:start;gap:14px;border-bottom:1px solid #e6d4bb;padding-bottom:18px;margin-bottom:8px}.hours-card .eyebrow{font-size:8px;margin:0 0 6px}.hours-card h3{font:750 23px/1.3 Georgia,serif;margin:0}.hours-now{padding:6px 9px;border-radius:20px;white-space:nowrap;background:#e5f1e6;color:#27623b;font-size:10px;font-weight:700}.hours-now.is-closed{background:#eee2d3;color:#74583d}
#hours .hours-card li{gap:12px;padding:12px 10px;border-bottom:1px solid #eee0cd;font-size:12px;border-radius:7px}#hours .hours-card li:last-child{border:0}#hours .hours-card li>span{display:flex;align-items:center;gap:7px;flex-wrap:wrap}#hours .hours-card li strong{font-size:12px;white-space:nowrap}#hours .hours-card li.is-today{background:#fff0d5;border-bottom-color:transparent;color:#6e360d}#hours .hours-card li.is-today small{font-size:8px;border:1px solid #e5b979;border-radius:5px;padding:1px 4px;color:#8b4618}#hours .hours-card li.is-closed strong{color:#8a7563}
/* Real brand artwork for missing or failed product photos, shared by both layouts. */
.product-placeholder{isolation:isolate;gap:8px;background:radial-gradient(ellipse at 50% 48%,#fffdf8 0,#fff3dc 52%,#f3e8d7 100%)}
.product-placeholder>span{display:none}
.product-placeholder:before{content:"";width:86px;height:106px;max-height:74%;max-width:65%;background:url('brand-placeholder.png?v=1.0.0') center/contain no-repeat;filter:drop-shadow(0 5px 5px #68451d18);transform:rotate(-3deg);transition:transform .22s ease}
.product-placeholder:after{content:"";position:absolute;width:118px;height:118px;max-height:88%;aspect-ratio:1;border:1px solid #d6ac6b36;border-radius:50%;background:#fffaf233;z-index:-1;box-shadow:0 0 0 10px #e6b8620b}
.product-placeholder small{font:650 8px/1.3 system-ui,sans-serif;letter-spacing:1.3px;color:#8b6133}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.product-card:hover .product-placeholder:before{transform:rotate(2deg) translateY(-2px)}}
.nav-scroll-anchor{display:block;height:0;pointer-events:none}
/* Desktop stays spacious before scrolling and becomes a low-profile toolbar
   when pinned. Mobile/tablet navigation and touch targets are unchanged. */
@media(min-width:1000px){
 .main-nav{gap:5px;padding:6px 16px;background:#fffdf9f5}
 .main-nav a,.main-nav button{min-height:44px;padding:8px 17px;gap:8px;font-size:13px;border-radius:11px}
 .main-nav .nav-icon,.main-nav .cart-symbol,.main-nav .nav-checkout svg{width:22px;height:22px}
 .main-nav b{font-size:10px;padding:1px 6px;border-radius:7px}
 .main-nav .is-active{box-shadow:inset 0 -2px var(--accent)}
 .compact-navigation .main-nav{padding-block:3px;box-shadow:0 3px 12px #36220b08}
 .compact-navigation .main-nav a,.compact-navigation .main-nav button{padding-inline:15px}
 /* Layout 1: retain search, category selector and chips without the tall gaps. */
 body:not([data-menu-layout=sections]) .menu-tools{padding-top:10px;padding-bottom:0}
 body:not([data-menu-layout=sections]) .menu-filters{grid-template-columns:minmax(0,1fr) 220px;gap:14px}
 body:not([data-menu-layout=sections]) .menu-tools .search-label{font-size:11px;margin-bottom:5px;color:#615447}
 body:not([data-menu-layout=sections]) #menuSearch{height:48px;min-height:48px;padding:11px 16px 11px 42px;font-size:14px;border-radius:13px;box-shadow:none}
 body:not([data-menu-layout=sections]) .search-field svg{width:18px;height:18px;left:15px;top:15px}
 body:not([data-menu-layout=sections]) .category-picker select{height:48px;min-height:48px;padding:10px 32px 10px 13px;font-size:13px;border-radius:13px}
 body:not([data-menu-layout=sections]) .categories{gap:7px;padding:10px 0 8px;scrollbar-color:#d4b28b transparent;scrollbar-width:thin}
 body:not([data-menu-layout=sections]) .categories button{min-height:38px;padding:7px 14px;font-size:12px;line-height:1.5}
 body:not([data-menu-layout=sections]) .categories::-webkit-scrollbar{height:4px}
 body:not([data-menu-layout=sections]) .categories::-webkit-scrollbar-thumb{background:#d4b28b;border-radius:6px}
 body:not([data-menu-layout=sections]) .menu-results{padding-top:16px}
 .compact-menu-tools body:not([data-menu-layout=sections]) .menu-tools{padding-top:0;box-shadow:0 4px 12px #36220b08}
 /* Keep the labels available to screen readers after visually collapsing them. */
 .compact-menu-tools body:not([data-menu-layout=sections]) .menu-tools .search-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
 .compact-menu-tools body:not([data-menu-layout=sections]) #menuSearch,
 .compact-menu-tools body:not([data-menu-layout=sections]) .category-picker select{height:42px;min-height:42px;padding-block:8px;border-radius:11px}
 .compact-menu-tools body:not([data-menu-layout=sections]) .search-field svg{top:12px}
 .compact-menu-tools body:not([data-menu-layout=sections]) .categories{padding-block:7px 5px}
 .compact-menu-tools body:not([data-menu-layout=sections]) .categories button{min-height:34px;padding-block:5px}
 body[data-menu-style=classic] .product-grid>.product-card{box-shadow:0 3px 15px #392d1a03;border-radius:19px}
}
/* Today is a location-neutral green highlight, independent of open/closed. */
#hours .hours-card li.is-today{background:#e6f4e9;border:1px solid #bfdfc7;color:#205c35}
#hours .hours-card li.is-today small{background:#fff;border-color:#b7d9c0;color:#27653b}
#hours .hours-card li.is-today strong{color:#205c35}
.home-gift-section{display:grid;grid-template-columns:minmax(240px,.85fr) minmax(0,1.15fr);gap:42px;align-items:center;margin:30px 0;padding:32px;border:1px solid #e5cfb0;border-radius:24px;background:linear-gradient(120deg,#fff5e3,#fffdf9)}
.home-gift-art{position:relative;padding:14px;isolation:isolate}.home-gift-art>div{position:relative;border:1px solid #ba8a45;border-radius:19px;padding:22px 25px;background:radial-gradient(ellipse at top right,#896331,#272019 65%);box-shadow:0 12px 24px #54330f16;transform:rotate(-3deg);color:#fff4d8;overflow:hidden}
.home-gift-art>div{background:#241c15 url('gift-card-art-v1.png') center/cover}.home-gift-art small{font-size:8px;color:#ffcd81;letter-spacing:1.6px}.home-gift-art svg{display:block;width:34px;height:34px;margin:18px 0 12px;fill:none;stroke:#ffc96f;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.home-gift-art strong{display:block;font:700 27px/1.15 Georgia,serif}.home-gift-art>div>span{display:block;margin-top:22px;font-size:8px;font-weight:750;letter-spacing:2px;color:#f4ca8b}.home-gift-ribbon{position:absolute;inset:30% 7% 15%;z-index:-1;border-radius:20px;background:#ed742f26;transform:rotate(5deg)}
.home-gift-copy{min-width:0}.home-gift-copy .eyebrow{font-size:9px;margin-bottom:12px}.home-gift-copy h2{font-size:clamp(28px,3vw,38px);line-height:1.15;margin:0 0 15px}.home-gift-copy>p:not(.eyebrow){font-size:14px;color:#79634d;line-height:1.75;max-width:460px;margin-bottom:20px}.home-gift-copy .primary{font-size:13px;gap:14px;min-height:46px}.home-gift-copy>small{display:block;margin-top:12px;font-size:10px;line-height:1.6;color:#8c735b}
#memberGiftSection{scroll-margin-top:calc(var(--desktop-nav-height,60px) + 20px)}
.member-gift.is-selected{border:2px solid #dfb75e;box-shadow:0 0 0 4px #e6c67a24}.member-gift.is-unavailable{background:linear-gradient(120deg,#3c3933,#4b463d)}.member-gift.is-usable .gift-state{background:#c6efcf;color:#205834;border-color:#b5dcbe;font-weight:750}.member-gift.is-selected .gift-state{background:#ffda8e;border-color:#ffda8e;color:#5b370f}
.home-gift-wallet-link{display:block;font-size:12px;min-height:44px;padding-block:13px;color:#8b4b20;font-weight:650}.gift-buy-link{font-size:12px;white-space:nowrap;margin-left:auto}.gift-claim{padding:22px;margin-top:20px;border:1px dashed #d2b38d;background:#fff7eb;border-radius:16px}.gift-claim h3{font:700 20px Georgia,serif}.gift-claim p{font-size:12px;color:#7c6247;line-height:1.65}.gift-claim label{font-size:12px;font-weight:700}.gift-claim form>div{display:flex;gap:10px;margin-top:8px;align-items:center}.gift-claim input{min-width:0}.gift-claim button{flex-shrink:0;font-size:12px}.gift-claim [role=status]{margin:12px 0 0}.gift-claim [role=status]:empty{display:none}.gift-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:22px}.gift-actions .primary{min-height:46px;font-size:12px;padding:12px 16px;flex:1}.gift-actions a{font-size:12px;font-weight:700;min-height:44px;display:inline-flex;align-items:center;color:#ffdc9d;padding:8px 0}.gift-actions .primary:disabled{opacity:1;background:#ffffff12;color:#dbcaae;border:1px solid #ffffff25;box-shadow:none}.gift-use-help{font-size:11px;line-height:1.65;color:#dbc5a4;margin:12px 0 0}.gift-feedback{font-size:13px;line-height:1.6;color:#a33814;margin:12px 0}.gift-feedback:empty{display:none}.gift-empty .primary{font-size:12px;margin-top:12px;min-height:44px}.gift-empty>div>p{margin:0;font-size:13px;line-height:1.6}
.selected-gift-notice{display:flex;align-items:center;gap:13px;padding:14px 16px;border:1px solid #c5debd;border-radius:14px;background:#f0f7e9;color:#31542e;margin:12px 0 0;flex-wrap:wrap}.selected-gift-icon{display:grid;place-items:center;background:#fff;border-radius:10px;width:36px;height:36px;flex-shrink:0}.selected-gift-icon svg{width:23px;height:23px;fill:none;stroke:#588342;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.selected-gift-notice>div{flex:1;min-width:180px}.selected-gift-notice strong{font-size:12px}.selected-gift-notice>div p{font-size:11px;line-height:1.6;margin:4px 0 0;color:#5b7150}.selected-gift-notice>a,.selected-gift-notice>button{font-size:11px;font-weight:700;padding:10px;background:transparent;border-radius:8px;color:#31542e;min-height:40px}.selected-gift-notice>button{border:1px solid #cadcb9;background:#fff}.selected-gift-notice>[role=status]{flex-basis:100%;margin:0;color:#9d3918;font-size:12px}.selected-gift-notice>[role=status]:empty{display:none}
@media(max-width:640px){.home-gift-section{grid-template-columns:1fr;gap:20px;padding:22px;margin-block:24px;border-radius:20px}.home-gift-art{max-width:340px;width:100%;margin:auto;padding:5px 12px}.home-gift-art>div{padding:20px 23px}.home-gift-art strong{font-size:27px}.home-gift-art svg{position:absolute;right:23px;bottom:18px;width:60px;height:60px;opacity:.45}.home-gift-art>div>span{margin-top:15px}.home-gift-copy h2{font-size:30px}.home-gift-copy>p:not(.eyebrow){font-size:13px}.home-gift-copy .primary{width:100%}.gift-actions{gap:7px}.gift-actions .primary{flex-basis:100%;font-size:13px}.gift-use-help{font-size:11px}.selected-gift-notice{gap:9px;padding:12px}.selected-gift-notice>div{min-width:140px}.selected-gift-notice>a{margin-left:42px}.selected-gift-notice>button{margin-left:auto}#memberGiftSection{scroll-margin-top:18px}}
.member-gifts .loyalty-panel-heading{flex-wrap:wrap}@media(max-width:640px){.gift-claim form>div{flex-direction:column;align-items:stretch}.gift-claim input{font-size:16px}.gift-buy-link{margin-left:0}.member-gifts .loyalty-panel-heading>div{flex-basis:70%}}
@media(prefers-reduced-motion:reduce){.product-placeholder:before{transition:none;transform:none}}
@media(max-width:640px){
 #memberOffers .reward-checkpoint>header{margin:-14px -14px 14px;padding:15px;border-radius:16px 16px 0 0;gap:10px}
 #memberOffers .reward-checkpoint .reward-tier-state{margin-left:65px}
 #rewards.rewards-section{gap:24px}#rewards #rewardWallet{padding:20px}.home-wallet-balance{gap:12px}.home-wallet-goals>a{padding:12px}.home-wallet-goals span{font-size:11px}
 #hours.hours-section{grid-template-columns:1fr;gap:16px;padding-block:25px}.contact-card,.hours-card{padding:22px;border-radius:19px}#hours .contact-card h2{font-size:29px}.contact-card .contact-location{margin-bottom:18px}.hours-card>header{gap:10px}.hours-card h3{font-size:22px}#hours .hours-card li{padding:13px 8px}
}
