/* Home sections: "Make room for your next favorite", reviews, and the pickup guide.
   This file owns these three blocks; the older rules for them were removed from menu-visit.css, mol-theme.css, brand.css and home-width.css (MOL-009). */
.mol-menu-favorites,.google-reviews,.mol-pickup-guide{--hs-ink:#111111;--hs-muted:#5c5c5c;--hs-line:#e5e5e5;--hs-red:#d83c1d;--hs-ease:cubic-bezier(.2,.8,.2,1);box-sizing:border-box;color:var(--hs-ink)}
.mol-menu-favorites[hidden]{display:none!important}
.mol-brand body:not([data-public-route=home]):not([data-public-route=menu]) .mol-menu-favorites{display:none!important}
body[data-public-route=rewards] .google-reviews,body[data-public-route=account] .google-reviews{display:none}
.hs-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* ---- Favorites ---------------------------------------------------------------------------------- */
.mol-brand body .mol-menu-favorites{max-width:1240px;margin:28px auto 0;padding-block:clamp(36px,5vw,64px) clamp(28px,4vw,44px)}
.mol-menu-favorites>header{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:clamp(20px,3vw,30px)}
.mol-menu-favorites .eyebrow{margin:0;font-size:11px;letter-spacing:.14em}
.mol-brand body .mol-menu-favorites h2{margin:10px 0 8px;max-width:15ch;font:800 clamp(28px,3.6vw,40px)/1.08 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.035em}
.mol-menu-favorites h2 em{font-style:normal;color:var(--hs-red)}
.mol-menu-favorites header p:not(.eyebrow){margin:0;font:400 15px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--hs-muted)}
.mol-menu-favorites header>a{display:inline-flex;align-items:center;min-height:46px;padding:0 20px;border-radius:30px;font:750 14px system-ui;white-space:nowrap}
.mol-favorite-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,22px)}
/* Card: photo area with a "made to order" chip, then name, then price + action. Fixed heights from the menu layout no longer clip it. */
.mol-brand body .mol-favorite-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto 1fr auto;height:auto;min-height:0;min-width:0;overflow:hidden;background:#ffffff;border:1px solid var(--hs-line);border-radius:26px;box-shadow:0 18px 34px -26px #a6261466,0 1px 2px #a626140d;transition:transform .22s var(--hs-ease),box-shadow .22s var(--hs-ease),border-color .22s}
.mol-favorite-card.mol-clickable-product{cursor:pointer}
.mol-favorite-photo{grid-area:1/1;position:relative;height:clamp(170px,15vw,214px);display:grid;place-items:center;overflow:hidden;background:radial-gradient(120% 90% at 50% 38%,#ffffff,#fdece9 72%)}
.mol-favorite-photo img{width:88%;height:88%;object-fit:contain;mix-blend-mode:multiply;filter:drop-shadow(0 14px 14px #a6261430);transition:transform .35s var(--hs-ease)}
.mol-favorite-copy{display:contents}
.mol-favorite-copy>span{grid-area:1/1;align-self:start;justify-self:start;z-index:1;margin:14px;padding:7px 11px;border-radius:99px;background:#ffffffe8;border:1px solid #fdece9;font:750 10px/1 system-ui;letter-spacing:.12em;color:#a33d1f;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.mol-brand body .mol-favorite-copy h3{grid-area:2/1;margin:18px 20px 6px;font:800 19px/1.25 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.02em}
.mol-favorite-copy>div{grid-area:4/1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 12px;margin:14px 20px 20px;padding-top:14px;border-top:1px dashed #fdece9}
.mol-favorite-copy strong{font:800 17px system-ui;letter-spacing:-.01em}
.mol-brand body .mol-favorite-copy button{position:static;width:auto;height:auto;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid #fdece9;border-radius:14px;background:#ffffff;color:#a8341a;font:750 13px system-ui;white-space:nowrap;cursor:pointer;transition:background-color .15s,transform .1s,box-shadow .15s}
.mol-brand body .mol-favorite-copy button::after{content:none}
.mol-favorite-copy button>span{font-size:16px;line-height:1;transition:transform .2s var(--hs-ease)}
.mol-favorite-copy button:hover{background:#fdece9}
.mol-favorite-card:focus-within{border-color:#d83c1d;box-shadow:0 0 0 3px #d83c1d2e,0 18px 34px -26px #a6261466}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .mol-favorite-card:hover{transform:translateY(-4px);border-color:#d83c1d;box-shadow:0 26px 40px -26px #a6261480,0 1px 2px #a626140d}
 .mol-favorite-card:hover .mol-favorite-photo img{transform:scale(1.06) rotate(-1deg)}
 .mol-favorite-card:hover .mol-favorite-copy button>span{transform:translateX(3px)}
}
@media(prefers-reduced-motion:no-preference){.mol-favorite-card:active{transform:scale(.99)}.mol-favorite-copy button:active{transform:scale(.97)}}
/* Narrow screens: compact horizontal cards (photo left, text right). */
@media(max-width:760px){
 .mol-menu-favorites>header{align-items:start;flex-direction:column;gap:14px}
 .mol-favorite-grid{grid-template-columns:1fr;gap:12px}
 .mol-brand body .mol-favorite-card{grid-template-columns:116px minmax(0,1fr);grid-template-rows:auto auto 1fr;border-radius:22px}
 .mol-favorite-photo{grid-area:1/1/4/2;height:100%;min-height:132px}
 .mol-favorite-copy>span{grid-area:1/2;margin:14px 14px 0;padding:6px 9px;font-size:9px}
 .mol-brand body .mol-favorite-copy h3{grid-area:2/2;margin:8px 14px 4px;font-size:17px}
 .mol-favorite-copy>div{grid-area:3/2;margin:6px 14px 14px;padding-top:10px}
}

/* ---- Reviews: real destinations only. No review text, stars, authors, dates or counts are rendered here. ---------------- */
.mol-brand body .google-reviews{max-width:1240px;margin:clamp(8px,2vw,20px) auto;padding-block:clamp(20px,3vw,36px);border:0}
.gr-card{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(20px,4vw,48px);align-items:center;padding:clamp(24px,4vw,44px);border:1px solid var(--hs-line);border-radius:30px;background:radial-gradient(90% 120% at 100% 0%,#fdece9 0,#ffffff 45%,#ffffff 100%);box-shadow:0 24px 50px -36px #a6261477}
.gr-card::before{content:"";position:absolute;right:-18px;top:-26px;width:190px;height:190px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d83c1d' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5h16v11H9l-5 4V5Z'/%3E%3Cpath d='M8 9.5h8M8 12.5h5'/%3E%3C/svg%3E");opacity:.1;pointer-events:none}
.gr-copy{position:relative}
.gr-copy .eyebrow{margin:0;font-size:11px;letter-spacing:.14em}
.gr-copy h2{margin:10px 0 10px;font:800 clamp(28px,3.4vw,40px)/1.08 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.035em}
.gr-lead{margin:0;max-width:46ch;font:400 16px/1.6 system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--hs-muted)}
.gr-actions{position:relative;display:grid;gap:10px}
.gr-actions a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 22px;border-radius:16px;font:750 15px/1.1 system-ui,-apple-system,"Segoe UI",sans-serif;text-decoration:none;white-space:nowrap;transition:transform .12s,box-shadow .18s,background-color .18s,border-color .18s}
.gr-actions .primary{background:linear-gradient(180deg,#e4472a,var(--hs-red) 55%,#c2300f);color:#ffffff;border:1px solid #b92d12;box-shadow:0 12px 24px -12px #d83c1d99,inset 0 1px 0 #ffffff40}
.gr-actions .secondary{background:#ffffff;color:var(--hs-ink);border:1px solid #e5e5e5}
.gr-actions .secondary:hover{background:#ffffff;border-color:#d83c1d}
.gr-actions a:focus-visible{outline:3px solid #b4361d;outline-offset:3px}
.gr-note{grid-column:1/-1;position:relative;margin:0;font:400 13px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif;color:#666666}
.gr-widget{grid-column:1/-1;min-width:0;width:100%;position:relative}
.gr-widget[data-mol-reviews=ready]>.gr-widget-fallback{display:none}
.gr-widget-fallback{margin:0;font-size:14px;color:var(--hs-muted)}
@media(prefers-reduced-motion:no-preference){.gr-actions a:hover{transform:translateY(-1px)}.gr-actions a:active{transform:scale(.98)}}
@media(max-width:760px){.gr-card{grid-template-columns:1fr;border-radius:24px}.gr-actions a{width:100%}}

/* ---- Pickup guide --------------------------------------------------------------------------------- */
.mol-brand body .mol-pickup-guide{max-width:1240px;margin:clamp(12px,3vw,28px) auto;padding-block:clamp(28px,4vw,52px);display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,5vw,64px);align-items:center}
.mol-pickup-guide .eyebrow{margin:0;font-size:11px;letter-spacing:.14em}
.mol-pickup-guide h2{margin:10px 0 12px;font:800 clamp(28px,3.6vw,40px)/1.08 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.035em}
.mol-pickup-guide h2 em{font-style:normal;color:var(--hs-red)}
.pg-lead{margin:0 0 22px;max-width:40ch;font:400 16px/1.6 system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--hs-muted)}
.pg-cta{display:flex;flex-wrap:wrap;gap:10px}
.pg-cta a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:15px;font:750 14px/1.1 system-ui;text-decoration:none;white-space:nowrap}
.pg-steps{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.pg-steps li{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr);gap:16px;align-items:center;padding:18px 20px;background:#ffffff;border:1px solid var(--hs-line);border-radius:22px;box-shadow:0 14px 30px -26px #a6261466;transition:transform .2s var(--hs-ease),box-shadow .2s var(--hs-ease)}
.pg-steps li:not(:last-child)::after{content:"";position:absolute;left:47px;bottom:-15px;height:15px;border-left:2px dashed #d83c1d}
.pg-ico{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:linear-gradient(145deg,#ffffff,#fdece9);color:#b4361d}
.pg-ico svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s var(--hs-ease)}
.pg-steps small{display:block;margin-bottom:3px;font:800 11px/1 system-ui;letter-spacing:.12em;color:#a33d1f}
.pg-steps strong{display:block;font:800 18px/1.3 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.015em}
.pg-steps p{margin:4px 0 0;font:400 14px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--hs-muted)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.pg-steps li:hover{transform:translateX(4px);box-shadow:0 20px 34px -26px #a6261480}.pg-steps li:hover .pg-ico svg{transform:scale(1.12) rotate(-4deg)}}
@media(max-width:860px){.mol-brand body .mol-pickup-guide{grid-template-columns:1fr}.pg-lead{max-width:none}}
@media(max-width:480px){.pg-cta a{flex:1 1 100%}.pg-steps li{padding:16px;grid-template-columns:48px minmax(0,1fr);gap:14px}.pg-ico{width:48px;height:48px;border-radius:16px}.pg-steps li:not(:last-child)::after{left:40px}}
