:root{color-scheme:dark;--background:#171717;--red:#ed1437;--red-deep:#d4072b;--white:#f2f2f2;--ink:#161616;--muted:#535353;--border:#48272e;font-family:Arial,Helvetica,sans-serif;font-size:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;color:var(--white);background:radial-gradient(ellipse 65% 800px at 4% 0%,#39161e 0%,transparent 72%),radial-gradient(ellipse 40% 700px at 100% 0%,#2d151b 0%,transparent 75%),var(--background)}button,a,input{ -webkit-tap-highlight-color:transparent}button,input{font:inherit}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #fa657e;outline-offset:4px}button{color:inherit}button:disabled{cursor:default}.container{width:calc(100% - 56px);max-width:1710px;margin:0 auto}.site-header{height:106px;border-bottom:1px solid var(--border);background:rgba(32,22,25,.96);position:sticky;top:0;z-index:20}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:15px;text-decoration:none;font-size:24px;font-weight:900}.brand-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:15px;background:#ee1936;color:white}.brand-icon svg{width:48px;height:48px}.cart-button{display:flex;align-items:center;justify-content:center;gap:14px;padding:16px 24px;min-height:65px;border:0;border-radius:16px;background:linear-gradient(110deg,#f21b3c,#d6072b);font-size:20px;font-weight:800;color:white}.cart-button svg{width:26px;height:26px}.cart-count{display:grid;place-items:center;min-width:30px;height:31px;border-radius:8px;background:white;color:#e01135;font-size:16px}.hero{height:341px;display:grid;grid-template-columns:54% 46%;overflow:hidden;border-radius:0 0 30px 30px;background:#252426;border:1px solid #63303c;border-top:0}.hero-logo{min-width:0;display:flex;align-items:center;justify-content:center;padding:0}.hero-logo img{display:block;width:100%;height:100%;object-fit:cover}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:20px 30px 20px 40px}.eyebrow{font-size:15px;letter-spacing:1.7px;font-weight:900;margin:0 0 24px;display:flex;align-items:center;gap:16px;color:#ffe4eb}.eyebrow:before{content:'';height:2px;width:34px;background:#e7617c;flex:none}h1{margin:0;font-size:62px;line-height:1.04;font-weight:900;letter-spacing:-1.5px}h1 span{color:#ff6d87}.hero-description{font-size:18px;line-height:1.7;color:#e2dadd;margin:23px 0 0}.contact-bar{margin-top:26px;min-height:97px;display:flex;align-items:center;gap:28px;padding:20px 28px;background:rgba(34,30,32,.76);border:1px solid #42282e;border-radius:18px;font-size:18px}.icon{display:inline-flex;flex:none;color:#e86b83}.icon svg{width:23px;height:23px}.pickup{display:flex;align-items:center;gap:19px;flex:1}.pickup>.icon{color:#fc2b54}.pickup>.icon svg{width:25px;height:30px}.pickup p{font-size:16px;color:#da9aac;margin:0 0 7px}.pickup strong{line-height:1.35}.hours,.phone{display:flex;align-items:center;gap:13px;white-space:nowrap}.phone{padding-left:28px;align-self:stretch;border-left:1px solid #503038;text-decoration:none}.menu{margin-top:35px}.menu h2{font-size:52px;font-weight:900;letter-spacing:-1px;line-height:1.2;margin:0 0 27px;display:flex;align-items:center;gap:24px}.menu h2 span{height:6px;width:55px;border-radius:5px;background:linear-gradient(90deg,#f51d45,#b31538)}.categories{display:flex;gap:13px;margin:0 0 32px;overflow-x:auto;padding:2px 0}.category{font-weight:800;font-size:20px;border:1px solid #4a2a32;background:#2b2326;border-radius:40px;padding:17px 29px;white-space:nowrap;min-height:60px;transition:background .15s,border-color .15s}.category.active{background:linear-gradient(110deg,#ed173b,#d60b30);border-color:#f85973;color:white}.category:hover{border-color:#e34160}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.product-card{border:1px solid #b0a1a4;background:var(--white);border-radius:24px;overflow:hidden;color:var(--ink);min-width:0;transition:border-color .18s,box-shadow .18s}.product-card:hover{border-color:#e43052;box-shadow:0 0 0 1px #dc244626}.product-photo{position:relative;aspect-ratio:1.3;overflow:hidden;background:#38282a}.product-photo>img{display:block;width:100%;height:100%;object-fit:cover}.product-badge{position:absolute;left:17px;top:17px;border-radius:8px;padding:9px 12px;font-size:15px;font-weight:800;background:#171717;color:#fff}.product-body{padding:24px 25px 25px;display:flex;flex-direction:column}.product-body h3{font-size:36px;font-weight:900;line-height:1.1;letter-spacing:-.65px;margin:0;min-height:76px}.product-description{font-size:18px;line-height:1.5;color:var(--muted);margin:19px 0 0;min-height:76px}.product-options-wrap{margin-top:22px;height:60px}.product-options{display:flex;align-items:center;gap:13px;text-align:left;white-space:nowrap;width:100%;height:60px;border-radius:15px;border:1px solid #eadddf;background:#f8f4f5;color:#54434a;padding:15px 17px;font-size:16px;font-weight:700}.product-options .sliders{display:flex;color:#e7153c;flex:none}.product-options svg{height:20px;width:20px}.product-options .chevron{margin-left:auto;color:#ce5872;font-size:28px;font-weight:400}.product-options:hover{background:#f9e8ec;border-color:#e7b7c3}.product-price{font-size:30px;line-height:1.2;font-weight:900;margin:24px 0 16px}.primary-button{border:0;border-radius:13px;min-height:60px;padding:15px 20px;background:linear-gradient(110deg,#f61b3e,#d3072c);color:white;font-size:18px;font-weight:800;box-shadow:0 6px 15px #d7193420;transition:filter .15s}.primary-button:hover,.cart-button:hover{filter:brightness(1.08)}.primary-button:active{filter:brightness(.94)}.product-add{width:100%}.product-add.added{background:#bf0b2a}.image-note{font-size:18px;line-height:1.5;color:#c3c3c3;margin:29px 0 24px}.site-footer{border-top:1px solid #4a292f;font-size:18px;color:#c5c5c5}.footer-inner{padding-top:36px;padding-bottom:19px;display:flex;justify-content:space-between;gap:30px}.footer-company strong,.footer-contacts a{color:#fff;font-weight:700}.footer-inner p{margin:12px 0;line-height:1.25}.footer-company nav{display:flex;gap:20px;margin-top:20px;flex-wrap:wrap}.text-link{padding:0;border:0;background:none;color:#c5c5c5;text-decoration:underline;text-underline-offset:3px;font-size:18px}.text-link:hover{color:#ff7994}.footer-contacts{text-align:right}.footer-contacts p:last-child{margin-bottom:0}
dialog{color-scheme:light;border:1px solid #e8d6dc;color:#171717;background:#f8f7f7;border-radius:23px;max-width:calc(100% - 32px);width:520px;padding:28px;box-shadow:0 28px 90px #0008}dialog::backdrop{background:#080308b3;backdrop-filter:blur(5px)}dialog[open]{animation:appear .18s ease-out}.dialog-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:23px}.dialog-heading h2{font-size:29px;line-height:1.15;font-weight:900;letter-spacing:-.5px;margin:0}.dialog-kicker{margin:0 0 10px;font-size:14px;color:#a32844}.close-button{border:0;background:#eee7e9;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;flex:none;color:#6d4f58}.close-button svg{width:20px;height:20px}.option-group{border:0;padding:0;margin:0 0 22px}.option-group legend{font-weight:800;font-size:19px;margin-bottom:12px}.option-row{display:flex;align-items:center;gap:12px;padding:14px 12px;border:1px solid #e3dade;background:#fff;border-radius:12px;margin:8px 0;font-size:16px;cursor:pointer}.option-row input{accent-color:#ec173e;width:19px;height:19px;flex:none}.option-row .option-cost{margin-left:auto;color:#994558;white-space:nowrap}.options-footer{display:flex;align-items:center;gap:20px;border-top:1px solid #e5d9dc;padding-top:20px}.options-footer>strong{font-size:27px;white-space:nowrap}.options-footer .primary-button{flex:1;font-size:16px;min-height:53px}.cart-dialog{margin:0 0 0 auto;height:100dvh;max-height:100dvh;width:520px;max-width:100%;border-radius:23px 0 0 23px;padding:30px;inset:0;overflow:auto}.cart-dialog[open]{display:flex;flex-direction:column}.cart-content{flex:1;overflow:auto}.cart-dialog .dialog-heading{align-items:center}.dialog-heading h2>span{font-size:18px;color:#9f6c7a}.cart-empty{text-align:center;padding:65px 10px}.cart-empty svg{height:65px;width:65px;color:#c895a4;margin-bottom:15px}.cart-empty h3{font-size:25px;margin:5px 0 15px}.cart-empty p{font-size:17px;color:#777;line-height:1.55}.cart-line{display:grid;grid-template-columns:82px minmax(0,1fr);gap:16px;border-bottom:1px solid #e7d9de;padding:20px 0}.cart-line img{width:82px;height:82px;object-fit:cover;border-radius:13px}.cart-line h3{margin:0 0 8px;font-size:19px;line-height:1.3}.cart-line p{font-size:14px;line-height:1.5;color:#795e68;margin:0 0 10px}.cart-line-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px}.quantity{display:flex;align-items:center;border:1px solid #e1cdd4;border-radius:10px;overflow:hidden}.quantity button{width:34px;height:34px;border:0;background:#f1e9ec;color:#a52b48;font-size:23px}.quantity span{min-width:30px;text-align:center;font-weight:700;font-size:15px}.cart-line-bottom strong{font-size:18px}.cart-footer{border-top:1px solid #dfcdd3;padding-top:22px;margin-top:20px}.cart-summary{display:flex;justify-content:space-between;font-size:23px;font-weight:800;margin-bottom:15px}.cart-pickup{font-size:15px;color:#745760;line-height:1.55;margin:0 0 19px}.cart-footer .primary-button{width:100%}.info-dialog p{font-size:17px;line-height:1.65;color:#60555a}.info-dialog a{color:#bc1034}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,15px);padding:15px 24px;background:#f8f6f7;border:1px solid #e1b6c0;box-shadow:0 6px 40px #0006;color:#68253b;border-radius:14px;font-size:16px;font-weight:700;z-index:50;opacity:0;pointer-events:none;transition:opacity .15s,transform .15s;white-space:nowrap;max-width:calc(100% - 32px)}.toast.visible{opacity:1;transform:translate(-50%,0)}body:has(dialog[open]){overflow:hidden}@keyframes appear{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1500px){h1{font-size:54px}.hero-copy{padding-left:25px}.eyebrow{font-size:13px;letter-spacing:1.3px}.product-body h3{font-size:29px;min-height:64px}.product-body{padding:22px}.product-description{font-size:16px;min-height:72px}.product-options{font-size:14px;padding:14px 12px;gap:8px}.product-grid{gap:23px}.contact-bar{font-size:16px;gap:20px}.phone{padding-left:20px}.product-price{font-size:28px}}
@media(max-width:1150px){.hero{height:305px;grid-template-columns:50% 50%}.hero-logo{padding:12px}.hero-copy{padding-left:20px}h1{font-size:43px}.hero-description{font-size:16px}.eyebrow{font-size:12px;letter-spacing:.8px;gap:10px}.eyebrow:before{width:20px}.contact-bar{flex-wrap:wrap;gap:18px;padding:20px}.pickup{flex-basis:100%}.hours{flex:1}.phone{padding-left:18px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-inner{font-size:16px}.text-link{font-size:16px}.product-body h3{font-size:28px}.product-body{padding:20px}.product-description{font-size:16px}.primary-button{font-size:16px}.menu h2{font-size:44px}}
@media(max-width:800px){.container{width:calc(100% - 32px)}.site-header{height:83px}.brand{font-size:20px;gap:10px}.brand-icon{width:44px;height:44px;border-radius:12px}.brand-icon svg{width:39px;height:39px}.cart-button{min-height:49px;padding:10px 14px;font-size:16px;gap:9px;border-radius:12px}.cart-button svg{width:22px;height:22px}.cart-count{height:27px;min-width:26px;font-size:14px}.hero{height:auto;min-height:370px;grid-template-columns:1fr;border-radius:0 0 23px 23px}.hero-logo{height:200px;padding:0}.hero-logo img{object-fit:cover}.hero-logo img{max-width:500px}.hero-copy{padding:12px 27px 29px;align-items:center;text-align:center}.eyebrow{margin-bottom:13px;font-size:12px;letter-spacing:.9px}.hero-description{margin-top:13px;font-size:16px;line-height:1.5}h1{font-size:43px;letter-spacing:-.8px}.contact-bar{margin-top:18px;font-size:15px;gap:15px;border-radius:15px;padding:18px}.pickup{gap:13px}.pickup p{font-size:14px;margin-bottom:5px}.pickup strong{font-size:15px}.hours{gap:9px}.hours .icon svg,.phone .icon svg{width:19px;height:19px}.phone{gap:9px}.menu{margin-top:26px}.menu h2{font-size:38px;margin-bottom:20px;gap:19px}.menu h2 span{width:44px;height:5px}.categories{gap:9px;margin-bottom:24px}.category{font-size:16px;min-height:48px;padding:13px 20px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.product-card{border-radius:19px}.product-body h3{font-size:26px;min-height:57px}.product-body{padding:18px}.product-description{font-size:16px;min-height:72px;margin-top:13px}.product-options-wrap{margin-top:16px;height:51px}.product-options{height:51px;font-size:14px;padding:11px}.product-options .sliders{display:none}.product-price{font-size:25px;margin-top:20px;margin-bottom:14px}.primary-button{min-height:52px;font-size:16px;padding:13px 8px}.product-badge{font-size:13px;left:12px;top:12px;padding:8px 10px}.image-note{font-size:15px;margin:26px 0 20px}.footer-inner{flex-direction:column;gap:22px;padding-top:26px;padding-bottom:25px;font-size:16px}.footer-contacts{text-align:left}.footer-company nav{gap:18px}.toast{font-size:14px;padding:13px 17px}.cart-dialog{padding:24px;border-radius:18px 0 0 18px}}
@media(max-width:520px){.hero-logo{height:175px;padding:0}.hero-copy{padding:10px 15px 27px}h1{font-size:37px}.eyebrow{font-size:11px;letter-spacing:.8px}.hero-description{font-size:15px}.contact-bar{gap:13px;padding:16px}.hours{flex-basis:100%;font-size:14px}.phone{border-left:0;padding-left:0;font-size:15px}.product-grid{grid-template-columns:1fr;gap:22px}.product-photo{aspect-ratio:1.3}.product-body{padding:22px}.product-body h3{font-size:31px;min-height:0}.product-description{margin-top:18px;min-height:50px;font-size:17px}.product-options-wrap{height:55px;margin-top:18px}.product-options{height:55px;font-size:15px;padding:13px 15px}.product-options .sliders{display:flex}.product-price{font-size:29px;margin-top:22px}.primary-button{min-height:56px;font-size:17px}.product-badge{font-size:14px}.category{font-size:15px;padding:12px 18px}.brand{font-size:18px}.cart-button{gap:7px;padding:10px 12px}.cart-button svg{width:20px;height:20px}.cart-dialog{border-radius:0;width:100%;padding:22px}.dialog-heading h2{font-size:26px}.options-dialog,.info-dialog{padding:22px}.options-footer{gap:15px}.options-footer>strong{font-size:25px}.options-footer .primary-button{font-size:15px;padding:12px}.cart-line{grid-template-columns:70px minmax(0,1fr)}.cart-line img{height:70px;width:70px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Shawarma customization matches the supplied add-ons reference. */
.options-product-heading{display:flex;align-items:center;gap:18px;min-width:0}
.options-product-image{width:80px;height:80px;object-fit:cover;border-radius:20px;flex:none}
.options-product-image[hidden]{display:none}
.options-dialog.shawarma-options{width:720px;max-width:calc(100% - 32px);max-height:calc(100dvh - 48px);padding:0;border:0;border-radius:24px;background:#fff;overflow:hidden}
.options-dialog.shawarma-options[open]{display:flex;flex-direction:column}
.shawarma-options .dialog-heading{flex:none;align-items:center;margin:0;padding:20px 18px 24px;border-bottom:1px solid #eee2e6;min-height:126px}
.shawarma-options .dialog-heading h2{font-size:30px;line-height:1.15;letter-spacing:-.4px}
.shawarma-options .dialog-kicker{margin:0 0 10px;font-size:14px;font-weight:700;letter-spacing:1.6px;color:#b46477}
.shawarma-options .close-button{width:48px;height:48px;background:#f5f0f2;color:#a75268}
.shawarma-options .close-button svg{width:25px;height:25px;stroke-width:1.8}
.shawarma-options #options-form{display:flex;flex-direction:column;flex:1;min-height:0}
.shawarma-options #options-fields{padding:28px 18px 26px;overflow-y:auto;overscroll-behavior:contain;min-height:0}
.shawarma-options .option-group{margin:0 0 32px;padding:0;min-width:0}
.shawarma-options .option-group:last-child{margin-bottom:0}
.shawarma-options .option-group legend{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:0;margin-bottom:16px;font-size:24px;line-height:1.2;font-weight:800;letter-spacing:-.4px}
.shawarma-options .option-group-price{font-size:14px;font-weight:400;letter-spacing:0;white-space:nowrap;color:#b66478}
.shawarma-options .option-group-note{margin:-4px 0 18px;font-size:16px;line-height:1.45;color:#947f88}
.shawarma-options .option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}
.shawarma-options .option-row{min-width:0;min-height:76px;margin:0;padding:12px;gap:11px;border:1px solid #d9bec7;border-radius:12px;background:#fdfbfc;align-items:center}
.shawarma-options .option-row:hover{border-color:#cc8fa2}
.shawarma-options .option-row:has(input:checked){background:#fff1f4;border-color:#e95c7b}
.shawarma-options .option-row input{appearance:none;display:grid;place-content:center;width:23px;height:23px;margin:0;border:1px solid #cca0af;border-radius:6px;background:#fff;flex:none;cursor:pointer}
.shawarma-options .option-row input:checked{background:#ed173e;border-color:#ed173e}
.shawarma-options .option-row input:checked:after{content:'';width:6px;height:12px;border:solid #fff;border-width:0 2px 2px 0;transform:translateY(-1px) rotate(45deg)}
.shawarma-options .option-copy{display:block;min-width:0}
.shawarma-options .option-copy strong{display:block;font-size:16px;font-weight:700;line-height:1.35;letter-spacing:-.15px;color:#202020}
.shawarma-options .option-cost{display:block;margin:4px 0 0;font-size:13px;font-weight:400;line-height:1.3;color:#b54261}
.shawarma-options .options-footer{display:block;flex:none;padding:20px 18px 15px;margin:0;border-top:1px solid #eee2e6;background:#fff;box-shadow:0 -5px 18px #f3e9ec40}
.options-quantity-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.options-quantity-row>strong{font-size:18px;font-weight:700}
.options-quantity-control{display:grid;grid-template-columns:44px 42px 44px;align-items:center;border:1px solid #e5cdd5;border-radius:13px;background:#fff;flex:none}
.options-quantity-control button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:12px;background:#f8eff2;color:#bd2348;font-size:25px;line-height:1}
.options-quantity-control button:hover:not(:disabled){background:#fce1e9}
.options-quantity-control button:disabled{color:#c6b7bc;background:#faf7f8}
.options-quantity-control output{text-align:center;font-size:18px;font-weight:800;font-variant-numeric:tabular-nums}
.shawarma-options .options-total{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}
.shawarma-options .options-total>div{min-width:0;flex:1}
.shawarma-options .options-total>div>strong{font-size:18px;line-height:1.3;font-weight:700}
.shawarma-options #option-summary{margin:7px 0 0;font-size:14px;line-height:1.4;color:#967b85}
.shawarma-options #option-price{font-size:36px;line-height:1.1;font-weight:900;white-space:nowrap}
.shawarma-options .options-add{width:100%;display:flex;align-items:center;justify-content:center;gap:14px;min-height:64px;padding:15px 20px;font-size:20px;font-weight:800;border-radius:18px}
.shawarma-options .options-add svg{width:26px;height:26px;flex:none}
@media(max-width:600px){.options-dialog.shawarma-options{max-width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:20px}.shawarma-options .dialog-heading{padding:16px;min-height:102px}.shawarma-options .options-product-image{width:64px;height:64px;border-radius:16px}.shawarma-options .options-product-heading{gap:14px}.shawarma-options .dialog-heading h2{font-size:25px}.shawarma-options .dialog-kicker{font-size:12px;letter-spacing:1px;margin-bottom:7px}.shawarma-options .close-button{width:42px;height:42px}.shawarma-options #options-fields{padding:22px 16px}.shawarma-options .option-grid{grid-template-columns:1fr;gap:10px}.shawarma-options .option-group legend{font-size:21px}.shawarma-options .option-group-note{font-size:15px}.shawarma-options .option-row{min-height:80px;padding:15px}.shawarma-options .option-copy strong{font-size:17px}.shawarma-options .option-group{margin-bottom:26px}.shawarma-options .options-footer{padding:16px}.shawarma-options .options-total{margin-bottom:16px;gap:12px}.shawarma-options #option-price{font-size:31px}.shawarma-options .options-add{min-height:58px;font-size:18px}}

.cart-actions{display:flex;justify-content:flex-end;padding:0 0 6px}
.cart-clear-button{min-height:42px;padding:10px 15px;border:1px solid #e6cbd3;border-radius:11px;background:#fff5f7;color:#ae2948;font-size:15px;font-weight:700}
.cart-clear-button:hover{background:#ffe9ef;border-color:#dca2b2}
.cart-remove-button{display:block;width:100%;min-height:36px;margin:0;padding:8px 0;border:0;background:transparent;color:#aa3550;font-size:14px;line-height:20px;text-align:right;white-space:nowrap}
.cart-remove-button:hover{color:#df0e39}
@media(pointer:coarse){.cart-clear-button,.cart-remove-button{min-height:44px}}

/* A shared price/action column keeps every basket row aligned. */
.cart-dialog{overflow:hidden}
.cart-dialog>.dialog-heading,.cart-footer{flex-shrink:0}
.cart-content{min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:0 4px 4px}
.cart-dialog,.cart-content{scrollbar-width:none}
.cart-dialog::-webkit-scrollbar,.cart-content::-webkit-scrollbar{display:none;width:0;height:0}
.cart-content:focus-visible{outline:2px solid #e79aac;outline-offset:-2px;border-radius:12px}
.cart-line{grid-template-columns:72px minmax(0,1fr) 108px;align-items:start;gap:14px;padding:22px 0}
.cart-line:last-child{border-bottom:0}
.cart-line img{width:72px;height:72px;border-radius:14px}
.cart-line-details{min-width:0}
.cart-line h3{margin:0 0 8px;font-size:18px;line-height:1.35;overflow-wrap:anywhere}
.cart-line p{margin:0 0 12px;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.cart-line .quantity{display:inline-flex;max-width:100%;margin-top:4px}
.cart-line .quantity button{width:34px;height:36px;flex:none}
.cart-line .quantity span{min-width:28px;align-self:center;font-variant-numeric:tabular-nums}
.cart-line-cost{display:flex;flex-direction:column;align-items:flex-end;gap:3px;text-align:right}
.cart-line-cost>strong{width:100%;font-size:19px;line-height:1.35;white-space:nowrap;font-variant-numeric:tabular-nums}
.cart-flight{position:fixed;top:0;left:0;width:64px;height:64px;object-fit:cover;border:2px solid #fff;border-radius:18px;box-shadow:0 5px 18px #0003;z-index:100;pointer-events:none;will-change:transform,opacity}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:520px){.cart-line{grid-template-columns:56px minmax(0,1fr) 96px;gap:10px;padding:20px 0}.cart-line img{width:56px;height:56px;border-radius:12px}.cart-line h3{font-size:16px}.cart-line-cost>strong{font-size:18px}.cart-remove-button{font-size:13px}.cart-content{padding-right:2px;padding-left:2px}}
@media(max-width:380px){.cart-dialog{padding:20px 18px}.cart-line{grid-template-columns:50px minmax(0,1fr) 94px;gap:8px}.cart-line img{width:50px;height:50px}}
@media(max-height:500px){.cart-dialog{overflow-y:auto}.cart-content{flex:none;overflow:visible}.cart-footer{margin-top:12px;padding-top:16px}}

.product-milk-option{display:grid;grid-template-columns:23px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;height:60px;padding:10px 13px;border:1px solid #eadddf;border-radius:15px;background:#f8f4f5;color:#54434a;cursor:pointer}
.product-milk-option>span{font-size:14px;font-weight:700;line-height:1.3}
.product-milk-option>strong{font-size:14px;font-weight:700;white-space:nowrap;color:#bf3453}
.product-milk-option input{appearance:none;display:grid;place-content:center;width:23px;height:23px;margin:0;border:1px solid #d6abb7;border-radius:6px;background:#fff;cursor:pointer}
.product-milk-option input:checked{background:#ed173e;border-color:#ed173e}
.product-milk-option input:checked:after{content:'';width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:translateY(-1px) rotate(45deg)}
.product-milk-option:has(input:checked){background:#fff0f4;border-color:#e4889e}
.product-milk-option:hover{border-color:#de9aaa}
@media(min-width:521px) and (max-width:800px){.product-milk-option{height:51px;padding:6px 9px;gap:7px;grid-template-columns:21px minmax(0,1fr) auto}.product-milk-option input{width:21px;height:21px}.product-milk-option>span,.product-milk-option>strong{font-size:14px}}
@media(max-width:520px){.product-milk-option{height:55px;padding:9px 13px}.product-milk-option>span,.product-milk-option>strong{font-size:14px}}

/* Keep scrolling available while hiding every scrollbar, including future panels. */
*,*::before,*::after{scrollbar-width:none!important}
*::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
@media(max-height:560px){.options-dialog.shawarma-options{overflow-y:auto}.shawarma-options #options-form{flex:none}.shawarma-options #options-fields{overflow:visible}}

/* Drink quantity is shown beside the total for the selected number of cups. */
.drink-purchase-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin:18px 0 14px;min-height:48px}
.drink-price-copy{flex:1 0 auto;max-width:100%}
.product-price-caption{display:block;margin-bottom:4px;color:#75616a;font-size:12px;line-height:1.2}
.product-card-drink .product-price{margin:0;font-size:26px;line-height:1.2;font-variant-numeric:tabular-nums;white-space:nowrap}
.drink-quantity-control{display:grid;grid-template-columns:40px 30px 40px;align-items:center;border:1px solid #cc9baa;border-radius:10px;background:#fff;flex:none}
.drink-quantity-control button{display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:9px;background:#f8edf1;color:#b72446;font-size:23px;line-height:1}
.drink-quantity-control button:hover:not(:disabled){background:#fbdce5}
.drink-quantity-control button:disabled{color:#bdaab1;background:#f8f5f6}
.drink-quantity-value{text-align:center;font-size:16px;font-weight:800;font-variant-numeric:tabular-nums}
@media(pointer:coarse){.drink-quantity-control{grid-template-columns:44px 30px 44px}.drink-quantity-control button{width:44px;height:44px}}
@media(max-width:600px){.shawarma-options .option-row{min-height:68px;padding:11px 12px}.shawarma-options .option-copy strong{font-size:16px}}

/* Every menu card shares the same compact rows and total height. */
.product-grid{grid-auto-rows:1fr;align-items:stretch}
.product-card{display:flex;flex-direction:column;height:100%;border-radius:18px}
.product-photo{aspect-ratio:1.5;flex:none}
.product-photo>img[data-embedded-badge]{object-position:center top}
.product-body{display:grid;grid-template-rows:1fr 46px 46px 48px;gap:10px;flex:1;padding:18px}
.product-info{min-width:0}
.product-body h3{min-height:0;margin:0;font-size:28px;line-height:1.12;letter-spacing:-.45px;overflow-wrap:anywhere}
.product-description{min-height:0;margin:8px 0 0;font-size:16px;line-height:1.4}
.product-options-wrap{height:46px;min-height:0;margin:0}
.product-options{height:46px;min-height:0;padding:9px 11px;border-radius:10px;gap:8px;font-size:15px}
.product-options .chevron{font-size:24px}
.product-milk-option{height:46px;padding:5px 9px;border-radius:10px;gap:7px;grid-template-columns:21px minmax(0,1fr) auto}
.product-milk-option input{width:21px;height:21px}
.product-milk-option>span,.product-milk-option>strong{font-size:14px}
.product-body>.product-price{display:flex;align-items:center;height:46px;margin:0;font-size:28px;line-height:1.15}
.drink-purchase-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;height:46px;min-height:0;margin:0;flex-wrap:nowrap}
.drink-price-copy{min-width:0}
.product-price-caption{margin-bottom:2px;font-size:12px}
.product-card-drink .product-price{font-size:26px;line-height:1.1}
.product-body>.product-add{height:48px;min-height:48px;padding:10px 8px;border-radius:10px;font-size:17px}
@media(min-width:521px) and (max-width:800px){.product-body{padding:16px;gap:9px}.product-body h3{font-size:25px}.product-description{font-size:15px}.product-card-drink .product-price{font-size:20px}}
@media(max-width:520px){.product-body{padding:18px}.product-body h3{font-size:29px}.product-description{font-size:16px}.product-options{font-size:15px}.product-body>.product-price{font-size:28px}}

/* The first menu selection and matching combo cards. */
.featured-section{margin-top:38px}
.combo-section{margin-top:42px}
.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}
.menu-section-title{display:flex;align-items:center;gap:20px;margin:0;font-size:42px;line-height:1.12;font-weight:900;letter-spacing:-1px}
.menu-section-title>span{flex:none;width:45px;height:5px;border-radius:5px;background:linear-gradient(90deg,#f51d45,#b31538)}
.popular-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}
.popular-grid .product-body{padding:16px}
.popular-grid .product-body h3{font-size:25px}
.popular-grid .product-description{font-size:15px}
.popular-grid .product-body>.product-add{font-size:16px}
.popular-grid .product-options{font-size:14px;padding:8px 10px;gap:7px}
.popular-navigation{display:none;flex:none;gap:8px}
.popular-navigation button{display:grid;place-items:center;width:42px;height:42px;padding:0 0 3px;border:1px solid #65414b;border-radius:12px;background:#302127;color:#fff;font-size:30px;line-height:1}
.popular-navigation button:hover:not(:disabled){background:#ed1437;border-color:#ed1437}
.popular-navigation button:disabled{opacity:.35}
.popular-grid:focus-visible{outline:2px solid #f15b7a;outline-offset:5px;border-radius:18px}
.combo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}
.combo-card{display:flex;flex-direction:column;min-width:0;border:1px solid #b0a1a4;border-radius:18px;overflow:hidden;background:var(--white);color:var(--ink)}
.combo-photos{position:relative;display:grid;grid-template-rows:minmax(0,1fr);gap:0;height:248px;flex:none;background:#3b242c;overflow:hidden}
.combo-photos-pair{grid-template-columns:repeat(2,minmax(0,1fr))}
.combo-photos-trio{grid-template-columns:repeat(3,minmax(0,1fr))}
.combo-photos.combo-photos-trio{height:auto;aspect-ratio:9/4}
.combo-photos>img{display:block;width:100%;height:100%;min-width:0;min-height:0;object-fit:cover;object-position:50% 55%;background:#160c10}
.combo-photos>img[data-menu-photo="combo-mini-shawarma"]{object-position:50% 55%}
.combo-photos>img[data-menu-photo="combo-max-shawarma"]{object-position:50% 35%}
.combo-photos>img[data-menu-photo="combo-drinks"]{object-position:50% 50%}
.combo-photos>img[data-menu-photo="combo-mini-fries"]{object-position:50% 67%}
.combo-photos>img[data-menu-photo="combo-max-fries"]{object-position:50% 50%}
.combo-photo-plus{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1;display:grid;place-items:center;width:42px;height:42px;border:2px solid #fff;border-radius:50%;background:#ed1437;color:white;font-size:30px;line-height:1;box-shadow:0 4px 16px #0003}
.combo-photos-trio .combo-photo-plus{left:33.333%}
.combo-photos-trio .combo-photo-plus-second{left:66.667%}
.combo-copy{display:flex;flex-direction:column;align-items:flex-start;flex:1;padding:24px}
.combo-label{display:inline-block;margin-bottom:12px;color:#c80f34;font-size:12px;line-height:1;font-weight:800;letter-spacing:1.4px}
.combo-copy h3{margin:0;font-size:30px;line-height:1.15;font-weight:900;letter-spacing:-.5px}
.combo-copy p{margin:12px 0 20px;color:var(--muted);font-size:17px;line-height:1.45}
.combo-components{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}
.combo-components>span{padding:8px 12px;border:1px solid #e4cbd3;border-radius:9px;background:#f9edf1;color:#88354b;font-size:13px;line-height:1.15;font-weight:700}
.combo-price{display:block;width:100%;margin-top:18px;padding-top:16px;border-top:1px solid #e2d7da;font-size:30px;line-height:1.15;font-weight:900;font-variant-numeric:tabular-nums;white-space:nowrap}
@media(min-width:1151px) and (max-width:1400px){.popular-grid{gap:16px}.popular-grid .product-body{padding:14px}.popular-grid .product-body h3{font-size:23px}.popular-grid .product-description{font-size:14px}.popular-grid .product-options .sliders{display:none}.popular-grid .product-body>.product-add{font-size:15px}}
@media(max-width:1150px){.popular-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:300px;gap:18px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:2px 1px 5px;scroll-padding-inline:1px}.popular-grid .product-card{scroll-snap-align:start}.popular-navigation{display:flex}.menu-section-title{font-size:38px}.combo-copy h3{font-size:27px}.combo-photos{height:220px}}
@media(max-width:800px){.featured-section{margin-top:28px}.combo-section{margin-top:32px}.section-heading{gap:12px;margin-bottom:20px}.menu-section-title{font-size:32px;gap:14px;letter-spacing:-.7px}.menu-section-title>span{width:32px;height:4px}.combo-grid{gap:18px}.combo-photos{height:180px}.combo-copy{padding:20px}.combo-copy h3{font-size:24px}.combo-copy p{font-size:15px}.combo-photo-plus{width:34px;height:34px;font-size:25px}.combo-components>span{font-size:12px;padding:7px 10px}}
@media(max-width:600px){.combo-grid{grid-template-columns:1fr}.combo-photos{height:210px}.combo-copy h3{font-size:27px}.combo-copy p{font-size:16px}.combo-copy{padding:20px}.combo-components>span{font-size:13px}}
@media(max-width:520px){.popular-grid{grid-auto-columns:min(82vw,300px);gap:14px}.popular-grid .product-body h3{font-size:25px}.menu-section-title{font-size:30px;max-width:calc(100% - 84px)}.menu-section-title>span{display:none}.combo-section .menu-section-title{max-width:none}.popular-navigation{gap:6px}.popular-navigation button{width:36px;height:40px;border-radius:10px}.combo-photos{height:188px}.combo-copy h3{font-size:25px}}

/* Combo purchasing follows the same controls and spacing as the menu. */
.combo-add{width:100%;min-height:48px;margin-top:14px;padding:12px 16px;font-size:17px;border-radius:12px}
.combo-dialog{width:720px;max-width:calc(100% - 32px);max-height:calc(100dvh - 48px);padding:0;border:0;border-radius:24px;background:#fff;overflow:hidden}
.combo-dialog[open]{display:flex;flex-direction:column}
.combo-dialog .dialog-heading{flex:none;align-items:center;margin:0;padding:22px 20px;border-bottom:1px solid #eee2e6}
.combo-dialog .dialog-heading h2{font-size:28px;line-height:1.2}
.combo-dialog .close-button{width:44px;height:44px;background:#f5f0f2;color:#a75268}
.combo-dialog .dialog-kicker{font-weight:700;letter-spacing:1.4px;color:#b46477}
#combo-form{display:flex;flex-direction:column;flex:1;min-height:0}
.combo-fields{min-height:0;padding:24px 20px;overflow-y:auto;overscroll-behavior:contain}
.combo-dialog .option-group{margin:0 0 24px;min-width:0}
.combo-dialog .option-group:last-of-type{margin-bottom:0}
.combo-dialog .option-group legend{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;width:100%;padding:0;margin-bottom:14px;font-size:22px;line-height:1.25;font-weight:800;letter-spacing:-.3px}
.combo-dialog .option-group-price{font-size:14px;font-weight:400;letter-spacing:0;color:#b46477}
.combo-dialog .option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}
.combo-dialog .combo-shawarma-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.combo-shawarma-choice img{width:52px;height:60px;flex:none;object-fit:contain;border-radius:8px}
.combo-dialog .option-row{min-width:0;min-height:76px;margin:0;padding:12px;gap:11px;border:1px solid #d9bec7;border-radius:12px;background:#fdfbfc;align-items:center}
.combo-dialog .option-row:hover{border-color:#cc8fa2}
.combo-dialog .option-row:has(input:checked){background:#fff1f4;border-color:#e95c7b}
.combo-dialog .option-row input{appearance:none;display:grid;place-content:center;width:23px;height:23px;margin:0;border:1px solid #cca0af;border-radius:6px;background:#fff;flex:none;cursor:pointer}
.combo-dialog .option-row input:checked{background:#ed173e;border-color:#ed173e}
.combo-dialog .option-row input:checked:after{content:'';width:6px;height:12px;border:solid #fff;border-width:0 2px 2px 0;transform:translateY(-1px) rotate(45deg)}
.combo-dialog .option-copy{display:block;min-width:0}
.combo-dialog .option-copy strong{display:block;font-size:16px;font-weight:700;line-height:1.35;letter-spacing:-.15px;color:#202020;overflow-wrap:anywhere}
.combo-dialog .option-cost{display:block;margin:4px 0 0;font-size:13px;font-weight:400;line-height:1.3;color:#b54261}
.combo-dessert-note{margin:20px 0 0;padding:12px;border:1px solid #e4cbd3;border-radius:12px;background:#f9edf1;color:#88354b;font-size:15px;line-height:1.4}
.combo-purchase{flex:none;border-top:1px solid #eee2e6;padding:20px;background:#fff;box-shadow:0 -5px 18px #f3e9ec40}
.combo-total{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:18px}
.combo-total>span{font-size:18px;font-weight:700}
.combo-total>strong{font-size:34px;line-height:1.2;font-weight:900;font-variant-numeric:tabular-nums;white-space:nowrap}
.combo-submit{width:100%;min-height:58px;font-size:18px}
.combo-error{font-size:15px;line-height:1.4;color:#b11436;margin:0 0 14px}
@media(max-width:600px){.combo-dialog{max-width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:20px}.combo-dialog .dialog-heading{padding:18px 16px}.combo-dialog .dialog-heading h2{font-size:24px}.combo-dialog .dialog-kicker{font-size:12px;letter-spacing:1px;margin-bottom:8px}.combo-fields{padding:20px 16px}.combo-dialog .option-grid{grid-template-columns:1fr;gap:10px}.combo-dialog .option-group legend{font-size:21px}.combo-dialog .option-row{min-height:68px;padding:11px 12px}.combo-purchase{padding:16px}.combo-purchase .options-quantity-row{flex-wrap:wrap;margin-bottom:14px}.combo-total{margin-bottom:14px}.combo-total>strong{font-size:30px}}
@media(max-height:600px){.combo-dialog{overflow-y:auto}#combo-form{flex:none}.combo-fields{overflow:visible}}

/* Header offer, banner links and the future feedback section. */
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:inline-flex;align-items:center;gap:15px;width:auto;max-width:none;min-width:0}
.header-inner>.cart-button{max-width:none}
.hero-brand-art{position:relative;width:min(100%,632px);aspect-ratio:1400/748;flex:none}
.hero-brand-art>.hero-main-logo{display:block;width:100%;height:auto;object-fit:contain;max-width:none}
.student-promo{position:absolute;top:26%;right:-13%;width:52%;min-width:0}
.student-promo img{display:block;width:100%;height:auto;object-fit:contain;object-position:center}
@media(min-width:1151px) and (max-width:1600px){.student-promo{right:-7%;width:46%}}
.hero{height:auto;min-height:390px;grid-template-columns:48% 52%;grid-template-rows:auto;border-color:#4b4146;background:linear-gradient(90deg,#10101215 0%,#10101220 37%,#101012b8 60%,#101012db 100%),url('/assets/hero-brick-full.webp') center/cover no-repeat}
.hero-logo{height:390px;padding:26px 30px}
.hero-logo img{object-fit:contain;max-width:none}
.hero-copy{display:flex;flex-direction:column;align-items:stretch;justify-content:center;min-width:0;gap:22px;padding:28px 32px 24px 52px;background:transparent;text-align:left}
.hero-message{min-width:0}.hero-message .eyebrow{margin-bottom:16px;font-size:14px;line-height:1.4;letter-spacing:1.3px;color:#f2f2f2;gap:12px}.hero-message .eyebrow:before{width:28px;height:3px;background:#ed1437}.hero-message h1{font-size:clamp(2.75rem,3.35vw,3.625rem);font-style:italic;line-height:1.08;letter-spacing:-.045em;color:#fff;text-shadow:0 3px 0 #080809,0 5px 18px #0008}.hero-message h1 span{color:#ff304b}
.hero-copy-bottom{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;min-width:0}
.hero-copy-bottom .hero-description{flex:1;min-width:0;max-width:350px;margin:0;font-size:18px;line-height:1.55;color:#f0eeee;text-shadow:0 2px 8px #0008}
.hero-offers{flex:1;min-width:0;max-width:350px}
.hero-loyalty{display:flex;flex-direction:column;align-items:flex-start;gap:3px;margin:14px 0 0;padding:2px 0 2px 14px;border-left:3px solid #ed1437;text-align:left}
.hero-loyalty span{font-size:14px;line-height:1.4;font-weight:700;color:#f5eeee}
.hero-loyalty strong{font-size:22px;line-height:1.15;font-weight:900;font-style:italic;color:#ff304b;text-shadow:0 2px 0 #080809}
@media(max-width:1150px){.hero-loyalty{padding-left:10px}.hero-loyalty strong{font-size:20px}}
@media(max-width:800px){.hero-offers{max-width:400px}}
@media(max-width:520px){.hero-offers{flex-basis:100%;max-width:none}.hero-loyalty{width:fit-content;max-width:100%;margin:16px auto 0;padding-left:14px}.hero-loyalty strong{font-size:22px}}
.hero-qr-corner{display:grid;grid-template-columns:repeat(2,99px);gap:6px 14px;flex:none;align-self:flex-end}
.hero-qr-card{display:flex;flex-direction:column;align-items:center;gap:7px;padding:0;min-width:0;text-align:center;text-decoration:none;border-radius:7px}
.hero-qr-card.hero-qr-mobile{display:none}
.hero-qr-card>img{display:block;width:99px;height:99px;flex:none;border-radius:7px}
.hero-qr-card strong{font-size:14px;line-height:1.3;font-weight:800;text-shadow:0 1px 5px #000}
.hero-qr-card:hover strong{color:#ff8ea4}
.hero-qr-corner>small{grid-column:1/-1;text-align:center;font-size:12px;line-height:1.3;color:#d5b8c1;text-shadow:0 1px 5px #000}
.feedback-section{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;margin:0 0 48px;border:1px solid #5a3540;border-radius:16px;background:linear-gradient(115deg,#33262c,#211c20)}.feedback-kicker{font-size:13px;font-weight:800;letter-spacing:1.8px;color:#ff6d87}.feedback-section h2{font-size:28px;line-height:1.2;margin:6px 0 8px;font-weight:900}.feedback-section p{margin:0;font-size:17px;line-height:1.5;color:#ddd2d6}
/* Compact desktop contact strip. */
.desktop-feedback{flex-wrap:wrap;align-items:center;gap:16px 24px;padding:18px 22px;margin-bottom:32px}
.desktop-feedback-contact{flex:1 1 220px;min-width:0}
.desktop-feedback h2{font-size:22px;margin:0 0 5px}
.desktop-feedback-contact p{font-size:14px;color:#d5b8c1}
.desktop-feedback-phone{color:#fff;font-size:22px;font-weight:800;text-decoration:none;white-space:nowrap}
.desktop-feedback-phone:hover{color:#ffb6c5}
.desktop-feedback-actions{display:flex;flex-wrap:wrap;gap:8px}
.desktop-feedback-actions a,.desktop-feedback-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid #945969;border-radius:10px;background:#44242f;color:#fff;font:inherit;font-size:14px;font-weight:700;text-decoration:none;cursor:pointer}
.desktop-feedback-actions a{background:#e71339;border-color:#e71339}
.desktop-feedback-actions a:hover{background:#c91031;border-color:#c91031}
.desktop-feedback-actions button:hover{background:#5a2f3d}
.desktop-feedback :is(a,button):focus-visible{outline:3px solid #ffb6c5;outline-offset:4px}
.desktop-feedback #desktop-feedback-copy-status{flex-basis:100%;font-size:14px;color:#ffb6c5;user-select:text}
.desktop-feedback #desktop-feedback-copy-status:empty{display:none}
@media(max-width:1150px){.student-promo{top:26%;right:-7%;width:46%}.hero{min-height:350px}.hero-logo{height:350px;padding:20px}.hero-copy{padding:24px 20px 20px 36px;gap:18px}.hero-message h1{font-size:clamp(2rem,3.7vw,2.625rem)}.hero-qr-corner{grid-template-columns:repeat(2,82px);gap:6px 12px}.hero-qr-card>img{width:82px;height:82px}.hero-copy-bottom{gap:16px}.hero-copy-bottom .hero-description{font-size:16px}.header-inner{gap:20px}}
@media(max-width:800px){.site-header{height:83px}.header-inner{gap:16px;padding:0}.brand{gap:10px}.hero-brand-art{display:flex;flex-direction:column;align-items:center;gap:12px;aspect-ratio:auto;width:min(100%,380px)}.hero-brand-art>.hero-main-logo{max-width:326px}.student-promo{position:static;order:-1;width:100%;max-width:380px}.student-promo img{max-height:72px}.hero{grid-template-columns:1fr;min-height:0;background:linear-gradient(180deg,#10101215 0%,#10101235 35%,#101012c9 65%,#101012e3 100%),url('/assets/hero-brick-full.webp') center/cover no-repeat}.hero-logo{height:auto;min-height:240px;padding:18px 24px}.hero-copy{padding:8px 24px 24px;gap:18px}.hero-message{text-align:center}.hero-message .eyebrow{justify-content:center;margin-bottom:13px}.hero-message h1{font-size:43px}.hero-copy-bottom .hero-description{max-width:400px}.feedback-section{padding:18px 20px;margin:0 0 36px;gap:14px;flex-direction:column;align-items:flex-start}.feedback-placeholder{max-width:none;width:100%}html{scroll-padding-top:100px}}
@media(max-width:520px){.hero-brand-art{width:min(100%,320px);gap:10px}.hero-brand-art>.hero-main-logo{max-width:279px}.student-promo{max-width:320px}.student-promo img{max-height:60px}.hero-logo{min-height:0;height:auto;padding:18px}.hero-copy{padding:8px 18px 20px;gap:16px}.hero-message h1{font-size:clamp(1.875rem,8vw,2.3125rem)}.hero-message .eyebrow{font-size:12px;letter-spacing:.6px;gap:8px}.hero-message .eyebrow:before{display:none}.hero-copy-bottom{flex-wrap:wrap;gap:18px}.hero-copy-bottom .hero-description{flex-basis:100%;max-width:none;text-align:center}.hero-qr-corner{margin-left:auto;grid-template-columns:repeat(2,88px);gap:6px 14px}.hero-qr-card>img{width:88px;height:88px}.feedback-section{padding:18px;margin:0 0 32px;gap:14px}.feedback-section h2{font-size:26px}.feedback-section p{font-size:16px}}


/* History sits beside the basket, with the same aligned prices and controls. */
.cart-toolbar{flex:none;margin-bottom:12px}.cart-tabs{display:grid;grid-template-columns:1fr 1.3fr;gap:5px;padding:5px;border:1px solid #e5d4da;border-radius:13px;background:#f0e7eb}.cart-tabs button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:9px 6px;border:0;border-radius:9px;background:transparent;color:#7a5362;font-size:15px;font-weight:800;line-height:1.3}.cart-tabs button[aria-selected="true"]{background:#fff;color:#aa173b;box-shadow:0 2px 8px #752b4110}.cart-tabs span{display:grid;place-items:center;min-width:21px;height:21px;border-radius:6px;background:#f3e2e8;color:#a01d3e;font-size:12px}.cart-notice{margin:12px 0 0;font-size:14px;line-height:1.45;color:#74354a;padding:12px;border:1px solid #e5cbd3;border-radius:10px;background:#fff}.cart-notice.is-error{color:#b21435;border-color:#eaa4b5}
.cart-footer .demo-order-button{min-height:48px;font-size:16px}.cart-demo-note{font-size:13px;line-height:1.4;text-align:center;margin:9px 0 4px;color:#8a6070}.cart-footer .cart-continue{display:block;width:100%;min-height:40px;padding:8px;border:0;background:none;color:#8e3c54;font-size:14px;font-weight:700}.history-note{margin:0 0 15px;color:#826471;font-size:13px;line-height:1.5}.order-history-card{margin-bottom:14px;border:1px solid #dec8d0;border-radius:14px;background:#fff;overflow:hidden}.history-heading{display:flex;flex-direction:column;gap:7px;min-width:0}.history-heading strong{font-size:16px;line-height:1.35}.history-heading span{font-size:12px;color:#9c5970}.history-total{font-size:18px;font-weight:900;white-space:nowrap}.history-details{padding:0 16px 16px}.history-item{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;padding:13px 0;border-top:1px solid #eee2e7;align-items:start}.history-item img{width:44px;height:44px;border-radius:9px;object-fit:cover}.history-item strong{display:block;font-size:15px;line-height:1.35;overflow-wrap:anywhere}.history-item p{font-size:13px;line-height:1.45;color:#826471;margin:5px 0 0;overflow-wrap:anywhere}.history-item>span{font-size:14px;font-weight:800;white-space:nowrap}.history-repeat{min-height:44px;width:100%;margin-top:6px;border:1px solid #ddaabb;background:#fff1f5;border-radius:10px;color:#b71e43;font-size:15px;font-weight:800}.history-repeat:hover{background:#fce2eb}.history-empty{text-align:center;padding:34px 14px}.history-empty h3{font-size:23px;margin:0 0 12px}.history-empty p{color:#87616f;font-size:15px;line-height:1.6;margin:0}.history-empty-icon{display:inline-grid;place-items:center;width:54px;height:54px;border-radius:15px;background:#f5e8ed;color:#b4264b;margin-bottom:18px}.history-empty-icon svg{width:29px;height:29px}
@media(max-width:520px){.cart-tabs button{font-size:14px}.cart-dialog>.dialog-heading{margin-bottom:17px}.history-details{padding:0 14px 14px}.history-item{grid-template-columns:36px minmax(0,1fr) auto;gap:8px}.history-item img{width:36px;height:36px}.history-heading strong{font-size:15px}.history-total{font-size:17px}}
@media(max-height:850px){.cart-dialog{overflow-y:auto}.cart-content{flex:none;overflow:visible}.cart-footer{margin-top:10px;padding-top:16px}}

.history-heading .history-order-number{font-size:20px;line-height:1.25;color:#a71939;font-variant-numeric:tabular-nums;letter-spacing:.02em}.history-heading time{font-size:14px;line-height:1.35;color:#5f5257}.history-load-error{font-size:15px;line-height:1.5;color:#ad1838}.demo-order-button:disabled{opacity:.7;cursor:wait}

/* Optional preparation wishes remain with the saved order. */
.cart-comment{margin:22px 0 8px;padding:18px;border:1px solid #e5d4da;border-radius:14px;background:#fff}
.cart-comment label{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:17px;font-weight:800;color:#292026;margin-bottom:12px}
.cart-comment label span{font-size:13px;font-weight:400;color:#896876}
.cart-comment textarea{display:block;box-sizing:border-box;width:100%;min-height:92px;max-height:220px;resize:vertical;padding:12px 14px;border:1px solid #d8c3cc;border-radius:10px;background:#fff;color:#292026;font:inherit;font-size:16px;line-height:1.5;transition:border-color .15s,box-shadow .15s}
.cart-comment textarea::placeholder{color:#937782}
.cart-comment textarea:focus{outline:0;border-color:#d71942;box-shadow:0 0 0 3px #ed143714}
.cart-comment textarea[readonly]{background:#f5f0f2;color:#75545f}
.cart-comment-hint{display:flex;justify-content:space-between;gap:12px;margin-top:8px;color:#826571;font-size:12px;line-height:1.4}
#order-comment-count{white-space:nowrap;font-variant-numeric:tabular-nums}
.history-comment{margin:8px 0 14px;padding:13px 14px;border-left:3px solid #de2548;border-radius:0 8px 8px 0;background:#fff1f5}
.history-comment>strong{display:block;font-size:14px;color:#8e2643;margin-bottom:6px}
.history-comment>p{margin:0;font-size:15px;line-height:1.5;color:#49323b;white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:520px){.cart-comment{padding:15px;margin-top:18px}.cart-comment label{font-size:16px}}

.cart-footer .cart-comment{margin:0 0 14px;padding:0;border:0;border-radius:0;background:transparent}
.cart-footer .cart-comment label{font-size:16px;margin-bottom:8px}
.cart-footer .cart-comment textarea{min-height:72px;max-height:140px;padding:10px 12px}
.cart-footer .cart-comment-hint{margin-top:6px}

/* Mobile-only layout. Desktop rules above retain their original appearance. */
.mobile-options-nav{display:none}
@media(max-width:800px),(max-width:1024px) and (pointer:coarse){
  html{scroll-padding-top:90px;-webkit-text-size-adjust:100%;text-size-adjust:100%}
  html:has(dialog[open]){overflow:hidden;overscroll-behavior:none}
  body{min-width:0}
  button,a,input,textarea,label{touch-action:manipulation}
  .container{width:calc(100% - 28px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px));margin-left:calc(14px + env(safe-area-inset-left,0px));margin-right:calc(14px + env(safe-area-inset-right,0px))}
  .site-header{height:76px;padding-top:env(safe-area-inset-top,0px);height:calc(76px + env(safe-area-inset-top,0px))}
  .header-inner{gap:10px}
  .brand{gap:8px;font-size:18px;flex-shrink:1}
  .brand-icon{width:40px;height:40px;flex:none}
  .brand-icon svg{width:35px;height:35px}
  .cart-button{flex:none;gap:7px;min-height:46px;padding:10px 12px;font-size:16px}
  #cart-total{white-space:nowrap;font-variant-numeric:tabular-nums}
  .cart-count{min-width:26px;padding:0 5px;white-space:nowrap}
  .hero-message h1{overflow-wrap:normal}
  .pickup,.pickup>div{min-width:0}
  .pickup strong,.footer-company,.footer-contacts{overflow-wrap:anywhere}
  .phone,.text-link{min-height:44px;display:inline-flex;align-items:center}
  .section-heading{gap:10px}
  .popular-navigation button{width:44px;height:44px}
  .popular-grid{scroll-snap-type:x proximity}
  .categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;overflow:visible}
  .category{min-width:0;min-height:46px;padding:11px 6px;font-size:15px;text-align:center}
  .product-options{white-space:normal;min-height:46px}
  .product-options-label{min-width:0;line-height:1.2}
  .product-milk-option{min-height:46px;height:auto}
  .product-milk-option>span{line-height:1.2}
  .drink-quantity-control{grid-template-columns:44px 28px 44px}
  .drink-quantity-control button{width:44px;height:44px}
  .product-body>.product-add,.combo-add{min-height:48px;height:auto;line-height:1.25}
  .product-card-drink .product-price{font-size:24px}
  .options-dialog.shawarma-options,.combo-dialog,.info-dialog{
    width:calc(100% - 16px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px));max-width:680px;
    left:env(safe-area-inset-left,0px);right:env(safe-area-inset-right,0px);
    max-height:calc(100vh - 16px);max-height:calc(var(--mobile-viewport-height,100vh) - 16px - env(safe-area-inset-top,0px));
    top:calc(var(--mobile-viewport-top,0px) + 8px + env(safe-area-inset-top,0px));bottom:auto;
    margin:0 auto;padding:0;border-radius:18px;overflow-x:hidden;overflow-y:auto;
    overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
  }
  .options-dialog.shawarma-options[open],.combo-dialog[open]{display:block}
  .shawarma-options .dialog-heading,.combo-dialog .dialog-heading,.info-dialog .dialog-heading{
    position:sticky;top:0;z-index:3;display:flex;align-items:center;gap:12px;
    min-height:0;margin:0;padding:14px 16px;border-bottom:1px solid #eee2e6;background:#fff;
  }
  .options-product-heading,.combo-dialog .dialog-heading>div,.info-dialog .dialog-heading h2{min-width:0}
  .shawarma-options .options-product-heading{gap:12px}
  .shawarma-options .options-product-image{width:48px;height:48px;border-radius:12px}
  .shawarma-options .dialog-heading h2,.combo-dialog .dialog-heading h2,.info-dialog .dialog-heading h2{font-size:23px;line-height:1.18;overflow-wrap:anywhere}
  .shawarma-options .dialog-kicker,.combo-dialog .dialog-kicker{font-size:11px;letter-spacing:1px;margin-bottom:5px}
  .close-button,.shawarma-options .close-button,.combo-dialog .close-button{width:44px;height:44px;flex:none}
  .shawarma-options #options-form,#combo-form{display:block;min-height:0;flex:none}
  .shawarma-options #options-fields,.combo-fields{height:auto;max-height:none;min-height:0;overflow:visible;padding:18px 16px 20px}
  .mobile-options-nav{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:14px 16px 0;background:#fff}
  .mobile-options-nav button{min-height:44px;padding:10px;border:1px solid #dcb6c2;border-radius:11px;background:#fff1f5;color:#aa173b;font-size:16px;font-weight:800}
  .mobile-options-nav button:active{background:#f8d6e1}
  .shawarma-options .option-group,.combo-dialog .option-group{margin-bottom:24px}
  .shawarma-options .option-group legend,.combo-dialog .option-group legend{display:flex;flex-wrap:wrap;gap:5px 12px;font-size:21px;line-height:1.25;margin-bottom:12px}
  .shawarma-options .option-group-price,.combo-dialog .option-group-price{font-size:13px}
  .shawarma-options .option-group-note{font-size:14px;line-height:1.5;margin:0 0 14px}
  .shawarma-options .option-grid,.combo-dialog .option-grid{grid-template-columns:1fr;gap:9px}
  .shawarma-options .option-row,.combo-dialog .option-row{min-height:62px;padding:10px 12px;gap:12px}
  .shawarma-options .option-copy strong,.combo-dialog .option-copy strong{font-size:16px;line-height:1.35;overflow-wrap:anywhere}
  .shawarma-options .option-row input,.combo-dialog .option-row input{
    appearance:auto;-webkit-appearance:auto;display:block;width:24px;height:24px;margin:0;accent-color:#ed173e;
  }
  .shawarma-options .option-row input:checked:after,.combo-dialog .option-row input:checked:after{display:none}
  .shawarma-options .options-footer,.combo-purchase{
    position:static;padding:16px 16px max(16px,env(safe-area-inset-bottom,0px));background:#fff;
  }
  .options-quantity-row{gap:10px;margin-bottom:14px}
  .options-quantity-row>strong{font-size:16px}
  .options-quantity-control{grid-template-columns:44px 36px 44px}
  .shawarma-options .options-total{gap:10px;flex-wrap:wrap;margin-bottom:14px}
  .shawarma-options .options-total>div{flex:1 1 145px}
  .shawarma-options .options-total>div>strong,.combo-total>span{font-size:16px}
  .shawarma-options #option-summary{font-size:13px;line-height:1.4;margin-top:5px}
  .shawarma-options #option-price,.combo-total>strong{font-size:28px}
  .shawarma-options .options-add,.combo-submit{min-height:52px;font-size:17px;border-radius:12px;padding:12px}
  .shawarma-options .options-add svg{width:23px;height:23px}
  .info-dialog #info-content{padding:4px 16px 18px;overflow-wrap:anywhere}
  .info-dialog p{font-size:16px}
  .cart-dialog{
    width:calc(100% - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px));max-width:100%;height:100vh;height:calc(var(--mobile-viewport-height,100vh) - env(safe-area-inset-top,0px));
    left:env(safe-area-inset-left,0px);right:env(safe-area-inset-right,0px);
    max-height:100vh;max-height:calc(var(--mobile-viewport-height,100vh) - env(safe-area-inset-top,0px));
    top:calc(var(--mobile-viewport-top,0px) + env(safe-area-inset-top,0px));bottom:auto;
    margin:0;border:0;border-radius:0;padding:0 16px max(18px,env(safe-area-inset-bottom,0px));
    overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
  }
  .cart-dialog[open]{display:block}
  .cart-dialog>.dialog-heading{position:sticky;top:0;z-index:3;background:#f8f7f7;margin:0 -16px 12px;padding:14px 16px;border-bottom:1px solid #e5d4da;gap:10px}
  .cart-dialog .dialog-heading h2{font-size:25px}
  .cart-toolbar{margin-bottom:12px}
  .cart-tabs{grid-template-columns:1fr 1.4fr}
  .cart-tabs button{min-height:46px;font-size:14px;padding:8px 4px}

  .cart-content{flex:none;min-height:0;overflow:visible;padding:0}
  .cart-line{grid-template-columns:60px minmax(0,1fr);grid-template-areas:'photo details' 'photo cost';gap:6px 12px;padding:18px 0}
  .cart-line img{grid-area:photo;width:60px;height:60px;border-radius:12px}
  .cart-line-details{grid-area:details}
  .cart-line h3{font-size:18px;line-height:1.3;margin-bottom:7px}
  .cart-line p{font-size:13px;line-height:1.4;margin-bottom:10px}
  .cart-line .quantity{margin-top:2px}
  .cart-line .quantity button{width:44px;height:44px}
  .cart-line .quantity span{min-width:34px;font-size:16px}
  .cart-line-cost{grid-area:cost;flex-direction:row;align-items:center;justify-content:space-between;gap:8px;text-align:left;min-width:0;flex-wrap:wrap}
  .cart-line-cost>strong{width:auto;font-size:20px;line-height:1.3}
  .cart-remove-button{width:auto;min-height:44px;font-size:13px;padding:8px 0}
  .cart-clear-button{min-height:44px}
  .cart-footer{margin-top:12px;padding-top:18px}
  .cart-summary{font-size:23px;gap:12px;font-variant-numeric:tabular-nums}
  .cart-summary>span:last-child{white-space:nowrap}
  .cart-pickup{font-size:14px;line-height:1.5;margin-bottom:16px}
  .cart-footer .cart-comment textarea{font-size:16px;min-height:84px;max-height:160px;scroll-margin-block:100px}
  .cart-comment-hint{gap:8px}
  .cart-footer .demo-order-button,.cart-footer .cart-continue{min-height:48px}

  .history-heading .history-order-number{font-size:19px}
  .history-total{font-size:18px;margin-left:auto}
  .history-details{padding:0 14px 14px}
  .history-item{grid-template-columns:36px minmax(0,1fr);gap:6px 10px}
  .history-item>span{grid-column:2;font-size:15px}
  .history-item img{width:36px;height:36px}
  .history-repeat{min-height:46px}
  .toast{white-space:normal;text-align:center;line-height:1.4;bottom:max(16px,env(safe-area-inset-bottom,0px));max-width:calc(100% - 24px);width:max-content}
  .site-footer{padding-bottom:env(safe-area-inset-bottom,0px)}
}
@media(max-width:360px){
  .container{width:calc(100% - 24px);margin-left:12px;margin-right:12px}
  .brand{font-size:16px;gap:7px}.brand-icon{width:36px;height:36px}.brand-icon svg{width:32px;height:32px}
  .cart-button{gap:5px;padding:9px;font-size:14px}#bag-icon{display:none}
  .cart-count{min-width:24px;height:25px;font-size:12px}
  .hero-copy{padding-right:14px;padding-left:14px}
  .menu-section-title{font-size:27px;max-width:calc(100% - 104px)}
  .popular-grid{grid-auto-columns:calc(100vw - 48px)}
  .product-body{padding:16px}.product-body h3{font-size:27px}
  .category{font-size:14px}
  .cart-dialog{padding-right:12px;padding-left:12px}
  .cart-dialog>.dialog-heading{margin-right:-12px;margin-left:-12px;padding-right:12px;padding-left:12px}
  .cart-line{grid-template-columns:50px minmax(0,1fr);column-gap:10px}
  .cart-line img{width:50px;height:50px}
  .cart-tabs button{font-size:13px}
  .shawarma-options .dialog-heading,.combo-dialog .dialog-heading{padding:12px;gap:8px}
  .shawarma-options .options-product-image{width:42px;height:42px}
  .shawarma-options .options-product-heading{gap:8px}
  .shawarma-options .dialog-heading h2,.combo-dialog .dialog-heading h2{font-size:21px}
}

/* Mobile banner and footer refinements; desktop layout stays unchanged. */
@media(max-width:800px),(max-width:1024px) and (pointer:coarse){
  .hero{grid-template-columns:1fr;min-height:0}
  .hero-logo{height:auto;min-height:0;padding:20px 12px 8px}
  .hero-brand-art{display:flex;flex-direction:column;align-items:center;aspect-ratio:auto;width:min(100%,420px);gap:3px}
  .hero-brand-art>.hero-main-logo{width:100%;max-width:none;height:auto;order:0}
  .student-promo{position:static;order:1;width:94%;max-width:390px;margin:0}
  .student-promo img{width:100%;height:auto;max-height:none;object-fit:contain}
  .hero-copy{padding:18px 18px 22px;gap:18px;text-align:center}
  .hero-message{text-align:center}
  .hero-message .eyebrow{justify-content:center;max-width:36ch;margin:0 auto 12px;line-height:1.5;text-wrap:balance}
  .hero-message .eyebrow:before{display:none}
  .hero-message h1{text-wrap:balance}
  .hero-copy-bottom{flex-direction:column;align-items:center;gap:20px}
  .hero-offers{flex:none;width:100%;max-width:38ch}
  .hero-copy-bottom .hero-description{max-width:34ch;margin:0 auto;font-size:16px;line-height:1.6;text-align:center;text-wrap:pretty}
  .hero-loyalty{width:fit-content;max-width:100%;margin:16px auto 0;padding:2px 0 2px 12px;text-align:left}
  .hero-qr-corner{align-self:center;width:100%;max-width:340px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 auto}
  .hero-qr-card>img,.hero-qr-corner>small{display:none}
  .hero-qr-card{justify-content:center;min-height:48px;padding:12px 14px;border:1px solid #8c4556;border-radius:12px;background:#321d24b3;color:#fff}
  .hero-qr-card.hero-qr-desktop{display:none}
  .hero-qr-card.hero-qr-mobile{display:flex}
  .hero-qr-card strong{font-size:16px;line-height:1.3;text-shadow:none}
  .hero-qr-card:active{background:#532535}
  .footer-inner{font-size:15px;gap:18px}
  .footer-company{width:100%;min-width:0}
  .footer-inner p{margin:10px 0;line-height:1.55}
  .footer-company nav{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:8px;width:100%;margin-top:16px}
  .footer-company nav .text-link{flex:none;min-height:44px;margin:0;padding:0;font-size:clamp(13px,3.6vw,14px);line-height:1.3;white-space:nowrap;text-align:left;text-underline-offset:4px}
  .footer-contacts{min-width:0;text-align:left}
  .footer-contacts a{display:inline-flex;align-items:center;min-height:44px}
}

/* Compact mobile copy and aligned contact rows. */
.pickup-address-mobile{display:none}
@media(max-width:800px),(max-width:1024px) and (pointer:coarse){
  .hero-brand-art{gap:0}
  .student-promo{width:84.6%;max-width:351px;margin-top:-8px}
  .hero-logo{padding-bottom:2px}
  .hero-message .eyebrow,.hero-copy-bottom .hero-description{display:none}
  .hero-copy{padding-top:5px;gap:8px}
  .hero-message{width:100%;max-width:340px;margin:0 auto;text-align:center}
  .hero-message h1{margin:0;font-size:clamp(1.3rem,6.15vw,2rem);line-height:1.25;white-space:nowrap;text-wrap:nowrap}
  .hero-message h1 br{display:none}
  .hero-message h1 span{margin-left:.22em}
  .hero-copy-bottom{width:100%;max-width:340px;margin:0 auto;gap:16px}
  .hero-offers{max-width:none;text-align:left}
  .hero-loyalty{width:100%;max-width:none;margin:0;padding:0;border-left:0;flex-direction:row;align-items:baseline;justify-content:center;gap:.35em;font-size:clamp(.875rem,3.8vw,1rem);line-height:1.4;white-space:nowrap}
  .hero-loyalty span,.hero-loyalty strong{font-size:inherit;line-height:inherit}
  .hero-loyalty strong{font-size:1.2em}
  .contact-bar{display:grid;grid-template-columns:minmax(0,1fr);gap:2px;min-height:0;padding:10px 12px;font-size:clamp(.75rem,3.3vw,.8125rem);line-height:1.35;text-align:left}
  .contact-bar .pickup,.contact-bar .hours,.contact-bar .phone{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;column-gap:8px;min-width:0;min-height:24px;margin:0;padding:0;border:0;font-size:inherit;line-height:inherit;white-space:normal}
  .contact-bar .icon{display:flex;align-items:center;justify-content:center;width:18px;height:18px;color:#e86b83}
  .contact-bar .icon svg{width:18px;height:18px}
  .contact-bar .pickup>.icon{align-self:start;margin-top:calc(1.35em + 1px)}
  .contact-bar .pickup p{margin:0 0 2px;font-size:inherit;line-height:inherit}
  .contact-bar .pickup strong,.contact-bar .phone strong{display:block;font-size:inherit;line-height:inherit;font-weight:500}
  .contact-bar .pickup strong{white-space:nowrap;text-wrap:nowrap}
  .pickup-address-full{display:none}
  .pickup-address-mobile{display:inline}
  .contact-bar .hours>span:last-child{font-weight:500}
}

/* Compact mobile catalogue; purchase dialogs keep their full-size controls. */
.mobile-milk-label{display:none}
@media(max-width:800px),(max-width:1024px) and (pointer:coarse){
  .contact-bar .pickup,.contact-bar .hours,.contact-bar .phone{grid-template-columns:20px minmax(0,1fr)}
  .contact-bar .icon{width:20px;height:20px;align-items:center;justify-content:center}
  .contact-bar .icon svg{display:block;width:20px;height:20px;flex:none}
  .contact-bar .pickup>.icon{margin-top:calc(1.35em + 1px)}
  .contact-bar [data-icon="map"] svg{transform:scale(.9);stroke-width:2}
  .featured-section,.combo-section,.menu{margin-top:24px}
  .section-heading{margin-bottom:14px;gap:10px}
  .menu-section-title,.menu h2{font-size:clamp(1.375rem,5.8vw,1.875rem);line-height:1.15;letter-spacing:-.5px}
  .menu-section-title{max-width:calc(100% - 104px)}
  .combo-section .menu-section-title{max-width:none}
  .popular-navigation{gap:6px}
  .popular-navigation button{width:44px;height:44px;min-width:44px;border-radius:10px;font-size:27px}
  .menu h2{margin-bottom:14px}
  .categories{margin-bottom:16px}
  #product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .product-card{border-radius:14px}
  .product-photo{aspect-ratio:1.65}
  .product-body{grid-template-rows:minmax(0,1fr) 44px 26px 44px;gap:6px;padding:10px}
  .product-body h3{font-size:clamp(1rem,4.4vw,1.125rem);line-height:1.15;letter-spacing:-.3px;min-height:0}
  .product-description{font-size:12px;line-height:1.35;margin-top:6px;min-height:0}
  .product-options-wrap{height:44px;min-height:0}
  .product-options{height:44px;min-height:44px;padding:6px 7px;gap:4px;border-radius:8px;font-size:12px}
  .product-options .sliders{display:none}
  .product-options .chevron{font-size:19px;line-height:1}
  .product-body>.product-price{height:26px;font-size:22px;line-height:1.15}
  .product-body>.product-add{height:44px;min-height:44px;padding:6px 4px;font-size:13px;line-height:1.15;border-radius:8px}
  .popular-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:clamp(200px,66vw,260px);gap:12px}
  .popular-grid .product-photo{aspect-ratio:1.75}
  .popular-grid .product-body{padding:12px}
  .popular-grid .product-body h3{font-size:18px}
  .popular-grid .product-description{font-size:13px}
  .popular-grid .product-options{font-size:13px;padding:6px 8px;gap:6px}
  .popular-grid .product-body>.product-add{font-size:14px}
  .product-card-drink .product-body{grid-template-rows:minmax(0,1fr) 50px 74px 44px}
  .product-card-drink .product-options-wrap{height:50px}
  .product-milk-option{height:50px;min-height:50px;padding:5px 6px;border-radius:8px;grid-template-columns:18px minmax(0,1fr);grid-template-rows:auto auto;column-gap:6px;row-gap:1px}
  .product-milk-option input{appearance:auto;-webkit-appearance:auto;display:block;grid-row:1 / 3;width:18px;height:18px;margin:0;accent-color:#ed173e}
  .product-milk-option input:checked:after{display:none}
  .product-milk-option>span{grid-column:2;grid-row:1;font-size:12px;line-height:1.15}
  .desktop-milk-label{display:none}
  .mobile-milk-label{display:inline}
  .product-milk-option>strong{grid-column:2;grid-row:2;font-size:12px;line-height:1.15}
  .drink-purchase-row{display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;height:74px;gap:5px}
  .drink-price-copy{display:flex;align-items:baseline;justify-content:space-between;gap:4px;flex:none}
  .product-card-drink .product-price{order:-1;font-size:21px;line-height:1.15}
  .product-price-caption{display:none}
  .drink-quantity-control{grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);width:100%;border-radius:8px}
  .drink-quantity-control button{width:100%;min-width:44px;height:44px;border-radius:7px;font-size:21px}
  .drink-quantity-value{font-size:14px}
  .combo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .combo-card{border-radius:14px}
  .combo-photos{height:clamp(94px,29vw,130px);gap:0}
  .combo-photo-plus{width:22px;height:22px;border-width:1px;font-size:18px}
  .combo-copy{padding:10px}
  .combo-label{font-size:12px;letter-spacing:.8px;margin-bottom:7px}
  .combo-copy h3{font-size:clamp(1rem,4.4vw,1.125rem);line-height:1.2;letter-spacing:-.3px;overflow-wrap:anywhere}
  .combo-copy>p,.combo-components{display:none}
  .combo-price{margin-top:auto;padding-top:10px;border-top:0;font-size:23px;line-height:1.2}
  .combo-add{height:44px;min-height:44px;margin-top:8px;padding:6px 4px;border-radius:8px;font-size:13px;line-height:1.15}
}
.payment-panel{margin:16px 0 12px;padding:18px;border:1px solid #dfc7cf;border-radius:16px;background:#fff;color:#30272b}
.payment-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:17px;line-height:1.3}
.payment-heading>span{flex:none;font-size:15px;font-weight:800;color:#ad1f40;background:#fff0f4;border-radius:8px;padding:6px 9px}
.payment-note{margin:12px 0 16px;font-size:14px;line-height:1.5;color:#705a64}
.payment-email-label{display:block;font-size:14px;font-weight:750;margin-bottom:7px}
.payment-email{display:block;width:100%;min-height:46px;padding:11px 12px;border:1px solid #cdb9c1;border-radius:10px;background:#fff;color:#30272b;font-size:16px;line-height:1.35}
.payment-email:disabled{background:#f6f3f4;color:#81747a;opacity:1}
.payment-help{margin:6px 0 16px;font-size:13px;line-height:1.4;color:#7c6972}
.payment-button{width:100%;min-height:48px;font-size:16px}
.payment-button:disabled{background:#e3d8dc;color:#76616b;box-shadow:none;cursor:default;opacity:1}
.payment-secondary{display:block;min-height:44px;width:100%;padding:10px 12px;border:1px solid #d9bdc7;border-radius:10px;color:#a41d40;background:transparent;font-size:14px;font-weight:750;line-height:1.35}
.payment-secondary:disabled{opacity:.6;cursor:wait}
.payment-pending .payment-secondary{margin-top:10px}
.payment-number{font-size:21px;font-weight:800;font-variant-numeric:tabular-nums;color:#aa1e40;margin:14px 0 0}
.cart-dialog{overflow-y:auto}.cart-content{flex:none;overflow:visible}
.cart-dialog>.dialog-heading{position:sticky;top:0;z-index:3;background:#f8f7f7}
@media(min-width:801px) and (pointer:fine),(min-width:1025px){.cart-dialog>.dialog-heading{top:-30px;margin:-30px -30px 20px;padding:24px 30px 16px}}
@media(max-width:800px),(max-width:1024px) and (pointer:coarse){.payment-panel{padding:14px;margin-top:14px}.payment-heading{font-size:16px}.payment-note{margin:10px 0 14px}.payment-button,.payment-secondary{min-height:48px}.payment-email{font-size:16px;scroll-margin-block:90px}}
/* Registration and payment: one flow across desktop and mobile. */
.cart-account{display:block;width:100%;margin:0 0 12px;padding:12px 14px;text-align:left;color:#8f2041;background:#fff;border:1px solid #dac6cd;border-radius:12px;font-size:14px;font-weight:750;min-height:44px;overflow-wrap:anywhere}
.checkout-dialog{width:440px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 40px);padding:26px;border:1px solid #d9c8cf;border-radius:24px;background:#fcfafb;color:#30252b;overflow:auto;overscroll-behavior:contain;box-shadow:0 24px 100px #16081040}
.checkout-dialog::backdrop{background:#160e14ab;backdrop-filter:blur(5px)}
.checkout-dialog>.dialog-heading{margin:0 0 20px;gap:14px;align-items:center}
.checkout-dialog .dialog-heading h2{margin:0;font-size:26px;line-height:1.2;letter-spacing:-.6px}
.checkout-dialog .close-button{width:40px;height:40px;min-width:40px;background:#f0e8eb;color:#805060}
.checkout-dialog p{margin:0}
.checkout-badge{display:inline-flex;padding:6px 9px;border:1px solid #e2bbc7;background:#fff0f4;color:#aa2143;border-radius:7px;font-size:12px;line-height:1.3;font-weight:800;letter-spacing:.5px}
.checkout-dialog .checkout-intro{margin:14px 0 20px;color:#74616a;font-size:16px;line-height:1.5}
#customer-form label{display:block;margin:16px 0 7px;font-size:14px;font-weight:750}
#customer-form input{width:100%;min-height:49px;padding:12px;border:1px solid #cdb9c1;border-radius:10px;background:#fff;color:#30252b;font:inherit;font-size:16px;line-height:1.4;scroll-margin-block:24px}
#customer-form input:focus-visible{outline:3px solid #ef17402e;border-color:#d32249}
.checkout-wide{width:100%;min-height:49px;padding:12px 14px;border-radius:11px;font-size:16px;line-height:1.35}
.checkout-wide:disabled{opacity:.6;cursor:wait}
.checkout-dialog .checkout-caption{font-size:14px;line-height:1.5;color:#75626c;margin:16px 0 20px}
.checkout-dialog .payment-secondary{margin-top:10px}
.checkout-error{color:#a9193e;background:#fff0f3;border:1px solid #ecc0cb;border-radius:9px;padding:11px;font-size:14px;line-height:1.45;margin:14px 0!important}
.checkout-error[hidden]{display:none}
.demo-code{padding:16px;background:#f6eaf0;border:1px solid #e0bfcd;border-radius:14px;text-align:center;color:#75334b}
.demo-code span,.demo-code strong,.demo-code small{display:block}
.demo-code span{font-size:14px}.demo-code strong{font-size:32px;letter-spacing:7px;padding:9px 0;font-variant-numeric:tabular-nums}.demo-code small{font-size:13px;line-height:1.5}
#customer-code{letter-spacing:5px;text-align:center;font-size:24px}
.checkout-customer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 0 0}
.checkout-customer strong,.checkout-customer span,.checkout-customer small{display:block;font-size:14px;line-height:1.5;overflow-wrap:anywhere}.checkout-customer div{min-width:0}.checkout-customer small{color:#77636e}
.checkout-customer button{border:0;background:none;color:#a81b40;text-decoration:underline;font-size:14px;min-height:44px;padding:4px}
.checkout-amount{font-size:42px;font-weight:850;line-height:1.2;letter-spacing:-1.5px;margin:0 0 18px}
.checkout-receipt{padding:14px 0;border-block:1px solid #e6d9df;margin-bottom:18px;max-height:190px;overflow:auto}
.checkout-receipt>div{display:flex;justify-content:space-between;align-items:baseline;gap:18px;font-size:14px;line-height:1.5;padding:4px 0}.checkout-receipt strong{white-space:nowrap}.checkout-receipt span{min-width:0;overflow-wrap:anywhere}
.demo-payment-method{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #dcb9c7;border-radius:12px;background:#fff}
.demo-payment-method strong,.demo-payment-method div>span{display:block;font-size:14px;line-height:1.6}.demo-payment-method div>span{color:#7c6872}
.demo-card-icon{display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:10px;color:#c9244b;background:#ffe9ef}.demo-card-icon svg{width:23px;height:23px}
.checkout-outcome{text-align:center}
.checkout-result-icon{display:grid;place-items:center;width:70px;height:70px;border-radius:50%;background:#e7f3ec;color:#287b49;margin:24px auto 18px;animation:checkout-confirm .3s ease-out}.checkout-result-icon svg{width:36px;height:36px}.checkout-result-icon.is-canceled{background:#f5e8ed;color:#9c3551}
.checkout-dialog .checkout-result-lead{font-size:21px;line-height:1.35;font-weight:750;margin-bottom:20px}
.checkout-order-number{padding:17px 12px;border:1px dashed #dab0c0;border-radius:14px;background:#fff1f5}.checkout-order-number span{display:block;font-size:14px;color:#875369}.checkout-order-number strong{display:block;font-size:38px;font-weight:850;letter-spacing:5px;line-height:1.4;color:#b02046;font-variant-numeric:tabular-nums}
.checkout-dialog .checkout-result-total{font-size:16px;margin:18px 0 0}
@keyframes checkout-confirm{from{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.checkout-result-icon{animation:none}}
@media(max-width:800px),(max-width:1024px) and (pointer:coarse){
 .checkout-dialog{width:420px;max-width:calc(100vw - 24px);max-height:calc(var(--mobile-viewport-height,100dvh) - 24px);margin:auto;inset:var(--mobile-viewport-top,0px) 0 auto;top:calc(var(--mobile-viewport-top,0px) + 12px);padding:20px;border-radius:20px}
 .checkout-dialog .dialog-heading h2{font-size:23px}.checkout-dialog>.dialog-heading{margin-bottom:16px}.checkout-dialog .checkout-intro{font-size:15px;margin:12px 0 16px}.checkout-amount{font-size:36px}.checkout-dialog .checkout-caption{margin:14px 0 18px}
}
@media(max-width:359px){.checkout-dialog{padding:16px}.checkout-dialog .dialog-heading h2{font-size:21px}.checkout-dialog .close-button{width:36px;height:36px;min-width:36px}.checkout-dialog .checkout-caption{font-size:14px}.checkout-wide{font-size:15px}.checkout-order-number strong{font-size:34px}}
/* Separate account entry beside the basket, shared by both layouts. */
.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0;margin-left:auto}
.account-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;flex:0 1 auto;min-width:0;max-width:280px;min-height:65px;padding:15px 20px;border:1px solid #68414e;border-radius:16px;background:#302128;color:#fff;font-size:16px;line-height:1.3;font-weight:750;white-space:nowrap;transition:background .15s,border-color .15s}
.account-button>span:first-child{display:flex;flex:none}.account-button-label{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis}.account-button svg{width:24px;height:24px}.account-button:hover,.account-button.is-signed-in{border-color:#c65070;background:#442532}
.account-profile h3{margin:15px 0 6px;text-align:center;font-size:24px;line-height:1.25;overflow-wrap:anywhere;letter-spacing:-.4px}
.account-avatar{display:grid;place-items:center;width:70px;height:70px;margin:6px auto 0;border-radius:20px;background:#fbe5ed;color:#b9264c}.account-avatar svg{width:34px;height:34px}
.account-profile .account-welcome{text-align:center;font-size:15px;line-height:1.5;color:#7b6370;margin-bottom:22px}
.account-details{display:grid;gap:0;margin:0;background:#fff;border:1px solid #e4d2da;border-radius:14px;padding:0 16px}
.account-details>div{padding:15px 0}.account-details>div+div{border-top:1px solid #ede1e6}.account-details dt{font-size:14px;color:#816773;margin:0 0 6px}.account-details dd{font-size:16px;font-weight:700;line-height:1.4;margin:0;overflow-wrap:anywhere}
.account-profile .account-test-note{margin:15px 0 20px;font-size:14px;line-height:1.5;color:#876573}
.account-profile>.checkout-wide{margin-top:12px}
.account-session-note{padding:12px;border-radius:10px;background:#f4e8ee;color:#873957;font-size:14px;line-height:1.5;margin:0 0 16px!important}
.account-session-note[hidden]{display:none}
@media(max-width:800px),(max-width:1024px) and (pointer:coarse){
 .header-actions{gap:8px;flex:1;max-width:calc(100% - 116px)}
 .account-button{flex:1;min-width:72px;max-width:132px;min-height:46px;height:46px;padding:6px 8px;border-radius:12px;font-size:14px}.account-button>span:first-child{display:none}.account-button-label{display:block;white-space:normal;line-height:1.2}.account-button.is-signed-in .account-button-label{white-space:nowrap}
 .header-actions .cart-button{flex:0 0 auto;min-width:0;max-width:calc(100% - 80px)}.header-actions #cart-total{min-width:0;overflow:hidden;text-overflow:ellipsis}.header-actions .cart-count,.header-actions #bag-icon{flex:none}
 .account-profile h3{font-size:22px}
}
@media(max-width:360px){.header-inner{gap:8px}.header-actions{gap:6px;max-width:calc(100% - 108px)}.header-actions .cart-button{padding:9px 8px;max-width:calc(100% - 78px)}}
/* Orders stay open and readable; issuance is managed by the kitchen. */
.cart-tabs{grid-template-columns:.85fr 1.15fr 1fr}
.cart-tabs button{min-width:0;gap:4px;font-size:14px}
.cart-tabs span{min-width:19px;height:20px;padding:0 3px}
.order-card-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px 14px;padding:16px}
.history-heading{gap:5px}
.history-heading .history-order-number{font-size:20px;line-height:1.3;margin:0;color:#a71939;letter-spacing:0}
.history-heading time{font-size:13px;color:#75636b}
.history-total{margin:0;font-size:19px;line-height:1.4;font-variant-numeric:tabular-nums}
.history-payment-status{grid-column:1/-1;font-size:14px;line-height:1.45;color:#755564;margin:0}
.history-payment-status.is-paid{color:#a51d40;font-weight:700}
.history-payment-status.is-received{color:#326646}
.history-details{padding:0 16px 16px}
.history-item{grid-template-columns:40px minmax(0,1fr) auto;gap:10px;padding:12px 0}
.history-item img{width:40px;height:40px}
.history-item strong{font-size:16px;line-height:1.4}
.history-item p{font-size:14px;line-height:1.4;margin-top:4px}
.history-item>span{grid-column:auto;font-size:15px;line-height:1.5}
.history-item-quantity{white-space:nowrap;color:#75636b;font-weight:500}
.history-received{font-size:13px;line-height:1.5;color:#647469;margin:10px 0 6px}
.history-details .history-comment{padding:12px;margin:8px 0 0}
@media(max-width:520px){
 .order-card-header{padding:14px;gap:9px 10px}
 .history-heading .history-order-number{font-size:18px}
 .history-total{font-size:18px}
 .history-details{padding:0 14px 14px}
 .history-item{grid-template-columns:36px minmax(0,1fr) auto;gap:8px}
 .history-item img{width:36px;height:36px}
 .history-item>span{font-size:14px}
}
@media(max-width:360px){
 .cart-tabs{gap:3px;padding:4px}.cart-tabs button{padding:8px 2px}.cart-tabs span{min-width:18px;padding:0 2px}
 .order-card-header{grid-template-columns:minmax(0,1fr)}
 .history-total{grid-row:3}
 .history-item{grid-template-columns:32px minmax(0,1fr)}
 .history-item img{width:32px;height:32px;grid-row:span 2}
 .history-item>span{grid-column:2}
}

/* Phone confirmation shares the account layout on desktop and mobile. */
.sms-code-note{padding:16px;border:1px solid #e0bfcd;border-radius:14px;background:#fff4f7;color:#63384b}
.sms-code-note strong{display:block;font-size:16px;line-height:1.4}
.sms-code-note p{margin:7px 0 0;font-size:14px;line-height:1.5}
#customer-resend:disabled,.history-repeat:disabled{opacity:.6;cursor:default}

/* Hot dogs keep the menu card style with the choice directly on the card. */
#product-grid .product-card-hotdog .product-photo{aspect-ratio:4 / 3}
.product-card-hotdog .product-body{display:flex;flex-direction:column;gap:14px;padding:18px}
.product-card-hotdog .product-info{flex:1}
.product-card-hotdog h3{font-size:26px;line-height:1.15;min-height:0}
.product-card-hotdog .product-description{font-size:15px;line-height:1.5;margin:10px 0 0;min-height:0}
.hotdog-sausages{min-width:0;margin:0;padding:0;border:0}
.hotdog-sausages legend{padding:0;margin:0 0 8px;font-size:14px;font-weight:700;color:#66505a}
.hotdog-sausages>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.hotdog-sausages label{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px 5px;border:1px solid #dcc8cf;border-radius:9px;background:#faf6f7;font-size:14px;cursor:pointer}
.hotdog-sausages label:has(input:checked){background:#fff0f3;border-color:#e71339;color:#ac1736}
.hotdog-sausages input{color-scheme:light;margin:0;width:16px;height:16px;accent-color:#e71339;flex:none}
.hotdog-purchase{display:flex;align-items:center;gap:12px}
.hotdog-purchase .product-price{margin:0;font-size:27px;line-height:1.2;white-space:nowrap}
.hotdog-purchase .product-add{flex:1;min-width:0;width:auto;min-height:44px;padding:10px 8px;font-size:15px}
@media(max-width:800px),(max-width:1024px) and (pointer:coarse){
  .categories{grid-template-columns:repeat(4,minmax(0,1fr))}
  .categories .category{min-width:0;font-size:14px;padding:10px 4px}
  .product-card-hotdog .product-body{padding:10px;gap:10px}
  .product-card-hotdog h3{font-size:18px;line-height:1.2}
  .product-card-hotdog .product-description{font-size:14px;line-height:1.4;margin-top:7px}
  .hotdog-sausages>div{grid-template-columns:1fr}
  .hotdog-sausages label{justify-content:flex-start;padding-inline:10px}
  .hotdog-purchase{display:grid;gap:6px}
  .hotdog-purchase .product-price{font-size:24px}
  .hotdog-purchase .product-add{width:100%;font-size:14px}
}
@media(max-width:359px){.categories{grid-template-columns:repeat(2,minmax(0,1fr))}}


.combo-fixed-items{margin:0 0 20px;padding:16px 18px;border:1px solid #e5cdd5;border-radius:12px;background:#fff1f4}
.combo-fixed-items strong{font-size:17px;line-height:1.4;color:#a71939}
.combo-fixed-items p{margin:7px 0 0;font-size:15px;line-height:1.5;color:#66505a}
.combo-fields>[hidden]{display:none}


/* Account-only order tabs, hidden until server registration is confirmed. */
.cart-tabs button[hidden]{display:none}
.cart-tabs.is-guest{grid-template-columns:1fr}

/* Country code stays fixed while the national phone number is edited. */
.customer-phone-field{position:relative;min-width:0}
.customer-phone-prefix{position:absolute;inset:0 auto 0 14px;display:flex;align-items:center;font-size:16px;font-weight:700;color:#30252b;pointer-events:none}
.customer-phone-prefix::after{content:"";height:22px;border-right:1px solid #e4d2da;margin-left:12px}
#customer-form #customer-phone{min-width:0;padding-left:61px}

/* Phone/password account controls share the existing compact dialog layout. */
.customer-auth-links{display:flex;flex-wrap:wrap;gap:10px 18px;justify-content:space-between;margin-top:18px}
.customer-auth-links button{padding:8px 0;border:0;background:none;color:#9b2447;font:inherit;font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.customer-auth-links button:focus-visible{outline:3px solid #ef174055;border-radius:4px}
#customer-code{font-variant-numeric:tabular-nums;letter-spacing:.2em}
.customer-password-field{position:relative;min-width:0}
#customer-form .customer-password-field input{padding-right:56px}
.password-toggle{position:absolute;right:3px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:10px;border:0;border-radius:8px;background:transparent;color:#9b2447;cursor:pointer}
.password-toggle svg{width:23px;height:23px;pointer-events:none}
.password-toggle:hover,.password-toggle[aria-pressed="true"]{background:#fff0f4}
.password-toggle:focus-visible{outline:3px solid #d32249;outline-offset:-3px}
.customer-password-field input::-ms-reveal{display:none}

/* Compact call confirmation: one clear input, with help kept out of the way. */
.call-code-step{padding-top:0}
.call-phone-summary{display:flex;align-items:center;gap:11px;padding:12px;border:1px solid #e8e0e3;border-radius:14px;background:#f6f3f4}
.call-phone-icon{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:11px;background:#fff;color:#d0183c}
.call-phone-icon svg{width:20px;height:20px}
.call-phone-summary>div{min-width:0;flex:1}
.call-phone-summary span:not(.call-phone-icon){display:block;color:#82757b;font-size:12px;line-height:1.4}
.call-phone-summary strong{display:block;color:#30252b;font-size:16px;line-height:1.5;font-variant-numeric:tabular-nums;white-space:nowrap}
.call-change-phone{flex:none;min-height:44px;padding:8px 4px;border:0;border-radius:6px;background:none;color:#b01d40;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.call-change-phone:focus-visible,.call-code-help summary:focus-visible{outline:3px solid #d32249;outline-offset:3px}
.call-code-step #customer-form label{margin:22px 0 7px;font-size:15px}
.call-code-step .call-code-hint{margin:0 0 14px;color:#71626a;font-size:13px;line-height:1.55;max-width:36em}
.call-code-step #customer-code{min-height:68px;padding:10px 12px 10px calc(12px + .4em);border:1.5px solid #d9d0d4;border-radius:14px;background:#fff;box-shadow:0 3px 10px #30252b04;font-size:30px;font-weight:700;letter-spacing:.4em;line-height:1.4;transition:border-color .15s,box-shadow .15s}
.call-code-step #customer-code::placeholder{color:#c9bfc4;font-weight:400;opacity:1}
.call-code-step #customer-code:focus-visible{border-color:#d0183c;outline:3px solid #ef174018;outline-offset:2px}
.call-code-step #customer-code[aria-invalid="true"]{border-color:#c72443}
.call-code-step .call-code-expiry{margin:9px 0 0;text-align:center;color:#71626a;font-size:12px;line-height:1.5}
.call-code-step #customer-error{margin:10px 0 0!important;padding:0;border:0;border-radius:0;background:none;color:#bb2440;font-size:13px;line-height:1.5}
.call-code-step .call-code-confirm{margin-top:20px;min-height:50px;border-radius:13px}
.call-code-step .call-code-resend{margin-top:8px;min-height:46px;border:0;background:transparent;color:#6c5e66;font-size:14px;font-weight:650;border-radius:10px}
.call-code-step .call-code-resend:not(:disabled):hover{background:#f6f1f3}
.call-code-help{margin-top:8px;padding-top:8px;border-top:1px solid #eee6e9}
.call-code-help summary{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;list-style:none;color:#84747e;font-size:13px;cursor:pointer;border-radius:6px}
.call-code-help summary::-webkit-details-marker{display:none}
.call-code-help summary::after{content:"+";font-size:17px;font-weight:400}
.call-code-help[open] summary::after{content:"−"}
.call-code-step .call-code-help p{margin:2px 0 8px;color:#82757b;font-size:13px;line-height:1.55}
.call-code-wait{padding:22px 0 12px}
.call-code-wait strong{display:block;color:#44373e;font-size:16px;line-height:1.4}
.call-code-step .call-code-wait p{margin-top:7px;color:#82757b;font-size:14px;line-height:1.5}
.incoming-call-number{display:block;margin:2px 0 14px;text-align:center;color:#30252b;font-size:26px;line-height:1.4;font-variant-numeric:tabular-nums;white-space:nowrap}
.incoming-call-link{display:flex;align-items:center;justify-content:center;gap:9px;min-height:50px;text-decoration:none}
.incoming-call-link svg{width:20px;height:20px}
.incoming-call-link[aria-disabled="true"]{opacity:.55;cursor:default;pointer-events:none}
.incoming-call-status{margin:14px 0 6px;color:#71626a;font-size:13px;line-height:1.5;text-align:center}
.incoming-call-step #customer-call-check:disabled{opacity:.6;cursor:default}
@media(max-width:360px){.call-phone-summary{gap:8px;padding:10px}.call-phone-icon{width:32px;height:32px}.call-phone-summary strong{font-size:14px}.call-change-phone{font-size:12px}}

/* Compact, separate registration choices; full documents open without losing the form. */
#customer-form .registration-legal{min-width:0;padding:6px 12px;margin:0 0 16px;border:1px solid #e7dfe3;border-radius:12px;background:#f6f2f4}
#customer-form .registration-legal-choice{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;min-height:44px;margin:0;padding:12px 0;font-size:13px;line-height:20px;font-weight:400;color:#51454c;cursor:pointer}
#customer-form .registration-legal-choice input[type="checkbox"]{display:block;align-self:start;width:20px;max-width:20px;height:20px;min-height:20px;margin:0;padding:0;border-radius:4px;accent-color:#d7193d;cursor:pointer}
#customer-form .registration-legal-choice input[type="checkbox"]:focus-visible{outline:3px solid #d7193d55;outline-offset:3px}
#customer-form .registration-legal-choice span{min-width:0;overflow-wrap:break-word}
.registration-legal a{color:#8d2940;text-decoration:underline;text-decoration-color:#cba1ad;text-decoration-thickness:1px;text-underline-offset:3px}
.registration-legal a:hover{text-decoration-color:currentColor}
.registration-legal a:focus-visible,.legal-document-list a:focus-visible{outline:3px solid #e3133a66;outline-offset:3px;border-radius:3px}
#customer-form .registration-legal-policy{margin:0;padding:0 0 0 30px;font-size:12px;line-height:18px;color:#71626a}
.registration-legal-policy a{display:inline-flex;align-items:center;min-height:32px;padding:4px 0}
.info-dialog.legal-info-dialog{width:660px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 32px);background:#fcfafb;color:#30252b;padding:26px;border:1px solid #ded4d8;border-radius:22px;overflow:auto}
.legal-info-dialog .dialog-heading{align-items:flex-start;gap:14px;margin-bottom:10px}
.legal-info-dialog .dialog-heading h2{font-size:23px;line-height:1.25;letter-spacing:-.4px;overflow-wrap:anywhere}
.legal-info-dialog .close-button{flex:none;width:44px;height:44px;min-width:44px;background:#f0e8eb;color:#805060}
.legal-document{font-size:14px;line-height:1.6;color:#50444b;overflow-wrap:break-word}
.legal-document section+section{margin-top:18px;padding-top:18px;border-top:1px solid #eee6e9}
.legal-document h3{margin:0 0 7px;font-size:15px;line-height:1.4;color:#30252b}
.legal-document p,.info-dialog .legal-document p{margin:0 0 8px;font-size:14px;line-height:1.6;color:#50444b}
.legal-document section p:last-child{margin-bottom:0}
.legal-version,.legal-document .legal-version,.info-dialog .legal-document .legal-version{font-size:12px;line-height:1.5;color:#76646d;margin:0 0 12px}
.legal-document .legal-summary,.info-dialog .legal-document .legal-summary{margin:0 0 20px;padding:12px 14px;background:#f3eef0;border-radius:10px;color:#68545e;font-size:14px;line-height:1.5}
.legal-index-intro,.info-dialog .legal-index-intro{font-size:14px;line-height:1.5;color:#75626c;margin:0 0 16px}
.legal-document-list{display:grid;gap:10px;margin-bottom:18px}
.legal-document-list>a{display:flex;justify-content:space-between;align-items:center;gap:14px;min-height:76px;padding:14px 16px;border:1px solid #e4d9df;border-radius:12px;color:#30252b;background:#fff;text-decoration:none}
.legal-document-list strong{display:block;font-size:15px;line-height:1.4}
.legal-document-list small{display:block;font-size:13px;line-height:1.5;color:#76646d;margin-top:4px}
.legal-document-list>a>span:last-child{color:#c62245;font-size:20px}
.legal-page{margin:0;background:#f5f1f3;color:#30252b}
.legal-page main{max-width:740px;margin:0 auto;padding:32px 24px 64px}
.legal-page h1{font-size:clamp(24px,5vw,34px);line-height:1.2;letter-spacing:-.5px;margin:20px 0}
.legal-back{display:inline-flex;align-items:center;min-height:44px;color:#9e2340;font-size:14px}
@media(max-width:800px){
  .info-dialog.legal-info-dialog{padding:20px;border-radius:20px;max-height:calc(var(--mobile-viewport-height,100dvh) - 24px)}
  .info-dialog.legal-info-dialog .dialog-heading{position:static;margin:0 0 10px;padding:0;background:none;border:0}
  .info-dialog.legal-info-dialog .dialog-heading h2{font-size:21px}
  .info-dialog.legal-info-dialog #info-content{padding:0}
  .legal-document p{font-size:14px}
}
@media(max-width:359px){.info-dialog.legal-info-dialog{padding:16px}.info-dialog.legal-info-dialog .dialog-heading h2{font-size:19px}}

/* Keep menu rows aligned without inserting an empty options control. */
.product-card-no-options{height:100%;align-self:stretch}
.product-card-no-options .product-body{grid-template-rows:minmax(0,1fr) 46px 48px}
.store-availability{display:flex;align-items:center;gap:10px;margin:14px 0 0;padding:10px 14px;min-height:44px;border:1px solid #44343a;border-radius:12px;background:#211e20;color:#dfd4d9;font-size:13px;line-height:1.45}
.store-availability p{margin:0;flex:1}
.store-availability-dot{width:7px;height:7px;border-radius:50%;background:#bc9b79;flex:none}
.store-availability.is-accepting .store-availability-dot{background:#8cba9e}
.store-availability button{min-height:44px;padding:5px 10px;margin:-7px -7px -7px 0;border:0;background:transparent;color:#ffb5c5;font-size:13px;font-weight:700}
.checkout-availability{padding:11px 13px;margin:12px 0;border:1px solid #e1d2d8;border-radius:11px;background:#f4edf0;color:#67434f;font-size:13px;line-height:1.5}
.checkout-availability p{margin:0}
.checkout-availability button{margin-top:8px}
.payment-button:disabled{opacity:.55;box-shadow:none;cursor:not-allowed}
.history-more{width:100%;min-height:44px;margin:0 0 8px;padding:10px 14px;border:1px solid #dfc7d0;border-radius:11px;background:#f9f2f5;color:#7d2941;font-size:14px;font-weight:700}
.history-more:disabled{opacity:.65}
.history-refund,.history-receipt-note{margin:12px 0 0;color:#624751;font-size:13px;line-height:1.5}
.history-cancellation{margin-top:12px;padding:11px 13px;border-radius:10px;background:#f5edf0;color:#694650;font-size:13px;line-height:1.5}
.history-cancellation p{margin:5px 0 0}
.history-cancellation a,.history-receipt-note a{text-underline-offset:3px}
@media(max-width:800px),(max-width:1024px) and (pointer:coarse){
  .hero-copy-bottom{display:none}
  .hero-logo{min-height:0}
  .hero-copy{padding-bottom:20px;gap:12px}
  .product-card-no-options .product-body{grid-template-rows:minmax(0,1fr) 26px 44px}
  .product-card-drink.product-card-no-options .product-body{grid-template-rows:minmax(0,1fr) 74px 44px}
  .store-availability{margin-top:10px;padding:9px 12px;font-size:12px;border-radius:11px}
}

/* Stock state adds no reserved space when every item is available. */
.product-photo{position:relative}
.product-availability{position:absolute;bottom:10px;left:10px;right:10px;padding:7px 10px;border-radius:9px;background:#242023ed;color:#fff;font-size:12px;font-weight:700;line-height:1.35;text-align:center}
.product-add:disabled,[data-combo]:disabled,.options-add:disabled,.combo-submit:disabled{background:#797074;box-shadow:none;cursor:not-allowed;color:#fff;opacity:.8}
.product-card.is-unavailable .product-photo img{filter:saturate(.35);opacity:.75}
.choice-availability{display:block;color:#9c334a;font-size:11px;line-height:1.35;font-weight:600}
.choice-availability[hidden],.product-availability[hidden]{display:none}
.option-row.is-unavailable,.hotdog-sausages label.is-unavailable,.product-milk-option.is-unavailable{border-color:#cdbfc5;background:#f0e9ec;color:#71636a}
.product-milk-option .choice-availability{grid-column:2/-1;grid-row:1/3}
.product-milk-option.is-unavailable>span,.product-milk-option.is-unavailable>strong{display:none}
.hotdog-sausages label.is-unavailable{flex-wrap:wrap;row-gap:2px}
.hotdog-sausages .choice-availability{flex-basis:100%;text-align:center}
.hotdog-sausages .choice-availability{font-size:10px}

/* Account forms: quiet surfaces, grouped fields and one clear primary action. */
#customer-dialog{width:480px;padding:26px;border-color:#e8dfe2;border-radius:24px;background:#fffdfd;box-shadow:0 28px 90px #190d1740}
#customer-dialog>.dialog-heading{gap:12px;margin-bottom:12px}
#customer-dialog .dialog-heading h2{flex:1;min-width:0;font-size:25px;line-height:1.2;letter-spacing:-.65px}
.customer-heading-mark{display:grid;place-items:center;width:42px;height:42px;flex:none;border:1px solid #f5dbe2;border-radius:14px;background:#fff0f3;color:#d7193d}
.customer-heading-mark svg{width:22px;height:22px}
#customer-dialog .close-button{width:44px;height:44px;min-width:44px;border-radius:50%;background:#f5f1f3;color:#7e6973}
#customer-dialog .customer-form-intro{margin:0 0 22px;color:#82717a;font-size:14px;line-height:1.55}
#customer-form.customer-entry-form{display:grid;gap:14px;min-width:0}
#customer-form .customer-field{display:grid;gap:7px;min-width:0}
#customer-form .customer-field>label{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0;font-size:13px;line-height:1.35;font-weight:650;color:#46373f}
.customer-label-note{color:#8c7c84;font-size:12px;font-weight:400}
.customer-field-pair{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:14px;min-width:0}
#customer-form.customer-entry-form .customer-field input{min-height:48px;height:48px;padding:11px 13px;border:1px solid #e0d6db;border-radius:12px;background:#fff;font-size:16px;line-height:1.4;transition:border-color .15s,box-shadow .15s}
#customer-form.customer-entry-form .customer-field input::placeholder{color:#9c8f96;opacity:1}
#customer-form.customer-entry-form .customer-field input:focus-visible{outline:2px solid #e91b3e24;outline-offset:2px;border-color:#d7193d;box-shadow:0 2px 8px #d7193d08}
#customer-form.customer-entry-form #customer-phone{padding-left:60px}
#customer-form.customer-entry-form .customer-password-field input{padding-right:54px}
#customer-dialog .customer-entry-form .checkout-caption{margin:0;color:#8a7680;font-size:12px;line-height:1.5}
#customer-dialog .customer-entry-form .registration-legal{margin:2px 0 0;padding:5px 12px;border:0;border-radius:12px;background:#f7f4f5}
#customer-dialog .customer-entry-form .registration-legal-choice{align-items:start;gap:9px;min-height:44px;padding:10px 0;font-size:12px;line-height:20px;color:#72616a}
#customer-dialog .customer-entry-form .registration-legal a{color:#814054;text-decoration-color:#d3b4be;text-underline-offset:3px}
#customer-dialog .customer-entry-form .registration-legal-policy{padding-left:29px;font-size:12px;line-height:16px}
#customer-dialog .customer-entry-form .registration-legal-policy a{min-height:32px;color:#8c727d}
#customer-dialog .customer-entry-form .checkout-error{margin:0!important}
#customer-dialog .customer-entry-form>.primary-button{min-height:50px;padding:12px 16px;border-radius:13px;font-size:15px;font-weight:750;box-shadow:0 5px 12px #e4143720}
#customer-dialog .customer-entry-form>.payment-secondary{margin:0}
.customer-signin-link{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:5px;min-height:44px;margin:-6px 0 -6px;padding:10px 8px;border:0;border-radius:10px;background:transparent;color:#89747e;font:inherit;font-size:13px;line-height:1.5;cursor:pointer}
.customer-signin-link strong{color:#bd2042;font-weight:700}
.customer-signin-link:hover{background:#faf4f6}
.customer-signin-link:focus-visible{outline:3px solid #d7193d55;outline-offset:2px}
#customer-dialog .customer-entry-form .customer-auth-links{margin:0;gap:6px 16px}
#customer-dialog .customer-entry-form .customer-auth-links button{min-height:44px;font-size:13px}
@media(max-width:800px),(max-width:1024px) and (pointer:coarse){
  #customer-dialog{width:440px;padding:20px;border-radius:22px}
  #customer-dialog .dialog-heading h2{font-size:23px}
  #customer-dialog .customer-form-intro{margin-bottom:18px;font-size:13px}
  .customer-field-pair{grid-template-columns:minmax(0,1fr);gap:13px}
  #customer-form.customer-entry-form{gap:13px}
}
@media(max-width:359px){
  #customer-dialog{padding:16px}
  #customer-dialog>.dialog-heading{gap:8px}
  #customer-dialog .dialog-heading h2{font-size:21px;letter-spacing:-.5px}
  .customer-heading-mark{width:36px;height:36px;border-radius:12px}
  #customer-dialog .customer-entry-form .registration-legal{padding-inline:10px}
}

/* Compact standalone sides share the menu's choice controls. */
#product-grid[data-category="sides"]{grid-template-columns:repeat(3,minmax(0,280px));grid-auto-rows:auto;gap:16px}
.product-card-side .product-photo{aspect-ratio:4 / 3}
.product-card-side .product-body{display:flex;flex-direction:column;min-width:0;gap:10px;padding:14px}
.product-card-side .product-info{flex:1}
.product-card-side h3{min-height:0;font-size:22px;line-height:1.18}
.product-card-side .product-description{min-height:0;margin:7px 0 0;font-size:13px;line-height:1.4}
.side-portion{position:absolute;top:10px;left:10px;display:inline-flex;align-items:center;min-height:26px;padding:4px 9px;border:1px solid #ffffff80;border-radius:20px;background:#fff9f1f2;box-shadow:0 2px 8px #24130b12;color:#62452c;font-size:12px;line-height:1.3;font-weight:750;font-variant-numeric:tabular-nums}
.side-sauce-choice{min-width:0}
.side-sauce-choice .product-options{height:auto;min-height:44px;max-width:100%;padding:8px 10px;gap:8px;font-size:14px;white-space:normal}
.side-sauce-choice .product-options-label{min-width:0;line-height:1.3;overflow-wrap:anywhere}
.side-sauce-choice .chevron{flex:none}
.side-sauce-choice .product-options:disabled{cursor:default;color:#806e77;background:#f0e9ec}
.side-purchase{display:grid;gap:8px;margin-top:auto}
.side-purchase .product-price{margin:0;font-size:25px;line-height:1.2;font-variant-numeric:tabular-nums}
.side-purchase .product-add{min-height:44px;padding:9px 8px;border-radius:10px;font-size:15px;line-height:1.25}

/* A single sauce uses the same choice tiles as the rest of the menu. */
.options-dialog.sauce-options{width:520px;max-width:calc(100% - 32px)}
.sauce-options .mobile-options-nav{display:none}
.sauce-options .dialog-heading{min-height:0;padding:14px 16px;gap:12px}
.sauce-options .options-product-heading{gap:12px}
.sauce-options .options-product-image{width:44px;height:44px;border-radius:12px}
.sauce-options .dialog-heading h2{font-size:22px;line-height:1.2}
.sauce-options .dialog-kicker{font-size:10px;letter-spacing:1px;margin-bottom:4px}
.sauce-options .close-button{width:44px;height:44px}
.sauce-options #options-fields{padding:16px}
.sauce-options .option-group{margin:0}
.sauce-options .option-group legend{font-size:17px;line-height:1.3;margin-bottom:12px}
.sauce-options .option-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.sauce-options .option-row{min-width:0;min-height:52px;margin:0;padding:9px 10px;gap:9px;border-radius:10px}
.sauce-options .option-row input{appearance:auto;-webkit-appearance:auto;display:block;width:20px;height:20px;margin:0;border:0;border-radius:50%;background:transparent;accent-color:#ed173e}
.sauce-options .option-row input:checked{background:transparent}
.sauce-options .option-row input:checked:after{display:none}
.sauce-options .option-copy strong{font-size:14px;line-height:1.3;overflow-wrap:anywhere}
.sauce-options .options-footer{padding:14px 16px}
.sauce-options .options-total{gap:12px;margin-bottom:12px}
.sauce-options .options-total>div>strong{font-size:14px}
.sauce-options #option-summary{margin-top:4px;font-size:12px;line-height:1.35}
.sauce-options #option-price{font-size:27px}
.sauce-options .options-add{min-height:46px;padding:10px 12px;border-radius:11px;font-size:16px}
@media(max-width:800px),(max-width:1024px) and (pointer:coarse){
  .categories .category-sides{grid-column:1/-1;padding-inline:12px;white-space:normal}
  #product-grid[data-category="sides"]{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto;max-width:570px;gap:10px}
  .product-card-side .product-body{gap:8px;padding:10px}
  .product-card-side h3{font-size:16px;line-height:1.2}
  .product-card-side .product-description{margin-top:6px;font-size:12px;line-height:1.35}
  .side-portion{top:8px;left:8px}
  .side-purchase{gap:7px}
  .side-purchase .product-price{font-size:23px}
  .side-purchase .product-add{padding:9px 5px;border-radius:8px;font-size:13px}
  #product-grid .product-card-sauce{display:grid;grid-column:1/-1;grid-template-columns:clamp(88px,27vw,132px) minmax(0,1fr);height:auto;align-items:center}
  .product-card-sauce .product-photo{width:100%;aspect-ratio:4 / 3;border-radius:0 10px 10px 0}
  .product-card-sauce .product-body{flex:none}
  .product-card-sauce .product-info{flex:none}
  .product-card-sauce .product-description{display:none}
  .side-sauce-choice .product-options{padding:7px 8px;font-size:13px}
  .options-dialog.sauce-options{width:calc(100% - 16px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px));max-width:520px}
  .sauce-options .option-row{min-height:52px}
  .sauce-options .options-total>div{flex:1 1 120px}
}
@media(max-width:359px){
  .sauce-options .option-grid{grid-template-columns:minmax(0,1fr)}
  .sauce-options .option-row{min-height:44px}
}

/* Contact email stays readable within narrow footer layouts. */
.footer-contacts .footer-email{display:inline-block;max-width:100%;overflow-wrap:anywhere}

/* Split checkout: show the exact sum payable now and at the counter. */
.combo-copy .combo-payment-note{font-size:12px;line-height:1.4;margin:8px 0;color:var(--muted,#686064);font-weight:600}
.cart-payment-split,.order-payment-summary{display:grid;gap:9px;margin:0 0 16px;font-size:14px;line-height:1.4}
.cart-payment-split>div,.order-payment-summary>div{display:flex;align-items:baseline;justify-content:space-between;gap:14px}
.cart-payment-split dt,.order-payment-summary dt{margin:0}.cart-payment-split dd,.order-payment-summary dd{margin:0;font-weight:700;white-space:nowrap}
.cart-line-details .line-payment-timing{font-size:11px;font-weight:600;color:#69595d;margin:5px 0}
.order-history-card>.order-payment-summary{padding:0 18px;margin:4px 0 16px}.order-payment-summary .is-due{color:#9b4215}
.checkout-outcome .order-payment-summary{text-align:left;margin:18px 0;background:#f6f2f2;padding:14px;border-radius:12px}
@media(max-width:600px){.cart-payment-split,.order-payment-summary{font-size:13px}.combo-copy .combo-payment-note{font-size:11px}.payment-button{white-space:normal}}
.mobile-upgrade,.mobile-pickup{display:none}
@media(max-width:800px),(max-width:1024px) and (pointer:coarse){
  .mobile-upgrade{display:block}
  .hero-menu-link{display:flex;justify-content:center;align-items:center;width:100%;max-width:340px;min-height:48px;margin:8px auto 0;padding:12px 16px;border-radius:12px;background:#e71339;color:#fff;text-decoration:none;font-size:17px;font-weight:800}
  .hero-qr-corner,.contact-bar{display:none}
  .mobile-pickup{display:block;margin-top:16px;padding:16px;border:1px solid #ffffff16;border-radius:18px;background:linear-gradient(135deg,#282324,#1d1b1c);box-shadow:0 6px 22px #00000018}
  .mobile-pickup-heading{display:flex;align-items:center;gap:8px}
  .mobile-pickup-mark{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:9px;background:#ee19361c;color:#ff617b}
  .mobile-pickup-mark svg{width:17px;height:17px}
  .mobile-pickup-heading h2{margin:0;font-size:12px;line-height:1.3;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#f4e9ec}
  .mobile-pickup-city{margin-left:auto;font-size:12px;color:#bdb3b6}
  .mobile-pickup-address{margin-top:12px;font-style:normal;font-size:clamp(18px,4.8vw,22px);line-height:1.35;font-weight:750;letter-spacing:-.35px;color:#fff;overflow-wrap:anywhere}
  .mobile-pickup-hours{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:8px 0 0;font-size:13px;line-height:1.5;color:#bdb3b6}
  .mobile-pickup-hours>[data-icon]{display:flex;margin-right:1px}
  .mobile-pickup-hours svg{width:15px;height:15px}
  .mobile-pickup-hours>span:last-child{color:#ede5e7;font-variant-numeric:tabular-nums}
  .mobile-pickup-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}
  .mobile-pickup-actions a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 8px;border:1px solid #ffffff1c;border-radius:10px;text-decoration:none;font-size:14px;line-height:1.2;font-weight:700;color:#fff;background:#ffffff06;touch-action:manipulation}
  .mobile-pickup-actions .mobile-pickup-map{background:#e71339;border-color:#e71339}
  .mobile-pickup-actions svg{display:block;width:17px;height:17px;flex:none}
  .mobile-pickup-actions a:active{filter:brightness(.88)}
  #menu{scroll-margin-top:110px}
  .mobile-shopping-note{font-size:14px;line-height:1.5;color:#e0c7cf;margin:0 0 18px}
  .product-facts{margin-top:10px;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
  .product-facts summary{min-height:44px;display:flex;align-items:center;gap:3px;color:#fcadbf;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
  .product-facts p{margin:8px 0}
  .product-facts dl{margin:8px 0}.product-facts dl>div{margin:8px 0}.product-facts dt{font-weight:700;color:#fff}.product-facts dd{margin:3px 0 0;color:#e0c9d0}
  .product-facts a{display:inline-flex;align-items:center;min-height:44px;color:#ffb6c5}
  .combo-choice-note{font-size:14px;line-height:1.5;color:#764352;margin:0 0 12px}
  .mobile-feedback{padding:16px;border:1px solid #ffffff16;border-radius:18px;margin:24px 0;background:linear-gradient(135deg,#282324,#1d1b1c);box-shadow:0 6px 22px #00000018}
  .mobile-feedback-heading{display:flex;align-items:center;gap:12px}
  .mobile-feedback-mark{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:13px;background:#ee19361c;color:#ff617b}
  .mobile-feedback-mark svg{width:21px;height:21px}
  .mobile-feedback h2{margin:0;font-size:21px;line-height:1.2;letter-spacing:-.3px}
  .mobile-feedback .mobile-feedback-caption{margin:4px 0 0;font-size:13px;line-height:1.4;color:#bdb3b6}
  .mobile-feedback .feedback-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}
  .mobile-feedback .feedback-actions a,.mobile-feedback .feedback-actions button{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:44px;padding:10px 6px;border:1px solid #ffffff1c;border-radius:10px;background:#ffffff06;color:#fff;text-decoration:none;font:inherit;font-size:13px;line-height:1.2;font-weight:700;white-space:nowrap}
  .mobile-feedback .feedback-actions a{background:#e71339;border-color:#e71339}
  .mobile-feedback .feedback-actions svg{width:16px;height:16px;flex:none}
  .mobile-feedback .feedback-actions :is(a,button):active{filter:brightness(.88)}
  .mobile-feedback .mobile-feedback-hours{display:flex;align-items:center;gap:7px;margin:12px 0 0;font-size:12px;line-height:1.5;color:#bdb3b6}
  .mobile-feedback-hours>[data-icon]{display:flex;flex:none}
  .mobile-feedback-hours svg{width:14px;height:14px}
  .mobile-feedback #feedback-copy-status{min-height:0;margin:10px 0 0;font-size:12px;line-height:1.5;color:#ffb3c2;user-select:text;overflow-wrap:anywhere}
  .mobile-feedback #feedback-copy-status:empty{display:none}
  /* Equal compact cards: keep photos proportional and share one purchase row. */
  .popular-grid{align-items:stretch}
  .popular-grid .product-card{height:100%;min-height:0;align-self:stretch}
  .popular-grid .product-body{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto 44px;flex:1;gap:10px;padding:12px}
  .popular-grid .product-info{grid-column:1/-1;align-self:start}
  .popular-grid .product-description{min-height:0;margin:6px 0 0;font-size:13px;line-height:1.4}
  .popular-grid .product-options-wrap,.popular-grid .hotdog-sausages{grid-column:1/-1;align-self:end}
  .popular-grid .product-options-wrap{height:auto;margin:0}
  .popular-grid .product-options{height:auto;min-height:44px}
  .popular-grid .product-body>.product-price,.popular-grid .hotdog-purchase .product-price{grid-column:1;grid-row:3;align-self:center;height:auto;margin:0;font-size:24px;line-height:1.2;white-space:nowrap}
  .popular-grid .product-body>.product-add,.popular-grid .hotdog-purchase .product-add{grid-column:2;grid-row:3;align-self:stretch;width:100%;height:44px;min-height:44px;margin:0;padding:6px 4px;font-size:13px;line-height:1.2}
  .popular-grid .hotdog-sausages legend{margin:0 0 6px;font-size:12px;line-height:1.35}
  .popular-grid .hotdog-sausages>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .popular-grid .hotdog-sausages label{min-width:0;min-height:44px;justify-content:center;gap:4px;padding:6px 4px;font-size:12px;line-height:1.25}
  .popular-grid .hotdog-sausages input{width:14px;height:14px}
  .popular-grid .hotdog-purchase{display:contents}
  .feedback-placeholder-desktop{display:none}
  .loyalty-card{margin:20px 0;padding:16px;border:1px solid #e2b6c2;border-radius:16px;background:#fff5f7;text-align:left;color:#35252b}
  .loyalty-card-heading{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:16px}.loyalty-card h3{margin:0;font-size:19px;line-height:1.3}.loyalty-mode{font-size:12px;padding:4px 7px;border-radius:6px;background:#f5dce3;color:#84273f}
  .loyalty-stamps{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin-bottom:14px}.loyalty-stamp{display:flex;justify-content:center;align-items:center;aspect-ratio:1;border:1px dashed #bc7c8d;border-radius:50%;color:#8b5665;font-size:16px}.loyalty-stamp.is-earned{color:#fff;background:#d91d44;border-style:solid;border-color:#d91d44;font-weight:800}
  .loyalty-card p{font-size:14px;line-height:1.5;margin:10px 0;color:#735461}.loyalty-card details{margin-top:12px;border-top:1px solid #eccbd4;padding-top:6px}.loyalty-card summary{min-height:44px;display:flex;align-items:center;font-size:14px;color:#a62042;cursor:pointer}.loyalty-retry{display:block;min-height:44px;margin-top:8px;border:1px solid #bd7790;background:white;border-radius:8px;padding:8px 14px;color:#8e1c39}
}

/* Keep mobile payment details visible and touch feedback inexpensive. */
@media(max-width:800px),(pointer:coarse){
  .combo-copy>.combo-payment-note{display:block;margin:8px 0 0;font-size:11px;line-height:1.4}
  dialog[class]::backdrop{background:#160e14b8;-webkit-backdrop-filter:none;backdrop-filter:none}
  dialog[class] .close-button{width:44px;height:44px;min-width:44px;min-height:44px;flex:0 0 44px}
  .primary-button:hover,.primary-button:active,.cart-button:hover,.mobile-pickup-actions a:active,.mobile-feedback .feedback-actions :is(a,button):active{filter:none}
  :is(.primary-button,.cart-button,.account-button,.category,.product-options,.hero-menu-link):not(:disabled):not([aria-disabled="true"]):active{opacity:.94}
}
@media(prefers-reduced-motion:no-preference) and (max-width:800px),(prefers-reduced-motion:no-preference) and (pointer:coarse){
  :is(.primary-button,.cart-button,.account-button,.category,.product-options,.hero-menu-link):not(:disabled):not([aria-disabled="true"]){transition:transform .14s ease-out,opacity .14s ease-out}
  :is(.primary-button,.cart-button,.account-button,.category,.product-options,.hero-menu-link):not(:disabled):not([aria-disabled="true"]):active{transform:scale(.98)}
}
/* Approved concept. Every rule is restricted to the storefront's redesign class. */
.redesign{--background:#171516;--white:#f7f3ec;--ink:#221d1e;--red:#f21e3d;--red-deep:#d91130;--muted:#8b7c76;--border:#ffffff20;--gutter:80px;--header:86px;--title:43px;--card-pad:15px;--card-title:17px;--description:11px;--description-height:32px;--price:21px;--gap:18px;background:var(--background);color:var(--white);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}.redesign main{overflow-x:clip}.redesign .container{max-width:1320px;width:calc(100% - var(--gutter));margin-inline:auto}.redesign :is(button,a,input,textarea,label){touch-action:manipulation}.redesign :is(button,a,input,textarea):focus-visible{outline:3px solid #f5b92f;outline-offset:4px}.redesign [hidden]{display:none!important}.redesign .site-header{height:var(--header);padding:0;background:#171516f7;border-bottom:1px solid var(--border);backdrop-filter:none;-webkit-backdrop-filter:none}.redesign .header-inner{height:var(--header);gap:35px;justify-content:flex-start;padding:0}.redesign .brand{gap:11px;flex:none;font-size:28px;line-height:1;letter-spacing:-1.8px;font-weight:900}.redesign .brand-icon{width:44px;height:48px;border-radius:11px;background:var(--red);transform:rotate(-5deg)}.redesign .brand-icon svg{width:32px;height:35px;transform:rotate(5deg);color:var(--white)}.redesign .wordmark{font-size:28px;line-height:1;letter-spacing:-1.8px;font-weight:900}.redesign .wordmark small{display:block;font-size:8px;letter-spacing:1.45px;font-weight:600;margin-top:6px}.redesign .header-nav{display:flex;gap:27px;margin-left:20px;font-size:13px;font-weight:700}.redesign .header-nav a{padding:12px 0;border-bottom:2px solid transparent;text-decoration:none}.redesign .header-nav a:hover{border-color:var(--red)}.redesign .header-actions{display:flex;align-items:center;gap:20px;margin-left:auto}.redesign .account-button{display:flex;align-items:center;gap:8px;padding:10px 0;min-height:44px;border:0;border-radius:0;background:none;box-shadow:none;font-size:12px;color:#c3bcbc}.redesign .account-button svg{width:18px;height:18px}.redesign .cart-button{gap:9px;min-height:45px;padding:8px 10px 8px 17px;border:1px solid #ffffff4d;border-radius:100px;background:none;box-shadow:none;font-size:13px;line-height:1.2}.redesign .cart-button svg{width:18px;height:20px}.redesign .cart-count{height:27px;min-width:27px;padding:0 5px;border-radius:50%;background:var(--red);color:white;font-size:11px}.redesign #cart-total{font-size:13px;white-space:nowrap}
.redesign .hero{height:auto;min-height:480px;display:grid;grid-template-columns:1.12fr 1fr;align-items:center;gap:45px;padding:44px 0 45px;background:none;border:0;border-radius:0;overflow:visible}.redesign .hero-copy{display:block;min-width:0;padding:0;text-align:left;gap:0}.redesign .eyebrow{font-size:10px;font-weight:800;line-height:1.3;letter-spacing:1.65px;color:var(--white);gap:8px;margin:0 0 18px}.redesign .eyebrow:before{height:2px;width:20px;background:var(--red)}.redesign .hero-copy>.eyebrow>span{height:2px;width:20px;background:var(--red)}.redesign .hero-copy>.eyebrow:has(>span):before{display:none}.redesign .hero h1{font-size:clamp(46px,5vw,72px);line-height:1.01;letter-spacing:-3.8px;font-weight:900;margin:0;white-space:normal;text-wrap:initial}.redesign .hero h1 :is(em,span){font-style:normal;color:var(--red);margin:0}.redesign .hero h1 br{display:initial}.redesign .hero-description{display:block;max-width:none;margin:21px 0;color:#bfb6b3;font-size:16px;line-height:1.6;text-align:left;text-wrap:initial}.redesign .hero-actions{display:flex;align-items:center;gap:20px}.redesign .hero-actions>span{font-size:11px;line-height:1.5;color:#a29895}.redesign :is(.primary-button,.button-primary){display:inline-flex;align-items:center;justify-content:center;gap:12px;border:0;border-radius:100px;min-height:48px;padding:14px 24px;background:var(--red);box-shadow:none;color:white;font-size:14px;line-height:1.25;font-weight:750;text-decoration:none;filter:none;transition:background .15s,transform .15s}.redesign :is(.primary-button,.button-primary):hover{background:var(--red-deep);filter:none}.redesign :is(.primary-button,.button-primary):active{filter:none;transform:scale(.98)}.redesign :is(.primary-button,.button-primary):disabled{background:#797074;color:white;transform:none;opacity:.8}.redesign .hero-menu-link{width:auto;max-width:none;margin:0}.redesign .hero-actions svg{width:21px;height:21px}.redesign .hero-location{display:flex;align-items:center;gap:8px;font-size:11px;color:#c2b9b6;margin-top:25px}.redesign .location-dot{height:6px;width:6px;background:var(--red);border-radius:50%;flex:none}.redesign .location-hours{margin-left:8px;border-left:1px solid #ffffff30;padding-left:12px;color:#aaa19e}.redesign .hero-visual{position:relative;min-width:0;padding:10px 10px 40px 15px}.redesign .hero-orbit{position:absolute;inset:-15px 0 5px;border:1px solid #ffffff17;border-radius:48% 48% 40% 52%;transform:rotate(-12deg)}.redesign .hero-photo-button{position:relative;display:block;width:100%;border:0;padding:0;background:#371f20;border-radius:24px 90px 24px 24px;overflow:hidden;transform:rotate(-3deg);box-shadow:0 20px 40px #0005}.redesign .hero-photo-button img{display:block;width:100%;height:325px;object-fit:cover}.redesign .hero-product-label{position:absolute;bottom:18px;left:42px;right:18px;padding:16px 18px;background:var(--white);color:var(--ink);border-radius:14px;transform:rotate(2deg);box-shadow:0 6px 20px #0002}.redesign .hero-product-label>span{font-size:8px;letter-spacing:1.4px;color:#8d7771;font-weight:800}.redesign .hero-product-label strong{display:flex;justify-content:space-between;font-size:19px;letter-spacing:-.4px;margin-top:6px}.redesign .hero-product-label b{color:var(--red);font-size:20px;white-space:nowrap}.redesign .hero-scribble{position:absolute;top:-14px;right:17px;z-index:2;display:grid;place-content:center;width:83px;height:83px;padding:13px;background:var(--red);border-radius:50%;text-align:center;font-size:20px;font-weight:900;line-height:.95;letter-spacing:-1px;transform:rotate(9deg)}.redesign .hero-star{position:absolute;font-size:66px;color:var(--red);bottom:0;left:-14px;line-height:1;transform:rotate(-12deg)}.redesign .brand-strip{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:46px;border-block:1px solid var(--border);overflow:hidden;color:#b2a8a4;font-size:10px;font-weight:700;letter-spacing:1.3px;white-space:nowrap}.redesign .brand-strip i{font-style:normal;color:var(--red);font-size:22px}.redesign .store-availability{min-height:0;border:0;background:none;border-radius:0;padding:13px 0;margin:0;color:#b2a39d;font-size:11px;line-height:1.5}.redesign .store-availability p{font-size:11px;line-height:1.5}.redesign .store-availability-dot{width:5px;height:5px}
.redesign :is(.featured-section,.menu,.combo-section){margin-top:32px;padding-top:0}.redesign .section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 0 24px}.redesign .section-heading .eyebrow{margin-bottom:10px;font-size:9px;color:#a39b99}.redesign :is(.menu h2,.menu-section-title,.section-heading h2){display:block;font-size:var(--title);line-height:1.08;letter-spacing:-2px;font-weight:900;margin:0;max-width:none}.redesign :is(.menu h2,.menu-section-title)>span{display:inline;background:none;width:auto;height:auto;border-radius:0;color:var(--red)}.redesign :is(.menu h2,.menu-section-title)>span:empty:after{content:'.'}.redesign .section-aside{font-size:12px;line-height:1.6;color:#a29895}.redesign .popular-navigation{display:none}.redesign :is(#popular-grid,#product-grid){display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:row;grid-auto-columns:auto;grid-auto-rows:auto;gap:var(--gap);overflow:visible;padding:0;scroll-snap-type:none;max-width:none}.redesign #popular-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.redesign .categories{display:flex;align-items:center;gap:8px;position:sticky;top:var(--header);z-index:10;background:var(--background);margin:18px 0 25px;padding:12px 0;overflow-x:auto;scrollbar-width:none}.redesign .categories::-webkit-scrollbar{display:none}.redesign .category{flex:none;width:auto;min-width:0;min-height:40px;padding:9px 20px;border:1px solid #ffffff25;border-radius:100px;background:none;color:#bdb2b0;font-size:12px;font-weight:700;line-height:1.3;white-space:nowrap;grid-column:auto}.redesign .category.active{background:var(--white);border-color:var(--white);color:var(--ink)}.redesign .mobile-shopping-note{font-size:11px;line-height:1.5;color:#a79a96;margin:-10px 0 18px}.redesign .product-card{display:flex;flex-direction:column;height:auto;min-height:0;align-self:stretch;min-width:0;border:1px solid #fff1;border-radius:17px;background:var(--white);color:var(--ink);box-shadow:none;transition:transform .18s}.redesign .product-card:hover{border-color:#fff1;box-shadow:none;transform:translateY(-3px)}.redesign .product-photo{display:block;position:relative;aspect-ratio:1.3;width:100%;height:auto;min-height:0;margin:0;padding:0;border:0;border-radius:0;background:#e5ded6;overflow:hidden}.redesign .product-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.redesign .product-photo .product-details-trigger{display:block;width:100%;height:100%;padding:0;border:0;background:none}.redesign .product-details-trigger{cursor:pointer}.redesign .product-availability{font-size:10px;padding:7px;border-radius:8px;z-index:2}.redesign .product-body,.redesign .popular-grid .product-body{display:grid;grid-template-columns:1fr auto;grid-template-rows:minmax(0,1fr) auto auto;flex:1;gap:10px;padding:var(--card-pad);min-height:0}.redesign .product-info{grid-column:1/-1;min-width:0}.redesign .product-body h3,.redesign .popular-grid .product-body h3{font-size:var(--card-title);line-height:1.16;font-weight:800;letter-spacing:-.4px;min-height:40px;margin:0;color:var(--ink)}.redesign h3 .product-details-trigger{font:inherit;color:inherit;border:0;background:none;text-align:left;padding:0}.redesign .product-description,.redesign .popular-grid .product-description{font-size:var(--description);line-height:1.45;color:#8b7c76;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;height:var(--description-height);min-height:0;margin:7px 0 0}.redesign .product-options-wrap{grid-column:1/-1;align-self:end;height:auto;min-height:0;margin:0}.redesign .product-options{height:auto;min-height:35px;width:100%;border:0;border-bottom:1px solid #dccfc5;border-radius:0;background:none;padding:6px 0;font-size:10px;line-height:1.35;color:#9b7469;gap:7px;white-space:normal;box-shadow:none}.redesign .product-options .sliders{display:none}.redesign .product-options .chevron{font-size:17px;line-height:1;margin-left:auto}.redesign .product-price,.redesign .popular-grid .product-price{grid-column:1;grid-row:auto;align-self:center;height:auto;width:auto;min-height:0;margin:0;font-size:var(--price);line-height:1.2;font-weight:850;letter-spacing:-1px;white-space:nowrap}.redesign .product-body>.product-add,.redesign .popular-grid .product-body>.product-add,.redesign .product-add{grid-column:2;grid-row:auto;align-self:center;justify-self:end;width:auto;min-width:44px;min-height:44px;height:44px;max-width:100%;margin:0;padding:9px 11px;border-radius:100px;font-size:10px;line-height:1.15;box-shadow:none;white-space:normal}.redesign .product-add svg{width:17px;height:17px}.redesign :is(.hotdog-purchase,.side-purchase){display:contents}.redesign .side-sauce-choice{grid-column:1/-1}.redesign .side-portion{top:8px;left:8px;padding:4px 7px;font-size:9px;min-height:24px;border:0;box-shadow:none}.redesign #product-grid[data-category=sides]{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap)}.redesign #product-grid .product-card-sauce{display:flex;grid-column:auto;grid-template-columns:none;height:auto;align-items:stretch}.redesign .product-card-sauce .product-photo{width:100%;aspect-ratio:1.3;border-radius:0}.redesign .product-card-sauce .product-body{flex:1}.redesign .product-card-sauce .product-description{display:-webkit-box}.redesign .drink-purchase-row{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:5px;min-height:40px;margin:0}.redesign .product-price-caption{display:block;font-size:8px;line-height:1.4;color:#9c857b;margin-bottom:3px}.redesign .drink-quantity-control{grid-template-columns:30px 24px 30px;min-height:34px;border-radius:100px}.redesign .drink-quantity-control button{width:30px;height:34px;font-size:17px}.redesign .drink-quantity-value{font-size:11px}.redesign .product-card-drink .product-add{grid-column:1/-1;width:100%;height:44px;min-height:44px;font-size:11px}.redesign .product-milk-option{min-height:35px;height:auto;margin:0;padding:6px 0;background:none;border:0;border-radius:0;gap:5px;font-size:9px}.redesign .product-milk-option input{width:14px;height:14px}.redesign .product-milk-option strong{font-size:9px;white-space:nowrap}.redesign .product-milk-option .desktop-milk-label{display:none}.redesign .product-milk-option .mobile-milk-label{display:inline}.redesign .product-milk-option>small{font-size:9px}
.redesign .combo-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.redesign .combo-card{display:grid;grid-template-columns:1fr 1fr;border:1px solid #ffffff12;border-radius:23px;background:#262122;color:var(--white);overflow:hidden}.redesign .combo-art{position:relative;min-width:0;min-height:260px;overflow:hidden;background:#342427}.redesign .combo-art>img{display:block;height:100%;width:100%;object-fit:cover}.redesign .combo-composition{position:relative;width:100%;height:100%;min-height:260px;background:radial-gradient(#5a292c,#271c20)}.redesign .combo-composition img{position:absolute;object-fit:cover;border-radius:18px;box-shadow:0 15px 25px #0004}.redesign .combo-composition img:nth-child(1){width:80%;height:63%;top:5%;left:-5%;transform:rotate(-9deg);z-index:1}.redesign .combo-composition img:nth-child(2){width:63%;height:43%;right:-5%;bottom:2%;transform:rotate(8deg);z-index:2}.redesign .combo-composition img:nth-child(3){width:44%;height:40%;right:2%;top:2%;transform:rotate(9deg);z-index:3}.redesign .combo-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;flex:1;padding:25px 22px}.redesign .combo-label{font-size:8px;line-height:1.4;letter-spacing:1.2px;color:#ff7186;margin-bottom:10px}.redesign .combo-copy h3{font-size:27px;line-height:1.1;letter-spacing:-1px;margin:0 0 10px;color:var(--white)}.redesign .combo-copy>p{display:block;font-size:11px;line-height:1.55;color:#b6a6a3;margin:0 0 13px}.redesign .combo-components{display:none}.redesign .combo-price{display:block;width:auto;font-size:28px;line-height:1.15;letter-spacing:-1px;font-weight:850;margin:0;padding:0;border:0;order:2}.redesign .combo-copy>.combo-payment-note{display:block;font-size:10px;line-height:1.5;font-weight:400;color:#d2bdb7;margin:7px 0 16px;order:3}.redesign .combo-add{order:4;width:auto;min-height:44px;height:auto;padding:10px 17px;margin:0;font-size:11px;border-radius:100px}
.redesign .contact-section{display:flex;justify-content:space-between;gap:30px;margin-top:60px;background:var(--red);border-radius:25px;padding:40px 45px;overflow:hidden}.redesign .contact-section .eyebrow{color:#ffbac4;font-size:9px;margin-bottom:15px}.redesign .contact-section .eyebrow:before{display:none}.redesign .contact-section h2{font-size:50px;line-height:1.08;letter-spacing:-2.5px;font-weight:900;margin:0}.redesign .contact-section h2 em{font-style:normal;color:white}.redesign .contact-section p:not(.eyebrow){font-size:13px;line-height:1.8;color:white;margin:20px 0 0}.redesign .contact-section p span{color:#ffd1da}.redesign .contact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:25px;margin-top:20px}.redesign .contact-actions :is(a,button){min-height:44px;border:0;border-bottom:1px solid #ffffff70;padding:8px 0;background:none;border-radius:0;color:white;font-size:12px;font-weight:700;text-decoration:none}.redesign .contact-art{align-self:center;display:flex;flex-direction:column;align-items:center;transform:rotate(7deg);padding-right:35px;color:#fff8eb}.redesign .contact-art svg{width:82px;height:84px;transform:rotate(-7deg)}.redesign .contact-art strong{font-size:68px;font-weight:900;letter-spacing:-5px;line-height:1.1}.redesign .contact-art>span{font-size:8px;letter-spacing:1px;margin-top:12px}.redesign .contact-copy-mobile{display:none}.redesign :is(#desktop-feedback-copy-status,#feedback-copy-status):empty{display:none}.redesign .community-section{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:30px 0}.redesign .community-copy h2{font-size:25px;letter-spacing:-1px;margin:0 0 10px}.redesign .community-copy p{font-size:12px;line-height:1.6;color:#aa9b95;margin:0}.redesign .community-links{display:flex;gap:20px;margin-top:15px}.redesign .community-links a{font-size:12px;text-decoration:none;border-bottom:1px solid #ffffff40;padding:8px 0;min-height:44px}.redesign .community-qr{display:flex;gap:15px}.redesign .community-qr-card{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;text-decoration:none}.redesign .community-qr-card img{width:82px;height:82px;border-radius:9px}.redesign .community-qr-card strong{font-size:10px}.redesign .community-qr-card small{font-size:8px;color:#b5a59e}.redesign .image-note{font-size:9px;line-height:1.5;color:#8e827d;margin:20px 0 24px}.redesign .site-footer{margin-top:25px;border-top:1px solid var(--border);color:#a89b96;font-size:11px}.redesign .footer-inner{padding:24px 0 28px;gap:30px;font-size:11px}.redesign .footer-inner p{font-size:10px;line-height:1.5;margin:9px 0}.redesign .footer-company strong{font-size:23px;letter-spacing:-1px}.redesign .footer-company nav{gap:15px;margin-top:13px}.redesign .text-link{font-size:11px;line-height:1.5;min-height:30px}.redesign .footer-contacts a{font-size:11px}.redesign .active-order{display:flex;align-items:center;gap:12px;border:1px solid #7c9d6355;background:#273023;color:#ecf4e7;border-radius:12px;padding:14px 18px;margin:20px 0 0;width:100%;font-size:13px;text-align:left}.redesign .active-order>span:last-child{margin-left:auto;font-size:11px}.redesign .order-dot{height:7px;width:7px;background:#91b96f;border-radius:50%;flex:none}.redesign .mobile-cart{display:none}.redesign .toast{font-size:12px;border-radius:100px;background:#fff9ee;color:var(--ink);padding:13px 20px;border:1px solid #28121415;box-shadow:0 8px 30px #0003;white-space:normal;text-align:center;max-width:calc(100% - 24px)}
/* Existing secure dialogs retain every business control and native state. */
.redesign dialog{background:var(--white);color:var(--ink);border:0;border-radius:24px;box-shadow:0 25px 100px #0005}.redesign dialog::backdrop{background:#120b10b8;backdrop-filter:none;-webkit-backdrop-filter:none}.redesign .dialog-heading h2{font-size:28px;line-height:1.15;letter-spacing:-1px}.redesign .dialog-kicker{font-size:9px;line-height:1.4;font-weight:700;letter-spacing:1.2px;color:#95796d}.redesign .close-button{width:44px;height:44px;min-width:44px;min-height:44px;border:1px solid #221d1e16;border-radius:50%;background:#fffaf4;color:var(--ink);flex:none}.redesign .close-button svg{width:18px;height:18px}.redesign :is(.shawarma-options,.combo-dialog,.info-dialog) .dialog-heading,.redesign :is(.options-footer,.combo-purchase){background:var(--white);border-color:#221d1e14;box-shadow:none}.redesign .option-row{background:#fff9f3;border-color:#dacdc4;border-radius:10px}.redesign .option-row:has(input:checked){background:#ffedf0;border-color:var(--red)}.redesign .option-copy strong{color:var(--ink)}.redesign .option-row input{accent-color:var(--red)}.redesign .options-product-image{border-radius:12px}.redesign .product-detail-description{font-size:13px;line-height:1.6;color:#8b756b;margin:0 0 18px}.redesign .combo-fixed-items{border:0;background:#ede3da;border-radius:12px}.redesign .combo-fixed-items strong{font-size:14px;color:#784d41}.redesign .combo-fixed-items p{font-size:12px;color:#8c756e}.redesign .combo-dialog .combo-payment-note{display:block;color:#8e675d;font-size:12px;line-height:1.5}.redesign .cart-dialog{width:520px;border-radius:24px 0 0 24px;padding:24px}.redesign .cart-dialog>.dialog-heading{background:var(--white);margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid #221d1e14}.redesign .cart-line{grid-template-columns:65px minmax(0,1fr);gap:12px;padding:18px 0;border-color:#221d1e14}.redesign .cart-line img{width:65px;height:70px;border-radius:11px}.redesign .cart-line h3{font-size:15px;line-height:1.3;margin-bottom:6px;letter-spacing:-.25px}.redesign .cart-line p{font-size:11px;line-height:1.55;color:#96817a;margin-bottom:9px}.redesign .quantity{border:0;background:#eee4db;border-radius:100px}.redesign .quantity button{height:38px;width:38px;background:none;color:var(--ink);font-size:18px}.redesign .quantity span{font-size:12px;min-width:26px}.redesign .cart-line-cost>strong{font-size:18px}.redesign :is(.cart-remove-button,.cart-clear-button){font-size:10px;min-height:35px;color:#a27a70}.redesign .cart-footer{border-color:#221d1e14;margin-top:16px;padding-top:18px}.redesign .cart-summary{font-size:24px;letter-spacing:-.8px}.redesign .cart-pickup{font-size:11px;line-height:1.7;color:#9a8175}.redesign .cart-tabs button{min-height:44px;border-radius:100px;font-size:11px}.redesign .cart-tabs button[aria-selected=true]{background:var(--ink);color:var(--white)}.redesign :is(.cart-payment-split,.order-payment-summary){font-size:12px;line-height:1.6}.redesign :is(.order-comment-section,.comment-details) summary{font-size:12px;font-weight:700;min-height:44px;padding-block:12px;cursor:pointer}.redesign :is(.customer-dialog,.checkout-dialog) :is(input,textarea){font-size:16px}.redesign .mobile-options-nav button{border-color:#d8c8c0;background:#fff4ed;color:#9b6457;font-size:12px;border-radius:100px}
@media(max-width:1150px){.redesign{--gutter:48px;--card-pad:12px;--card-title:15px}.redesign .header-inner{gap:18px}.redesign .header-nav{margin-left:4px;gap:18px}.redesign .header-actions{gap:14px}.redesign .account-button-label{display:none}.redesign .hero{gap:25px;min-height:440px}.redesign .hero h1{font-size:56px;letter-spacing:-2.8px}.redesign .hero-photo-button img{height:290px}.redesign #popular-grid{gap:12px}.redesign #product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.redesign .combo-card{grid-template-columns:.8fr 1fr}.redesign .combo-copy{padding:20px 16px}.redesign .contact-art{padding-right:0}.redesign .contact-art strong{font-size:56px}}
@media(max-width:800px){.redesign{--gutter:32px;--header:65px;--title:33px;--card-pad:12px;--card-title:15px;--description:10px;--description-height:28px;--price:20px;--gap:12px}.redesign .header-inner{gap:10px}.redesign .brand{gap:8px;font-size:23px;letter-spacing:-1.4px}.redesign .brand-icon{width:32px;height:36px;border-radius:8px}.redesign .brand-icon svg{width:25px;height:28px}.redesign .wordmark{font-size:23px;letter-spacing:-1.4px}.redesign .wordmark small{font-size:6px;letter-spacing:1px;margin-top:5px}.redesign .header-nav{display:none}.redesign .header-actions{gap:13px}.redesign .account-button{min-width:25px}.redesign .cart-button{padding:5px 6px 5px 10px;min-height:38px;gap:7px}.redesign .cart-button svg{width:17px;height:18px}.redesign #cart-total{font-size:11px}.redesign .cart-count{height:23px;min-width:23px;font-size:10px}.redesign .hero{position:relative;grid-template-columns:1fr 1fr;gap:15px;min-height:360px;padding:35px 0 25px}.redesign .hero .eyebrow{font-size:7px;letter-spacing:.7px;margin-bottom:12px;gap:5px}.redesign .hero h1{font-size:clamp(30px,5.8vw,45px);letter-spacing:-1.7px;line-height:1.04}.redesign .hero-description{font-size:12px;line-height:1.5;margin:15px 0}.redesign .hero-actions>span{display:none}.redesign .hero-actions .primary-button{font-size:11px;padding:12px 17px;gap:12px;min-height:43px}.redesign .hero-actions svg{width:17px;height:17px}.redesign .hero-location{margin-top:16px;font-size:9px;line-height:1.5;gap:5px;flex-wrap:wrap}.redesign .location-hours{margin-left:6px;padding-left:8px}.redesign .hero-visual{padding:15px 0 25px}.redesign .hero-photo-button{border-radius:18px 45px 18px 18px}.redesign .hero-photo-button img{height:230px}.redesign .hero-product-label{left:0;right:-3px;bottom:8px;padding:10px;border-radius:10px}.redesign .hero-product-label>span{font-size:6px;letter-spacing:.8px}.redesign .hero-product-label strong{font-size:12px;gap:5px;margin-top:4px}.redesign .hero-product-label b{font-size:13px}.redesign .hero-scribble{width:55px;height:55px;font-size:14px;top:-5px;right:2px;padding:8px}.redesign .hero-star{font-size:40px;left:-15px;bottom:-7px}.redesign .hero-orbit{inset:0 -5px 10px}.redesign .brand-strip{min-height:35px;font-size:7px;letter-spacing:.8px;gap:18px;justify-content:flex-start}.redesign .brand-strip i{font-size:16px}.redesign .store-availability{padding:10px 0}.redesign .store-availability p{font-size:10px}.redesign :is(.featured-section,.menu,.combo-section){margin-top:24px}.redesign .section-heading{margin-bottom:14px;align-items:center;gap:10px}.redesign .section-heading .eyebrow{font-size:7px;letter-spacing:1px;margin-bottom:8px}.redesign .section-aside{font-size:9px;text-align:right}.redesign .categories{gap:7px;margin:12px -16px 17px 0;padding:10px 16px 10px 0}.redesign .category{font-size:11px;padding:9px 15px;min-height:36px}.redesign :is(#popular-grid,#product-grid),.redesign #product-grid[data-category=sides]{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;grid-auto-columns:auto;gap:var(--gap);max-width:none;overflow:visible;padding:0}.redesign .product-card{border-radius:13px}.redesign .product-photo,.redesign .popular-grid .product-photo,.redesign .product-card-side .product-photo{aspect-ratio:1.25}.redesign .product-body,.redesign .popular-grid .product-body{gap:8px}.redesign .product-body h3,.redesign .popular-grid .product-body h3{min-height:35px}.redesign .product-description,.redesign .popular-grid .product-description{margin-top:6px}.redesign .product-body>.product-add,.redesign .popular-grid .product-body>.product-add{font-size:9px;padding:8px}.redesign .drink-quantity-control{grid-template-columns:30px 23px 30px}.redesign .drink-quantity-control button{width:30px;height:36px}.redesign .product-card-drink .product-price{font-size:20px}.redesign .product-milk-option{min-height:40px}.redesign .combo-grid{gap:14px}.redesign .combo-card{display:flex;flex-direction:column;border-radius:17px}.redesign .combo-art,.redesign .combo-composition{min-height:0;height:150px;flex:none}.redesign .combo-art>img{height:150px}.redesign .combo-copy{padding:17px;justify-content:flex-start}.redesign .combo-label{font-size:7px;letter-spacing:1px;margin-bottom:9px}.redesign .combo-copy h3{font-size:24px}.redesign .combo-copy>p{font-size:10px;min-height:42px;margin-bottom:9px}.redesign .combo-price{font-size:25px;margin-top:auto}.redesign .combo-copy>.combo-payment-note{display:block;min-height:30px;font-size:10px;margin:7px 0 12px}.redesign .combo-add{width:100%;font-size:10px;padding:10px 9px}.redesign .contact-section{margin-top:35px;padding:25px;border-radius:18px;gap:20px;flex-wrap:wrap}.redesign .contact-section h2{font-size:39px;letter-spacing:-1.6px}.redesign .contact-section .eyebrow{font-size:7px;letter-spacing:1px}.redesign .contact-section p:not(.eyebrow){font-size:11px;margin-top:15px}.redesign .contact-actions{gap:20px;margin-top:15px}.redesign .contact-actions :is(a,button){font-size:10px}.redesign .contact-copy-desktop{display:none}.redesign .contact-copy-mobile{display:inline-flex}.redesign .contact-art{padding-right:0}.redesign .contact-art strong{font-size:38px;letter-spacing:-2px}.redesign .contact-art svg{width:50px;height:55px}.redesign .contact-art>span{font-size:5px;letter-spacing:.6px}.redesign .community-section{gap:20px;padding:25px 0}.redesign .community-copy h2{font-size:22px}.redesign .community-qr{display:none}.redesign .community-copy p{font-size:11px}.redesign .image-note{font-size:8px;line-height:1.6;margin-top:14px}.redesign .site-footer{margin-top:20px}.redesign .footer-inner{padding:20px 0 100px;gap:20px;flex-wrap:wrap}.redesign .footer-inner p{font-size:9px}.redesign .footer-company strong{font-size:20px}.redesign .footer-contacts{text-align:left}.redesign .footer-contacts a,.redesign .text-link{font-size:10px}.redesign .text-link{min-height:44px}.redesign .active-order{font-size:11px;padding:12px;gap:8px}.redesign .active-order>span:last-child{font-size:9px}.redesign .mobile-cart:not([hidden]){display:flex;align-items:center;gap:10px;position:fixed;bottom:max(12px,env(safe-area-inset-bottom));left:16px;right:16px;z-index:25;min-height:52px;padding:13px 17px;border:0;border-radius:100px;background:var(--red);box-shadow:0 8px 35px #0005;color:white;font-size:12px;line-height:1.4}.redesign .mobile-cart svg{width:18px;height:18px}.redesign #mobile-cart-label{max-width:58%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.redesign #mobile-cart-total{font-size:15px;margin-left:auto;white-space:nowrap}.redesign #mobile-cart-count{display:grid;place-items:center;height:22px;min-width:22px;border-radius:50%;background:#ffffff2a;font-size:10px}.redesign:has(dialog[open]) .mobile-cart{display:none!important}.redesign .toast{bottom:78px;font-size:11px;padding:12px 17px}.redesign dialog{max-width:calc(100% - 20px);border-radius:21px}.redesign .dialog-heading h2{font-size:25px;letter-spacing:-.8px}.redesign :is(.shawarma-options,.combo-dialog) .dialog-heading{padding:16px;background:var(--white)}.redesign :is(.shawarma-options,.combo-dialog) .dialog-heading h2{font-size:24px}.redesign :is(.shawarma-options,.combo-dialog) .dialog-kicker{font-size:8px;letter-spacing:1px}.redesign .shawarma-options .option-group legend,.redesign .combo-dialog .option-group legend{font-size:17px}.redesign :is(.shawarma-options,.combo-dialog) .option-copy strong{font-size:14px}.redesign :is(.shawarma-options,.combo-dialog) .option-row{min-height:55px;padding:10px;gap:10px}.redesign .cart-dialog{max-width:100%;width:100%;border-radius:0;padding:0 20px max(20px,env(safe-area-inset-bottom))}.redesign .cart-dialog>.dialog-heading{margin:0 -20px 10px;padding:20px;background:var(--white)}.redesign .cart-line{grid-template-columns:60px minmax(0,1fr);gap:7px 12px}.redesign .cart-line img{width:60px;height:65px}.redesign .cart-line h3{font-size:14px}.redesign .quantity button{height:44px;width:44px}.redesign .close-button,.redesign dialog[class] .close-button{width:44px;height:44px;min-width:44px;min-height:44px}}
@media(max-width:500px){.redesign{--title:32px;--card-pad:11px;--card-title:14px;--description:9px;--description-height:27px;--price:19px}.redesign .hero{display:block;min-height:340px;padding:27px 0 22px;gap:0}.redesign .hero-copy{position:relative;z-index:2;max-width:100%}.redesign .hero h1{font-size:31px;line-height:1.05;letter-spacing:-1.7px}.redesign .hero h1 :is(em,span){white-space:nowrap}.redesign .hero-description{max-width:52%;font-size:11px;margin:17px 0 15px}.redesign .hero-description br{display:none}.redesign .hero-actions{max-width:55%}.redesign .hero-actions .primary-button{font-size:10px;padding:12px 15px;gap:10px}.redesign .hero-location{width:100%;font-size:8px;margin-top:31px;gap:5px}.redesign .hero .eyebrow{font-size:6px;letter-spacing:.7px;white-space:nowrap}.redesign .location-hours{margin-left:5px;padding-left:8px}.redesign .hero-visual{position:absolute;width:43%;right:0;top:115px;transform:rotate(2deg);z-index:1;padding:15px 0 25px}.redesign .hero-photo-button{border-radius:15px 40px 15px 15px}.redesign .hero-photo-button img{height:154px}.redesign .hero-product-label{left:1px;right:0;bottom:6px;padding:9px 6px}.redesign .hero-product-label>span{font-size:5px;letter-spacing:.7px}.redesign .hero-product-label strong{font-size:9px;gap:3px;margin-top:4px}.redesign .hero-product-label b{font-size:10px}.redesign .hero-scribble{top:0;width:39px;height:39px;font-size:10px;right:0;padding:8px}.redesign .hero-star{font-size:28px;bottom:0;left:-7px}.redesign .hero-orbit,.redesign .section-aside{display:none}.redesign .product-body h3,.redesign .popular-grid .product-body h3{min-height:34px}.redesign .product-body>.product-add,.redesign .popular-grid .product-body>.product-add{font-size:8px;padding:6px 8px}.redesign .combo-grid{gap:10px}.redesign .combo-art,.redesign .combo-art>img,.redesign .combo-composition{height:126px}.redesign .combo-copy{padding:13px}.redesign .combo-copy h3{font-size:22px;letter-spacing:-.7px}.redesign .combo-copy>p{font-size:9px;min-height:41px}.redesign .combo-copy>.combo-payment-note{font-size:10px;min-height:30px}.redesign .contact-art{display:none}.redesign .contact-section{padding:26px}.redesign .contact-section h2{font-size:44px}.redesign .contact-section p:not(.eyebrow){font-size:12px}.redesign .contact-actions :is(a,button){font-size:11px}}
@media(max-width:359px){.redesign{--gutter:24px;--card-pad:9px;--card-title:13px;--price:17px;--gap:10px}.redesign .header-actions{gap:8px}.redesign .wordmark{font-size:21px}.redesign .hero{min-height:325px}.redesign .hero h1{font-size:27px;letter-spacing:-1.5px}.redesign .hero-visual{top:110px;width:41%}.redesign .hero-photo-button img{height:140px}.redesign .hero-description{font-size:10px}.redesign .hero-product-label strong{font-size:8px}.redesign .hero-product-label b{font-size:9px}.redesign .hero-actions .primary-button{padding:12px 13px}.redesign .hero-location{font-size:7px;margin-top:30px}.redesign .combo-copy{padding:11px}.redesign .combo-copy h3{font-size:20px}.redesign .categories{margin-right:-12px;padding-right:12px}}
@media(prefers-reduced-motion:reduce){.redesign *,.redesign *::before,.redesign *::after{animation:none!important;transition:none!important}.redesign .product-card:hover,.redesign :is(.primary-button,.button-primary):active,.redesign :is(.hero-photo-button,.hero-orbit,.hero-product-label,.hero-scribble,.hero-star,.contact-art,.brand-icon){transform:none}}
/* The main hits tab shares the approved five-column desktop layout. */
.redesign #product-grid.is-popular{grid-template-columns:repeat(5,minmax(0,1fr))}.redesign .product-add{width:44px;min-width:44px;font-size:0!important;padding:0!important}.redesign .product-add:after{content:'+';font-size:23px;line-height:1;font-weight:400}.redesign .product-add:disabled:after{content:'—';font-size:17px}.redesign .product-card-drink .product-add{width:100%}.redesign .product-card-drink .product-add:after{content:'В корзину';font-size:11px;font-weight:700}@media(max-width:800px){.redesign #product-grid.is-popular{grid-template-columns:repeat(2,minmax(0,1fr))}}

.redesign [hidden]{display:none!important}@media(min-width:801px) and (max-width:1150px){.redesign #product-grid.is-popular{gap:12px}}
/* QA: keep the account icon visible and the five hits equally compact. */
.redesign .account-button>span[data-icon="user"]{display:inline-flex;align-items:center;justify-content:center}.redesign #product-grid.is-popular{grid-auto-rows:1fr}.redesign #product-grid.is-popular .product-card{height:100%;align-self:stretch}.redesign #product-grid.is-popular .product-price,.redesign #product-grid.is-popular .product-add{grid-row:3}@media(max-width:800px){.redesign .account-button{min-width:44px;min-height:44px;padding:0}}
/* Keep each Max component inside its own photo panel, away from the text. */
.redesign .combo-art{isolation:isolate;overflow:hidden;align-self:stretch}.redesign .combo-composition{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:2px;width:100%;height:100%;min-height:260px;background:#2c2023}.redesign .combo-composition img:nth-child(n){position:static;inset:auto;width:100%;height:100%;min-width:0;min-height:0;object-fit:contain;object-position:center;border-radius:0;transform:none;box-shadow:none;z-index:auto;background:#2c2023}.redesign .combo-copy{position:relative;z-index:2;background:#262122}@media(max-width:800px){.redesign .combo-composition{min-height:0;height:150px}}@media(max-width:500px){.redesign .combo-grid{grid-template-columns:minmax(0,1fr);gap:16px}.redesign .combo-card{display:flex;flex-direction:column}.redesign .combo-art,.redesign .combo-art>img,.redesign .combo-composition{height:170px;min-height:0}.redesign .combo-copy{padding:20px}.redesign .combo-copy h3{font-size:26px}.redesign .combo-copy>p{font-size:12px;min-height:0;margin-bottom:12px}.redesign .combo-price{font-size:28px}.redesign .combo-copy>.combo-payment-note{font-size:12px;min-height:0;line-height:1.5;margin:9px 0 15px}.redesign .combo-add{font-size:13px;min-height:46px}}
/* Mobile hero and ribbon keep deliberate separation without cropped copy. */
@media(max-width:800px){.redesign .brand-strip{width:100%;min-height:35px;justify-content:center;gap:10px;font-size:8px;letter-spacing:.6px}.redesign .brand-strip>span:last-of-type,.redesign .brand-strip>i:last-of-type{display:none}.redesign .brand-strip>span{flex:none}.redesign .brand-strip>i{flex:none;font-size:16px}}
@media(max-width:500px){.redesign .hero{min-height:370px}.redesign .hero-visual{top:145px}}
@media(max-width:359px){.redesign .hero{min-height:355px}.redesign .hero-visual{top:135px}}
/* Compact contact information; the map, call and copy actions remain touchable. */
.redesign .contact-section{padding:24px 28px;gap:24px}.redesign .contact-section .eyebrow{margin-bottom:10px}.redesign .contact-section h2{font-size:34px;line-height:1.1;letter-spacing:-1.3px}.redesign .contact-section h2 br{display:none}.redesign .contact-section h2 em{display:inline-block;margin-left:.2em}.redesign .contact-section p:not(.eyebrow){margin-top:10px;font-size:12px;line-height:1.6}.redesign .contact-section p span{font-size:11px}.redesign .contact-actions{margin-top:10px;gap:20px}.redesign .contact-actions :is(a,button){min-height:44px;padding:8px 0}.redesign .contact-art{padding-right:10px}.redesign .contact-art svg{width:50px;height:54px}.redesign .contact-art strong{font-size:44px;letter-spacing:-2.5px}.redesign .contact-art>span{font-size:6px;margin-top:8px}@media(max-width:800px){.redesign .contact-section{padding:18px 20px;gap:18px}.redesign .contact-section .eyebrow{font-size:7px;margin-bottom:8px}.redesign .contact-section h2{font-size:28px;letter-spacing:-1px}.redesign .contact-section h2 br{display:initial}.redesign .contact-section h2 em{margin-left:0}.redesign .contact-section p:not(.eyebrow){font-size:12px;line-height:1.5;margin-top:10px}.redesign .contact-copy{min-width:0;flex:1}.redesign .contact-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.redesign .contact-actions :is(a,button){display:flex;align-items:center;justify-content:center;min-height:44px;font-size:10px;line-height:1.35;white-space:normal;text-align:center}.redesign .contact-actions .contact-copy-desktop{display:none}.redesign .contact-actions .contact-copy-mobile{display:flex}.redesign .contact-art{padding-right:0}}

@media(max-width:500px){.redesign .hero-visual{top:157px}}@media(max-width:359px){.redesign .hero-visual{top:147px}}

/* One white label fully covers the matching label embedded in these two photos. */
.redesign .product-photo:has(.product-badge[data-badge]){position:relative;aspect-ratio:1.3}
.redesign .product-photo .product-badge[data-badge]{position:absolute;left:3.8%;top:4.6%;height:13.2%;display:flex;align-items:center;justify-content:center;padding:0 2px;border:0;border-radius:4px;background:var(--white);color:var(--ink);font-size:clamp(8px,1.02vw,14px);font-weight:600;line-height:1;letter-spacing:0;white-space:nowrap;z-index:3;pointer-events:none}
.redesign .product-photo .product-badge[data-badge="carolina"]{width:35.5%}.redesign .product-photo .product-badge[data-badge="vegan"]{width:24.5%}
.redesign .product-photo:has(.product-badge[data-badge]) img{transform:none!important;transition:none;object-position:center}
/* Match the original app mobile query on touch tablets and landscape phones. */
@media(min-width:801px) and (max-width:1024px) and (pointer:coarse){
.redesign{--gutter:32px;--header:65px;--title:33px;--card-pad:12px;--card-title:15px;--description:10px;--description-height:28px;--price:20px;--gap:12px}.redesign .header-inner{gap:10px}.redesign .brand{gap:8px;font-size:23px;letter-spacing:-1.4px}.redesign .brand-icon{width:32px;height:36px;border-radius:8px}.redesign .brand-icon svg{width:25px;height:28px}.redesign .wordmark{font-size:23px;letter-spacing:-1.4px}.redesign .wordmark small{font-size:6px;letter-spacing:1px;margin-top:5px}.redesign .header-nav{display:none}.redesign .header-actions{gap:13px}.redesign .account-button{min-width:25px}.redesign .cart-button{padding:5px 6px 5px 10px;min-height:38px;gap:7px}.redesign .cart-button svg{width:17px;height:18px}.redesign #cart-total{font-size:11px}.redesign .cart-count{height:23px;min-width:23px;font-size:10px}.redesign .hero{position:relative;grid-template-columns:1fr 1fr;gap:15px;min-height:360px;padding:35px 0 25px}.redesign .hero .eyebrow{font-size:7px;letter-spacing:.7px;margin-bottom:12px;gap:5px}.redesign .hero h1{font-size:clamp(30px,5.8vw,45px);letter-spacing:-1.7px;line-height:1.04}.redesign .hero-description{font-size:12px;line-height:1.5;margin:15px 0}.redesign .hero-actions>span{display:none}.redesign .hero-actions .primary-button{font-size:11px;padding:12px 17px;gap:12px;min-height:43px}.redesign .hero-actions svg{width:17px;height:17px}.redesign .hero-location{margin-top:16px;font-size:9px;line-height:1.5;gap:5px;flex-wrap:wrap}.redesign .location-hours{margin-left:6px;padding-left:8px}.redesign .hero-visual{padding:15px 0 25px}.redesign .hero-photo-button{border-radius:18px 45px 18px 18px}.redesign .hero-photo-button img{height:230px}.redesign .hero-product-label{left:0;right:-3px;bottom:8px;padding:10px;border-radius:10px}.redesign .hero-product-label>span{font-size:6px;letter-spacing:.8px}.redesign .hero-product-label strong{font-size:12px;gap:5px;margin-top:4px}.redesign .hero-product-label b{font-size:13px}.redesign .hero-scribble{width:55px;height:55px;font-size:14px;top:-5px;right:2px;padding:8px}.redesign .hero-star{font-size:40px;left:-15px;bottom:-7px}.redesign .hero-orbit{inset:0 -5px 10px}.redesign .brand-strip{min-height:35px;font-size:7px;letter-spacing:.8px;gap:18px;justify-content:flex-start}.redesign .brand-strip i{font-size:16px}.redesign .store-availability{padding:10px 0}.redesign .store-availability p{font-size:10px}.redesign :is(.featured-section,.menu,.combo-section){margin-top:24px}.redesign .section-heading{margin-bottom:14px;align-items:center;gap:10px}.redesign .section-heading .eyebrow{font-size:7px;letter-spacing:1px;margin-bottom:8px}.redesign .section-aside{font-size:9px;text-align:right}.redesign .categories{gap:7px;margin:12px -16px 17px 0;padding:10px 16px 10px 0}.redesign .category{font-size:11px;padding:9px 15px;min-height:36px}.redesign :is(#popular-grid,#product-grid),.redesign #product-grid[data-category=sides]{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;grid-auto-columns:auto;gap:var(--gap);max-width:none;overflow:visible;padding:0}.redesign .product-card{border-radius:13px}.redesign .product-photo,.redesign .popular-grid .product-photo,.redesign .product-card-side .product-photo{aspect-ratio:1.25}.redesign .product-body,.redesign .popular-grid .product-body{gap:8px}.redesign .product-body h3,.redesign .popular-grid .product-body h3{min-height:35px}.redesign .product-description,.redesign .popular-grid .product-description{margin-top:6px}.redesign .product-body>.product-add,.redesign .popular-grid .product-body>.product-add{font-size:9px;padding:8px}.redesign .drink-quantity-control{grid-template-columns:30px 23px 30px}.redesign .drink-quantity-control button{width:30px;height:36px}.redesign .product-card-drink .product-price{font-size:20px}.redesign .product-milk-option{min-height:40px}.redesign .combo-grid{gap:14px}.redesign .combo-card{display:flex;flex-direction:column;border-radius:17px}.redesign .combo-art,.redesign .combo-composition{min-height:0;height:150px;flex:none}.redesign .combo-art>img{height:150px}.redesign .combo-copy{padding:17px;justify-content:flex-start}.redesign .combo-label{font-size:7px;letter-spacing:1px;margin-bottom:9px}.redesign .combo-copy h3{font-size:24px}.redesign .combo-copy>p{font-size:10px;min-height:42px;margin-bottom:9px}.redesign .combo-price{font-size:25px;margin-top:auto}.redesign .combo-copy>.combo-payment-note{display:block;min-height:30px;font-size:10px;margin:7px 0 12px}.redesign .combo-add{width:100%;font-size:10px;padding:10px 9px}.redesign .contact-section{margin-top:35px;padding:25px;border-radius:18px;gap:20px;flex-wrap:wrap}.redesign .contact-section h2{font-size:39px;letter-spacing:-1.6px}.redesign .contact-section .eyebrow{font-size:7px;letter-spacing:1px}.redesign .contact-section p:not(.eyebrow){font-size:11px;margin-top:15px}.redesign .contact-actions{gap:20px;margin-top:15px}.redesign .contact-actions :is(a,button){font-size:10px}.redesign .contact-copy-desktop{display:none}.redesign .contact-copy-mobile{display:inline-flex}.redesign .contact-art{padding-right:0}.redesign .contact-art strong{font-size:38px;letter-spacing:-2px}.redesign .contact-art svg{width:50px;height:55px}.redesign .contact-art>span{font-size:5px;letter-spacing:.6px}.redesign .community-section{gap:20px;padding:25px 0}.redesign .community-copy h2{font-size:22px}.redesign .community-qr{display:none}.redesign .community-copy p{font-size:11px}.redesign .image-note{font-size:8px;line-height:1.6;margin-top:14px}.redesign .site-footer{margin-top:20px}.redesign .footer-inner{padding:20px 0 100px;gap:20px;flex-wrap:wrap}.redesign .footer-inner p{font-size:9px}.redesign .footer-company strong{font-size:20px}.redesign .footer-contacts{text-align:left}.redesign .footer-contacts a,.redesign .text-link{font-size:10px}.redesign .text-link{min-height:44px}.redesign .active-order{font-size:11px;padding:12px;gap:8px}.redesign .active-order>span:last-child{font-size:9px}.redesign .mobile-cart:not([hidden]){display:flex;align-items:center;gap:10px;position:fixed;bottom:max(12px,env(safe-area-inset-bottom));left:16px;right:16px;z-index:25;min-height:52px;padding:13px 17px;border:0;border-radius:100px;background:var(--red);box-shadow:0 8px 35px #0005;color:white;font-size:12px;line-height:1.4}.redesign .mobile-cart svg{width:18px;height:18px}.redesign #mobile-cart-label{max-width:58%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.redesign #mobile-cart-total{font-size:15px;margin-left:auto;white-space:nowrap}.redesign #mobile-cart-count{display:grid;place-items:center;height:22px;min-width:22px;border-radius:50%;background:#ffffff2a;font-size:10px}.redesign:has(dialog[open]) .mobile-cart{display:none!important}.redesign .toast{bottom:78px;font-size:11px;padding:12px 17px}.redesign dialog{max-width:calc(100% - 20px);border-radius:21px}.redesign .dialog-heading h2{font-size:25px;letter-spacing:-.8px}.redesign :is(.shawarma-options,.combo-dialog) .dialog-heading{padding:16px;background:var(--white)}.redesign :is(.shawarma-options,.combo-dialog) .dialog-heading h2{font-size:24px}.redesign :is(.shawarma-options,.combo-dialog) .dialog-kicker{font-size:8px;letter-spacing:1px}.redesign .shawarma-options .option-group legend,.redesign .combo-dialog .option-group legend{font-size:17px}.redesign :is(.shawarma-options,.combo-dialog) .option-copy strong{font-size:14px}.redesign :is(.shawarma-options,.combo-dialog) .option-row{min-height:55px;padding:10px;gap:10px}.redesign .cart-dialog{max-width:100%;width:100%;border-radius:0;padding:0 20px max(20px,env(safe-area-inset-bottom))}.redesign .cart-dialog>.dialog-heading{margin:0 -20px 10px;padding:20px;background:var(--white)}.redesign .cart-line{grid-template-columns:60px minmax(0,1fr);gap:7px 12px}.redesign .cart-line img{width:60px;height:65px}.redesign .cart-line h3{font-size:14px}.redesign .quantity button{height:44px;width:44px}.redesign .close-button,.redesign dialog[class] .close-button{width:44px;height:44px;min-width:44px;min-height:44px}
.redesign #product-grid.is-popular{grid-template-columns:repeat(2,minmax(0,1fr))}
.redesign .account-button{min-width:44px;min-height:44px;padding:0}
.redesign .combo-composition{min-height:0;height:150px}
.redesign .brand-strip{width:100%;min-height:35px;justify-content:center;gap:10px;font-size:8px;letter-spacing:.6px}.redesign .brand-strip>span:last-of-type,.redesign .brand-strip>i:last-of-type{display:none}.redesign .brand-strip>span{flex:none}.redesign .brand-strip>i{flex:none;font-size:16px}
.redesign .contact-section{padding:18px 20px;gap:18px}.redesign .contact-section .eyebrow{font-size:7px;margin-bottom:8px}.redesign .contact-section h2{font-size:28px;letter-spacing:-1px}.redesign .contact-section h2 br{display:initial}.redesign .contact-section h2 em{margin-left:0}.redesign .contact-section p:not(.eyebrow){font-size:12px;line-height:1.5;margin-top:10px}.redesign .contact-copy{min-width:0;flex:1}.redesign .contact-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.redesign .contact-actions :is(a,button){display:flex;align-items:center;justify-content:center;min-height:44px;font-size:10px;line-height:1.35;white-space:normal;text-align:center}.redesign .contact-actions .contact-copy-desktop{display:none}.redesign .contact-actions .contact-copy-mobile{display:flex}.redesign .contact-art{padding-right:0}
}
/* Storefront layout corrections. Pending owner review; not installed on shavage.ru. */

/* The old text remains the accessible name; the visible plus has a geometric center. */
.redesign .product-add{position:relative;display:flex;align-items:center;justify-content:center;gap:0;isolation:isolate}
.redesign .product-add::after{content:"";position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:16px;height:16px;background:linear-gradient(currentColor,currentColor) center/2px 100% no-repeat,linear-gradient(currentColor,currentColor) center/100% 2px no-repeat;pointer-events:none}
.redesign .product-add:disabled::after{content:"";background:linear-gradient(currentColor,currentColor) center/100% 2px no-repeat}
.redesign .product-card-drink .product-add::after{content:"В корзину";position:static;inset:auto;transform:none;width:auto;height:auto;background:none;font:700 12px/1.2 Arial,sans-serif}
.redesign .product-card-drink .product-add:disabled::after{content:"Недоступно"}
.redesign :is(.quantity,.options-quantity-control,.drink-quantity-control) button{display:grid;place-items:center;padding:0;line-height:1}
.redesign :is(.close-button>[data-icon],#bag-icon,.mobile-cart>[data-icon],.account-button>[data-icon]){display:flex;align-items:center;justify-content:center}
.redesign :is(.close-button,#bag-icon,.mobile-cart,.account-button) svg{display:block;flex:none}

/* Give the image box its own dimensions rather than intrinsic image height. */
.redesign .product-photo{position:relative;flex:none}
.redesign .product-photo>.product-details-trigger{position:absolute;inset:0;width:100%;height:100%}
.redesign .product-photo img{max-width:100%;min-height:0}
.redesign .product-info,.redesign .combo-copy,.redesign .dialog-heading h2{min-width:0;overflow-wrap:break-word}
.redesign .product-body h3{height:auto}
.redesign .product-card-drink.product-card-no-options .product-body{grid-template-rows:minmax(0,1fr) auto auto}
.redesign .product-card-drink .product-body{grid-template-rows:minmax(0,1fr) auto auto auto}
.redesign .drink-purchase-row{height:auto;min-height:44px;flex-wrap:wrap}
.redesign .drink-quantity-control{display:grid;grid-template-columns:44px minmax(24px,1fr) 44px;min-height:44px;flex:none}
.redesign .drink-quantity-control button{width:44px;min-width:44px;height:44px;min-height:44px}
.redesign .drink-quantity-value{font-size:14px;text-align:center;min-width:0}
.redesign .product-card-drink .product-add{grid-row:auto}

/* Preserve safe-area space in landscape without scaling the whole page. */
.redesign .container{width:auto;max-width:1320px;margin-left:max(calc(var(--gutter)/2),env(safe-area-inset-left));margin-right:max(calc(var(--gutter)/2),env(safe-area-inset-right))}
@media(min-width:1400px){.redesign .container{margin-inline:auto}}
.redesign .site-header{padding-top:env(safe-area-inset-top);height:calc(var(--header) + env(safe-area-inset-top))}
.redesign .categories{top:calc(var(--header) + env(safe-area-inset-top))}
.redesign dialog{max-height:calc(100dvh - 24px);max-width:calc(100% - 24px)}
.redesign .dialog-heading{gap:12px;align-items:center}
.redesign .dialog-heading h2{flex:1;margin-right:0}
.redesign .cart-dialog{max-height:100dvh}
.redesign .community-qr{display:grid;grid-template-columns:repeat(2,82px);gap:8px 16px;flex:none}
.redesign .community-qr>small{grid-column:1/-1;text-align:center;white-space:nowrap;font-size:11px;line-height:1.4;color:#b5a59e}
.redesign .community-copy h3{font-size:24px;line-height:1.2;letter-spacing:-.6px;margin:10px 0}

@media(max-width:800px),(max-width:1024px) and (pointer:coarse){
  .redesign{--gutter:28px;--header:62px;--title:29px;--card-pad:10px;--card-title:14px;--description:11px;--description-height:32px;--price:20px;--gap:10px}
  .redesign .header-actions{flex:0 1 auto;max-width:none;gap:6px;min-width:0}
  .redesign .account-button{flex:none;width:44px;max-width:none;height:44px;min-height:44px;padding:0;justify-content:center}
  .redesign .header-actions .cart-button{flex:none;max-width:none;min-width:44px;min-height:44px}
  .redesign .product-card:hover{transform:none}
  .redesign .categories{margin:10px -14px 14px 0;padding:6px 14px 6px 0;gap:6px}
  .redesign .category{min-height:44px;padding:10px 14px;font-size:12px}
  .redesign .section-heading{margin-bottom:12px}
  .redesign .product-photo,.redesign .popular-grid .product-photo,.redesign .product-card-side .product-photo{aspect-ratio:1.3}
  .redesign .product-body,.redesign .popular-grid .product-body{gap:7px}
  .redesign .product-body h3,.redesign .popular-grid .product-body h3{font-size:var(--card-title);line-height:1.22;min-height:34px}
  .redesign .product-options{min-height:38px;font-size:10px}
  .redesign .product-price,.redesign .popular-grid .product-price{font-size:var(--price);letter-spacing:-.6px}
  .redesign .drink-purchase-row{flex-direction:column;align-items:stretch;gap:8px;height:auto}
  .redesign .drink-quantity-control{width:100%;grid-template-columns:44px minmax(24px,1fr) 44px}
  .redesign .product-milk-option{height:auto;min-height:44px;padding:4px 0}
  .redesign .product-milk-option>span,.redesign .product-milk-option>strong{font-size:11px;line-height:1.3}
  .redesign .community-qr{display:none}
  .redesign .community-section{padding:18px 0}
  .redesign .community-copy h3{font-size:22px}
  .redesign .contact-section{margin-top:24px;padding:18px}
  .redesign .contact-section h2{font-size:28px}
  .redesign .footer-inner{padding-bottom:90px;overflow-wrap:anywhere}
  .redesign .active-order{flex-wrap:wrap}
  .redesign .cart-dialog{max-width:100%;max-height:100dvh}
  .redesign :is(.shawarma-options,.combo-dialog,.customer-dialog,.checkout-dialog) :is(input:not([type=checkbox]):not([type=radio]),textarea,select){font-size:16px}
}

/* A flowing phone hero: full-width title, then copy and photo in separate tracks. */
@media(max-width:600px){
  .redesign .hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);grid-template-rows:auto auto auto auto auto;gap:0 12px;min-height:0;height:auto;padding:26px 0 22px;align-items:start}
  .redesign .hero-copy{display:contents}
  .redesign .hero-copy>.eyebrow{grid-column:1/-1;grid-row:1;margin-bottom:10px;font-size:7px}
  .redesign .hero h1{grid-column:1/-1;grid-row:2;font-size:clamp(26px,7.6vw,42px);letter-spacing:-1.5px;line-height:1.07;margin:0 0 23px}
  .redesign .hero-description{grid-column:1;grid-row:3;max-width:none;font-size:12px;line-height:1.55;margin:0 0 12px}
  .redesign .hero-actions{grid-column:1;grid-row:4;max-width:none;align-self:start}
  .redesign .hero-actions .primary-button{min-height:44px;padding:10px 13px;font-size:11px;gap:8px;white-space:nowrap}
  .redesign .hero-location{grid-column:1/-1;grid-row:5;margin-top:18px;font-size:9px;gap:5px;width:auto;line-height:1.5;flex-wrap:wrap}
  .redesign .hero-visual{position:relative;inset:auto;width:auto;min-width:0;grid-column:2;grid-row:3/5;transform:none;padding:0 0 24px;align-self:center}
  .redesign .hero-photo-button{transform:rotate(-3deg)}
  .redesign .hero-photo-button img{height:clamp(130px,37vw,190px);object-fit:cover}
  .redesign .hero-product-label{bottom:5px;left:0;right:0;padding:9px 7px}
  .redesign .hero-product-label strong{font-size:10px;line-height:1.3;flex-wrap:wrap;gap:3px}
  .redesign .hero-product-label b{font-size:11px}
  .redesign .hero-scribble{top:-13px;right:-2px;width:39px;height:39px;font-size:10px}
  .redesign .hero-star{bottom:0;left:-7px;font-size:28px}
  .redesign .hero-orbit{display:none}
  .redesign .brand-strip{font-size:7px;letter-spacing:.3px;gap:8px}
  .redesign .combo-grid{grid-template-columns:minmax(0,1fr);gap:12px}
  .redesign .combo-card{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:stretch}
  .redesign .combo-art,.redesign .combo-art>img,.redesign .combo-composition{height:100%;min-height:0}
  .redesign .combo-art{position:relative}
  .redesign .combo-art>img,.redesign .combo-composition{position:absolute;inset:0;width:100%}
  .redesign .combo-art>img{object-fit:cover}
  .redesign .combo-composition{gap:0}
  .redesign .combo-composition img:nth-child(n){object-fit:contain}
  .redesign .combo-copy{padding:14px 12px;min-width:0}
  .redesign .combo-label{margin-bottom:6px;font-size:7px}
  .redesign .combo-copy h3{font-size:22px;line-height:1.1;letter-spacing:-.8px;margin-bottom:8px}
  .redesign .combo-copy>p{font-size:11px;line-height:1.45;min-height:0;margin-bottom:9px}
  .redesign .combo-copy>.combo-payment-note{font-size:10px;line-height:1.45;min-height:0;margin:5px 0 9px}
  .redesign .combo-price{font-size:24px;line-height:1.2;margin-top:auto}
  .redesign .combo-add{min-height:44px;padding:10px 8px;font-size:11px;line-height:1.25;gap:0}
}
@media(max-width:359px){
  .redesign{--gutter:20px;--card-pad:9px;--card-title:13px;--price:18px;--gap:8px}
  .redesign .wordmark{font-size:20px}
  .redesign .brand{gap:5px}
  .redesign .header-actions{gap:2px}
  .redesign .cart-button{gap:5px;padding:5px 6px}
  .redesign .hero-actions .primary-button{font-size:10px;padding-inline:10px}
  .redesign .categories{margin-right:-10px;padding-right:10px}
  .redesign .combo-copy{padding:12px 10px}
  .redesign .combo-copy h3{font-size:20px}
  .redesign .hero-location{font-size:8px}
}
/* Short landscape viewports keep dismiss and purchase controls in reach. */
@media(max-height:500px) and (orientation:landscape){
  .redesign dialog:not(.cart-dialog){max-height:calc(100dvh - 16px);margin-block:auto}
  .redesign :is(.shawarma-options,.combo-dialog) .dialog-heading{padding:10px 16px}
  .redesign :is(.options-footer,.combo-purchase){padding:10px 16px}
  .redesign .dialog-heading h2{font-size:22px}
}

@media(min-width:801px) and (max-width:1150px){.redesign .hero h1{font-size:clamp(34px,4.7vw,52px);letter-spacing:-2px}.redesign #product-grid.is-popular{grid-template-columns:repeat(3,minmax(0,1fr))}}

.redesign .hero h1{line-height:1.09}
@media(min-width:601px) and (max-width:1024px){.redesign #product-grid,.redesign #product-grid.is-popular,.redesign #product-grid[data-category=sides]{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Long drink descriptions wrap; drawer headings stay inside the drawer padding. */
.redesign .option-copy{min-width:0}
.redesign .option-cost{white-space:normal;overflow-wrap:break-word;line-height:1.4}
.redesign .cart-dialog>.dialog-heading{margin:0 0 12px;padding:0 0 16px}
@media(max-width:800px),(max-width:1024px) and (pointer:coarse){.redesign .cart-dialog>.dialog-heading{margin:0 0 10px;padding:16px 0}}
@media(max-width:600px){
  .redesign .product-photo .product-badge[data-badge]{font-size:10px;height:max(18px,13.2%)}
  .redesign .product-photo .product-badge[data-badge="carolina"]{min-width:70px}
  .redesign .product-photo .product-badge[data-badge="vegan"]{min-width:50px}
}
/* Approved compact cards; customization and quantities remain in product dialogs. */
.redesign .product-card.product-card-compact .product-body,
.redesign .product-card.product-card-compact.product-card-drink .product-body,
.redesign .product-card.product-card-compact.product-card-no-options .product-body{
  display:grid;
  grid-template-columns:minmax(0,1fr) 44px;
  grid-template-rows:minmax(0,1fr) 44px;
  align-items:center;
  gap:10px;
}
.redesign .product-card-compact .product-info{grid-column:1/-1;grid-row:1;align-self:start}
.redesign .product-card-compact :is(.side-purchase,.hotdog-purchase){display:contents}
.redesign #product-grid .product-card-compact .product-price,
.redesign #product-grid.is-popular .product-card-compact .product-price,
.redesign #popular-grid .product-card-compact .product-price{grid-column:1;grid-row:2;align-self:center;min-width:0}
.redesign #product-grid .product-card-compact .product-add,
.redesign #product-grid.is-popular .product-card-compact .product-add,
.redesign #popular-grid .product-card-compact .product-add{
  grid-column:2;grid-row:2;justify-self:end;align-self:center;
  width:44px;min-width:44px;max-width:44px;height:44px;min-height:44px;
  padding:0;gap:0;
}
.redesign .product-card-compact.product-card-drink .product-add::after{
  content:"";position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);
  width:16px;height:16px;
  background:linear-gradient(currentColor,currentColor) center/2px 100% no-repeat,linear-gradient(currentColor,currentColor) center/100% 2px no-repeat;
  pointer-events:none;
}
.redesign .product-card-compact.product-card-drink .product-add:disabled::after{content:"";background:linear-gradient(currentColor,currentColor) center/100% 2px no-repeat}
@media(max-width:800px),(max-width:1024px) and (pointer:coarse){
  .redesign .product-card.product-card-compact .product-body,
  .redesign .product-card.product-card-compact.product-card-drink .product-body,
  .redesign .product-card.product-card-compact.product-card-no-options .product-body{gap:8px}
}
/* Bring existing secure checkout controls into the approved ivory interface. */
.redesign :is(.customer-dialog,.checkout-dialog){padding:0;width:570px;max-width:calc(100% - 24px);border-radius:24px;color:var(--ink);background:var(--white)}
.redesign :is(.customer-dialog,.checkout-dialog)>.dialog-heading{padding:25px 26px 22px;margin:0;border-bottom:1px solid #221d1e14;background:var(--white);gap:12px}
.redesign :is(.customer-dialog,.checkout-dialog) .dialog-heading h2{font-size:30px;line-height:1.12;letter-spacing:-1px}
.redesign .customer-heading-mark{display:none}
.redesign :is(#customer-content,#checkout-content){padding:22px 26px 26px}
.redesign :is(.checkout-intro,.checkout-caption,.checkout-hint,.checkout-result-lead){color:#947b70;font-size:13px;line-height:1.6}
.redesign :is(.customer-dialog,.checkout-dialog) :is(label,.payment-email-label){font-size:12px;line-height:1.5;color:var(--ink)}
.redesign :is(.customer-dialog,.checkout-dialog) input:not([type=checkbox]):not([type=radio]),.redesign .payment-email{background:#fffaf5;color:var(--ink);border:1px solid #d5c4bb;border-radius:10px;min-height:46px;padding:11px 12px;font-size:16px;line-height:1.4;box-shadow:none;max-width:100%;min-width:0}
.redesign .customer-phone-field{background:#fffaf5;border-color:#d5c4bb;border-radius:10px;overflow:hidden}
.redesign .customer-phone-field input{border:0!important;background:transparent!important;border-radius:0!important}
.redesign .customer-phone-prefix{border-color:#d5c4bb;color:var(--ink)}
.redesign :is(.customer-password-field,.customer-password-input){min-width:0}
.redesign .customer-password-field input{padding-right:52px!important}
.redesign :is(.payment-secondary,.cart-continue){min-height:44px;border:1px solid #d8c8bf;border-radius:100px;background:transparent;box-shadow:none;color:var(--ink);font-size:12px;line-height:1.4;padding:11px 16px}
.redesign :is(.payment-panel,.customer-card,.customer-profile,.account-session-note){border-color:#ddcfc2;border-radius:15px;background:#fff9f3;box-shadow:none;color:var(--ink)}
.redesign .payment-panel{padding:18px;margin:16px 0}
.redesign .payment-heading{gap:10px;align-items:center;flex-wrap:wrap}
.redesign .payment-heading strong{font-size:16px;line-height:1.3;letter-spacing:-.2px}
.redesign .payment-heading>span{font-size:10px;border:0;background:#eee5dc;color:#92715f;border-radius:100px;padding:6px 9px}
.redesign :is(.payment-note,.payment-help,.checkout-caption){font-size:11px;line-height:1.6;color:#947b70}
.redesign .payment-email-label{display:block;margin:14px 0 7px;font-size:12px;font-weight:700}
.redesign .payment-button{width:100%;min-height:46px;font-size:13px;margin-top:14px}
.redesign .cart-comment{border-color:#221d1e14;background:transparent;border-radius:0;padding:10px 0;margin:10px 0}
.redesign .cart-comment summary{font-size:12px;line-height:1.4;min-height:44px;display:flex;align-items:center;font-weight:700;cursor:pointer}
.redesign .cart-comment label,.redesign .cart-comment-hint{font-size:10px;line-height:1.5;color:#947b70}
.redesign .cart-comment textarea{background:#fffaf5;color:var(--ink);border:1px solid #d5c4bb;border-radius:10px;padding:12px;font-size:16px;line-height:1.5;width:100%;resize:vertical}
.redesign .cart-empty{padding:36px 12px;text-align:center}
.redesign .cart-empty h3{font-size:24px;line-height:1.2;letter-spacing:-.6px;color:var(--ink)}
.redesign .cart-empty p{font-size:13px;line-height:1.6;color:#947b70}
.redesign .cart-empty>svg{width:44px;height:44px;color:#a48274}
.redesign .registration-legal{background:#fff9f3;border-color:#ddcfc2;border-radius:12px}
.redesign .registration-legal-choice{font-size:12px!important;line-height:1.5!important;color:#6d5850!important}
.redesign .registration-legal-choice input{accent-color:var(--red);flex:none}
.redesign .registration-legal a{color:#9d3f50}
.redesign :is(.checkout-order-number,.checkout-summary){background:#fff9f3;border-color:#ddcfc2;border-radius:14px}
.redesign .checkout-result-icon{background:#e9eddc;color:#667e45}
.redesign .checkout-badge{color:#667e45;background:#e9eddc;border-radius:100px;font-size:10px;letter-spacing:.7px}
.redesign .checkout-order-number strong{font-size:32px;letter-spacing:-.7px}
@media(max-width:600px){
  .redesign :is(.customer-dialog,.checkout-dialog){border-radius:20px}
  .redesign :is(.customer-dialog,.checkout-dialog)>.dialog-heading{padding:18px}
  .redesign :is(.customer-dialog,.checkout-dialog) .dialog-heading h2{font-size:25px}
  .redesign :is(#customer-content,#checkout-content){padding:18px}
  .redesign .payment-panel{padding:14px}
  .redesign .registration-legal-choice{font-size:11px!important}
}
@media(max-height:500px) and (orientation:landscape){.redesign :is(.customer-dialog,.checkout-dialog)>.dialog-heading{padding:12px 20px}.redesign :is(#customer-content,#checkout-content){padding:16px 20px}}

/* Order navigation belongs to the profile, never the basket. */
.redesign .cart-tabs[hidden],.redesign .cart-tabs button[hidden]{display:none!important}
/* Approved photo-led product presentation over the existing real forms. */
.redesign :is(#options-dialog,#combo-dialog).photo-led-dialog{width:880px;max-width:calc(100% - 32px);max-height:calc(100dvh - 40px);padding:0;border-radius:23px;background:var(--white);overflow:hidden}
.redesign :is(#options-dialog,#combo-dialog).photo-led-dialog[open]{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-template-rows:minmax(0,1fr)}
.redesign .photo-led-dialog .product-dialog-visual{position:relative;min-width:0;min-height:0;align-self:stretch;overflow:hidden;background:#e6ddd3}
.redesign .photo-led-dialog .product-dialog-visual>img{display:block;position:absolute;inset:0;width:100%;height:100%;max-width:100%;min-width:0;min-height:0;border-radius:0;object-fit:cover;object-position:center}
.redesign .photo-led-dialog .product-dialog-main{display:flex;flex-direction:column;min-width:0;min-height:350px;max-height:calc(100dvh - 40px);overflow:hidden;background:var(--white)}
.redesign .photo-led-dialog .product-dialog-main>.dialog-heading{position:relative;flex:none;display:flex;align-items:flex-start;gap:12px;min-height:0;padding:25px 24px 18px;margin:0;border:0;background:var(--white);z-index:3}
.redesign .photo-led-dialog .options-product-heading{min-width:0;flex:1;display:block}
.redesign .photo-led-dialog .product-dialog-main>.dialog-heading>div{min-width:0;flex:1}
.redesign .photo-led-dialog .dialog-heading h2{margin:0;font-size:30px;line-height:1.1;letter-spacing:-1.1px;overflow-wrap:break-word}
.redesign .photo-led-dialog .dialog-kicker{font-size:8px;line-height:1.5;letter-spacing:1.2px;color:#95796d;margin:0 0 8px;font-weight:700}
.redesign .photo-led-dialog .close-button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;margin:-3px -7px 0 0;padding:0;border:1px solid #221d1e16;border-radius:50%;background:#fffaf4}
.redesign .photo-led-dialog :is(#options-form,#combo-form){display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}
.redesign .photo-led-dialog :is(#options-fields,.combo-fields){flex:1;min-height:0;max-height:none;overflow-x:hidden;overflow-y:auto;padding:0 24px 20px;overscroll-behavior:contain;scroll-padding-top:12px}
.redesign .photo-led-dialog .product-detail-description{font-size:12px;line-height:1.6;color:#8b756b;margin:0 0 18px}
.redesign .photo-led-dialog .option-group{min-width:0;margin:0 0 20px;padding:0}
.redesign .photo-led-dialog .option-group:last-child{margin-bottom:0}
.redesign .photo-led-dialog .option-group legend{display:flex;align-items:center;flex-wrap:wrap;gap:5px 10px;margin:0 0 10px;font-size:15px;line-height:1.35;letter-spacing:-.2px}
.redesign .photo-led-dialog .option-group-price{font-size:10px;line-height:1.4;color:#9a8074}
.redesign .photo-led-dialog .option-group-note{font-size:11px;line-height:1.5;margin:0 0 11px}
.redesign .photo-led-dialog :is(.option-grid,.combo-shawarma-grid){display:grid;grid-template-columns:minmax(0,1fr);gap:7px}
.redesign .photo-led-dialog .option-row{display:flex;align-items:center;min-width:0;min-height:48px;padding:9px 10px;margin:0;gap:10px;border:1px solid #dacdc4;background:#fff9f3;border-radius:10px}
.redesign .photo-led-dialog .option-row:has(input:checked){border-color:var(--red);background:#ffedf0}
.redesign .photo-led-dialog .option-copy{min-width:0;flex:1}
.redesign .photo-led-dialog .option-copy strong{font-size:12px;line-height:1.35;letter-spacing:0}
.redesign .photo-led-dialog .option-cost{font-size:10px;line-height:1.4;margin:3px 0 0;white-space:normal}
.redesign .photo-led-dialog .option-row input{flex:none;width:20px;height:20px;margin:0}
.redesign .photo-led-dialog .combo-shawarma-choice img{width:38px;height:44px;min-width:38px;object-fit:cover;border-radius:7px}
.redesign .photo-led-dialog .combo-fixed-items{padding:12px;margin:0 0 17px;background:#ede3da;border:0;border-radius:11px}
.redesign .photo-led-dialog .combo-fixed-items strong{font-size:12px;line-height:1.5}
.redesign .photo-led-dialog .combo-fixed-items p{font-size:11px;line-height:1.5;margin:5px 0 0}
.redesign .photo-led-dialog :is(.options-footer,.combo-purchase){flex:none;position:relative;padding:16px 24px 20px;margin:0;border-top:1px solid #221d1e14;background:var(--white);box-shadow:none}
.redesign .photo-led-dialog .options-quantity-row{gap:12px;margin:0 0 12px}
.redesign .photo-led-dialog .options-quantity-row>strong{font-size:12px;line-height:1.4}
.redesign .photo-led-dialog .options-quantity-control{grid-template-columns:44px 28px 44px;border:0;border-radius:100px;background:#eee4db;overflow:hidden}
.redesign .photo-led-dialog .options-quantity-control button{width:44px;height:44px;border:0;border-radius:0;background:none;font-size:21px;line-height:1;display:grid;place-items:center}
.redesign .photo-led-dialog .options-quantity-control output{font-size:13px}
.redesign .photo-led-dialog :is(.options-total,.combo-total){display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:0 0 12px}
.redesign .photo-led-dialog .options-total>div{flex:1;min-width:0}
.redesign .photo-led-dialog .options-total>div>strong,.redesign .photo-led-dialog .combo-total>span{font-size:12px;line-height:1.4}
.redesign .photo-led-dialog #option-summary{font-size:10px;line-height:1.4;margin:4px 0 0}
.redesign .photo-led-dialog :is(#option-price,#combo-total){font-size:24px;line-height:1.2;letter-spacing:-.7px}
.redesign .photo-led-dialog .combo-payment-note{font-size:11px;line-height:1.5;margin:0 0 12px;color:#8e675d}
.redesign .photo-led-dialog .combo-error{font-size:12px;line-height:1.5;margin:0 0 12px}
.redesign .photo-led-dialog :is(.options-add,.combo-submit){display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:46px;padding:12px 15px;border-radius:100px;font-size:12px;line-height:1.3}
.redesign .photo-led-dialog .mobile-options-nav{padding:0 18px 12px;gap:8px;background:var(--white)}
.redesign .photo-led-dialog .mobile-options-nav button{font-size:11px;min-height:44px;padding:10px}
.redesign .photo-led-dialog .product-extra-details{border-top:1px solid #221d1e14;margin-top:16px;padding-top:2px}
.redesign .photo-led-dialog .product-extra-details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:12px 0;list-style:none;font-size:12px;font-weight:700;line-height:1.4;cursor:pointer;color:var(--ink)}
.redesign .photo-led-dialog .product-extra-details>summary::-webkit-details-marker{display:none}
.redesign .photo-led-dialog .product-extra-details>summary::after{content:'+';display:grid;place-items:center;flex:none;width:24px;height:24px;font-size:20px;line-height:1;font-weight:400;color:#987b6e}
.redesign .photo-led-dialog .product-extra-details[open]>summary::after{content:'−'}
.redesign .photo-led-dialog .product-extra-details>.option-group{margin:6px 0 0}

/* The approved combo captions stay within the photo and never cover its copy. */
.redesign .combo-art>.combo-tag{position:absolute;left:10px;right:10px;bottom:10px;z-index:4;margin:0;padding:8px 7px;border-radius:8px;background:#171516e6;color:#fff;font-size:7px;line-height:1.4;font-weight:700;letter-spacing:.55px;text-align:center;pointer-events:none;overflow-wrap:normal}
.redesign .combo-copy>.combo-label{font-size:7px;line-height:1.5;letter-spacing:1px;color:#d7a2a8}
.redesign .combo-add{gap:8px}
.redesign .combo-add>span[aria-hidden]{flex:none;line-height:1}
@media(max-width:600px){.redesign .combo-art>.combo-tag{left:6px;right:6px;bottom:7px;padding:7px 4px;font-size:6px;letter-spacing:.2px}.redesign .combo-copy>.combo-label{font-size:6px;letter-spacing:.4px}.redesign .combo-add{gap:6px}}

@media(max-width:800px),(max-width:1024px) and (pointer:coarse){
  .redesign :is(#options-dialog,#combo-dialog).photo-led-dialog{width:calc(100% - 20px - env(safe-area-inset-left) - env(safe-area-inset-right));max-width:560px;max-height:calc(var(--mobile-viewport-height,100dvh) - 20px - env(safe-area-inset-top));padding:0;overflow-x:hidden;overflow-y:auto;border-radius:20px;top:calc(var(--mobile-viewport-top,0px) + 10px + env(safe-area-inset-top));margin:0 auto}
  .redesign :is(#options-dialog,#combo-dialog).photo-led-dialog[open]{display:block}
  .redesign .photo-led-dialog .product-dialog-visual{height:clamp(150px,43vw,185px);min-height:0;width:100%}
  .redesign .photo-led-dialog .product-dialog-visual>img{object-fit:cover;object-position:center 46%}
  .redesign .photo-led-dialog .product-dialog-main{display:contents;min-height:0;max-height:none;overflow:visible}
  .redesign .photo-led-dialog .product-dialog-main>.dialog-heading{position:sticky;top:0;align-items:center;padding:16px 18px 13px;margin:0;border-bottom:1px solid #221d1e0d}
  .redesign .photo-led-dialog .dialog-heading h2{font-size:25px;letter-spacing:-.8px;line-height:1.15}
  .redesign .photo-led-dialog .dialog-kicker{font-size:7px;letter-spacing:1px;margin-bottom:6px}
  .redesign .photo-led-dialog .close-button{margin:0 -5px 0 0}
  .redesign .photo-led-dialog :is(#options-form,#combo-form){display:block;min-height:0;overflow:visible}
  .redesign .photo-led-dialog :is(#options-fields,.combo-fields){height:auto;max-height:none;overflow:visible;padding:16px 18px 20px}
  .redesign .photo-led-dialog .mobile-options-nav{padding-top:12px;padding-bottom:0}
  .redesign .photo-led-dialog .product-detail-description{font-size:12px;margin-bottom:16px}
  .redesign .photo-led-dialog .option-group legend{font-size:15px}
  .redesign .photo-led-dialog .option-copy strong{font-size:13px}
  .redesign .photo-led-dialog .option-cost{font-size:11px}
  .redesign .photo-led-dialog .option-row{min-height:50px;padding:10px;gap:9px}
  .redesign .photo-led-dialog .options-quantity-row>strong,.redesign .photo-led-dialog .options-total>div>strong,.redesign .photo-led-dialog .combo-total>span{font-size:13px}
  .redesign .photo-led-dialog :is(.options-footer,.combo-purchase){position:static;padding:16px 18px max(18px,env(safe-area-inset-bottom));}
  .redesign .photo-led-dialog :is(.options-add,.combo-submit){min-height:48px;font-size:13px}
}
@media(max-width:359px){
  .redesign .photo-led-dialog .product-dialog-main>.dialog-heading{padding-inline:14px}
  .redesign .photo-led-dialog :is(#options-fields,.combo-fields,.options-footer,.combo-purchase){padding-inline:14px}
  .redesign .photo-led-dialog .mobile-options-nav{padding-inline:14px}
  .redesign .photo-led-dialog .dialog-heading h2{font-size:23px}
  .redesign .photo-led-dialog .product-dialog-visual{height:150px}
}
@media(max-height:500px){
  .redesign .photo-led-dialog .product-dialog-main{min-height:0}
  .redesign .photo-led-dialog .product-dialog-main>.dialog-heading{padding-block:10px}
  .redesign .photo-led-dialog .dialog-heading h2{font-size:22px}
  .redesign .photo-led-dialog :is(.options-footer,.combo-purchase){padding-block:10px}
  .redesign .photo-led-dialog .options-quantity-row{margin-bottom:8px}
}
@media(max-height:500px) and (max-width:1024px){
  .redesign :is(#options-dialog,#combo-dialog).photo-led-dialog[open]{display:block;overflow-y:auto}
  .redesign .photo-led-dialog .product-dialog-visual{height:120px}
  .redesign .photo-led-dialog .product-dialog-main{display:contents;max-height:none;overflow:visible}
  .redesign .photo-led-dialog .product-dialog-main>.dialog-heading{position:sticky;top:0}
  .redesign .photo-led-dialog :is(#options-form,#combo-form){display:block;overflow:visible}
  .redesign .photo-led-dialog :is(#options-fields,.combo-fields){overflow:visible;max-height:none}
}
/* Account and order presentation, driven by authenticated server data. */
.redesign .cart-title-group{min-width:0;flex:1}
.redesign .cart-title-group .dialog-kicker{margin:0 0 8px;font-size:8px;letter-spacing:1.4px;color:#987f74}
.redesign #cart-title{margin:0;font-size:29px;line-height:1.15;letter-spacing:-1px;overflow-wrap:break-word}
.redesign #cart-title-text{font:inherit;color:inherit}
.redesign #cart-title .title-dot{font:inherit;color:var(--red)}
.redesign #drawer-count{font-size:13px;letter-spacing:0;color:#987f74;white-space:nowrap}
.redesign .cart-dialog{background:#f7f3ec;color:#221d1e}
.redesign .cart-dialog.is-account-view{width:570px;height:auto;max-width:calc(100% - 28px);max-height:calc(100dvh - 28px);inset:0;margin:auto;border-radius:24px;padding:25px;overflow:auto}
.redesign .cart-dialog.is-account-view[open]{display:flex;flex-direction:column}
.redesign .cart-dialog.is-account-view>.dialog-heading{position:static;flex:none;min-height:44px;align-items:center;margin:0 0 16px;padding:0;border:0;background:transparent;gap:16px}
.redesign .is-account-view .cart-toolbar{flex:none;margin:0 0 7px;padding:0;background:transparent}
.redesign .account-toolbar-actions{display:flex;justify-content:flex-end;margin:0 0 8px}
.redesign .account-profile-link{display:inline-flex;align-items:center;gap:8px;min-height:40px;border:0;border-bottom:1px solid #d9cbbf;background:transparent;padding:7px 0;color:#8b685c;font-size:12px;font-weight:600}
.redesign .is-account-view .cart-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;border:0;background:none}
.redesign .is-account-view .cart-tabs button{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:44px;padding:10px 12px;border:1px solid #ddd0c4;border-radius:100px;background:transparent;color:#856b5f;font-size:12px;line-height:1.3}
.redesign .is-account-view .cart-tabs button[aria-selected=true]{background:#221d1e;border-color:#221d1e;color:#fff8ef}
.redesign .is-account-view .cart-tabs button span{min-width:18px;min-height:18px;padding:2px 4px;border-radius:50%;background:#221d1e0e;font-size:10px;line-height:1.4}
.redesign .is-account-view .cart-tabs button[aria-selected=true] span{background:#ffffff20;color:inherit}
.redesign .is-account-view .cart-content{min-height:0;flex:1 1 auto;padding:0;overflow-y:auto;overscroll-behavior:contain}
.redesign .is-account-view .cart-footer{flex:none;border:0;background:transparent;padding:8px 0 0;margin:0}
.redesign .is-account-view .cart-footer>.primary-button{width:100%;min-height:44px;font-size:12px}
.redesign .order-history-card{display:block;min-width:0;margin:12px 0;padding:18px;border:1px solid #ddcfc2;border-radius:17px;background:#fff9f3;box-shadow:none;color:#221d1e}
.redesign .order-card-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:9px;margin:0;padding:0;border:0;background:transparent}
.redesign .history-heading{min-width:0;flex:1 1 150px}
.redesign .history-order-number{margin:0;font-size:18px;line-height:1.3;letter-spacing:-.5px;overflow-wrap:break-word;color:inherit}
.redesign .history-heading time{display:block;margin-top:6px;font-size:10px;line-height:1.5;color:#9d8279}
.redesign .history-payment-status{flex:0 1 auto;max-width:100%;width:auto;min-height:26px;margin:0;padding:6px 9px;border:0;border-radius:100px;background:#efe4d8;color:#846b51;font-size:10px;font-weight:600;line-height:1.4;white-space:normal;overflow-wrap:anywhere;text-align:left}
.redesign .history-payment-status.is-paid,.redesign .history-payment-status.is-received{background:#e9eddc;color:#596f3a}
.redesign .history-payment-status.is-closed{background:#eee6e1;color:#86695e}
.redesign .order-status-timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:20px 0;padding:0;list-style:none}
.redesign .order-status-timeline li{min-width:0;margin:0;padding:9px 0 0;border-top:3px solid #e8dcd1;color:#ab9386;font-size:10px;line-height:1.4;overflow-wrap:break-word}
.redesign .order-status-timeline li>span{display:block;min-height:15px;margin-bottom:5px;font-size:11px;font-weight:800;line-height:1.3}
.redesign .order-status-timeline li.is-complete,.redesign .order-status-timeline li.is-current{border-color:var(--red);color:#ae4551}
.redesign .order-status-timeline li.is-current{font-weight:700}
.redesign .order-progress-note{margin:14px 0;font-size:11px;line-height:1.5;color:#95776b}
.redesign .history-details{margin:15px 0 0;padding:0;border:0;display:block}
.redesign .history-item{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:start;gap:9px;margin:0;padding:11px 0;border-bottom:1px solid #e8dcd1}
.redesign .history-item img{display:block;width:44px;height:49px;object-fit:cover;border-radius:8px}
.redesign .history-item>div{min-width:0}
.redesign .history-item strong{font-size:12px;font-weight:700;line-height:1.4;overflow-wrap:anywhere}
.redesign .history-item-quantity{white-space:nowrap;font-size:11px;color:#97796d}
.redesign .history-item p{margin:5px 0 0;font-size:10px;line-height:1.5;color:#96817a;overflow-wrap:anywhere}
.redesign .history-item>span{margin:0;font-size:12px;font-weight:700;line-height:1.5;white-space:nowrap}
.redesign .history-comment{margin:14px 0 0;padding:12px;background:#efe5da;border:0;border-radius:11px;font-size:11px;line-height:1.5;color:#8d7468;overflow-wrap:anywhere}
.redesign .history-comment strong{font-size:11px;color:#755b50}
.redesign .history-comment p{margin:5px 0 0;white-space:pre-wrap}
.redesign .history-total-row{display:flex;align-items:baseline;justify-content:space-between;gap:15px;margin:18px 0 0;padding:0 0 10px;border-bottom:1px solid #e0d1c4;font-size:13px}
.redesign .history-total{margin:0;font-size:23px;line-height:1.2;letter-spacing:-.7px;color:#221d1e;white-space:nowrap}
.redesign .order-payment-summary{margin:12px 0 0;padding:0;border:0;background:none;font-size:11px;line-height:1.5}
.redesign .order-payment-summary>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:3px 0}
.redesign .order-payment-summary dt{min-width:0}
.redesign .order-payment-summary dd{margin:0;white-space:nowrap;font-weight:600}
.redesign .history-received,.redesign .history-refund,.redesign .history-receipt-note{margin:12px 0 0;font-size:11px;line-height:1.6;overflow-wrap:anywhere}
.redesign .history-cancellation{margin-top:14px;padding:12px;background:#f2e6e1;border-radius:10px;font-size:11px;line-height:1.6;overflow-wrap:anywhere}
.redesign .history-cancellation p{margin:6px 0 0}
.redesign .history-note{margin:10px 0;font-size:11px;line-height:1.6;color:#987d70}
.redesign .history-load-error{margin:12px 0;padding:11px 13px;border-radius:10px;background:#f8e7e5;font-size:12px;line-height:1.5;color:#9a3e44}
.redesign :is(.history-more,.history-repeat){min-height:44px;padding:10px 16px;border:1px solid #d5c4b7;border-radius:100px;background:transparent;font-size:12px;color:#866458}
.redesign .history-more{width:100%;margin:4px 0}
.redesign .history-empty{padding:28px 12px;text-align:center}
.redesign .history-empty h3{margin:16px 0 10px;font-size:23px;line-height:1.2;letter-spacing:-.6px}
.redesign .history-empty p{margin:0;font-size:12px;line-height:1.7;color:#93796d}
.redesign .history-empty-icon{display:flex;justify-content:center;color:var(--red)}
.redesign .history-empty-icon svg{width:35px;height:35px}
.redesign .cart-actions.is-confirming{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px 10px;padding:8px 0}
.redesign .cart-actions.is-confirming p{flex:1 1 140px;margin:0;font-size:12px;font-weight:600}
.redesign .cart-actions.is-confirming .cart-clear-button{min-height:44px;padding:8px 11px;border:1px solid #d8c6b8;border-radius:100px;font-size:11px;background:transparent}
.redesign .checkout-progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:17px 0;padding:0;list-style:none}
.redesign .checkout-progress li{display:flex;align-items:center;gap:6px;min-width:0;padding:0 0 9px;border-bottom:2px solid #e1d4c8;color:#a78c7e;font-size:11px;line-height:1.4;white-space:nowrap}
.redesign .checkout-progress li>span{font-size:10px;font-weight:700}
.redesign .checkout-progress li.is-current,.redesign .checkout-progress li.is-complete{border-color:var(--red);color:#ad4551}
.redesign .checkout-progress li.is-current{font-weight:700}
@media(max-width:800px),(max-width:1024px) and (pointer:coarse){
  .redesign .cart-dialog.is-account-view{width:570px;max-width:calc(100% - 20px);height:auto;max-height:calc(var(--mobile-viewport-height,100dvh) - 20px);top:var(--mobile-viewport-top,0px);bottom:0;left:0;right:0;margin:auto;border-radius:21px;padding:18px}
  .redesign .cart-dialog.is-account-view>.dialog-heading{margin:0 0 12px;padding:0;gap:10px}
  .redesign #cart-title{font-size:27px}
  .redesign .order-history-card{padding:14px;border-radius:15px}
  .redesign .history-order-number{font-size:17px}
  .redesign .history-payment-status{font-size:9px}
  .redesign .history-item{grid-template-columns:38px minmax(0,1fr) auto;gap:7px}
  .redesign .history-item img{width:38px;height:44px}
  .redesign .history-item strong,.redesign .history-item>span{font-size:11px}
  .redesign .order-status-timeline{gap:5px}
  .redesign .order-status-timeline li{font-size:9px}
  .redesign .history-total{font-size:21px}
}
/* Compact phone and tablet combo cards. Photos keep their native ratio. */
@media(max-width:800px){
  .redesign .combo-grid{grid-auto-rows:1fr}
  .redesign .combo-card{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);grid-template-rows:auto auto auto auto;align-items:center;gap:6px 12px;padding:12px;border-radius:16px}
  .redesign .combo-card .combo-copy{display:contents}
  .redesign .combo-copy>.combo-label,.redesign .combo-art>.combo-tag{display:none}
  .redesign .combo-card .combo-art{grid-column:1;grid-row:1/3;position:relative;align-self:center;width:100%;height:auto;min-height:0;aspect-ratio:3/2;border-radius:10px;overflow:hidden}
  .redesign .combo-card:has(.combo-composition) .combo-art{aspect-ratio:6483/3840}
  .redesign .combo-card .combo-composition{position:absolute;inset:0;min-height:0;height:100%;gap:0}
  .redesign .combo-card .combo-composition img:nth-child(n){object-fit:contain;width:100%;height:100%}
  .redesign .combo-copy h3{grid-column:2;grid-row:1;align-self:end;margin:0;font-size:21px;line-height:1.15;letter-spacing:-.6px}
  .redesign .combo-copy>p:not(.combo-payment-note){grid-column:2;grid-row:2;align-self:start;min-height:0;margin:0;font-size:11px;line-height:1.4}
  .redesign .combo-copy>.combo-price{grid-column:1;grid-row:3;align-self:center;margin:5px 0 0;font-size:25px;line-height:1.15;white-space:nowrap}
  .redesign .combo-copy>.combo-add{grid-column:2;grid-row:3;align-self:center;min-height:44px;width:100%;margin:5px 0 0;padding:10px 8px;font-size:12px;line-height:1.2;gap:6px}
  .redesign .combo-copy>.combo-payment-note{grid-column:1/-1;grid-row:4;margin:4px 0 0;min-height:0;font-size:10px;line-height:1.4}
}
@media(min-width:601px) and (max-width:800px){
  .redesign .hero h1{font-size:clamp(30px,5.2vw,42px)}
}
/* Phone footer: group related information without losing links or tap targets. */
@media (max-width:600px){
  .redesign .site-footer{margin-top:16px}
  .redesign .footer-inner{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:8px;
    padding:18px 0 24px;
    font-size:11px;
    overflow-wrap:anywhere;
  }
  .redesign .footer-inner p{margin:0;font-size:11px;line-height:1.5}
  .redesign .footer-company{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:6px 12px;
    width:100%;
    min-width:0;
  }
  .redesign .footer-company>strong{font-size:20px;line-height:1.2;letter-spacing:-.6px}
  .redesign .footer-company>.release-version{
    grid-column:2;
    grid-row:1;
    margin:0;
    font-size:11px;
    white-space:nowrap;
  }
  .redesign .footer-company>p:not(.release-version){grid-column:1/-1}
  .redesign .footer-company nav{
    grid-column:1/-1;
    display:flex;
    justify-content:flex-start;
    align-items:center;
    flex-wrap:wrap;
    gap:0 18px;
    width:100%;
    margin:0;
  }
  .redesign .footer-company nav .text-link{
    display:inline-flex;
    align-items:center;
    min-height:44px;
    padding:0;
    font-size:12px;
    line-height:1.35;
    text-align:left;
  }
  .redesign .footer-contacts{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:0 16px;
    min-width:0;
    padding-top:6px;
    border-top:1px solid var(--border);
    text-align:left;
  }
  .redesign .footer-contacts>a,
  .redesign .footer-contacts .footer-email{
    display:inline-flex;
    align-items:center;
    min-height:44px;
    max-width:100%;
    font-size:12px;
    line-height:1.35;
  }
  .redesign .footer-contacts>p:first-of-type{flex:0 1 auto;min-width:0}
  .redesign .footer-contacts>p:not(:first-of-type){flex:0 0 100%;margin:3px 0 0}
  /* Only a visible fixed basket needs extra clearance below the address. */
  .redesign:has(.mobile-cart:not([hidden])) .footer-inner{padding-bottom:90px}
}

/* Wider screens: the contact block sits beside the company details, not the logo. */
@media (min-width:601px){
  .redesign .footer-inner{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    align-items:end;
    gap:32px;
    padding:24px 0 28px;
    font-size:12px;
  }
  .redesign .footer-inner p{margin:0;font-size:12px;line-height:1.5}
  .redesign .footer-company{
    display:grid;
    align-content:start;
    gap:8px;
    min-width:0;
    width:auto;
  }
  .redesign .footer-company>strong{font-size:23px;line-height:1.2;letter-spacing:-.7px}
  .redesign .footer-company>.release-version{font-size:11px}
  .redesign .footer-company nav{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    flex-wrap:wrap;
    gap:0 20px;
    margin:0;
    width:100%;
  }
  .redesign .footer-company nav .text-link{
    display:inline-flex;
    align-items:center;
    min-height:44px;
    margin:0;
    padding:0;
    font-size:12px;
    line-height:1.5;
    text-align:left;
  }
  .redesign .footer-contacts{
    display:grid;
    align-content:end;
    justify-items:end;
    gap:8px;
    min-width:0;
    padding:0 0 13px;
    text-align:right;
  }
  .redesign .footer-contacts>a,
  .redesign .footer-contacts .footer-email{
    display:inline-flex;
    align-items:center;
    justify-content:flex-end;
    min-height:20px;
    max-width:100%;
    font-size:12px;
    line-height:1.5;
  }
}
@media (min-width:601px) and (max-width:1024px) and (pointer:coarse){
  .redesign .footer-contacts>a,
  .redesign .footer-contacts .footer-email{min-height:44px}
  .redesign:has(.mobile-cart:not([hidden])) .footer-inner{padding-bottom:90px}
}
/* Two decoded photo layers share the same fixed hero box during the crossfade. */
.redesign .hero-photo-button{display:grid;position:relative;isolation:isolate}
.redesign .hero-photo-button>.hero-slide{grid-area:1/1;display:block;width:100%;min-width:0;opacity:0;transition:opacity 500ms ease;pointer-events:none}
.redesign .hero-photo-button>.hero-slide.is-current{opacity:1}
.redesign .hero-carousel-empty{grid-area:1/1;align-self:center;justify-self:center;padding:15px;max-width:100%;color:#8b756b;font-size:12px;line-height:1.5;text-align:center;visibility:hidden}
.redesign .hero-is-empty .hero-slide{visibility:hidden;opacity:0!important}
.redesign .hero-is-empty .hero-carousel-empty{visibility:visible}
.redesign .hero-carousel-toggle{position:absolute;z-index:5;top:20px;left:24px;display:grid;place-items:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border:1px solid #ffffff45;border-radius:50%;background:#221d1ecc;color:#fff9f3;cursor:pointer}
.redesign .hero-carousel-toggle::before{content:'';width:12px;height:14px;background:linear-gradient(currentColor,currentColor) left/4px 100% no-repeat,linear-gradient(currentColor,currentColor) right/4px 100% no-repeat}
.redesign .hero-carousel-toggle[hidden]{display:none}
.redesign .hero-carousel-toggle.is-paused::before{width:0;height:0;margin-left:3px;border-left:11px solid currentColor;border-top:7px solid transparent;border-bottom:7px solid transparent;background:none}
.redesign .hero-carousel-toggle:focus-visible{outline:3px solid var(--red);outline-offset:3px}
@media(max-width:800px),(max-width:1024px) and (pointer:coarse){.redesign .hero-carousel-toggle{top:20px;left:6px}}
@media(max-width:600px){.redesign .hero-carousel-toggle{top:4px;left:3px;width:44px;height:44px;background:#221d1ebd}}
@media(max-width:600px){.redesign .hero{grid-template-rows:auto auto min-content 1fr auto}}
@media(prefers-reduced-motion:reduce){.redesign .hero-photo-button>.hero-slide{transition:none}}
/* One complete landscape photograph per combo, shared by both demo entrypoints. */
.combo-grid .combo-card .combo-art {
  display: block;
  position: relative;
  align-self: center;
  width: 100%;
  height: auto;
  min-height: 0;
  aspect-ratio: 3 / 2;
  overflow: hidden;
  border-radius: 12px;
  background: #211b1c;
}
.combo-grid .combo-card .combo-art > img {
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: cover;
  object-position: center;
}
.combo-grid .combo-card .combo-tag { display: none; }
@media (min-width: 801px) {
  .combo-grid .combo-card {
    align-items: stretch;
    padding: 0;
    gap: 0;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
  .combo-grid .combo-card .combo-art {
    align-self: stretch;
    height: auto;
    aspect-ratio: auto;
    border-radius: 0;
  }
  .combo-grid .combo-card .combo-copy { padding: 22px; }
  .combo-grid .combo-card .combo-copy > :is(.combo-description, p:not(.eyebrow):not(.combo-payment-note):not(.combo-split)) { min-height: 34px; }
}
@media (max-width: 800px) {
  body:not(.redesign) .combo-grid { grid-template-columns: minmax(0, 1fr); }
  body:not(.redesign) .combo-card {
    display: grid;
    grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
    grid-template-rows: auto auto auto auto;
    align-items: center;
    gap: 6px 12px;
    padding: 12px;
  }
  body:not(.redesign) .combo-card .combo-copy { display: contents; }
  body:not(.redesign) .combo-card .combo-art { grid-column: 1; grid-row: 1 / 3; }
  body:not(.redesign) .combo-copy > .eyebrow { display: none; }
  body:not(.redesign) .combo-copy h3 { grid-column: 2; grid-row: 1; align-self: end; margin: 0; font-size: 21px; line-height: 1.15; }
  body:not(.redesign) .combo-copy .combo-description { grid-column: 2; grid-row: 2; align-self: start; min-height: 0; margin: 0; font-size: 11px; line-height: 1.4; }
  body:not(.redesign) .combo-copy .combo-price { grid-column: 1; grid-row: 3; font-size: 25px; margin-top: 5px; }
  body:not(.redesign) .combo-copy .button-primary { grid-column: 2; grid-row: 3; margin-top: 5px; width: 100%; min-height: 44px; padding: 10px 8px; font-size: 12px; }
  body:not(.redesign) .combo-copy .combo-split { grid-column: 1 / -1; grid-row: 4; min-height: 0; margin: 4px 0 0; font-size: 10px; line-height: 1.4; }
}
/* Keep the QR quiet zones intact; adjust only the surrounding layout. */
@media (min-width: 801px) {
  .community-section .community-qr {
    display: grid;
    grid-template-columns: repeat(2, 96px);
    align-self: center;
    align-items: start;
    gap: 12px 20px;
    margin-top: 20px;
  }
  .community-section .community-qr-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    text-align: center;
    text-decoration: none;
  }
  .community-section .community-qr-card img {
    display: block;
    width: 96px;
    height: 96px;
    object-fit: contain;
    border-radius: 11px;
    background: #fff;
    box-shadow: 0 4px 14px #0002;
  }
  .community-section .community-qr-card strong {
    font-size: 12px;
    line-height: 1.3;
    font-weight: 600;
  }
  .community-section .community-qr > small {
    grid-column: 1 / -1;
    margin: 0;
    font-size: 11px;
    line-height: 1.4;
    text-align: center;
    color: #b5a59e;
  }
}
/* Keep the same layout contract for mouse and touch tablets. The absolute
   combo image needs a grid track; a legacy touch flex rule collapsed it. */
@media (min-width:801px) {
  .redesign .combo-grid .combo-card { display:grid; }
}

/* Text enlargement must grow its box instead of painting over neighbours. */
.redesign .hero h1,.redesign .hero h1 em { overflow-wrap:anywhere; white-space:normal; }
.redesign .hero-product-label strong,
.redesign .hero-product-label strong > span,
.redesign .community-qr-card strong {
  min-width:0; white-space:normal; overflow-wrap:anywhere;
}
.redesign .combo-card .combo-price {
  min-width:0; max-width:100%; white-space:normal; overflow-wrap:anywhere;
}
.redesign .contact-actions :is(a,button) {
  min-width:0; height:auto; white-space:normal; overflow-wrap:anywhere;
}
.redesign .contact-section { flex-wrap:wrap; }
.redesign .contact-copy { flex:1 1 260px; min-width:0; overflow-wrap:anywhere; }
.redesign .contact-copy h2 em { max-width:100%; overflow-wrap:anywhere; }
.redesign .contact-art { flex:0 1 auto; max-width:100%; }
.redesign .contact-art strong { max-width:100%; overflow-wrap:anywhere; }
.redesign :is(.customer-dialog,.checkout-dialog,.cart-dialog,.legal-info-dialog) > .dialog-heading {
  position:sticky; top:0; z-index:10; flex-shrink:0; background:var(--white);
}
@media (max-width:800px),(max-width:1024px) and (pointer:coarse) {
  .redesign .header-actions .cart-button { flex:0 1 auto; min-width:44px; }
  .redesign #cart-total { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .redesign .cart-count { flex:none; }
}
.redesign .product-card.product-card-compact .product-body,
.redesign .product-card.product-card-compact.product-card-drink .product-body,
.redesign .product-card.product-card-compact.product-card-no-options .product-body {
  grid-template-rows:minmax(0,1fr) minmax(44px,auto);
}
.redesign #product-grid .product-card-compact .product-price,
.redesign #product-grid.is-popular .product-card-compact .product-price,
.redesign #popular-grid .product-card-compact .product-price {
  height:auto; min-height:0; max-width:100%; white-space:normal; overflow-wrap:anywhere;
}

/* Older embedded browsers can still size dialogs using the visual viewport. */
.redesign .site-header { height:auto; min-height:calc(var(--header) + env(safe-area-inset-top)); }
.redesign .header-inner { height:auto; min-height:var(--header); }
.redesign .header-inner .brand { flex:0 1 auto; min-width:0; }
.redesign .wordmark { min-width:0; overflow-wrap:anywhere; }
.redesign .wordmark small { white-space:normal; overflow-wrap:anywhere; }
.redesign .header-nav { min-width:0; flex-shrink:1; }
.redesign .header-nav a { min-width:0; white-space:normal; overflow-wrap:anywhere; }
.redesign .categories { top:var(--measured-header,var(--header)); }
html { scroll-padding-top:calc(var(--measured-header,86px) + 12px); }
.redesign .hero-description { overflow-wrap:anywhere; }
.redesign .hero .eyebrow { white-space:normal; overflow-wrap:anywhere; }
.redesign .combo-copy > * { min-width:0; max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.redesign .combo-copy .combo-add { height:auto; flex-wrap:wrap; row-gap:0; white-space:normal; }
.redesign .community-qr > small { white-space:normal; overflow-wrap:anywhere; }
.redesign .footer-company > strong { min-width:0; overflow-wrap:anywhere; }
@media(max-width:800px),(max-width:1024px) and (pointer:coarse) {
  .redesign .header-actions .cart-button { height:auto; }
  .redesign .cart-count { height:auto; min-height:23px; padding:2px; line-height:1.2; }
  .redesign .mobile-cart { height:auto; }
  .redesign #mobile-cart-label { min-width:0; white-space:normal; overflow-wrap:anywhere; line-height:1.25; }
  .redesign #mobile-cart-total { min-width:0; max-width:42%; white-space:normal; overflow-wrap:anywhere; }
  .redesign #mobile-cart-count { flex:none; width:auto; min-width:24px; height:auto; min-height:24px; line-height:1.2; padding:2px 5px; }
}

@supports not (height:1dvh) {
  .redesign dialog { max-height:calc(var(--mobile-viewport-height,100vh) - 24px); }
  .redesign .cart-dialog { max-height:var(--mobile-viewport-height,100vh); }
}
/* Decorative headings may receive programmatic focus; controls retain their ring. */
.redesign :is(#cart-title,#customer-title,#checkout-title,#info-title):focus { outline:none; box-shadow:none; }
.redesign #hero-carousel-toggle { display:none!important; }
.redesign dialog[open] { animation-name:dialog-fade-in; }
@keyframes dialog-fade-in { from { opacity:0; } to { opacity:1; } }
.redesign .cart-line-cost { min-width:0; }
.redesign .cart-line-cost > strong { min-width:0; max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.redesign .brand-spark { width:1em; height:1em; display:inline-block; vertical-align:-.1em; fill:currentColor; }
.redesign .cart-comment > label { display:flex; align-items:baseline; flex-wrap:wrap; gap:4px 8px; margin-bottom:7px; font-weight:700; font-size:12px; color:var(--ink); }
.redesign .cart-comment > label > span { font-size:10px; font-weight:400; color:#947b70; }
.redesign .cart-comment textarea { display:block; min-height:70px; }

@media(max-width:800px),(max-width:1024px) and (pointer:coarse) {
  .redesign .cart-dialog { padding:0 16px 16px; }
  .redesign .cart-dialog > .dialog-heading { padding:12px 0; margin:0 0 4px; }
  .redesign #cart-title { font-size:24px; line-height:1.15; }
  .redesign .cart-title-group .dialog-kicker { margin-bottom:5px; font-size:8px; }
  .redesign .checkout-progress { margin:10px 0 12px; gap:7px; }
  .redesign .checkout-progress li { padding-bottom:7px; font-size:10px; }
  .redesign .cart-notice { margin:8px 0; padding:10px 12px; font-size:12px; line-height:1.4; }
  .redesign .cart-actions { margin:0 0 3px; }
  .redesign .cart-clear-button { min-height:44px; padding:7px 12px; font-size:11px; }
  .redesign .cart-line { display:grid; grid-template-columns:52px minmax(0,1fr) 44px; grid-template-areas:none; gap:4px 10px; padding:12px 0; align-items:start; }
  .redesign .cart-line > img { grid-area:auto; grid-column:1; grid-row:1/4; width:52px; height:56px; border-radius:10px; }
  .redesign .cart-line-details,.redesign .cart-line-cost { display:contents; }
  .redesign .cart-line-details > h3 { grid-column:2; grid-row:1; margin:0; min-width:0; font-size:14px; line-height:1.25; overflow-wrap:anywhere; }
  .redesign .cart-line-details > p { grid-column:2/4; grid-row:2; margin:0; font-size:11px; line-height:1.35; overflow-wrap:anywhere; }
  .redesign .cart-line-details > .line-payment-timing { grid-column:2/4; grid-row:3; margin:0; font-size:10px; line-height:1.35; font-weight:500; }
  .redesign .cart-line-details > .quantity { grid-column:1/-1; grid-row:4; justify-self:start; align-self:center; margin:3px 0 0; width:116px; height:44px; }
  .redesign .cart-line .quantity button { width:44px; min-width:44px; height:44px; min-height:44px; }
  .redesign .cart-line-cost > strong { grid-column:1/-1; grid-row:4; justify-self:end; align-self:center; min-width:0; max-width:calc(100% - 128px); margin:3px 0 0; font-size:20px; line-height:1.25; overflow-wrap:anywhere; white-space:normal; text-align:right; }
  .redesign .cart-line-cost > .cart-remove-button { grid-column:3; grid-row:1; justify-self:end; align-self:start; width:44px; min-width:44px; height:44px; min-height:44px; margin:-7px -7px 0 0; padding:0; display:grid; place-items:center; border:0; border-radius:50%; background:transparent; color:#9c8175; font-size:0; }
  .redesign .cart-line-cost > .cart-remove-button::after { content:'×'; font:400 24px/1 Arial,sans-serif; }
  .redesign .cart-summary { margin:0; padding-top:14px; font-size:22px; line-height:1.25; }
  .redesign .cart-payment-split { margin:10px 0; font-size:12px; line-height:1.4; }
  .redesign .cart-payment-split > div { margin:0; padding:2px 0; gap:12px; }
  .redesign .cart-pickup { margin:10px 0 12px; font-size:11px; line-height:1.45; }
  .redesign .cart-comment { margin:8px 0 12px; padding:0; }
  .redesign .cart-comment-hint { gap:8px; margin-top:5px; font-size:10px; line-height:1.35; }
  .redesign .payment-panel { margin:12px 0; padding:14px; }
  .redesign .payment-heading strong { font-size:15px; }
  .redesign .payment-note,.redesign .payment-help { font-size:11px; line-height:1.45; }
  .redesign .payment-button { margin-top:10px; min-height:46px; font-size:12px; }
  .redesign .cart-continue { margin-top:4px; min-height:44px; font-size:12px; }
  .redesign :is(.customer-dialog,.checkout-dialog) > .dialog-heading { padding:16px 18px; }
  .redesign :is(.customer-dialog,.checkout-dialog) .dialog-heading h2 { font-size:24px; line-height:1.15; }
  .redesign :is(#customer-content,#checkout-content) { padding:16px 18px 18px; }
  .redesign .customer-form-intro { margin:0 0 14px; font-size:12px; line-height:1.45; }
  .redesign .customer-field { margin-bottom:12px; }
  .redesign .customer-entry-form .checkout-wide { min-height:46px; margin-top:12px; font-size:13px; }
  .redesign .customer-auth-links,.redesign .customer-signin-link { margin-top:14px; font-size:12px; }
  .redesign .contact-section { padding:15px 16px; margin-top:18px; border-radius:18px; }
  .redesign .contact-section .eyebrow { margin:0 0 8px; font-size:7px; line-height:1.4; }
  .redesign .contact-section h2 { font-size:24px; line-height:1.1; letter-spacing:-.8px; }
  .redesign .contact-section h2 br { display:none; }
  .redesign .contact-section h2 em { display:inline; margin-left:.2em; }
  .redesign .contact-section p:not(.eyebrow) { margin:8px 0 0; font-size:11px; line-height:1.4; }
  .redesign .contact-section p span { font-size:10px; }
  .redesign .contact-actions { margin-top:8px; gap:8px; }
  .redesign .contact-actions :is(a,button) { min-height:44px; padding:5px 0; font-size:10px; line-height:1.3; }
  .redesign .community-section { padding:12px 0; }
  .redesign .community-copy .eyebrow { margin-bottom:6px; font-size:7px; }
  .redesign .community-copy h3 { margin:6px 0; font-size:20px; line-height:1.2; }
  .redesign .community-copy > p:not(.eyebrow) { margin:6px 0; font-size:11px; line-height:1.4; }
  .redesign .community-links { margin-top:8px; gap:8px 18px; flex-wrap:wrap; }
  .redesign .community-links a { min-height:44px; padding:8px 0; font-size:11px; line-height:1.4; }
  .redesign .image-note { margin:8px 0 14px; font-size:9px; line-height:1.45; }
}
/* Respect the notch, home indicator and changing visual viewport on every
   touch layout. These are feature/geometry rules, never user-agent branches. */
@media(max-width:800px),(max-width:1024px) and (pointer:coarse) {
  .redesign .cart-dialog:not(.is-account-view) {
    width:calc(100% - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px));
    max-width:100%; left:env(safe-area-inset-left,0px); right:env(safe-area-inset-right,0px);
    top:calc(var(--mobile-viewport-top,0px) + env(safe-area-inset-top,0px)); bottom:auto;
    height:calc(var(--mobile-viewport-height,100vh) - env(safe-area-inset-top,0px));
    max-height:calc(var(--mobile-viewport-height,100vh) - env(safe-area-inset-top,0px));
    margin:0; padding-bottom:max(16px,env(safe-area-inset-bottom,0px));
  }
  .redesign :is(.customer-dialog,.checkout-dialog) {
    left:env(safe-area-inset-left,0px); right:env(safe-area-inset-right,0px); bottom:auto;
    top:calc(var(--mobile-viewport-top,0px) + 12px + env(safe-area-inset-top,0px));
    max-width:calc(100% - 24px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px));
    max-height:calc(var(--mobile-viewport-height,100vh) - 24px - env(safe-area-inset-top,0px));
    margin:0 auto;
  }
  .redesign .cart-dialog.is-account-view {
    top:calc(var(--mobile-viewport-top,0px) + 10px + env(safe-area-inset-top,0px)); bottom:auto;
    left:env(safe-area-inset-left,0px); right:env(safe-area-inset-right,0px);
    max-width:calc(100% - 20px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px));
    max-height:calc(var(--mobile-viewport-height,100vh) - 20px - env(safe-area-inset-top,0px));
    margin:0 auto;
  }
  .redesign.has-mobile-basket .site-footer .container.footer-inner { padding-bottom:max(90px,var(--mobile-cart-clearance,90px)); }
}

/* Keep the photo well dark during a cold category load. Cached nodes retain
   decoded photos when the user returns to a section. */
.redesign #product-grid .product-photo { background:#2b2324; }
.redesign .startup-notice { margin:16px 0; padding:20px; border:1px solid #f05b72; border-radius:18px; background:#2b2023; color:#f7f3ec; }
.redesign .startup-notice[hidden] { display:none; }
.redesign .startup-notice h2 { margin:0 0 8px; font-size:20px; line-height:1.2; }
.redesign .startup-notice p { margin:0 0 12px; line-height:1.45; }
.redesign .startup-notice > div { display:flex; align-items:center; flex-wrap:wrap; gap:12px 20px; }
.redesign .startup-notice a { color:inherit; min-height:44px; display:inline-flex; align-items:center; overflow-wrap:anywhere; }
.redesign .startup-notice .primary-button { min-height:44px; max-width:100%; padding:12px 18px; white-space:normal; }
/* Compact cart rows. Keep this after mobile-refinement.css in the bundle. */
.redesign .cart-line {
  display:grid;
  grid-template-columns:64px minmax(0,1fr) max-content;
  grid-template-areas:"photo details cost";
  align-items:start;
  gap:10px 12px;
  padding:14px 0;
}

.redesign .cart-line > img {
  grid-area:photo;
  width:64px;
  height:68px;
  border-radius:10px;
  object-fit:cover;
}

/* Older mobile rules use display:contents and position individual children.
   Restore two real columns so quantity and price stay beside the product. */
.redesign .cart-line-details {
  grid-area:details;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-width:0;
  gap:4px;
}

.redesign .cart-line-details > h3,
.redesign .cart-line-details > p,
.redesign .cart-line-details > .line-payment-timing,
.redesign .cart-line-details > .quantity {
  grid-area:auto;
  min-width:0;
  margin:0;
  align-self:auto;
  justify-self:auto;
}

.redesign .cart-line-details > h3 {
  font-size:15px;
  line-height:1.3;
  overflow-wrap:anywhere;
}

.redesign .cart-line-details > p {
  font-size:11px;
  line-height:1.35;
  overflow-wrap:anywhere;
}

.redesign .cart-line-details > .line-payment-timing {
  font-size:10px;
  line-height:1.35;
  font-weight:500;
}

.redesign .cart-line-details > .quantity {
  display:inline-flex;
  flex:none;
  width:auto;
  min-width:112px;
  max-width:none;
  height:44px;
  margin-top:2px;
}

.redesign .cart-line .quantity button {
  flex:0 0 44px;
  width:44px;
  min-width:44px;
  height:44px;
  min-height:44px;
  padding:0;
}

.redesign .cart-line .quantity span {
  flex:0 0 auto;
  min-width:24px;
  padding:0 2px;
  font-size:13px;
  text-align:center;
  font-variant-numeric:tabular-nums;
}

.redesign .cart-line-cost {
  grid-area:cost;
  display:flex;
  flex-direction:column;
  flex-wrap:nowrap;
  align-items:flex-end;
  justify-content:flex-start;
  min-width:0;
  gap:0;
  text-align:right;
}

.redesign .cart-line-cost > strong {
  grid-area:auto;
  align-self:auto;
  justify-self:auto;
  width:auto;
  min-width:0;
  max-width:none;
  margin:0;
  font-size:18px;
  line-height:1.3;
  white-space:nowrap;
  overflow-wrap:normal;
  word-break:normal;
  font-variant-numeric:tabular-nums;
}

.redesign .cart-line-cost > .cart-remove-button {
  grid-area:auto;
  align-self:auto;
  justify-self:auto;
  display:inline-flex;
  align-items:center;
  justify-content:flex-end;
  width:auto;
  min-width:44px;
  height:44px;
  min-height:44px;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#9c8175;
  font-size:11px;
  line-height:1.2;
  white-space:nowrap;
}

.redesign .cart-line-cost > .cart-remove-button::after {
  content:none;
}

/* The image and title describe a product; only its + button opens options. */
.redesign span.product-photo-trigger,
.redesign span.product-name-trigger {
  cursor:default;
  -webkit-tap-highlight-color:transparent;
}

.redesign span.product-name-trigger {
  display:inline;
  font:inherit;
  color:inherit;
}

/* A plain, nonmodal confirmation; no animation or moving picture assets. */
.redesign #toast {
  position:fixed;
  z-index:1000;
  left:50%;
  right:auto;
  bottom:calc(82px + env(safe-area-inset-bottom,0px));
  width:max-content;
  max-width:calc(100% - 24px);
  padding:12px 18px;
  border:1px solid #221d1e1c;
  border-radius:14px;
  background:#fff9ee;
  color:var(--ink,#221d1e);
  box-shadow:0 4px 16px #0002;
  font-size:14px;
  line-height:1.35;
  font-weight:600;
  text-align:center;
  white-space:normal;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateX(-50%);
  transition:none;
  animation:none;
}

.redesign #toast.visible {
  opacity:1;
  visibility:visible;
  transform:translateX(-50%);
}

@media (min-width:769px) {
  .redesign #toast { bottom:24px; }
}

@media (max-width:600px) {
  .redesign .cart-line {
    grid-template-columns:52px minmax(112px,1fr) fit-content(84px);
    grid-template-areas:"photo details cost";
    gap:8px;
    padding:12px 0;
  }

  .redesign .cart-line > img {
    grid-area:photo;
    width:52px;
    height:56px;
  }

  .redesign .cart-line-details { grid-area:details; display:flex; }
  .redesign .cart-line-cost { grid-area:cost; display:flex; }
  .redesign .cart-line-details > h3 { font-size:14px; }
  /* Reserve room for both 44px quantity controls even with long totals. */
  .redesign .cart-line-cost { max-width:84px; }
  .redesign .cart-line-cost > strong {
    max-width:100%;
    font-size:16px;
    white-space:normal;
    overflow-wrap:anywhere;
  }

  /* An icon beneath the price preserves a 44px tap target on narrow screens. */
  .redesign .cart-line-cost > .cart-remove-button {
    width:44px;
    min-width:44px;
    font-size:0;
    justify-content:flex-end;
  }

  .redesign .cart-line-cost > .cart-remove-button::after {
    content:"×";
    font:400 23px/1 Arial,sans-serif;
  }
}

@media (max-width:360px) {
  .redesign .cart-line { column-gap:6px; }
  .redesign .cart-line-cost > strong { font-size:14px; }
}

/* Keep focus inside the control: legacy ID-based rules otherwise restore rings. */
.redesign :focus {
  outline:none!important;
  outline-offset:0;
  box-shadow:none!important;
}

/* A quiet keyboard cue without adding an outer frame or changing selected states. */
.redesign :is(a,button,summary,[role="button"]):focus-visible {
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}

.redesign :is(button,summary):focus-visible {
  background-image:linear-gradient(#8b7c761f,#8b7c761f);
}

/* Verified customers go straight from basket to payment. */
.redesign .checkout-progress.is-authorized { grid-template-columns:repeat(2,minmax(0,1fr)); }

/* The drawer scrolls as one surface; its opaque header must cover every edge. */
.redesign .cart-dialog:not(.is-account-view) {
  padding-top:0;
}

.redesign .cart-dialog:not(.is-account-view) > .dialog-heading {
  position:sticky;
  top:0;
  z-index:10;
  align-self:stretch;
  margin-top:0;
  margin-inline:-24px;
  padding:16px 24px;
  background:var(--white);
}

@media (max-width:800px),(max-width:1024px) and (pointer:coarse) {
  .redesign .cart-dialog:not(.is-account-view) > .dialog-heading {
    margin-inline:-16px;
    padding:12px 16px;
  }
}

/* The photo and product name open the same choices as the + control. */
.redesign button.product-details-trigger,
.redesign button.combo-details-trigger,
.redesign button.combo-name-trigger {
  appearance:none;
  border:0;
  padding:0;
  margin:0;
  background:transparent;
  color:inherit;
  font:inherit;
  text-align:inherit;
  cursor:pointer;
  border-radius:inherit;
  min-width:0;
}
.redesign button.product-name-trigger,
.redesign button.combo-name-trigger {
  display:inline;
  max-width:100%;
  line-height:inherit;
  overflow-wrap:anywhere;
}
.redesign button.product-photo-trigger img { display:block; }
.redesign button.product-details-trigger:focus-visible,
.redesign button.combo-details-trigger:focus-visible,
.redesign button.combo-name-trigger:focus-visible,
.redesign .cart-edit-button:focus-visible,
.redesign .cart-edit-cancel:focus-visible {
  outline:3px solid #ec1538!important;
  outline-offset:-3px;
  text-decoration:none;
}
.redesign button.product-name-trigger:focus-visible,
.redesign button.combo-name-trigger:focus-visible { outline-offset:3px; border-radius:3px; }
.redesign .cart-edit-button {
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  min-height:44px;
  margin:0;
  padding:5px 0;
  border:0;
  background:transparent;
  color:#bd1230;
  font-size:12px;
  line-height:1.3;
  font-weight:700;
  text-align:left;
  text-decoration:underline;
  text-underline-offset:3px;
}
.redesign .cart-edit-button:disabled { opacity:.45; cursor:default; }
.redesign .cart-edit-cancel {
  display:block;
  width:100%;
  min-height:44px;
  margin-top:8px;
  padding:10px 18px;
  border:1px solid #d8c7bd;
  border-radius:100px;
  background:transparent;
  color:#5b413a;
  font-size:14px;
  font-weight:700;
}
.redesign .combo-copy>.combo-payment-note[data-payment-summary] {
  display:flex;
  flex-wrap:wrap;
  gap:7px 16px;
  padding:10px 12px;
  border-radius:10px;
  background:#fff8ed;
  color:#5d443a;
  font-size:13px;
  line-height:1.45;
  min-height:0;
}
.redesign .combo-copy>.combo-payment-note[data-payment-summary]>span { display:block; }
.redesign .combo-copy>.combo-payment-note[data-payment-summary] strong { color:#b40c2c; white-space:nowrap; }
.redesign .cart-payment-split .cart-pickup-due {
  padding:10px 12px;
  border-radius:10px;
  background:#fce8e5;
  color:#a9122a;
  font-size:14px;
  font-weight:700;
}
@media(max-width:800px){
  .redesign .combo-copy>.combo-payment-note[data-payment-summary] { grid-column:1/-1; font-size:13px; margin-top:5px; }
}

/* A single aligned action row avoids stacking two 44px controls in a narrow column. */
.redesign .cart-line { grid-template-areas:"photo details cost" "controls controls controls"; row-gap:4px; }
.redesign .cart-line-controls {
  grid-area:controls;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:6px 12px;
  min-width:0;
}
.redesign .cart-line-controls>.quantity {
  display:inline-flex;
  flex:none;
  width:auto;
  min-width:112px;
  max-width:none;
  height:44px;
  margin:0;
}
.redesign .cart-line-controls>.cart-edit-button { justify-content:flex-end; text-align:right; }

@media(max-width:800px){
  /* An odd final product fills the last row instead of leaving half a row blank. */
  .redesign #product-grid,
  .redesign #product-grid.is-popular,
  .redesign #product-grid[data-category] { grid-auto-rows:auto; }
  .redesign #product-grid>.product-card:last-child:nth-child(odd) {
    grid-column:1/-1;
    display:grid;
    grid-template-columns:clamp(104px,32vw,164px) minmax(0,1fr);
    align-items:stretch;
    min-height:0;
    height:auto;
  }
  .redesign #product-grid>.product-card:last-child:nth-child(odd)>.product-photo {
    width:100%;
    height:100%;
    min-height:132px;
    aspect-ratio:auto;
    align-self:stretch;
    border-radius:0;
  }
  .redesign #product-grid>.product-card:last-child:nth-child(odd)>.product-photo img {
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
  }
  .redesign #product-grid>.product-card:last-child:nth-child(odd)>.product-body {
    min-height:0;
    padding:12px;
    gap:6px;
    grid-template-rows:auto minmax(44px,auto);
  }
  .redesign #product-grid>.product-card:last-child:nth-child(odd) h3 {
    min-height:0;
    margin:0;
  }
  .redesign #product-grid>.product-card:last-child:nth-child(odd) .product-description {
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
    overflow:hidden;
    min-height:0;
    height:auto;
    margin-top:5px;
  }
}
