@font-face{font-family:Poppins;src:url('/assets/fonts/Poppins-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Poppins;src:url('/assets/fonts/Poppins-Medium.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Poppins;src:url('/assets/fonts/Poppins-SemiBold.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Poppins;src:url('/assets/fonts/Poppins-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}

:root{
  --ink:#181332;--muted:#73708a;--line:#ebe6f3;--soft:#faf8fd;--white:#fff;
  --purple:#7026df;--purple2:#9541f4;--pink:#ec21b8;--yellow:#ffd12a;--cyan:#1ec9e8;
  --shadow:0 16px 42px rgba(73,35,125,.09);--shadow-soft:0 8px 24px rgba(55,28,99,.06);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font-family:Poppins,Arial,sans-serif;line-height:1.45;-webkit-font-smoothing:antialiased}
button,input,textarea,select{font-family:Poppins,Arial,sans-serif}
button{cursor:pointer}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.shell{width:min(1180px,calc(100% - 40px));margin:0 auto}.is-hidden{display:none!important}

.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.header-inner{height:76px;display:flex;align-items:center;gap:22px}
.brand{display:flex;align-items:center;flex:0 0 auto}
.brand img{width:62px;height:62px;object-fit:contain}
.location-chip{margin-left:8px;min-width:220px;max-width:330px;height:46px;display:flex;align-items:center;gap:9px;padding:0 12px;border:1px solid #e1daee;border-radius:8px;background:#fff;color:var(--ink);text-align:left;transition:.18s}
.location-chip:hover{border-color:#bea9e9;background:#fdfbff}
.location-pin{width:28px;height:28px;border-radius:7px;display:grid;place-items:center;background:#f1eaff;color:var(--purple);font-weight:700}
.location-copy{min-width:0;display:block;flex:1}.location-copy small,.location-copy b{display:block}.location-copy small{font-size:9px;color:var(--muted);font-weight:600}.location-copy b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;margin-top:1px}.chev{color:#8d86a0}
.header-actions{margin-left:auto;display:flex;align-items:center;gap:18px}.header-actions>a{font-size:12px;font-weight:600;color:#5e5870}.header-actions>a:hover{color:var(--purple)}
.header-order-btn{border:0;background:linear-gradient(95deg,var(--purple2),var(--purple));color:#fff;height:42px;padding:0 17px;border-radius:8px;font-weight:700;font-size:12px;box-shadow:0 8px 20px rgba(112,38,223,.17)}

.hero-section{position:relative;overflow:hidden;background:linear-gradient(120deg,#fff 0%,#fcf9ff 57%,#fff8fd 100%);padding:58px 0 66px;border-bottom:1px solid #f0ebf6}
.hero-section:before{content:"";position:absolute;width:270px;height:270px;right:3%;top:-140px;background:radial-gradient(circle,rgba(112,38,223,.12),rgba(236,33,184,.035) 60%,transparent 61%);pointer-events:none}
.hero-layout{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.16fr) minmax(330px,.64fr);gap:62px;align-items:center}
.eyebrow{font-size:10px;font-weight:700;letter-spacing:.15em;color:var(--purple)}
.hero-copy h1{font-size:clamp(48px,6.1vw,76px);line-height:.98;letter-spacing:-.055em;margin:15px 0 15px;max-width:760px;font-weight:700}.hero-copy h1 em{font-style:normal;background:linear-gradient(100deg,var(--purple),var(--pink));-webkit-background-clip:text;background-clip:text;color:transparent}.hero-copy>p{font-size:16px;color:var(--muted);margin:0 0 26px;font-weight:400}

.service-launcher{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:710px}
.service-choice{position:relative;min-height:98px;display:grid;grid-template-columns:60px minmax(0,1fr) 28px;gap:12px;align-items:center;padding:13px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;text-align:left;box-shadow:var(--shadow-soft);transition:transform .16s,border-color .16s,box-shadow .16s}
.service-choice:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:9px 0 0 9px;background:var(--purple)}
.service-choice.food:before{background:var(--pink)}.service-choice.mart:before{background:var(--yellow)}.service-choice.pharmacy:before{background:var(--cyan)}.service-choice.pabili:before{background:var(--purple)}
.service-choice:hover,.service-choice.selected{transform:translateY(-2px);border-color:#ccbaf1;box-shadow:0 13px 30px rgba(62,31,111,.10)}
.service-art{width:60px;height:60px;border-radius:8px;display:grid;place-items:center;background:#faf8ff;overflow:hidden}.service-art img{width:54px;height:54px;object-fit:contain}
.service-text{display:block;min-width:0}.service-text b,.service-text small{display:block}.service-text b{font-size:17px;font-weight:700}.service-text small{margin-top:2px;color:var(--muted);font-size:10px}.service-arrow{width:28px;height:28px;display:grid;place-items:center;border-radius:7px;background:#f2ecff;color:var(--purple);font-weight:700}

.hero-side{position:relative}.hero-card{border:1px solid #e6ddf5;border-radius:14px;padding:26px;background:#fff;box-shadow:var(--shadow)}
.hero-brand-image{width:126px;height:126px;object-fit:contain;margin:0 auto 6px}.hero-card h2{text-align:center;font-size:25px;line-height:1.1;letter-spacing:-.03em;margin:4px 0 18px;font-weight:700}
.flow-list{display:grid;gap:7px}.flow-list>div{display:flex;align-items:center;gap:11px;padding:10px 11px;border-radius:8px;background:#faf8fd;border:1px solid #f0ebf6}.flow-list>div>span{width:30px;height:30px;border-radius:7px;display:grid;place-items:center;background:linear-gradient(135deg,var(--purple2),var(--purple));color:#fff;font-size:11px;font-weight:700}.flow-list b{font-size:11px;font-weight:600}
.hero-location-btn{margin-top:14px;width:100%;height:50px;border:0;border-radius:8px;background:linear-gradient(95deg,#9140f2,#6b25dc);color:#fff;display:grid;grid-template-columns:26px 1fr 26px;align-items:center;padding:0 13px;text-align:left;box-shadow:0 10px 20px rgba(109,43,227,.18)}.hero-location-btn b{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.hero-location-btn>span:last-child{text-align:right;font-size:17px}

.discover-section{padding:58px 0;background:#fff}.discover-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:22px}.section-kicker{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--purple)}.discover-head h2{font-size:clamp(30px,4vw,45px);line-height:1.05;letter-spacing:-.04em;margin:5px 0 7px;font-weight:700}.discover-head p{margin:0;color:var(--muted);font-size:12px}.change-service{border:1px solid var(--line);border-radius:8px;background:#fff;padding:9px 12px;font-size:11px;font-weight:600;color:#5d576b}.change-service:hover{border-color:#cab7fa;color:var(--purple)}

.store-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.store-card{overflow:hidden;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:var(--shadow-soft);transition:.16s}.store-card:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(52,29,99,.10)}.store-cover{height:158px;position:relative;background:linear-gradient(145deg,#faf7ff,#f4f0fc);display:grid;place-items:center;overflow:hidden}.store-cover img{width:100%;height:100%;object-fit:cover}.store-cover img.fallback{width:104px;height:104px;object-fit:contain}.store-status{position:absolute;top:10px;left:10px;background:#fff;padding:5px 8px;border-radius:6px;font-size:9px;font-weight:700;box-shadow:0 6px 15px rgba(26,18,51,.08)}.store-status.open{color:#15865c}.store-status.closed{color:#a35454}.store-body{padding:14px}.store-body h3{font-size:16px;margin:0 0 4px;font-weight:700}.store-meta{display:flex;gap:8px;flex-wrap:wrap;color:#777287;font-size:9px;margin-bottom:10px}.store-address{height:32px;overflow:hidden;color:#8b8797;font-size:9px;line-height:1.45;margin:0 0 11px}.store-cta{width:100%;height:39px;border:0;border-radius:7px;background:#f0e8ff;color:var(--purple);font-weight:700;font-size:10px}.store-cta:hover{background:#e7dafa}
.empty-card,.loading-card{border:1px dashed #dcd2f3;border-radius:10px;background:#fbfaff;padding:28px;text-align:center;color:var(--muted)}.empty-card b,.loading-card b{display:block;color:var(--ink);font-size:16px;margin-bottom:4px}.loading-card span:last-child,.empty-card span{font-size:11px}.loading-dot{width:30px;height:30px;margin:0 auto 10px;border:3px solid #e7def9;border-top-color:var(--purple);border-radius:50%;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}

.pabili-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.45fr);gap:14px}.pabili-form,.pabili-tip{border:1px solid var(--line);border-radius:10px;background:#fff;padding:20px;box-shadow:var(--shadow-soft)}.pabili-form label{display:block;font-size:10px;font-weight:600;color:#575164;margin-bottom:12px}.pabili-form textarea,.pabili-form input{width:100%;border:1px solid #ddd6ec;border-radius:8px;background:#fff;padding:11px 12px;outline:none;margin-top:6px;color:var(--ink);font-size:11px}.pabili-form textarea{min-height:102px;resize:vertical}.pabili-form textarea:focus,.pabili-form input:focus{border-color:#a681ee;box-shadow:0 0 0 3px rgba(112,46,232,.07)}.pabili-submit{width:100%;height:45px;border:0;border-radius:8px;background:linear-gradient(95deg,var(--purple2),var(--purple));color:#fff;font-weight:700;margin-top:4px;font-size:11px}.pabili-tip{background:linear-gradient(145deg,#2d1645,#171020);color:#fff}.pabili-tip span{display:inline-block;color:#ffd65c;font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.pabili-tip h3{font-size:20px;line-height:1.15;margin:11px 0 6px}.pabili-tip p{color:#d7cde0;font-size:10px;margin:0}.pabili-ready{margin-top:10px;padding:10px;border-radius:7px;background:#effbf5;color:#276b52;font-size:10px;display:none}.pabili-ready.show{display:block}

.brand-strip{padding:18px 0 54px}.brand-strip-inner{border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-height:62px;display:flex;align-items:center;justify-content:center;gap:22px;color:#6e6780;font-size:12px;font-weight:600}.brand-strip-inner i{width:5px;height:5px;border-radius:50%;background:var(--yellow)}

footer{border-top:1px solid var(--line);background:#fbfafc}.footer-main{display:grid;grid-template-columns:1.6fr .7fr .7fr;gap:30px;padding:28px 0}.footer-logo img{width:72px;height:72px}.footer-brand p{max-width:320px;color:var(--muted);font-size:10px;margin:5px 0 0}.footer-links b{display:block;font-size:10px;margin:5px 0 8px}.footer-links a{display:block;color:var(--muted);font-size:10px;margin:6px 0}.footer-links a:hover{color:var(--purple)}.footer-bottom{border-top:1px solid var(--line);padding:14px 0 18px;color:#9792a1;font-size:9px}

.modal-layer{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:18px}.modal-layer.open{display:flex}.modal-scrim{position:absolute;inset:0;background:rgba(20,14,31,.55);backdrop-filter:blur(4px)}.location-modal,.store-modal{position:relative;z-index:2;width:min(500px,100%);max-height:calc(100svh - 36px);overflow:auto;border-radius:12px;background:#fff;padding:26px;box-shadow:0 30px 90px rgba(19,12,35,.24)}.modal-close{position:absolute;right:13px;top:13px;width:34px;height:34px;border:0;border-radius:7px;background:#f5f2f9;color:#655d71;font-size:20px}.modal-icon{width:44px;height:44px;border-radius:9px;background:#f1eaff;color:var(--purple);display:grid;place-items:center;font-size:20px}.location-modal h2{font-size:27px;line-height:1.08;letter-spacing:-.035em;margin:15px 0 6px}.location-modal>p{color:var(--muted);font-size:11px;margin:0 0 18px}.address-field{display:block;font-size:10px;font-weight:600;color:#5f596a}.address-field input{width:100%;height:51px;border:1px solid #ded8ea;border-radius:8px;padding:0 13px;margin-top:6px;outline:none;font-size:11px}.address-field input:focus{border-color:#aa87f1;box-shadow:0 0 0 3px rgba(112,46,232,.07)}.primary-modal-btn{width:100%;height:49px;margin-top:12px;border:0;border-radius:8px;background:linear-gradient(95deg,var(--purple2),var(--purple));color:#fff;font-weight:700;font-size:11px}.primary-modal-btn span{margin-left:7px}.or{height:31px;display:flex;align-items:center;justify-content:center;color:#aaa4b1;font-size:8px;position:relative}.or:before,.or:after{content:"";height:1px;background:#eeeaf3;flex:1}.or span{padding:0 9px}.gps-btn{width:100%;min-height:56px;border:1px solid var(--line);border-radius:8px;background:#fff;display:flex;gap:10px;align-items:center;padding:9px 11px;text-align:left}.gps-btn>span{width:31px;height:31px;border-radius:7px;background:#f2edff;color:var(--purple);display:grid;place-items:center;font-weight:700}.gps-btn div{flex:1}.gps-btn b,.gps-btn small{display:block}.gps-btn b{font-size:10px}.gps-btn small{font-size:8px;color:var(--muted);margin-top:1px}.modal-status{font-size:9px!important;margin:10px 0 0!important;min-height:14px;color:#806d8f!important}
.store-modal{width:min(740px,100%)}.store-modal-head{display:grid;grid-template-columns:76px 1fr;gap:13px;align-items:center;padding-right:36px}.store-modal-image{width:76px;height:76px;border-radius:9px;background:#f8f5fd;overflow:hidden;display:grid;place-items:center}.store-modal-image img{width:100%;height:100%;object-fit:cover}.store-modal-image img.fallback{width:60px;height:60px;object-fit:contain}.store-modal-head h2{font-size:23px;line-height:1.1;margin:0 0 4px}.store-modal-head p{margin:0;color:var(--muted);font-size:10px}.product-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.product-row{display:grid;grid-template-columns:52px 1fr auto;gap:9px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:8px}.product-row img{width:52px;height:52px;border-radius:7px;object-fit:cover;background:#f7f4fb}.product-row b,.product-row small{display:block}.product-row b{font-size:10px}.product-row small{font-size:8px;color:var(--muted);margin-top:2px}.product-price{font-size:10px;font-weight:700;color:var(--purple)}.product-empty{grid-column:1/-1;padding:18px;text-align:center;background:#faf9fc;border-radius:8px;color:var(--muted);font-size:10px}.store-modal-foot{margin-top:14px;padding:10px 11px;background:#faf8fd;border-radius:7px;color:#817b8b;font-size:9px}

@media(max-width:1020px){.hero-layout{grid-template-columns:1fr;gap:30px}.hero-side{max-width:620px}.store-grid{grid-template-columns:repeat(2,1fr)}.pabili-panel{grid-template-columns:1fr}.hero-brand-image{width:108px;height:108px}.hero-card{max-width:620px}.footer-main{grid-template-columns:1.4fr 1fr 1fr}}
@media(max-width:760px){.shell{width:min(100% - 24px,1180px)}.header-inner{height:68px;gap:9px}.brand img{width:53px;height:53px}.location-chip{margin-left:0;min-width:0;max-width:none;flex:1;height:43px}.location-pin{width:26px;height:26px}.header-actions{margin-left:0}.header-actions>a{display:none}.header-order-btn{height:40px;padding:0 12px}.hero-section{padding:38px 0 46px}.hero-copy h1{font-size:clamp(43px,12.5vw,60px);margin:12px 0 13px}.hero-copy>p{font-size:14px;margin-bottom:20px}.service-launcher{gap:8px}.service-choice{min-height:87px;grid-template-columns:52px minmax(0,1fr) 25px;gap:9px;padding:11px;border-radius:8px}.service-choice:before{border-radius:7px 0 0 7px}.service-art{width:52px;height:52px;border-radius:7px}.service-art img{width:48px;height:48px}.service-text b{font-size:15px}.service-text small{font-size:9px}.service-arrow{width:25px;height:25px;border-radius:6px}.hero-card{border-radius:10px;padding:20px}.discover-section{padding:46px 0}.discover-head{display:block}.change-service{margin-top:13px}.brand-strip{padding-bottom:42px}.footer-main{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.product-list{grid-template-columns:1fr}}
@media(max-width:520px){.header-order-btn{display:none}.location-copy small{display:none}.location-chip{height:41px;padding:0 9px}.location-copy b{font-size:10px}.hero-section{padding-top:28px}.eyebrow{font-size:8px;letter-spacing:.11em}.service-launcher{grid-template-columns:1fr 1fr}.service-choice{display:flex;flex-direction:column;align-items:flex-start;min-height:130px;padding:11px}.service-choice .service-arrow{position:absolute;right:10px;top:10px}.service-art{width:56px;height:56px}.service-art img{width:52px;height:52px}.hero-card{padding:17px}.hero-brand-image{width:94px;height:94px}.hero-card h2{font-size:22px;margin-bottom:14px}.flow-list>div{padding:9px}.store-grid{grid-template-columns:1fr}.store-cover{height:165px}.footer-main{grid-template-columns:1fr}.footer-brand{grid-column:auto}.location-modal,.store-modal{border-radius:10px;padding:20px}.location-modal h2{font-size:24px}.store-modal-head{grid-template-columns:62px 1fr}.store-modal-image{width:62px;height:62px}.store-modal-head h2{font-size:20px}}

/* =========================================================
   FOOD DISCOVERY — product-first browsing + DB-driven filters
   ========================================================= */
.food-browser{display:grid;grid-template-columns:230px minmax(0,1fr);gap:28px;align-items:start}
.food-filters{position:sticky;top:92px;border-right:1px solid var(--line);padding-right:22px}
.filter-block{padding:0 0 22px}.filter-block+.filter-block{padding-top:20px;border-top:1px solid var(--line)}
.filter-block h3{margin:0 0 12px;font-size:15px;font-weight:700;color:var(--ink)}
.sort-option,.cuisine-check{display:flex;align-items:center;gap:9px;min-height:34px;font-size:11px;color:#514c5c;cursor:pointer}
.sort-option input,.cuisine-check input{width:16px;height:16px;margin:0;accent-color:var(--purple);cursor:pointer}
.sort-option span,.cuisine-check span{line-height:1.25}
.filter-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.filter-title-row h3{margin-bottom:12px}.filter-title-row button{border:0;background:transparent;color:var(--purple);font-size:9px;font-weight:700;padding:4px;cursor:pointer}
.cuisine-list{display:grid;gap:1px;max-height:330px;overflow:auto;padding-right:5px;scrollbar-width:thin}
.filter-empty{font-size:10px;color:var(--muted);margin:0}
.food-results{min-width:0}.food-results-head{min-height:32px;display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}.food-results-head>b{font-size:10px;color:var(--muted);font-weight:600}
.mobile-filter-btn{display:none;border:1px solid var(--line);background:#fff;border-radius:6px;padding:7px 10px;font-size:10px;font-weight:700;color:var(--purple)}
.food-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.food-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;transition:.16s;min-width:0}
.food-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(55,31,101,.10)}
.food-card-hit{position:absolute;inset:0;z-index:3;border:0;background:transparent;cursor:pointer}
.food-photo{height:170px;position:relative;overflow:hidden;background:#f7f4fb}
.food-photo img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .2s}
.food-card:hover .food-photo img{transform:scale(1.025)}
.food-photo img.fallback{object-fit:contain;padding:34px}
.food-closed{position:absolute;left:9px;top:9px;background:rgba(255,255,255,.95);border:1px solid #eee8f2;border-radius:5px;padding:4px 7px;font-size:8px;font-weight:700;color:#9a5555}
.food-card.is-closed .food-photo img{filter:grayscale(.15);opacity:.78}
.food-card-body{padding:12px 12px 13px}
.food-category{display:block;color:var(--purple);font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.food-card-body h3{font-size:15px;line-height:1.25;margin:0;color:var(--ink);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.food-vendor{font-size:9px;color:#7f7988;margin:4px 0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.food-card-meta{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:10px;color:#777287;font-size:8px}.food-card-meta span+span:before{content:'·';margin-right:5px;color:#b0aab8}
.food-price{display:flex;align-items:center;gap:7px}.food-price b{font-size:13px;color:#211c29}.food-price del{font-size:9px;color:#aaa3b1}
.food-empty{grid-column:1/-1}
.food-modal-head{display:block;padding-right:36px}.food-modal-kicker{display:block;color:var(--purple);font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.09em;margin-bottom:5px}

@media(max-width:1120px){.food-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.food-browser{grid-template-columns:200px minmax(0,1fr);gap:20px}}
@media(max-width:760px){
  .food-browser{grid-template-columns:1fr;gap:10px}
  .food-filters{display:none;position:static;border-right:0;border:1px solid var(--line);border-radius:8px;padding:15px;background:#fff}
  .food-filters.mobile-open{display:block}
  .mobile-filter-btn{display:inline-flex}
  .filter-block{padding-bottom:14px}.filter-block+.filter-block{padding-top:14px}
  .cuisine-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:230px}
}
@media(max-width:520px){
  .food-grid{grid-template-columns:1fr 1fr;gap:9px}
  .food-photo{height:126px}
  .food-card-body{padding:9px 9px 10px}
  .food-card-body h3{font-size:12px}.food-vendor{font-size:8px;margin-bottom:6px}.food-card-meta{font-size:7px;margin-bottom:8px}.food-price b{font-size:11px}
  .food-category{font-size:7px}
}

/* =========================================================
   GOOGLE PLACES ADDRESS AUTOCOMPLETE v6
   ========================================================= */
.address-autocomplete-wrap{position:relative}
.address-autocomplete-wrap input{position:relative;z-index:2;background:#fff}
.address-suggestions{display:none;position:absolute;left:0;right:0;top:calc(100% + 5px);z-index:30;background:#fff;border:1px solid #ded8ea;border-radius:8px;box-shadow:0 14px 34px rgba(50,31,72,.14);overflow:hidden;max-height:272px;overflow-y:auto}
.address-suggestions.show{display:block}
.address-suggestion{width:100%;border:0;border-bottom:1px solid #f0edf4;background:#fff;display:grid;grid-template-columns:29px minmax(0,1fr);gap:8px;align-items:center;padding:10px 11px;text-align:left;color:var(--ink);cursor:pointer}
.address-suggestion:last-child{border-bottom:0}
.address-suggestion:hover,.address-suggestion.active{background:#f8f5ff}
.suggestion-pin{width:27px;height:27px;border-radius:6px;background:#f1ecff;color:var(--purple);display:grid;place-items:center;font-size:13px;font-weight:700}
.suggestion-copy{min-width:0}.suggestion-copy b,.suggestion-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.suggestion-copy b{font-size:10px;font-weight:600}.suggestion-copy small{font-size:8px;color:var(--muted);margin-top:2px}
.location-credit{text-align:center;color:#aaa4b1;font-size:7.5px;margin-top:7px}.location-credit a{color:#82748c;text-decoration:underline;text-underline-offset:2px}
@media(max-width:520px){.address-suggestions{max-height:230px}.address-suggestion{padding:9px}.suggestion-copy b{font-size:9.5px}}

/* AYOO browser cart + checkout */
.header-cart-btn{height:38px;border:1px solid #e6dff0;border-radius:7px;background:#fff;color:#3d3547;display:inline-flex;align-items:center;gap:7px;padding:0 10px;font-size:10px;font-weight:700;cursor:pointer}.header-cart-btn b{min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:#eee8f7;color:#6d6478;display:grid;place-items:center;font-size:8px}.header-cart-btn.has-items{border-color:#cdb8f7;color:var(--purple)}.header-cart-btn.has-items b{background:var(--purple);color:#fff}
.food-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px}.food-add-btn{position:relative;z-index:5;border:0;border-radius:6px;background:var(--purple);color:#fff;height:30px;padding:0 12px;font:700 9px Poppins,sans-serif;cursor:pointer;white-space:nowrap}.food-add-btn:disabled{background:#c8c3cf;cursor:not-allowed}.food-price{position:relative;z-index:4}.product-row{grid-template-columns:52px minmax(0,1fr) auto auto}.product-add-btn{border:0;border-radius:6px;background:#efe8ff;color:var(--purple);min-height:31px;padding:0 10px;font:700 8px Poppins,sans-serif;cursor:pointer}.product-add-btn:hover{background:#e4d8ff}.product-add-btn:disabled{opacity:.5;cursor:not-allowed}
.cart-layer{align-items:stretch;justify-content:flex-end;padding:0}.cart-drawer{position:relative;z-index:2;width:min(520px,100%);height:100%;background:#fff;display:flex;flex-direction:column;box-shadow:-20px 0 70px rgba(20,14,31,.22)}.cart-head{min-height:77px;padding:19px 58px 15px 21px;border-bottom:1px solid var(--line);display:flex;align-items:center}.cart-head span,.checkout-head>span{display:block;font-size:8px;letter-spacing:.12em;color:#8f879a;font-weight:700}.cart-head h2,.checkout-head h2{font-size:24px;line-height:1.1;margin:3px 0 0}.cart-close{top:19px;right:18px}.cart-content{flex:1;overflow:auto;padding:16px 18px 24px;background:#fcfbfd}.cart-footer{border-top:1px solid var(--line);padding:14px 18px 18px;background:#fff}.cart-empty{min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted)}.cart-empty>span{font-size:38px}.cart-empty h3{margin:12px 0 4px;color:var(--ink);font-size:18px}.cart-empty p{max-width:290px;margin:0;font-size:10px;line-height:1.6}.multi-store-warning{border:1px solid #efd6a0;background:#fff9eb;border-radius:8px;padding:10px 11px;margin-bottom:12px}.multi-store-warning b,.multi-store-warning span{display:block}.multi-store-warning b{font-size:10px;color:#785015}.multi-store-warning span{font-size:8px;line-height:1.55;color:#8c6a32;margin-top:2px}.cart-store{border:1px solid var(--line);border-radius:8px;background:#fff;margin-bottom:10px;overflow:hidden}.cart-store-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 11px;background:#faf8fd;border-bottom:1px solid var(--line)}.cart-store-head span{display:block;font-size:7px;letter-spacing:.1em;color:#a099aa;font-weight:700}.cart-store-head b{font-size:10px}.cart-store-head small{font-size:8px;color:var(--purple);font-weight:700}.cart-item{display:grid;grid-template-columns:48px minmax(0,1fr) auto auto;gap:9px;align-items:center;padding:10px 11px;border-bottom:1px solid #f0edf3}.cart-item:last-of-type{border-bottom:0}.cart-item img{width:48px;height:48px;object-fit:cover;border-radius:7px;background:#f7f4fb}.cart-item-copy b,.cart-item-copy small{display:block}.cart-item-copy b{font-size:9px;line-height:1.3}.cart-item-copy small{font-size:7.5px;color:var(--muted);margin-top:2px}.cart-item-copy button{border:0;background:transparent;padding:0;margin-top:4px;font:600 7px Poppins,sans-serif;color:#9b5d63;cursor:pointer}.cart-item>strong{font-size:9px;white-space:nowrap}.qty-stepper{display:flex;align-items:center;border:1px solid #ddd6e8;border-radius:6px;overflow:hidden;height:28px}.qty-stepper button{width:26px;height:100%;border:0;background:#faf8fd;color:var(--purple);font-size:15px;cursor:pointer}.qty-stepper b{min-width:24px;text-align:center;font-size:8px}.cart-store-total{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:center;padding:9px 11px;background:#fdfcfe;font-size:7.5px;color:#77717f}.cart-store-total b{font-size:9px;color:var(--ink)}.cart-summary{display:grid;gap:6px}.cart-summary>div{display:flex;justify-content:space-between;align-items:center;font-size:9px;color:#6f6977}.cart-summary>div b{color:var(--ink)}.cart-summary .cart-grand{border-top:1px solid var(--line);padding-top:10px;margin-top:3px;font-size:12px}.cart-summary .cart-grand b{font-size:17px;color:var(--purple)}.cart-checkout-btn,.checkout-primary{width:100%;height:48px;border:0;border-radius:7px;background:linear-gradient(95deg,var(--purple2),var(--purple));color:#fff;font:700 11px Poppins,sans-serif;cursor:pointer;margin-top:12px}.cart-checkout-btn:disabled,.checkout-primary:disabled{opacity:.55;cursor:not-allowed}.cart-calculating,.cart-error,.cart-location-needed{font-size:9px;padding:11px;border-radius:7px}.cart-calculating{background:#faf8fd;color:#726b7c;text-align:center}.cart-error{background:#fff1f2;color:#9a414a}.cart-location-needed{background:#f8f4ff;border:1px solid #e7dcfb}.cart-location-needed b,.cart-location-needed span{display:block}.cart-location-needed b{font-size:10px}.cart-location-needed span{font-size:8px;color:#756e7c;margin:2px 0 8px;line-height:1.45}.cart-location-needed button{border:0;border-radius:6px;background:var(--purple);color:#fff;padding:7px 10px;font:700 8px Poppins,sans-serif;cursor:pointer}
.checkout-modal{position:relative;z-index:2;width:min(560px,100%);max-height:calc(100svh - 36px);overflow:auto;border-radius:12px;background:#fff;padding:25px;box-shadow:0 30px 90px rgba(19,12,35,.24)}.checkout-head{padding-right:38px;margin-bottom:15px}.checkout-head p{margin:5px 0 0;color:var(--muted);font-size:9px;line-height:1.5}.checkout-summary{border:1px solid var(--line);border-radius:8px;overflow:hidden;margin:12px 0}.checkout-store-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 11px;border-bottom:1px solid #f0edf3}.checkout-store-row b,.checkout-store-row small{display:block}.checkout-store-row b{font-size:9px}.checkout-store-row small{font-size:7.5px;color:var(--muted);margin-top:2px}.checkout-store-row>strong{font-size:10px}.checkout-grand{display:flex;justify-content:space-between;align-items:center;padding:11px;background:#faf8fd}.checkout-grand span{font-size:9px;font-weight:600}.checkout-grand b{font-size:16px;color:var(--purple)}.payment-options{margin-top:14px}.payment-option{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;border:1px solid #cab6f3;border-radius:8px;padding:11px;background:#fbf9ff;cursor:pointer}.payment-option input{position:absolute;opacity:0;pointer-events:none}.payment-icon{width:38px;height:38px;border-radius:7px;background:#efe8ff;color:var(--purple);display:grid;place-items:center;font-weight:800}.payment-option b,.payment-option small{display:block}.payment-option b{font-size:10px}.payment-option small{font-size:8px;color:var(--muted);margin-top:1px}.payment-option em{width:21px;height:21px;border-radius:50%;background:var(--purple);color:#fff;display:grid;place-items:center;font-style:normal;font-size:9px}.payment-coming{font-size:8px;color:#9a94a1;padding:8px 2px}.register-form{display:grid;gap:10px}.register-name-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}.register-form label{display:block;font-size:8px;font-weight:700;color:#5d5665}.register-form label small{font-weight:500;color:#9b94a2}.register-form input{width:100%;height:44px;border:1px solid #ded8e8;border-radius:7px;padding:0 11px;margin-top:5px;outline:none;font:500 10px Poppins,sans-serif}.register-form input:focus{border-color:#aa87f1;box-shadow:0 0 0 3px rgba(112,46,232,.07)}.register-form input[readonly]{background:#f8f6fa;color:#77717e}.id-upload-label>input{position:absolute;opacity:0;width:1px;height:1px}.id-upload-box{margin-top:5px;min-height:78px;border:1px dashed #cfc2e5;border-radius:8px;background:#fbf9ff;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;text-align:center;padding:10px}.id-upload-box b{font-size:10px;color:var(--purple)}.id-upload-box small{font-size:8px;color:var(--muted);margin-top:3px}.register-error{min-height:12px;color:#a9444d;font-size:8px;line-height:1.4}.checkout-processing{min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.checkout-processing h2{font-size:20px;margin:13px 0 3px}.checkout-processing p{font-size:9px;color:var(--muted);margin:0}.checkout-spinner{width:34px;height:34px;border:3px solid #eadffb;border-top-color:var(--purple);border-radius:50%;animation:ayooSpin .75s linear infinite}@keyframes ayooSpin{to{transform:rotate(360deg)}}.order-success{text-align:center}.success-check{width:52px;height:52px;border-radius:50%;background:#eaf8ef;color:#258447;display:grid;place-items:center;margin:0 auto 12px;font-size:24px;font-weight:800}.order-success h2{font-size:25px;margin:0 0 4px}.order-success>p{font-size:9px;color:var(--muted);margin:0 0 14px}.success-orders{border:1px solid var(--line);border-radius:8px;overflow:hidden;text-align:left}.success-orders>div{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 11px;border-bottom:1px solid #f0edf3}.success-orders>div:last-child{border-bottom:0}.success-orders span b,.success-orders span small{display:block}.success-orders span b{font-size:9px}.success-orders span small{font-size:7.5px;color:var(--muted);margin-top:2px}.success-orders>div>span:last-child{text-align:right}.success-total{display:flex;justify-content:space-between;align-items:center;padding:11px;margin-top:8px;border-radius:8px;background:#faf8fd}.success-total span{font-size:9px}.success-total b{font-size:16px;color:var(--purple)}.success-note{margin-top:12px!important;color:#6b6373!important}

@media(max-width:760px){.header-actions{gap:6px}.header-cart-btn{height:40px;padding:0 8px}.header-cart-btn span{display:none}.header-cart-btn b{min-width:22px;height:22px}.cart-drawer{width:min(100%,520px)}.checkout-modal{padding:21px}.product-row{grid-template-columns:52px minmax(0,1fr) auto}.product-add-btn{grid-column:2/4;width:100%;height:30px}.cart-item{grid-template-columns:44px minmax(0,1fr) auto}.cart-item img{width:44px;height:44px}.cart-item>strong{grid-column:2/4;text-align:right}.qty-stepper{grid-row:1/3;grid-column:3}.cart-store-total{grid-template-columns:1fr auto}.cart-store-total span:nth-child(2){display:none}}
@media(max-width:520px){.checkout-modal{width:100%;max-height:calc(100svh - 18px);border-radius:10px;padding:18px}.register-name-row{grid-template-columns:1fr}.cart-content{padding:12px}.cart-footer{padding:12px}.cart-head{padding-left:15px}.food-card-bottom{align-items:flex-end}.food-add-btn{height:28px;padding:0 10px}.multi-store-warning span{font-size:7.5px}}

/* ==========================================================
   AYOO v6.1 - LARGE / SENIOR-FRIENDLY TYPOGRAPHY
   Keeps the existing layout/branding, but removes tiny text.
   ========================================================== */
body{font-size:16px;line-height:1.55}

/* Header */
.location-copy small{font-size:12px}
.location-copy b{font-size:14px}
.header-actions>a{font-size:14px}
.header-order-btn{font-size:14px}
.header-cart-btn{font-size:14px}
.header-cart-btn b{font-size:13px}

/* Hero + service choices */
.eyebrow,.section-kicker{font-size:13px}
.hero-copy>p{font-size:18px;line-height:1.6}
.service-text b{font-size:19px}
.service-text small{font-size:13px;line-height:1.45}
.hero-card h2{font-size:27px}
.flow-list b{font-size:14px}
.flow-list>div>span{font-size:13px}
.hero-location-btn b{font-size:14px}
.discover-head p{font-size:15px}
.change-service{font-size:14px}

/* Store cards */
.store-status{font-size:12px}
.store-body h3{font-size:18px}
.store-meta{font-size:13px}
.store-address{font-size:13px;height:auto;min-height:38px}
.store-cta{font-size:14px;min-height:44px}
.empty-card b,.loading-card b{font-size:18px}
.loading-card span:last-child,.empty-card span{font-size:14px}

/* Pabili */
.pabili-form label{font-size:14px}
.pabili-form textarea,.pabili-form input{font-size:15px;line-height:1.5}
.pabili-submit{font-size:15px;min-height:50px}
.pabili-tip span{font-size:12px}
.pabili-tip p{font-size:14px;line-height:1.6}

/* Food browsing + filters */
.food-filter-title,.food-results-head h3{font-size:18px}
.food-filter-group>span,.food-filter-group>label,.food-sort-option,.food-cuisine-option{font-size:14px}
.food-filter-clear,.food-filter-toggle{font-size:14px}
.food-results-count{font-size:14px}
.food-card-category{font-size:12px}
.food-card h3,.food-card-title{font-size:17px}
.food-card-store{font-size:13px}
.food-card-meta{font-size:13px}
.food-card-price{font-size:16px}
.food-card-price del{font-size:13px}
.food-add-btn{font-size:14px;min-height:38px}

/* Location / address autocomplete */
.modal-kicker,.location-modal-kicker{font-size:12px}
.modal-copy,.location-modal p{font-size:14px;line-height:1.6}
.location-search input,.location-input{font-size:16px;min-height:50px}
.location-suggestion,.address-suggestion{font-size:14px;line-height:1.45}
.location-suggestion small,.address-suggestion small{font-size:12px}
.location-action,.location-save-btn,.location-current-btn{font-size:14px;min-height:46px}

/* Store/product modal */
.store-modal-copy>span,.store-modal-address{font-size:13px}
.store-modal-copy h2{font-size:25px}
.product-row-copy b{font-size:15px}
.product-row-copy small{font-size:12px;line-height:1.45}
.product-row-price{font-size:14px}
.product-add-btn{font-size:13px;min-height:36px}

/* Cart - intentionally larger for readability */
.cart-head span,.checkout-head>span{font-size:12px}
.cart-head h2,.checkout-head h2{font-size:26px}
.cart-empty h3{font-size:20px}
.cart-empty p{font-size:14px}
.multi-store-warning b{font-size:14px}
.multi-store-warning span{font-size:13px;line-height:1.55}
.cart-store-head span{font-size:11px}
.cart-store-head b{font-size:15px}
.cart-store-head small{font-size:12px}
.cart-item-copy b{font-size:14px;line-height:1.4}
.cart-item-copy small{font-size:12px}
.cart-item-copy button{font-size:12px}
.cart-item>strong{font-size:14px}
.qty-stepper b{font-size:13px}
.cart-store-total{font-size:12px}
.cart-store-total b{font-size:14px}
.cart-summary>div{font-size:14px}
.cart-summary .cart-grand{font-size:16px}
.cart-summary .cart-grand b{font-size:21px}
.cart-checkout-btn,.checkout-primary{font-size:15px;min-height:52px}
.cart-calculating,.cart-error,.cart-location-needed{font-size:13px}
.cart-location-needed b{font-size:14px}
.cart-location-needed span{font-size:12px}
.cart-location-needed button{font-size:13px}

/* Checkout / payment / registration */
.checkout-head p{font-size:13px;line-height:1.6}
.checkout-store-row b{font-size:14px}
.checkout-store-row small{font-size:12px}
.checkout-store-row>strong{font-size:14px}
.checkout-grand span{font-size:14px}
.checkout-grand b{font-size:20px}
.payment-option b{font-size:15px}
.payment-option small{font-size:13px;line-height:1.45}
.payment-coming{font-size:12px}
.register-form label{font-size:14px}
.register-form label small{font-size:12px}
.register-form input{height:50px;font-size:16px}
.id-upload-box b{font-size:14px}
.id-upload-box small{font-size:12px}
.register-error{font-size:13px;min-height:18px}
.checkout-processing h2{font-size:22px}
.checkout-processing p{font-size:14px}
.order-success h2{font-size:27px}
.order-success>p{font-size:14px}
.success-orders span b{font-size:14px}
.success-orders span small{font-size:12px}
.success-total span{font-size:14px}
.success-total b{font-size:20px}

/* Mobile: keep text readable, never shrink back to tiny sizes */
@media(max-width:760px){
  body{font-size:16px}
  .shell{width:min(100% - 24px,1180px)}
  .hero-copy>p{font-size:16px}
  .service-text b{font-size:18px}
  .service-text small{font-size:13px}
  .food-card h3,.food-card-title{font-size:16px}
  .food-card-store,.food-card-meta{font-size:12px}
  .cart-item-copy b{font-size:14px}
  .cart-item-copy small{font-size:12px}
  .checkout-modal{font-size:15px}
  .register-form input{font-size:16px}
}

@media(max-width:520px){
  .multi-store-warning span{font-size:12px}
  .location-copy small{font-size:11px}
  .location-copy b{font-size:13px}
}

/* AYOO PayMongo checkout */
.payment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.payment-grid .payment-option{position:relative;min-height:74px;border-color:#e2dce9;background:#fff;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.payment-grid .payment-option:hover{border-color:#bda5e8;background:#fdfbff}
.payment-grid .payment-option.locked{border-color:#d8d4dc;background:#f1f0f3;color:#88838d;cursor:pointer;filter:grayscale(1)}
.payment-grid .payment-option.locked:hover{border-color:#aaa4af;background:#e9e7eb}
.payment-grid .payment-option:has(input:checked){border-color:var(--purple);background:#f8f3ff;box-shadow:0 0 0 2px rgba(112,46,232,.08)}
.payment-grid .payment-option em{opacity:0;transform:scale(.8);transition:.15s ease}
.payment-grid .payment-option:has(input:checked) em{opacity:1;transform:scale(1)}
.payment-brand{width:48px;height:38px;border:1px solid #eee9f2;border-radius:8px;background:#fff;display:grid;place-items:center;padding:6px;overflow:hidden}
.payment-brand img{display:block;width:100%;height:100%;object-fit:contain}
.payment-brand.cod-brand{background:#f2ebff;color:var(--purple);font-size:20px;font-weight:800;border-color:#dfd1f8}
.payment-security-note{margin:12px 2px 0;padding:10px 12px;border-radius:8px;background:#f8f6fb;color:#716979;font-size:12px;line-height:1.55}
.provider-confirm{display:grid;grid-template-columns:62px 1fr;gap:14px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:15px;background:#fdfcff;margin:14px 0}
.provider-confirm .payment-brand{width:62px;height:48px}
.provider-confirm>div:last-child b,.provider-confirm>div:last-child small,.provider-confirm>div:last-child strong{display:block}
.provider-confirm>div:last-child b{font-size:16px}.provider-confirm>div:last-child small{font-size:12px;color:var(--muted);margin-top:2px}.provider-confirm>div:last-child strong{font-size:22px;color:var(--purple);margin-top:3px}
.provider-confirm.compact{margin-bottom:12px}
.card-payment-form{display:grid;gap:12px;margin-top:14px}.card-payment-form label{display:block;font-size:14px;font-weight:700;color:#5d5665}
.card-payment-form input{width:100%;height:52px;border:1px solid #ded8e8;border-radius:8px;padding:0 13px;margin-top:6px;outline:none;font:500 16px Poppins,sans-serif;background:#fff}
.card-payment-form input:focus{border-color:#aa87f1;box-shadow:0 0 0 3px rgba(112,46,232,.08)}
.card-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.payment-actions{display:grid;grid-template-columns:1fr 1.7fr;gap:10px;align-items:stretch;margin-top:4px}
.checkout-secondary{width:100%;min-height:52px;border:1px solid #d8d0e1;border-radius:7px;background:#fff;color:#5d5665;font:700 14px Poppins,sans-serif;cursor:pointer}
.checkout-secondary:hover{background:#faf8fd}.checkout-secondary.full{margin-top:12px}.checkout-primary.no-top{margin-top:0;height:auto;min-height:52px}.payment-link-btn{display:flex;align-items:center;justify-content:center;text-decoration:none;min-height:52px;padding:0 16px}
.qr-payment{text-align:center;border:1px solid var(--line);border-radius:12px;background:#fff;padding:18px;margin-top:12px}.qr-payment img{display:block;width:min(280px,82vw);aspect-ratio:1/1;object-fit:contain;margin:0 auto 12px;border-radius:8px}.qr-payment b,.qr-payment small{display:block}.qr-payment b{font-size:24px;color:var(--purple)}.qr-payment small{font-size:12px;color:var(--muted);margin-top:3px}
.payment-test-warning{border:1px solid #f0cf88;background:#fff9e9;color:#795314;border-radius:8px;padding:10px 12px;font-size:12px;line-height:1.55}.test-mode-badge{display:inline-flex;vertical-align:middle;margin-left:5px;border-radius:999px;background:#fff1bd;color:#735008;padding:3px 7px;font-size:10px;letter-spacing:.04em}
.payment-waiting{display:flex;flex-direction:column;align-items:center;text-align:center;border-radius:10px;background:#faf8fd;padding:20px 14px;margin-top:14px}.payment-waiting b{font-size:16px;margin-top:9px}.payment-waiting small{font-size:12px;color:var(--muted);line-height:1.55;margin-top:4px;max-width:390px}.mini-spinner{width:26px;height:26px;border:3px solid #e8ddf8;border-top-color:var(--purple);border-radius:50%;animation:ayooSpin .75s linear infinite}
@media(max-width:620px){.payment-grid{grid-template-columns:1fr}.payment-grid .payment-option{min-height:68px}.card-form-row{grid-template-columns:1fr}.payment-actions{grid-template-columns:1fr}.checkout-secondary{order:2}.provider-confirm{grid-template-columns:54px 1fr}.provider-confirm .payment-brand{width:54px;height:44px}}

/* ==========================================================
   AYOO v9.0 - LANDING DISCOVERY / TOP VENDORS / LIVE SEARCH
   ========================================================== */
.home-discovery{padding:58px 0 68px;background:#fff;border-bottom:1px solid #f1edf6}
.home-discovery-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px}
.home-discovery-head h2{font-size:clamp(31px,4vw,46px);line-height:1.05;letter-spacing:-.04em;margin:5px 0 7px}
.home-discovery-head p{margin:0;color:var(--muted);font-size:15px;max-width:720px}
.home-location-link{max-width:340px;border:1px solid #ded5ee;background:#fff;color:var(--purple);border-radius:8px;min-height:46px;padding:9px 13px;font-size:14px;font-weight:700;display:flex;align-items:center;gap:8px;text-align:left}
.home-location-link span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-location-link:hover{border-color:#baa5e8;background:#fbf8ff}

.vendor-search-shell{position:relative;margin:0 0 34px;z-index:12}
.vendor-search-box{height:58px;border:1px solid #ded6eb;background:#fff;display:grid;grid-template-columns:38px minmax(0,1fr) 40px;align-items:center;border-radius:10px;box-shadow:0 10px 28px rgba(58,31,101,.07);overflow:hidden}
.vendor-search-box:focus-within{border-color:#a986ef;box-shadow:0 0 0 4px rgba(112,38,223,.07),0 12px 30px rgba(58,31,101,.08)}
.vendor-search-icon{display:grid;place-items:center;color:var(--purple);font-size:22px;font-weight:700}
.vendor-search-box input{width:100%;height:100%;border:0;outline:0;background:transparent;font-size:16px;color:var(--ink);padding:0 4px}
.vendor-search-box input::placeholder{color:#9a94a6}
.vendor-search-clear{border:0;background:transparent;color:#8b8494;font-size:21px;height:100%}
.vendor-search-clear:hover{color:var(--purple)}
.vendor-search-sort{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.vendor-search-sort button{height:38px;border:1px solid #e2dceb;background:#fff;color:#625b70;border-radius:7px;padding:0 13px;font-size:13px;font-weight:600}
.vendor-search-sort button.active,.vendor-search-sort button:hover{background:#f1e9ff;border-color:#c7b2ef;color:var(--purple)}
.vendor-search-results{display:none;position:absolute;left:0;right:0;top:108px;background:#fff;border:1px solid #e2dbea;box-shadow:0 24px 60px rgba(49,28,87,.16);border-radius:10px;max-height:520px;overflow:auto;padding:8px}
.vendor-search-results.show{display:block}
.search-result-head{display:flex;align-items:center;justify-content:space-between;padding:8px 10px 10px;border-bottom:1px solid #f0ecf4}
.search-result-head b{font-size:13px}.search-result-head span{font-size:12px;color:var(--muted)}
.search-result-row{width:100%;border:0;background:#fff;display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:11px;align-items:center;text-align:left;padding:9px 10px;border-bottom:1px solid #f4f0f7;color:var(--ink)}
.search-result-row:last-child{border-bottom:0}.search-result-row:hover{background:#fbf9ff}
.search-result-row img{width:54px;height:54px;border-radius:7px;object-fit:cover;background:#f6f1fc}
.search-result-row span b,.search-result-row span small{display:block}.search-result-row span b{font-size:14px}.search-result-row span small{font-size:12px;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.search-result-row em{font-style:normal;font-size:12px;font-weight:700;color:#655d70;white-space:nowrap}
.search-empty,.search-loading{padding:24px;text-align:center;color:var(--muted);font-size:13px}.search-empty b,.search-empty span{display:block}.search-empty b{font-size:15px;color:var(--ink);margin-bottom:3px}

.landing-blocks{display:grid;gap:42px}
.landing-block{min-width:0}.landing-block-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}
.landing-block-head>div>span{display:block;color:var(--purple);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.landing-block-head h3{font-size:27px;letter-spacing:-.03em;margin:3px 0 0}
.landing-block-head>button{height:39px;border:1px solid #e1d8ee;background:#fff;color:var(--purple);border-radius:7px;padding:0 12px;font-size:13px;font-weight:700}
.landing-block-head>button:hover{background:#f7f2ff;border-color:#c7b3ed}
.landing-card-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.product-row-home{grid-template-columns:repeat(4,minmax(0,1fr))}

.home-vendor-card,.home-product-card{position:relative;border:1px solid var(--line);background:#fff;border-radius:10px;overflow:hidden;box-shadow:var(--shadow-soft);min-width:0;transition:.16s}
.home-vendor-card:hover,.home-product-card:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(52,29,99,.10);border-color:#d7cbea}
.home-card-hit{position:absolute;inset:0;border:0;background:transparent;z-index:2;cursor:pointer}
.home-vendor-cover{height:152px;background:linear-gradient(145deg,#faf7ff,#f2edf9);position:relative;overflow:hidden;display:grid;place-items:center}
.home-vendor-cover img{width:100%;height:100%;object-fit:cover}.home-vendor-cover img.fallback{width:102px;height:102px;object-fit:contain}
.home-open-badge,.home-rank-badge,.home-new-badge,.home-product-popular{position:absolute;z-index:3;top:10px;padding:5px 8px;border-radius:6px;background:#fff;box-shadow:0 5px 14px rgba(32,18,59,.09);font-size:11px;font-weight:700}
.home-open-badge{left:10px}.home-open-badge.open{color:#16805a}.home-open-badge.closed{color:#a54d56}.home-rank-badge{right:10px;color:var(--purple)}.home-new-badge{right:10px;color:#b97600;background:#fff9df}
.home-vendor-body{padding:14px}.home-vendor-body h4{font-size:18px;margin:0 0 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-vendor-body p{font-size:13px;line-height:1.45;color:var(--muted);margin:0 0 11px;height:38px;overflow:hidden}
.home-vendor-facts{display:flex;flex-wrap:wrap;gap:6px}.home-vendor-facts span{font-size:12px;color:#635c6e;background:#faf8fc;border:1px solid #eee8f3;border-radius:6px;padding:5px 7px}
.home-vendor-card.is-closed{opacity:1}.home-product-card.is-closed{opacity:.76}

.home-product-photo{height:148px;background:#f7f3fb;position:relative;overflow:hidden;display:grid;place-items:center}.home-product-photo img{width:100%;height:100%;object-fit:cover}.home-product-photo img.fallback{width:94px;height:94px;object-fit:contain}.home-product-popular{left:10px;color:#a05c00;background:#fff5d5}.home-product-photo .home-open-badge{left:auto;right:10px}
.home-product-body{padding:13px}.home-product-category{font-size:11px;font-weight:700;color:var(--purple);text-transform:uppercase;letter-spacing:.04em}.home-product-body h4{font-size:16px;line-height:1.25;margin:4px 0 3px;min-height:40px}.home-product-body>p{font-size:12px;color:var(--muted);margin:0 0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-product-meta{display:flex;gap:8px;color:#736c7d;font-size:12px;margin-bottom:10px}.home-product-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;position:relative;z-index:4}.home-product-price{display:flex;align-items:baseline;gap:5px}.home-product-price b{font-size:16px;color:var(--ink)}.home-product-price del{font-size:11px;color:#9a94a1}.home-add-button{height:34px;border:0;border-radius:7px;background:#efe7ff;color:var(--purple);font-size:12px;font-weight:700;padding:0 11px;position:relative;z-index:5}.home-add-button:hover{background:#e4d6ff}.home-add-button:disabled{opacity:.55;cursor:not-allowed}

.split-home-blocks{display:grid;grid-template-columns:1fr 1fr;gap:22px}.split-home-column{min-width:0}.compact-home-row{grid-template-columns:repeat(2,minmax(0,1fr))}
.compact-home-row .home-vendor-cover{height:118px}.compact-home-row .home-vendor-body h4{font-size:16px}.compact-home-row .home-vendor-body p{font-size:12px;min-height:34px}

.home-skeleton-card{border:1px solid #eee8f3;border-radius:10px;padding:0 12px 14px;overflow:hidden;background:#fff}.home-skeleton-card>span{display:block;height:130px;margin:0 -12px 13px;background:linear-gradient(90deg,#f3eff7 20%,#faf8fc 35%,#f3eff7 50%);background-size:300% 100%;animation:ayooSkeleton 1.2s linear infinite}.home-skeleton-card i{display:block;height:11px;border-radius:5px;background:#f1edf5;margin-top:8px}.home-skeleton-card i:nth-child(2){width:76%}.home-skeleton-card i:nth-child(3){width:92%}.home-skeleton-card i:nth-child(4){width:56%}@keyframes ayooSkeleton{0%{background-position:100% 0}100%{background-position:0 0}}
.home-empty-state{grid-column:1/-1;border:1px dashed #dcd2f3;border-radius:9px;background:#fbfaff;padding:24px;color:var(--muted);font-size:13px;text-align:center}.home-empty-state b,.home-empty-state span{display:block}.home-empty-state b{color:var(--ink);font-size:16px;margin-bottom:3px}

@media(max-width:980px){
  .landing-card-row{grid-template-columns:repeat(2,minmax(0,1fr))}.product-row-home{grid-template-columns:repeat(2,minmax(0,1fr))}
  .split-home-blocks{grid-template-columns:1fr}.compact-home-row{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .home-discovery{padding:42px 0 50px}.home-discovery-head{align-items:flex-start;flex-direction:column}.home-location-link{max-width:100%;width:100%}
  .vendor-search-shell{margin-bottom:28px}.vendor-search-box{height:54px}.vendor-search-box input{font-size:15px}.vendor-search-results{top:106px;max-height:62vh}
  .search-result-row{grid-template-columns:48px minmax(0,1fr)}.search-result-row img{width:48px;height:48px}.search-result-row em{grid-column:2;text-align:left;margin-top:-6px}
  .landing-blocks{gap:34px}.landing-block-head h3{font-size:24px}.landing-block-head>button{height:37px}
  .landing-card-row,.product-row-home,.compact-home-row{grid-template-columns:1fr 1fr;gap:10px}
  .home-vendor-cover,.home-product-photo{height:126px}.home-vendor-body,.home-product-body{padding:11px}.home-vendor-body h4{font-size:16px}.home-vendor-body p{font-size:12px;height:35px}.home-vendor-facts span{font-size:11px;padding:4px 5px}.home-product-body h4{font-size:15px;min-height:38px}.home-product-bottom{align-items:flex-end;flex-direction:column}.home-add-button{width:100%}
}
@media(max-width:480px){
  .shell{width:min(100% - 24px,1180px)}
  .vendor-search-sort{display:grid;grid-template-columns:repeat(3,1fr)}.vendor-search-sort button{padding:0 6px;font-size:12px}
  .landing-card-row,.product-row-home,.compact-home-row{grid-template-columns:1fr}.home-vendor-cover,.home-product-photo{height:168px}
  .home-product-bottom{flex-direction:row;align-items:center}.home-add-button{width:auto}
  .landing-block-head{align-items:center}.landing-block-head>div>span{font-size:11px}.landing-block-head h3{font-size:22px}.landing-block-head>button{font-size:12px;padding:0 9px}
}


/* v9.1 restore: exact delivery pin map inside address modal */
.delivery-map-shell{position:relative;margin-top:14px;border:1px solid #ded8ea;border-radius:10px;overflow:hidden;background:#f3f1f6}
.delivery-map{width:100%;height:315px;background:#f3f1f6}
.delivery-map-guide{display:flex;align-items:center;gap:10px;padding:11px 13px;background:#fff;border-top:1px solid #ece8f1}
.delivery-map-guide>span{flex:0 0 34px;width:34px;height:34px;border-radius:8px;display:grid;place-items:center;background:#f1eaff;color:var(--purple);font-size:18px;font-weight:800}
.delivery-map-guide div{min-width:0}
.delivery-map-guide b,.delivery-map-guide small{display:block}
.delivery-map-guide b{font-size:14px;color:var(--ink)}
.delivery-map-guide small{margin-top:2px;font-size:12px;line-height:1.45;color:var(--muted)}
@media(max-width:760px){.delivery-map{height:280px}}
@media(max-width:520px){.delivery-map{height:235px}.delivery-map-guide{padding:9px 10px}.delivery-map-guide b{font-size:13px}.delivery-map-guide small{font-size:11px}}

/* Partner entry points */
.partner-menu{position:relative;flex-shrink:0}.partner-menu summary{cursor:pointer;list-style:none;font-size:12px;font-weight:600;color:#7526d9;padding:10px 12px;border:1px solid #e5d6fa;border-radius:9px;background:#faf5ff;white-space:nowrap}.partner-menu summary::-webkit-details-marker{display:none}.partner-menu summary:focus-visible{outline:3px solid #bf96ef;outline-offset:3px}.partner-menu-links{position:absolute;top:calc(100% + 10px);right:0;width:300px;background:white;box-shadow:0 18px 45px #35144e24;border:1px solid #e7dcf3;border-radius:14px;padding:8px;z-index:60}.partner-menu-links a{display:block;padding:15px;border-radius:9px}.partner-menu-links a:hover{background:#f7f0ff}.partner-menu-links b{display:block;color:#7026df;font-size:15px}.partner-menu-links small{display:block;font-size:11px;color:#8b7b99;margin-top:4px}.hero-partner-link{display:inline-flex;align-items:center;gap:18px;margin-top:22px;font-size:15px;font-weight:600;color:#7822d6}.hero-partner-link span{font-size:12px;font-weight:400;color:#8a789b}.home-partners{scroll-margin-top:135px;padding:66px 0;background:#faf6ff;border-top:1px solid #eee4f8}.home-partners-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}.home-partners h2{font-size:36px;letter-spacing:-.035em;margin:9px 0}.home-partners-head p{color:#83738e;font-size:15px;margin:0}.home-partners-head>a{font-size:14px;font-weight:600;color:#8223d0}.home-partner-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px}.home-partner-cards>a{display:grid;grid-template-columns:40% 1fr;overflow:hidden;border:1px solid #e8dcf4;border-radius:18px;background:white;transition:transform .2s,box-shadow .2s}.home-partner-cards>a:hover{transform:translateY(-3px);box-shadow:0 14px 36px #56257818}.home-partner-cards img{height:100%;width:100%;object-fit:cover;min-height:260px}.home-partner-cards>a>div{padding:28px 22px}.home-partner-cards span{font-size:10px;letter-spacing:.1em;font-weight:700;color:#ac72cd}.home-partner-cards h3{font-size:25px;line-height:1.25;letter-spacing:-.025em;margin:14px 0 12px}.home-partner-cards p{font-size:13px;color:#8a7a97;line-height:1.7;margin-bottom:22px}.home-partner-cards b{font-size:12px;color:#8425cf}
@media(max-width:1020px){.header-actions{gap:10px}.home-partner-cards>a{grid-template-columns:1fr}.home-partner-cards img{height:230px;min-height:0}}
@media(max-width:760px){.header-actions .partner-menu{display:none}.hero-partner-link{display:flex;justify-content:space-between;gap:10px;padding:15px 18px;background:#f4eaff;border:1px solid #e5d3fa;border-radius:12px}.hero-partner-link span{font-size:11px}.home-partners{padding:44px 0}.home-partners-head{display:block}.home-partners-head>a{display:inline-block;margin-top:16px}.home-partners h2{font-size:30px}.home-partner-cards{grid-template-columns:1fr}.home-partner-cards>a{grid-template-columns:38% 1fr}.home-partner-cards img{height:100%;min-height:210px}.home-partner-cards h3{font-size:22px}.home-partner-cards>a>div{padding:24px 18px}}
@media(max-width:380px){.hero-partner-link{align-items:flex-start;flex-direction:column}.home-partner-cards>a{grid-template-columns:1fr}.home-partner-cards img{height:210px;min-height:0}}

/* Account-aware responsive ordering header */
[hidden]{display:none!important}.partner-top-strip{background:linear-gradient(100deg,#6b23ce,#a82cdd);color:white;font-size:12px}.partner-top-strip>.shell{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:20px}.partner-top-strip a{font-weight:600}.partner-top-strip b{margin-left:12px}.ayoo-header{background:#fff;backdrop-filter:none;box-shadow:0 3px 16px #44296506}.header-primary{display:flex;align-items:center;gap:30px;min-height:88px}.header-primary .brand img{width:62px;height:62px}.header-delivery-controls{display:flex;align-items:center;flex:1;gap:10px;min-width:0}.header-primary .location-chip{min-width:0;flex:1;max-width:335px;margin:0;height:50px;background:#faf7fe;border-color:#eee5f7;border-radius:12px}.header-primary .location-copy small{font-size:10px}.header-primary .location-copy b{font-size:13px}.header-time{display:flex;align-items:center;gap:9px;background:white;border:0;border-radius:10px;padding:10px;color:#66536f;cursor:pointer;text-align:left;max-width:260px}.header-time>span:first-child{color:#8631d9;font-size:26px}.header-time small{display:block;font-size:10px;color:#9b87aa}.header-time b{display:block;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:175px}.header-account,.guest-account,.member-account{display:flex;align-items:center;gap:12px;flex-shrink:0}.header-login,.header-signup{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 18px;border-radius:10px;font-size:13px;font-weight:600;white-space:nowrap}.header-login{border:1px solid #e0d1ed;color:#705484;background:white}.header-signup{border:0;background:linear-gradient(105deg,#7a26df,#a230dc);color:white;box-shadow:0 6px 20px #862bd022}.header-account .header-cart-btn{height:42px;border-radius:10px;font-size:13px}.header-pay{height:42px;padding:10px 14px;border:1px solid #e6d4f8;border-radius:10px;background:#f6ecff;color:#8130d2;font-weight:600;font-size:12px}.header-profile{display:flex;align-items:center;gap:8px;color:#795588;font-size:13px;font-weight:600;max-width:135px}.header-profile img{width:34px;height:34px;border-radius:50%;object-fit:cover}.header-profile span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-secondary{display:grid;grid-template-columns:1fr minmax(280px,450px);gap:30px;align-items:center;min-height:68px}.header-services{display:flex;align-items:stretch;gap:22px;height:68px;white-space:nowrap}.header-services button{position:relative;border:0;background:none;color:#8b7894;font-weight:500;font-size:14px;padding:0 6px;display:flex;align-items:center;gap:9px}.header-services button>span{font-size:23px}.header-services button.active,.header-services button:hover{color:#7a28cd}.header-services button.active:after{content:'';position:absolute;left:0;right:0;bottom:0;height:3px;background:#872cd8;border-radius:5px}.header-secondary .vendor-search-shell{margin:0;width:100%;z-index:55}.header-secondary .vendor-search-box{height:44px;background:#faf7fe;border-color:#eee5f7;border-radius:100px;box-shadow:none}.header-secondary .vendor-search-box input{font-size:13px}.header-secondary .vendor-search-sort{display:none}.header-secondary .vendor-search-results{top:52px}.header-secondary .vendor-search-results.show{box-shadow:0 14px 40px #45296320}.fulfillment-dialog{width:min(460px,calc(100% - 24px));border:0;border-radius:20px;padding:28px;color:#36233e;box-shadow:0 30px 80px #24103544}.fulfillment-dialog::backdrop{background:#26113666}.fulfillment-dialog form{display:grid;gap:16px}.fulfillment-dialog-head{display:flex;align-items:start;gap:14px}.fulfillment-dialog h2{font-size:23px;line-height:1.3;margin:0;flex:1}.fulfillment-dialog-head button{border:0;background:#f4edf8;border-radius:50%;height:30px;width:30px;color:#9267a7;font-size:24px;flex-shrink:0}.fulfillment-dialog p{margin:0;color:#9b84a8;font-size:12px}.fulfillment-option{display:flex;align-items:start;gap:12px;border:1px solid #e8dcf0;border-radius:12px;padding:15px;cursor:pointer}.fulfillment-option input{accent-color:#8c32d9;margin-top:6px}.fulfillment-option b{display:block;font-size:14px}.fulfillment-option small{display:block;font-size:12px;color:#a28cac;line-height:1.6;margin-top:5px}#scheduledTimeField{display:grid;gap:7px;font-size:13px}#scheduledTimeField small{font-size:11px;color:#9b83a8}#scheduledTimeInput{border:1px solid #dcccE8;border-radius:9px;padding:12px;font-size:16px;min-width:0;width:100%}#timingError{color:#b34d69}.checkout-fulfillment{padding:12px 14px;border-radius:9px;background:#f5edff;color:#7e44a9;font-size:12px;margin:14px 0;line-height:1.6}.checkout-account-options{display:grid;gap:12px}.checkout-account-options a{display:flex;justify-content:center;align-items:center;border:1px solid #dbc6ed;border-radius:10px;padding:14px;color:#8434bf;font-size:14px;font-weight:600}.checkout-account-options a:first-child{background:#832ed5;color:white;border:0}
@media(max-width:1000px){.header-primary{gap:16px}.header-delivery-controls{gap:4px}.header-secondary{gap:16px;grid-template-columns:1fr minmax(220px,360px)}.header-services{gap:10px}.header-services button{font-size:13px;gap:6px}.header-services button>span{font-size:19px}.header-time{padding:8px 6px}.header-time b{max-width:130px}}
@media(max-width:760px){.partner-top-strip>.shell{min-height:32px;font-size:10px}.header-primary{display:grid;grid-template-columns:auto 1fr;gap:8px 12px;padding-top:8px;padding-bottom:10px}.header-primary .brand img{height:46px;width:46px}.header-account{grid-column:2;grid-row:1;justify-self:end;gap:8px}.guest-account,.member-account{gap:8px}.header-login,.header-signup{min-height:35px;padding:8px 12px;font-size:11px}.header-account .header-cart-btn{height:35px;padding:0 10px;font-size:11px}.header-delivery-controls{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;width:100%}.header-primary .location-chip{height:44px;max-width:none;padding:0 9px}.header-primary .location-copy small{display:block;font-size:9px}.header-primary .location-copy b{font-size:11px}.header-time{padding:6px 2px;gap:7px}.header-time small{font-size:9px}.header-time b{font-size:11px;max-width:120px}.header-time>span:first-child{font-size:22px}.header-secondary{display:flex;flex-direction:column;gap:10px;align-items:stretch;padding-bottom:12px}.header-services{height:48px;justify-content:space-between;gap:6px}.header-services button{font-size:12px;padding:0 4px;gap:5px}.header-services button>span{font-size:18px}.header-secondary .vendor-search-box{height:42px}.header-secondary .vendor-search-results{top:48px;max-height:55vh}.header-pay{height:35px;padding:8px;font-size:10px}.header-profile{font-size:11px;max-width:90px;gap:5px}.header-profile img{height:28px;width:28px}.home-partners{scroll-margin-top:245px}}
@media(max-width:380px){.header-services button{font-size:11px}.header-services button>span{display:none}.header-profile span{max-width:53px}.header-time b{max-width:105px}.partner-top-strip>.shell>span{font-size:9px}}

.header-services svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}@media(max-width:760px){.header-services svg{width:18px;height:18px}}

/* AYOO customer storefront — professional tablet/mobile navigation */
.customer-menu-toggle{display:none;width:44px;height:44px;padding:0;border:1px solid #e8dcf3;border-radius:12px;background:#fff;align-items:center;justify-content:center;flex-direction:column;gap:4px;box-shadow:0 6px 18px rgba(69,31,111,.07)}
.customer-menu-toggle span{width:19px;height:2px;border-radius:9px;background:#52256f;transition:transform .2s,opacity .2s}
.customer-nav-layer{position:fixed;inset:0;z-index:120;visibility:hidden;pointer-events:none}
.customer-nav-layer.open{visibility:visible;pointer-events:auto}
.customer-nav-scrim{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(25,12,38,.52);opacity:0;transition:opacity .24s;backdrop-filter:blur(3px)}
.customer-nav-layer.open .customer-nav-scrim{opacity:1}
.customer-nav-drawer{position:absolute;right:0;top:0;bottom:0;width:min(390px,calc(100% - 34px));display:flex;flex-direction:column;background:#fff;box-shadow:-24px 0 70px rgba(28,11,44,.28);transform:translateX(104%);transition:transform .27s cubic-bezier(.22,.8,.28,1);padding-top:env(safe-area-inset-top)}
.customer-nav-layer.open .customer-nav-drawer{transform:translateX(0)}
.customer-nav-head{min-height:84px;display:grid;grid-template-columns:48px 1fr 42px;align-items:center;gap:11px;padding:14px 18px;border-bottom:1px solid #eee7f3}
.customer-nav-head>a img{width:48px;height:48px;object-fit:contain}.customer-nav-head small,.customer-nav-head strong{display:block}.customer-nav-head small{font-size:10px;letter-spacing:.13em;color:#9b7aaa;font-weight:700}.customer-nav-head strong{font-size:17px;color:#2f173c;margin-top:2px}.customer-nav-head>button{width:38px;height:38px;border:0;border-radius:11px;background:#f6f0fa;color:#745284;font-size:27px;line-height:1}
.customer-nav-scroll{padding:17px 18px 22px;overflow-y:auto;overscroll-behavior:contain;flex:1}
.customer-nav-card{border-radius:16px;background:linear-gradient(135deg,#6e25d4,#962fda);padding:6px;box-shadow:0 12px 28px rgba(112,38,223,.19)}
.customer-nav-card button{width:100%;min-height:62px;display:grid;grid-template-columns:35px 1fr 18px;align-items:center;gap:10px;padding:9px 11px;border:0;background:transparent;color:#fff;text-align:left}.customer-nav-card button+button{border-top:1px solid rgba(255,255,255,.17)}.customer-nav-card button>span{width:32px;height:32px;border-radius:10px;background:rgba(255,255,255,.15);display:grid;place-items:center;font-size:18px}.customer-nav-card small,.customer-nav-card b{display:block}.customer-nav-card small{font-size:10px;opacity:.7}.customer-nav-card b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:245px}.customer-nav-card i{font-style:normal;font-size:22px;opacity:.7}
.customer-nav-links{margin-top:22px;display:grid;gap:6px}.customer-nav-links>p{font-size:10px;letter-spacing:.14em;color:#9d86aa;font-weight:700;margin:0 4px 7px}.customer-nav-links button{width:100%;min-height:58px;display:grid;grid-template-columns:40px 1fr;grid-template-rows:auto auto;align-items:center;column-gap:11px;padding:8px 10px;border:0;border-radius:12px;background:transparent;text-align:left;color:#3d2947}.customer-nav-links button:hover,.customer-nav-links button:focus-visible{background:#f7f1fc;outline:none}.customer-nav-links button>span{grid-row:1/3;width:40px;height:40px;border-radius:11px;background:#f4ebfb;display:grid;place-items:center;font-size:18px}.customer-nav-links b{font-size:13px;align-self:end}.customer-nav-links small{font-size:10px;color:#97859f;align-self:start}
.customer-nav-account{padding:15px 18px max(17px,env(safe-area-inset-bottom));border-top:1px solid #eee7f3;background:#fdfbfe}.customer-nav-account>div{display:grid;grid-template-columns:1fr 1fr;gap:9px}.customer-nav-account>div>a{min-height:45px;display:flex;align-items:center;justify-content:center;border:1px solid #dfd0eb;border-radius:11px;color:#72399e;font-size:12px;font-weight:600;padding:7px}.customer-nav-account>div>a.primary{border-color:transparent;color:#fff;background:linear-gradient(105deg,#7425dc,#a42ddb)}.customer-nav-account>div[data-mobile-member]>a:first-child{display:block;text-align:left}.customer-nav-account>div[data-mobile-member] span,.customer-nav-account>div[data-mobile-member] b{display:block}.customer-nav-account>div[data-mobile-member] span{font-size:9px;color:#9c84a8}.customer-nav-account>div[data-mobile-member] b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.customer-nav-partner{display:block;margin-top:12px;text-align:center;font-size:10px;color:#856f91;font-weight:600}.customer-nav-open{overflow:hidden;touch-action:none}

.customer-simple-nav{display:grid;gap:7px;padding:18px;overflow:auto}.customer-simple-nav a{min-height:68px;display:grid;grid-template-columns:44px 1fr;align-items:center;gap:12px;border-radius:14px;padding:10px;background:#fbf8fd;border:1px solid #eee5f4}.customer-simple-nav a>span{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#efe4fb;color:#752ac9;font-weight:700}.customer-simple-nav b,.customer-simple-nav small{display:block}.customer-simple-nav b{font-size:13px}.customer-simple-nav small{font-size:10px;color:#917f9b;margin-top:2px}

@media(max-width:1024px){
  .shell{width:min(100% - 32px,1180px)}
  .partner-top-strip>.shell{min-height:32px}.partner-top-strip{font-size:10px}
  .header-primary{min-height:74px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px}.header-primary .brand img{width:50px;height:50px}
  .header-delivery-controls{min-width:0}.header-primary .location-chip{height:44px;max-width:none}.header-time{display:none}
  .header-account{gap:8px}.header-account>.guest-account,.header-account>.member-account{display:none!important}.header-account .header-cart-btn{height:44px;padding:0 11px}.header-account .header-cart-btn span{display:none}.customer-menu-toggle{display:flex}
  .header-secondary{display:block;min-height:auto;padding-bottom:12px}.header-services{display:none}.header-secondary .vendor-search-shell{max-width:none}.header-secondary .vendor-search-box{height:45px}
  .hero-section{padding:42px 0 48px}.hero-layout{grid-template-columns:minmax(0,1fr) 310px;gap:34px}.hero-copy h1{font-size:clamp(43px,6.2vw,62px)}
  .home-partner-cards,.split-home-blocks{gap:16px}
  .customer-header nav{display:flex;align-items:center;gap:14px}.customer-header nav>a{font-size:13px;color:#71567f;font-weight:600}.customer-header .customer-menu-toggle{display:none}
}
@media(max-width:760px){
  .shell{width:min(100% - 24px,1180px)}
  .partner-top-strip>.shell{min-height:30px}.partner-top-strip>.shell>span{max-width:54%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.partner-top-strip b{margin-left:5px}
  .site-header{top:0}.header-primary{min-height:66px;display:grid;grid-template-columns:44px minmax(0,1fr) auto;padding:7px 0;gap:8px}.header-primary .brand img{width:43px;height:43px}
  .header-delivery-controls{grid-column:2;grid-row:1;display:block;min-width:0}.header-primary .location-chip{height:42px;width:100%;border:0;background:transparent;padding:0 3px;gap:7px}.header-primary .location-pin{width:31px;height:31px;flex:0 0 auto}.header-primary .location-copy small{font-size:9px}.header-primary .location-copy b{font-size:11px}.header-primary .location-chip .chev{display:none}
  .header-account{grid-column:3;grid-row:1;gap:6px}.header-account .header-cart-btn{width:40px;height:40px;padding:0;border-radius:11px}.header-account .header-cart-btn b{min-width:22px;height:22px}.customer-menu-toggle{width:40px;height:40px;border-radius:11px}
  .header-secondary{padding-bottom:9px}.header-secondary .vendor-search-box{height:42px}.header-secondary .vendor-search-box input{font-size:12px}.header-secondary .vendor-search-results{top:47px;max-height:58vh}
  .hero-section{padding:34px 0 38px}.hero-layout{grid-template-columns:1fr;gap:24px}.hero-copy h1{font-size:clamp(39px,12vw,54px);max-width:620px}.hero-copy>p{font-size:15px;margin-bottom:20px}.hero-side{display:none}.service-launcher{grid-template-columns:1fr 1fr;gap:8px}.service-choice{min-height:82px;grid-template-columns:48px minmax(0,1fr) 24px;padding:10px;gap:8px}.service-art{width:48px;height:48px}.service-art img{width:44px;height:44px}.service-text b{font-size:15px}.service-text small{font-size:10px}.hero-partner-link{margin-top:15px}
  .home-discovery{padding-top:35px}.home-discovery-head,.discover-head{align-items:flex-start;gap:14px}.home-discovery-head h2,.discover-head h2{font-size:27px}.home-location-link{max-width:46%;font-size:10px}.landing-block{padding:18px 14px}.landing-block-head h3{font-size:19px}.landing-card-row{grid-auto-columns:minmax(230px,78vw)}.split-home-blocks{grid-template-columns:1fr}.home-partner-cards{grid-template-columns:1fr}.home-partner-cards>a{min-height:180px}.brand-strip-inner{gap:12px;font-size:12px}.footer-main{grid-template-columns:1fr 1fr;gap:26px}.footer-brand{grid-column:1/-1}
  .customer-header{padding-top:12px!important;padding-bottom:12px!important}.customer-header .brand img{width:50px;height:50px}.customer-header nav>a{display:none}.customer-header .customer-menu-toggle{display:flex}
}
@media(max-width:480px){
  .service-launcher{grid-template-columns:1fr}.service-choice{min-height:72px}.home-discovery-head,.discover-head{display:block}.home-location-link,.change-service{max-width:100%;margin-top:14px}.landing-card-row{grid-auto-columns:minmax(215px,86vw)}.footer-main{grid-template-columns:1fr}.footer-brand{grid-column:auto}.cart-drawer{width:100%}
}
@media(prefers-reduced-motion:reduce){.customer-nav-scrim,.customer-nav-drawer,.customer-menu-toggle span{transition:none}}

.home-vendor-body{position:relative}.home-store-logo{width:44px;height:44px;object-fit:contain;border-radius:10px;background:white;border:1px solid #eee5f4;margin-bottom:9px}.home-vendor-cover img:not(.fallback){object-fit:cover}

.home-vendor-cover{height:auto!important;aspect-ratio:3}.home-product-photo,.food-photo{height:auto!important;aspect-ratio:1}.home-vendor-cover img{width:100%;height:100%;object-fit:cover}

.home-vendor-cover img{object-fit:contain;background:#f5eefb}

.home-vendor-cover img:not(.fallback){object-fit:contain}

@media(max-width:540px){.product-row-home{grid-template-columns:repeat(2,minmax(0,1fr))}.home-product-body{padding:10px}.home-product-body h4{font-size:13px}.home-product-meta{font-size:11px}}

.home-product-photo,.food-photo{width:min(100%,180px);margin:12px auto 0;border-radius:12px}

/* Front-page vendor posters use a separate 16:9 upload. */
.home-vendor-cover{aspect-ratio:16/9}
.home-vendor-cover img:not(.fallback){object-fit:cover}
.home-vendor-body{padding:10px 12px 12px}
.home-vendor-summary{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0}
.home-vendor-summary .home-store-logo{width:44px;height:44px;margin:0;object-fit:cover;border-radius:50%;border:1px solid #e8deef;background:#fff}
.home-store-logo-fallback{display:grid;place-items:center;color:#7927c8;font-size:17px;font-weight:800;background:#f5eaff!important}
.home-vendor-identity{min-width:0}.home-vendor-identity h4{font-size:15px;line-height:1.25;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-vendor-identity p{height:auto;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;line-height:1.35;color:#8a7d93}
.home-vendor-metrics{display:grid;justify-items:end;align-self:stretch;align-content:space-between;gap:5px;white-space:nowrap;color:#786d82;font-size:11px}.home-vendor-rating{color:#705b80}
.home-rank-badge,.home-new-badge{display:none!important}
@media(max-width:480px){[data-home-block="top-vendors"],[data-home-block="new-vendors"],[data-home-block="recommended"]{grid-template-columns:1fr}.home-vendor-summary{grid-template-columns:42px minmax(0,1fr) auto}.home-vendor-summary .home-store-logo{width:42px;height:42px}}

/* Locked COD stays a usable button, not a disabled radio/label. */
.payment-grid button.payment-option.locked{width:100%;text-align:left;font:inherit;appearance:none;-webkit-appearance:none}
.payment-grid button.payment-option.locked:focus-visible{outline:3px solid #7844ca;outline-offset:2px}
/* Universal product picker */
.universal-shop-layer{position:fixed;inset:0;z-index:200;display:flex;justify-content:flex-end}.universal-shop-layer[hidden]{display:none}.universal-shop-scrim{position:absolute;inset:0;border:0;background:#21152988}.universal-shop-sheet{position:relative;width:min(520px,100%);height:100%;overflow:auto;background:#f7f8fc;padding:24px;box-shadow:-20px 0 70px #140e1f38}.universal-shop-close{position:absolute;right:16px;top:14px;border:0;border-radius:50%;width:38px;height:38px;background:#eee8f4;font-size:24px;z-index:2}.uc-head{display:grid;grid-template-columns:96px 1fr;gap:15px;padding:20px 42px 18px 0}.uc-head img{width:96px;height:96px;object-fit:cover;border-radius:14px;background:#fff}.uc-head h2{margin:3px 0;font-size:22px}.uc-head p,.uc-head small{color:#687083;font-size:12px}.uc-group{border:1px solid #e5e6ee;border-radius:14px;background:#fff;padding:14px;margin:12px 0}.uc-group legend{font-weight:800;padding:0 6px}.uc-group legend em{font-style:normal;color:#b000b8;font-size:10px}.uc-group>small{display:block;color:#687083;margin-bottom:8px}.uc-group label{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;min-height:48px;border-top:1px solid #f0edf3}.uc-group input{accent-color:#c000c8}.uc-group b{font-size:12px;color:#711477}.uc-quantity{display:grid;gap:6px;font-weight:700}.uc-quantity input{min-height:48px;border:1px solid #dadce7;border-radius:10px;padding:10px;font-size:16px}.uc-add{position:sticky;bottom:0;width:100%;min-height:54px;border:0;border-radius:12px;background:#c000c8;color:#fff;font-weight:800;font-size:15px}.uc-add:disabled{background:#e5e6ee;color:#5c6375}.uc-error{color:#b3261e;font-size:12px}.uc-loading,.uc-error-panel{padding:70px 15px;text-align:center}
@media(max-width:600px){.universal-shop-sheet{padding:16px}.uc-head{grid-template-columns:76px 1fr}.uc-head img{width:76px;height:76px}}


/* Compact, accessible cart breakdown and icon-only checkout (Oct 2026). */
.cart-store-total{display:flex;flex-wrap:wrap;justify-content:space-between;column-gap:13px;row-gap:5px;align-items:center;font-size:11px}
.cart-store-total span:nth-child(2){display:inline}
.cart-store-total b{margin-left:auto;font-size:12px}
.checkout-title-row{position:relative;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.checkout-title-row h2{margin:0}
.checkout-pricing-info{display:inline-flex;align-items:center}
.checkout-pricing-info summary{display:grid;place-items:center;width:28px;height:28px;border:1px solid #c9b8e8;border-radius:50%;color:var(--purple);background:#f9f6ff;cursor:pointer;font-size:18px;font-weight:700;line-height:1;list-style:none}
.checkout-pricing-info summary::-webkit-details-marker{display:none}
.checkout-pricing-info summary:focus-visible{outline:3px solid #a981ed;outline-offset:2px}
.checkout-pricing-info[open] summary{background:#f1e9ff}
.checkout-pricing-info p{position:absolute;top:calc(100% + 8px);left:0;z-index:12;width:min(420px,calc(100vw - 80px));max-height:55vh;overflow-y:auto;padding:13px 15px;margin:0;border:1px solid #d8c9f0;border-radius:10px;background:#fff;box-shadow:0 12px 30px rgba(26,14,45,.17);font-size:12px;line-height:1.6;color:#4a4154}
.checkout-test-badge{display:inline-flex;align-items:center;border-radius:5px;padding:4px 6px;background:#fff4d9;color:#795300;font-size:10px;font-weight:800;letter-spacing:.03em}
.payment-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.payment-grid .payment-option{position:relative;display:flex;justify-content:center;align-items:center;min-width:0;width:100%;height:74px;min-height:74px;padding:8px;border:1px solid #e2dce9;border-radius:10px;background:#fff;text-align:center}
.payment-grid .payment-option:focus-within,.payment-grid button.payment-option:focus-visible{outline:3px solid #a981ed;outline-offset:2px}
/* Branded SVGs were being squeezed into a wide, 46px-high viewport.
   Use a truly square, centered image box so the full logo stays visible. */
.payment-grid .payment-brand{box-sizing:border-box;display:flex;align-items:center;justify-content:center;flex:0 1 58px;width:58px;height:58px;max-width:100%;border:0;padding:0;overflow:visible;background:transparent}
.payment-grid .payment-brand img{display:block;flex:0 1 auto;width:100%;height:100%;max-width:100%;max-height:100%;margin:0;object-fit:contain;object-position:center center}
.payment-grid .payment-brand.cod-brand{flex-basis:58px;width:58px;height:58px;margin:0;border-radius:10px;background:#f2ebff;color:var(--purple);font-size:20px}
.payment-grid .payment-option em{position:absolute;top:3px;right:4px;width:17px;height:17px;font-size:10px}
.payment-grid .payment-option.locked{opacity:.6}
@media(max-width:620px){.payment-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.payment-grid .payment-option{height:76px;min-height:76px}.payment-grid .payment-brand,.payment-grid .payment-brand.cod-brand{flex-basis:54px;width:54px;height:54px}.checkout-pricing-info p{width:min(360px,calc(100vw - 72px))}.cart-store-total span:nth-child(2){display:inline}}
@media(max-width:360px){.payment-grid .payment-option{height:70px;min-height:70px;padding:6px}.payment-grid .payment-brand,.payment-grid .payment-brand.cod-brand{flex-basis:48px;width:48px;height:48px}}
