/* styles.css */
:root{--forest:#19241e;--forest-deep:#101a15;--ink:#19221b;--paper:#f7f7f0;--white:#fffefb;--muted:#777c73;--line:#e6e7df;--lime:#d6f47c;--orange:#f78f54;--ease:cubic-bezier(.22,.68,0,1.05)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:102px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased}body.locked{overflow:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #7c9836;outline-offset:3px}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}svg{width:22px;height:22px}h1,h2,h3,p{margin-top:0}.hidden{display:none!important}.container{width:min(1340px,calc(100% - 104px));margin-inline:auto}
.announcement{height:32px;background:var(--lime);display:flex;gap:12px;align-items:center;justify-content:center;color:#253025;letter-spacing:1.7px;font-weight:850;font-size:10px}.tiny-star{font-size:14px}.announcement-dot{opacity:.4}.header{position:sticky;top:0;z-index:25;background:rgba(247,247,240,.96);backdrop-filter:blur(16px);border-bottom:1px solid rgba(26,36,29,.07)}.header-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:40px}.brand{display:inline-flex;gap:10px;align-items:center;font-size:26px;font-weight:950;letter-spacing:-1.5px;white-space:nowrap}.brand-symbol{font-size:34px;transform:rotate(-17deg);display:inline-block;color:var(--forest)}.brand-period{color:#9fc833}.desktop-links{display:flex;align-items:center;gap:42px;margin-left:auto}.desktop-links a{font-size:13px;font-weight:750;transition:opacity .2s}.desktop-links a:hover{opacity:.5}.header-actions{display:flex;gap:26px;align-items:center}.city{font-size:11px;font-weight:850;letter-spacing:1.4px;display:flex;align-items:center;gap:9px}.circle-glow{width:8px;height:8px;border-radius:50%;background:#81bc56;box-shadow:0 0 0 4px #81bc562c}.icon-btn{border:0;background:transparent;padding:10px;position:relative}.icon-btn svg{width:25px;height:25px}.cart-count{position:absolute;top:0;right:0;border-radius:50%;min-width:19px;height:19px;display:grid;place-items:center;background:#d1ed76;font-size:10px;font-weight:900}
.hero{padding-block:26px 42px;display:grid;grid-template-columns: .94fr 1.06fr;min-height:522px;gap:0}.hero-left{position:relative;background:var(--forest);border-radius:19px 0 0 19px;color:var(--white);padding:72px 42px 28px 58px;display:flex;flex-direction:column}.eyebrow{display:flex;align-items:center;gap:11px;font-size:10px;font-weight:900;letter-spacing:2px;color:var(--lime)}.eyebrow .line{width:25px;height:1px;background:currentColor;display:inline-block}.hero h1{font-size:clamp(49px,5.1vw,83px);line-height:.965;letter-spacing:-4.5px;font-weight:1000;margin:26px 0 23px}.hero h1 em,.section-head em,.story em{font-weight:450;font-family:Georgia,"Times New Roman",serif;letter-spacing:-3px}.hero h1 em{color:var(--lime);font-style:italic}.hero-left>p{color:#c2cac0;font-size:15px;line-height:1.8;max-width:390px;margin-bottom:30px}.hero-cta{display:flex;align-items:center;flex-wrap:wrap;gap:18px}.primary-btn{border:0;min-height:53px;background:var(--lime);color:var(--forest);padding:0 24px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;gap:26px;font-size:12px;letter-spacing:.6px;font-weight:950;white-space:nowrap;transition:transform .15s,background .15s}.primary-btn:hover{background:#c2ef51;transform:translateY(-2px)}.primary-btn span{font-size:19px;font-weight:500}.smallnote{font-size:12px;color:#8f9e90}.hero-social{margin-top:auto;padding-top:35px;display:flex;align-items:center;gap:18px;color:#c9d2c6;font-size:11px}.social-markers{display:flex}.social-markers span{width:28px;height:28px;background:#4b584c;border-radius:50%;border:2px solid var(--forest);display:grid;place-items:center;font-size:15px;margin-left:-7px}.social-markers span:first-child{margin-left:0;background:#a5bb88}.social-markers span:nth-child(2){background:#ecc294}.hero-right{border-radius:0 19px 19px 0;overflow:hidden;position:relative;min-height:460px;background:#dfd6c8}.hero-right::after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(14,18,13,.65));pointer-events:none}.hero-right img{height:100%;width:100%;object-fit:cover;object-position:center;position:absolute;inset:0}.hero-photo-caption{position:absolute;bottom:35px;left:40px;z-index:1;display:flex;flex-direction:column;color:#fff}.hero-caption-small{font-size:10px;letter-spacing:2px;font-weight:850;margin-bottom:8px}.hero-photo-caption strong{font-weight:950;font-size:clamp(22px,2.8vw,39px);line-height:1;letter-spacing:-1px}.hero-photo-caption>span{margin-top:8px;font-size:13px}.hero-sticker{position:absolute;z-index:1;right:24px;top:22px;background:var(--lime);border:4px solid var(--forest);border-radius:50%;width:109px;height:109px;transform:rotate(14deg);display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:15px;font-weight:950;text-align:center;line-height:1.04;letter-spacing:-.6px}.hero-sticker>span:nth-child(2){font-size:23px;margin-top:6px}
.marquee{background:var(--lime);height:62px;overflow:hidden;display:flex;align-items:center;white-space:nowrap}.marquee div{font-size:13px;font-weight:1000;letter-spacing:1.6px;word-spacing:16px;min-width:max-content}.marquee span{padding:0 18px;font-size:19px;font-weight:500}
.menu-section{padding-top:88px;padding-bottom:105px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px}.eyebrow-dark{color:#668430}.section-head h2{font-size:clamp(36px,4vw,56px);font-weight:950;letter-spacing:-2.7px;margin:15px 0 8px;line-height:1.09}.section-head h2 em{font-weight:400}.section-head p{color:var(--muted);font-size:14px;margin-bottom:0}.menu-edition{align-self:flex-end;margin-bottom:5px;font-size:10px;letter-spacing:1.4px;font-weight:900;color:#8c9189}.menu-toolbar{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:39px 0 25px;align-items:center}.category-scroll{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;flex:1;padding-block:4px}.category-scroll::-webkit-scrollbar{display:none}.category-btn{border:1px solid #e0e3d9;background:var(--white);padding:11px 16px;border-radius:100px;white-space:nowrap;font-size:12px;font-weight:800;color:#5a6359;transition:.15s}.category-btn:hover{border-color:#94ab55}.category-btn.active{background:var(--forest);color:#fff;border-color:var(--forest)}.category-btn .category-emoji{margin-right:4px;font-size:13px}.search-wrap{display:flex;align-items:center;min-width:235px;gap:10px;border:1px solid #dcded4;border-radius:100px;background:#fff;padding:0 17px;height:43px}.search-wrap svg{width:17px;color:#777}.search-wrap input{border:0;outline:none!important;background:transparent;width:100%;font-size:12px}.result-info{display:flex;align-items:center;justify-content:space-between;margin:33px 0 19px}.result-info h3{font-size:21px;letter-spacing:-.8px;font-weight:930;margin:0}.result-info span{color:var(--muted);font-size:12px;font-weight:650}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.product-card{border:1px solid #e4e5dc;background:var(--white);overflow:hidden;border-radius:12px;transition:transform .22s,box-shadow .22s,border-color .22s;display:flex;flex-direction:column}.product-card:hover{transform:translateY(-4px);border-color:#c8d1b6;box-shadow:0 14px 35px #18231812}.product-image-wrap{background:#d8d4c9;position:relative;overflow:hidden;aspect-ratio:1.48}.product-image-wrap img{height:100%;width:100%;object-fit:cover;transition:transform .45s}.product-card:hover img{transform:scale(1.055)}.product-badge{position:absolute;top:15px;left:15px;background:#d6f47c;color:#1b281e;padding:8px 10px;font-size:10px;letter-spacing:.9px;font-weight:950;border-radius:3px}.product-info{padding:18px 18px 19px;display:flex;flex-direction:column;flex:1}.product-meta{font-size:10px;letter-spacing:1.2px;font-weight:850;color:#84917d;margin-bottom:10px;text-transform:uppercase}.product-name{font-size:20px;line-height:1.16;font-weight:950;letter-spacing:-.65px;margin-bottom:8px}.product-short{font-size:12px;line-height:1.65;color:#72786f;margin-bottom:22px;min-height:19px}.product-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto}.price{font-size:22px;font-weight:950;letter-spacing:-.6px}.price.ask{font-size:13px;font-weight:800;letter-spacing:0;color:#6f836b}.price small{font-size:11px;color:#94988e;font-weight:650;margin-left:3px}.add-btn{display:flex;align-items:center;justify-content:center;width:37px;height:37px;border-radius:50%;border:0;background:var(--forest);color:#fff;font-size:26px;line-height:1;font-weight:300;transition:background .15s,transform .15s}.add-btn:hover{transform:scale(1.08);background:#3d5f43}.image-note{font-size:11px;color:#94988e;margin:23px 0 0;line-height:1.7}.empty-state{text-align:center;padding:80px 10px}.empty-state>span{font-size:50px;color:#a2bc62}.empty-state h3{font-size:30px;margin:10px}.empty-state p{color:var(--muted)}.outline-btn{border:1px solid #cdd0c5;background:transparent;border-radius:5px;padding:14px 20px;font-size:11px;letter-spacing:1.3px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.outline-btn:hover{background:#edf1e4}
.story{background:var(--forest);color:var(--white);padding:62px 0}.story-inner{display:flex;align-items:center;gap:40px}.story-mark{font-size:95px;color:var(--lime);line-height:1}.story h2{font-size:clamp(32px,3.5vw,51px);font-weight:950;letter-spacing:-1.8px;margin:15px 0}.story h2 em{color:var(--lime)}.story p{color:#b3c0af;max-width:580px;font-size:14px;line-height:1.8;margin:0}.story-btn{border-color:#4a594a;color:var(--white);white-space:nowrap;margin-left:auto}.story-btn:hover{background:#2e4031}.footer{padding:40px 0;background:#121c16;color:#f7f6ef}.footer-inner{display:flex;justify-content:space-between;gap:25px}.footer-logo{font-weight:950;font-size:24px;letter-spacing:-.7px}.footer p{font-size:13px;color:#a4afa3;margin-top:9px}.footer-end{text-align:right;display:flex;flex-direction:column;gap:13px;font-size:10px;letter-spacing:1.2px;color:#a4afa3;font-weight:750}
.floating-cart{position:fixed;bottom:22px;right:24px;z-index:23;display:none}.floating-cart>button{border:0;border-radius:50px;background:var(--forest);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:25px;box-shadow:0 10px 28px #101a1544;padding:16px 22px;font-size:11px;font-weight:900;letter-spacing:.8px}.floating-cart>button span:first-child{display:flex;align-items:center;gap:10px}.floating-cart svg{width:18px;height:18px}.floating-count{background:var(--lime);color:var(--forest);font-weight:950;font-size:10px;border-radius:20px;padding:3px 7px}
.overlay{position:fixed;inset:0;background:rgba(8,18,11,.62);backdrop-filter:blur(3px);z-index:50}.product-modal{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(880px,calc(100vw - 30px));max-height:min(91vh,850px);background:var(--white);border-radius:18px;z-index:51;box-shadow:0 20px 80px #12170a55;overflow:hidden}.modal-scroll{overflow:auto;max-height:min(91vh,850px);display:grid;grid-template-columns:.98fr 1.02fr}.modal-image{width:100%;height:100%;min-height:470px;object-fit:cover;background:#e3e1d8}.modal-detail{padding:36px 28px 28px;overflow:auto}.modal-detail .product-meta{color:#749044}.modal-detail h2{font-size:31px;letter-spacing:-1.2px;line-height:1.08;margin:8px 0}.modal-description{font-size:13px;line-height:1.75;color:#777e74;margin:15px 0 21px}.close-btn{border:0;border-radius:50%;height:36px;width:36px;display:grid;place-items:center;background:#f2f3eb;color:var(--ink);font-size:25px;line-height:1}.product-modal>.close-btn{position:absolute;right:15px;top:15px;z-index:1;background:#fff;box-shadow:0 2px 9px #0002}.field-label{font-size:11px;letter-spacing:1px;font-weight:950;display:block;margin:20px 0 9px;text-transform:uppercase}.size-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.choice{border:1px solid #e0e4d9;background:#fff;padding:12px 8px;font-size:12px;border-radius:7px;display:flex;justify-content:space-between;gap:6px;text-align:left;font-weight:800}.choice small{font-size:11px;color:#839079;font-weight:650}.choice.selected{border:2px solid #425a2e;background:#f2f7e8;padding:11px 7px}.option-select{width:100%;height:45px;padding:0 12px;border:1px solid #e0e4d9;background:#fff;border-radius:7px;color:var(--ink);font-size:13px}.extras-list{display:grid;gap:7px}.extra-checkbox{font-size:12px;padding:10px 11px;border:1px solid #e7e9e0;border-radius:7px;display:flex;justify-content:space-between;gap:10px;align-items:center}.extra-checkbox input{accent-color:#425a2e;transform:scale(1.1)}.extra-checkbox>span{margin-right:auto}.modal-qty{display:flex;align-items:center;gap:13px;border:1px solid #e5e6de;border-radius:100px;padding:5px;width:max-content}.qty-btn{height:28px;width:28px;border:0;background:#edf0e9;border-radius:50%;display:grid;place-items:center;font-size:19px}.qty-value{font-weight:900;font-size:13px;min-width:15px;text-align:center}.modal-bottom{display:flex;gap:13px;align-items:center;margin-top:24px}.modal-submit{flex:1;white-space:nowrap}.modal-price{font-size:13px;color:#63795d;font-weight:800;min-width:88px}.modal-price strong{display:block;font-size:22px;color:var(--ink)}.field-note{font-size:11px;color:#92978e;margin:10px 0 0;line-height:1.5}
.cart-drawer{position:fixed;z-index:51;right:0;top:0;bottom:0;width:min(458px,100vw);background:var(--white);box-shadow:-15px 0 60px #08140833;display:flex;flex-direction:column}.cart-header{display:flex;align-items:start;justify-content:space-between;padding:30px 27px 24px;border-bottom:1px solid var(--line)}.cart-header h2{font-size:32px;letter-spacing:-1.2px;margin:8px 0 0}.cart-content{overflow:auto;padding:23px 27px;flex:1}.cart-empty{text-align:center;margin:50px 0;color:#647060}.cart-empty>span{display:block;font-size:53px;margin-bottom:10px}.cart-empty h3{font-size:23px;letter-spacing:-.7px;color:var(--ink)}.cart-empty p{font-size:13px;line-height:1.6}.cart-item{display:flex;gap:14px;padding:0 0 18px;margin-bottom:18px;border-bottom:1px solid var(--line)}.cart-item img{height:84px;width:94px;object-fit:cover;border-radius:7px}.cart-item-main{min-width:0;flex:1}.cart-item-name{font-size:14px;font-weight:900;margin:3px 0 4px}.cart-item-detail{font-size:11px;color:#858a81;line-height:1.6}.cart-item-price{font-size:13px;font-weight:950;margin:8px 0}.cart-item-actions{display:flex;align-items:center;gap:9px;margin-top:10px}.cart-item-actions .qty-btn{width:25px;height:25px;font-size:16px}.remove-btn{margin-left:auto;background:none;border:0;font-size:11px;color:#a85846;text-decoration:underline}.cart-bottom{border-top:1px solid var(--line);padding:21px 27px max(23px,env(safe-area-inset-bottom));background:#fff}.subtotal-row{display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:850;margin-bottom:7px}.subtotal-row strong{font-size:23px}.subtotal-note{font-size:11px;color:#858980;line-height:1.55;margin-bottom:17px}.checkout-btn{width:100%;display:flex;justify-content:center;gap:12px}.cart-bottom .secondary-actions{display:flex;justify-content:center;gap:13px;margin-top:12px}.text-btn{padding:7px;border:0;background:none;color:#526a4a;text-decoration:underline;font-size:12px;font-weight:700}.delivery-input{display:grid;gap:6px;margin:14px 0}.delivery-input label{font-size:10px;text-transform:uppercase;letter-spacing:.8px;font-weight:900}.delivery-input input,.delivery-input textarea{width:100%;padding:11px 12px;border:1px solid #e0e4d9;border-radius:6px;background:#fff;color:var(--ink);font-size:12px;resize:vertical}.toast{z-index:100;position:fixed;bottom:25px;left:50%;transform:translateX(-50%);color:#fff;background:#1b2c20;box-shadow:0 5px 25px #0003;padding:14px 25px;border-radius:50px;font-weight:850;font-size:12px;text-align:center;max-width:calc(100vw - 25px)}
@media(max-width:1120px){.container{width:min(100% - 50px,1340px)}.hero-left{padding:60px 30px 25px 35px}.hero h1{font-size:clamp(46px,5vw,71px);letter-spacing:-3px}.product-grid{gap:14px}.product-info{padding:15px}.menu-toolbar{flex-direction:column;align-items:stretch}.search-wrap{width:100%}.category-scroll{width:100%}.story-inner{gap:25px}}
@media(max-width:760px){html{scroll-padding-top:80px}.container{width:calc(100% - 32px)}.header-inner{height:66px}.brand{font-size:23px}.brand-symbol{font-size:28px}.desktop-links{display:none}.header-actions{gap:13px}.city{font-size:10px}.hero{grid-template-columns:1fr;padding-top:15px;padding-bottom:26px}.hero-left{border-radius:13px 13px 0 0;padding:39px 26px 31px}.hero h1{font-size:clamp(45px,10.7vw,75px);margin:21px 0 17px;letter-spacing:-2.9px}.hero-left>p{font-size:13px;line-height:1.75;margin-bottom:24px}.hero-social{display:none}.hero-right{min-height:280px;border-radius:0 0 13px 13px}.hero-photo-caption{bottom:25px;left:23px}.hero-photo-caption strong{font-size:29px}.hero-sticker{right:17px;top:15px;width:84px;height:84px;font-size:12px}.hero-sticker>span:nth-child(2){font-size:15px}.marquee{height:51px}.marquee div{font-size:11px}.menu-section{padding-top:55px;padding-bottom:75px}.section-head h2{font-size:42px;line-height:1.03}.section-head p{font-size:13px}.menu-edition{display:none}.menu-toolbar{padding-top:27px;padding-bottom:19px;gap:13px}.category-btn{padding:10px 14px}.result-info{margin:24px 0 16px}.result-info h3{font-size:19px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.product-image-wrap{aspect-ratio:1.12}.product-info{padding:12px 11px 13px}.product-meta{font-size:9px;letter-spacing:.8px;margin-bottom:6px}.product-name{font-size:16px;line-height:1.21;letter-spacing:-.45px;margin-bottom:7px}.product-short{font-size:11px;line-height:1.55;margin-bottom:15px}.product-badge{top:9px;left:9px;font-size:8px;padding:6px 7px}.price{font-size:18px}.price.ask{font-size:11px}.add-btn{height:33px;width:33px;flex:none}.story{padding:45px 0}.story-inner{align-items:flex-start;flex-direction:column;gap:12px}.story-mark{font-size:55px}.story h2{font-size:37px}.story-btn{margin-left:0;margin-top:18px}.footer{padding-bottom:110px}.footer-inner{flex-direction:column;gap:17px}.footer-end{text-align:left}.floating-cart{display:block;bottom:max(15px,env(safe-area-inset-bottom));left:16px;right:16px}.floating-cart>button{width:100%;border-radius:10px;padding:15px 20px}.modal-scroll{display:block;overflow:auto;max-height:91vh}.modal-image{height:260px;min-height:260px}.modal-detail{padding:24px 22px 27px;overflow:visible}.modal-detail h2{font-size:27px}.product-modal>.close-btn{top:10px;right:10px}.product-modal{width:min(480px,100vw);max-height:92vh;top:auto;bottom:0;left:50%;transform:translateX(-50%);border-radius:18px 18px 0 0}.modal-scroll{max-height:92vh}.cart-header{padding:24px 20px 19px}.cart-content{padding:19px 20px}.cart-bottom{padding:19px 20px max(23px,env(safe-area-inset-bottom))}}
@media(max-width:385px){.hero h1{font-size:42px}.hero-cta{gap:9px}.smallnote{display:none}.section-head h2{font-size:37px}.product-name{font-size:15px}.product-info{padding:10px}.product-badge{font-size:7px}.story h2{font-size:33px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}


/* brand-v2.css */
:root{--forest:#9d2227;--forest-deep:#70191f;--ink:#402b2b;--paper:#faf5ed;--white:#fffdfa;--muted:#81726c;--line:#ebded1;--lime:#e7b83d;--orange:#d5a12b}body{background:#faf5ed}.announcement{background:#9d2227;color:#fff8e7}.header{background:rgba(255,250,242,.96)}.brand-logo{width:145px;height:59px;object-fit:contain}.brand{letter-spacing:0}.hero-left{background:linear-gradient(135deg,#7c1b21,#ad2b30)}.hero h1{font-size:clamp(40px,4.5vw,70px);letter-spacing:-2px}.hero h1 em{color:#f5cb61}.hero-left>p{color:#f8e6dc}.hero .eyebrow{color:#f4ca68}.hero-sticker{background:#f3c655;color:#772027}.primary-btn,.floating-cart>button{background:#9d2227;color:#fff}.primary-btn:hover{background:#7c1b21}.category-btn.active,.choice.selected{background:#9d2227;color:#fff;border-color:#9d2227}.choice.selected small{color:#fff}.story{background:#792027}.story h2 em{color:#f5cb61}.story-mark{color:#f5cb61}.footer{background:#54191d}.footer-brand{width:170px;height:100px;object-fit:contain;background:transparent;border-radius:0;padding:0}.brand-period,.modal-detail .product-meta{color:#b58324}.extra-checkbox input{accent-color:#9d2227}.receipt-btn{margin-top:9px;width:100%;border:1px solid #a02a2f;background:#fff8ed;color:#912027;border-radius:8px;padding:13px;font-weight:850}.receipt-panel{position:fixed;inset:0;z-index:120;background:rgba(40,15,16,.76);display:flex;align-items:center;justify-content:center;padding:14px}.receipt-card{width:min(440px,100%);max-height:94vh;overflow:auto;background:#fffdf8;border-radius:15px;padding:22px;box-shadow:0 24px 80px #0005}.receipt-heading{display:flex;justify-content:space-between;align-items:center}.receipt-heading img{width:112px}.receipt-heading button{border:0;background:#f3e8dd;border-radius:50%;width:32px;height:32px;font-size:23px}.receipt-card h3{font-family:Georgia,serif;color:#9d2227;font-size:24px}.receipt-card pre{font:12px/1.65 ui-monospace,Menlo,monospace;white-space:pre-wrap;overflow-wrap:anywhere;border-block:1px dashed #d9c9b8;padding:14px 0}.receipt-actions{display:grid;gap:8px}.receipt-actions button{border:0;border-radius:9px;padding:13px;font-weight:800;background:#9d2227;color:#fff}.receipt-actions button:nth-child(2){background:#f0e3d5;color:#6f2326}.receipt-note{font-size:11px;color:#806f65;line-height:1.5}.receipt-share-help{font-size:12px;color:#8c2028;margin:8px 0}.brand-symbol,.story-mark{color:#e6bb50}@media(max-width:760px){.brand-logo{width:122px;height:54px}.hero h1{font-size:clamp(36px,9vw,55px);letter-spacing:-1.6px}.hero-left{padding:34px 23px}.footer-brand{width:125px;height:75px}}

/* refinements.css */
:root{--gold:#b68b46;--paper:#faf6ef;--ink:#302421;--line:#e7dcd0}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Arial,sans-serif;color:var(--ink)}button,input,select,textarea{font-family:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b58a3f;outline-offset:3px}button:disabled{opacity:.5;cursor:wait}[hidden]{display:none!important}.skip-link{position:fixed;top:-100px;z-index:999;background:#fff;padding:15px}.skip-link:focus{top:0}.announcement{font-size:9px;letter-spacing:1.1px}.brand-logo{width:155px;height:65px}.circle-glow{background:#b68b46;box-shadow:none}.hero{padding-top:30px;min-height:560px}.hero-left{background-color:#82232a;background-image:linear-gradient(30deg,#ffffff05 12%,transparent 12.5%,transparent 87%,#ffffff05 87.5%),linear-gradient(150deg,#ffffff05 12%,transparent 12.5%,transparent 87%,#ffffff05 87.5%);background-size:52px 90px;padding:64px 40px 45px}.hero h1{font-family:Georgia,serif;font-weight:400;line-height:1.06;font-size:clamp(35px,3.9vw,61px);letter-spacing:-1.6px}.hero h1 em{letter-spacing:-1.8px;color:#f2d599}.hero .primary-btn{background:#f4dfad;color:#641d25}.hero .smallnote{color:#dfb7ab}.hero-sticker{background:#edd29a;border:1px solid #b78a46;color:#70212a;box-shadow:0 0 0 5px #edd29a80;font-size:13px;width:94px;height:94px}.hero-photo-caption strong{font-family:Georgia,serif;font-weight:400}.hero-social{padding-top:30px}.social-markers{display:none}.marquee{background:#eee2cc;color:#6c4b34;height:45px;border-block:1px solid #dbc7a5}.marquee div{font-size:10px;letter-spacing:2px}.section-head h2,.story h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-1.5px}.eyebrow-dark{color:#936b31}.menu-section{padding-top:64px}.category-btn{color:#614f47;border-color:#ded0bf}.category-btn:hover{border-color:#b58a3f}.menu-toolbar{gap:15px}.category-scroll{min-width:0}.product-card{border-color:#e6dbcc;border-radius:9px;box-shadow:0 3px 15px #44231e04}.product-card:hover{border-color:#c6a76c;box-shadow:0 12px 32px #51271f12}.card-photo-button{padding:0;border:0;text-align:left;background:none;width:100%}.product-name{font-family:Georgia,serif;font-weight:500;line-height:1.25;font-size:23px;letter-spacing:-.6px;margin-top:0}.product-meta{color:#946c3a}.product-short{color:#74645a}.product-badge{background:#f0dfba;color:#6b3929}.price{font-size:21px;color:#8d262c}.price small{color:#857367;font-size:10px}.add-btn{background:#8d262c;width:40px;height:40px}.add-btn:hover{background:#682127}.food-placeholder{height:100%;min-height:150px;background:radial-gradient(circle,#f8efd9,#eadfca);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:#947239}.food-placeholder>span{font-size:55px}.food-placeholder small{letter-spacing:2px;font-size:10px}.modal-visual{background:#f2e9de;align-self:start;position:sticky;top:0}.modal-image{height:auto;min-height:0;aspect-ratio:1.15;object-fit:cover}.photo-caption{padding:12px 18px;font-size:11px;color:#755d4a;line-height:1.6;margin:0}.modal-detail{padding-top:38px}.modal-detail h2{font-family:Georgia,serif;font-weight:400}.modal-submit{padding-inline:12px;letter-spacing:.3px}.modal-price{color:#846a50;min-width:75px}.field-note{color:#77695c}.inclusion{border-left:2px solid #b3914d;background:#f8f1e4;padding:12px;color:#72502b;font-size:12px;line-height:1.8}.label-soft{font-weight:400;text-transform:none;letter-spacing:0;color:#81766b}.preorder-box{background:#fbefdb;border:1px solid #e8c58d;border-radius:8px;padding:13px;margin-block:15px;font-size:12px;line-height:1.5}.preorder-box strong{color:#812830}.preorder-box p{margin:6px 0 10px}.preorder-box small{display:block;color:#765f43;margin-top:10px}.schedule-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.schedule-fields input{display:block;width:100%;min-width:0;margin-top:4px;padding:9px 7px;border:1px solid #d6bc94;border-radius:5px;background:#fff;font-size:16px;color:#382923}.extras-list select{padding:6px;border:1px solid #dfd0bc;background:#fff;border-radius:4px}.extra-checkbox{border-color:#e6dccf}.extra-checkbox strong{color:#9a6c35;white-space:nowrap}.form-error{font-size:12px;line-height:1.6;color:#a02630}.form-error:empty{display:none}.option-select{border-color:#dfd1c2}textarea.option-select{height:70px;padding:10px;resize:vertical}.qty-btn{background:#f1e6d9;width:34px;height:34px}.cart-drawer{width:min(490px,100vw)}.cart-header{padding:21px 24px 18px}.cart-header h2{font-family:Georgia,serif;font-weight:400}.cart-content{min-height:0;overscroll-behavior:contain}.cart-item img{width:80px;height:80px}.cart-item-name{font-weight:650}.cart-item-detail{overflow-wrap:anywhere;color:#77685f}.included-line{font-size:11px;color:#6c724b;line-height:1.6}.extra-line{font-size:11px;color:#8a5932;line-height:1.6}.cart-schedule{font-size:11px;background:#f7edda;padding:8px;margin-top:8px;line-height:1.6}.cart-item-actions .qty-btn{width:32px;height:32px}.text-btn{color:#8d262c}.cart-bottom{flex-shrink:0;padding:15px 24px max(16px,env(safe-area-inset-bottom))}.summary-row{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:12px;line-height:1.65;margin-bottom:4px}.grand{border-top:1px solid #eadccb;margin:10px 0 12px;padding-top:10px;font-size:17px}.grand strong{font-size:25px;color:#8d262c}.delivery-input{margin-top:25px}.delivery-input h3{font-family:Georgia,serif;font-size:23px;margin-bottom:0}.delivery-input input,.delivery-input textarea,.delivery-input select{font-size:16px}.delivery-input label{margin-top:8px}.delivery-input textarea{min-height:85px}.floating-cart{display:block}.floating-cart>button{border:1px solid #b88757;border-radius:10px}.floating-count,.cart-count{background:#e9cd94;color:#61232b}.receipt-card{width:min(590px,100%);padding:24px}.receipt-card pre{font:13px/1.7 -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",Arial,sans-serif}.receipt-heading img{width:145px;height:70px;object-fit:contain}.receipt-actions{grid-template-columns:1fr 1fr}.receipt-actions button{font-size:12px;min-height:45px}.receipt-actions button:nth-child(n+2){background:#f0e4d4;color:#71252d}.sample-pill{font-size:10px;letter-spacing:2px;color:#a37230;font-weight:700;margin-top:15px}.receipt-note{font-size:12px;line-height:1.65}.receipt-card figure{margin:20px 0}.receipt-card figure img{width:100%;border:1px solid #dcc6a7}.receipt-card figcaption{font-size:12px;padding:7px}.receipt-card textarea{width:100%;min-height:150px}.receipt-share-help{line-height:1.7}.story{background:#75232a}.story p{color:#e0c4b9}.story .eyebrow{color:#edce8c}.story-btn{border-color:#bc9773}.footer{padding-bottom:100px}.footer-brand{background:#faf6ef}.footer-end{color:#dbbfb1}.image-note{color:#78695d}.toast{background:#70232b;border-radius:8px;bottom:85px;line-height:1.6}.product-modal{max-height:92dvh}.modal-scroll{max-height:92dvh}.receipt-card{max-height:94dvh}
@media(max-width:760px){.announcement{font-size:8px;gap:6px;letter-spacing:.7px}.announcement-dot{display:none}.announcement .tiny-star{font-size:11px}.header-inner{height:70px}.brand-logo{width:130px;height:60px}.hero{padding-top:14px;min-height:0}.hero-left{padding:33px 24px 29px}.hero h1{font-size:clamp(31px,8.7vw,50px);line-height:1.06;margin:18px 0}.hero h1 em{letter-spacing:-1.2px}.hero-left>p{font-size:13px;line-height:1.75;margin-bottom:20px}.hero-right{min-height:240px}.hero-right img{object-position:center}.hero-photo-caption{bottom:20px}.hero-photo-caption strong{font-size:25px}.hero-sticker{width:75px;height:75px;font-size:10px}.hero-cta .primary-btn{min-height:46px;font-size:10px;padding:0 18px}.hero-cta .smallnote{display:none}.menu-section{padding-top:40px}.section-head h2{font-size:38px}.menu-toolbar{padding-top:20px}.product-image-wrap{aspect-ratio:1.3}.product-grid{gap:12px}.product-info{padding:12px}.product-name{font-size:18px;letter-spacing:-.3px}.product-short{font-size:11px;line-height:1.65}.product-badge{font-size:7px}.product-meta{font-size:8px}.price{font-size:19px}.add-btn{width:36px;height:36px}.modal-visual{position:static}.modal-image{height:220px;aspect-ratio:auto;min-height:0;object-fit:cover}.modal-detail{padding:24px 20px 30px}.option-select,.extras-list select{font-size:16px}.product-modal{width:100%;max-height:94dvh}.modal-scroll{max-height:94dvh}.modal-bottom{position:sticky;bottom:-1px;background:#fffdfa;padding:12px 0;margin-bottom:0;z-index:1}.cart-header{padding:18px 20px 15px}.cart-content{padding:18px 20px}.cart-bottom{padding-inline:20px}.cart-header h2{font-size:29px}.receipt-actions{grid-template-columns:1fr}.receipt-card{padding:20px}.receipt-panel{padding:8px}.receipt-card pre{font-size:12px}.story h2{font-size:32px}.floating-cart>button{font-size:10px;padding:14px 16px}.footer-brand{width:140px;height:80px}}
@media(max-width:360px){.container{width:calc(100% - 24px)}.product-grid{gap:8px}.product-info{padding:10px}.product-name{font-size:16px}.product-meta{letter-spacing:.5px}.hero h1{font-size:30px}.modal-submit{font-size:10px}.announcement{font-size:7px}}
@media print{body>*{display:none!important}body>#andalus-receipt-panel{display:block!important;position:static;padding:0;background:#fff}.receipt-card{width:100%;max-height:none;overflow:visible;box-shadow:none;padding:0}.receipt-actions,.receipt-heading button,.receipt-share-help,#receipt-images,#manual-copy,.receipt-note{display:none!important}.receipt-card pre{font-size:12pt;white-space:pre-wrap;overflow:visible}.receipt-panel{position:static}body.locked{overflow:visible}}
.brand-logo{object-fit:cover;width:112px;height:74px}.receipt-heading img{object-fit:cover;width:112px;height:74px}.footer-brand{object-fit:cover;width:140px;height:94px;padding:0;background:transparent}
@media(max-width:760px){.brand-logo{width:105px;height:70px}}


/* atelier.css */
/* ANDALUS ATELIER · mobile-first editorial skin
   All motion works with a local, dependency-free animation layer. */
:root{
  --paper:#f7f2e9;--white:#fffdf8;--ink:#2b1b1d;--muted:#8c7971;
  --line:#e9ded0;--wine:#741e2a;--wine-dark:#4b1420;
  --gold:#c7a160;--gold-pale:#edd7aa;
  --serif:"Bodoni 72","Didot","Iowan Old Style","Baskerville",Georgia,serif;
  --sans:"Avenir Next","Inter", "Lato",Arial,sans-serif;
  --ease:cubic-bezier(.19,1,.22,1);
}
html{scroll-padding-top:116px}body{background:var(--paper);color:var(--ink);font-family:var(--sans)}
button,input,select,textarea{font-family:var(--sans)}.container{width:min(1340px,calc(100% - 88px))}
::selection{background:#d5b878;color:#471620}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.announcement{height:32px;background:var(--wine-dark);color:#f4e4cc;font-weight:600;font-size:9px;letter-spacing:2px;gap:18px}
.announcement-line{height:1px;width:20px;background:#bd9261;opacity:.7}.announcement-dot{opacity:.8}
.header{background:rgba(247,242,233,.96);border-bottom:1px solid #ddcdbb;box-shadow:0 4px 24px #210d0d08;backdrop-filter:blur(22px)}
.header-inner{height:89px}.brand{gap:2px;position:relative;isolation:isolate;min-width:228px;height:78px;align-self:center;overflow:visible}
.brand-crest,.brand-type{display:block;position:absolute;background-image:none;background-repeat:no-repeat;mix-blend-mode:multiply;pointer-events:none}
.brand-crest{width:55px;height:63px;left:2px;top:5px;background-size:215px 215px;background-position:-81px -34px}
.brand-type{width:175px;height:52px;left:54px;top:14px;background-size:227px 227px;background-position:-22px -111px}
.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}
.desktop-links{gap:35px}.desktop-links a{font-size:11px;letter-spacing:1.6px;text-transform:uppercase;font-weight:700;color:#613c3a;position:relative}
.desktop-links a::after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--wine);transition:right .4s var(--ease)}.desktop-links a:hover::after{right:0}
.city{color:#8e6a52;font-size:10px;letter-spacing:2px;font-weight:800}.circle-glow{width:5px;height:5px;background:var(--gold)}.icon-btn{border:1px solid #e2d4c3;border-radius:50%;height:44px;width:44px;display:grid;place-items:center;transition:background .25s,border-color .25s}.icon-btn:hover{background:#eddfcc;border-color:var(--gold)}.cart-trigger svg{height:19px;width:19px;stroke:var(--wine)}.cart-count{background:var(--wine);color:#fff}
.hero{padding-top:29px;padding-bottom:38px;min-height:620px;grid-template-columns:.93fr 1.07fr}
.hero-left{background:var(--wine);border-radius:2px 0 0 2px;padding:78px 44px 37px 54px;overflow:hidden;isolation:isolate}
.hero-left::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at -10% 110%,#e19e7324 0%,transparent 55%),repeating-linear-gradient(135deg,transparent 0 42px,#e7be9512 43px,transparent 44px);opacity:.7}
.hero-left::after{content:"A";font:normal 420px/1 var(--serif);position:absolute;right:-64px;top:37px;color:#ffffff08;z-index:-1;pointer-events:none}
.hero .eyebrow{color:#efd5a0;font-size:10px;letter-spacing:2.8px;font-weight:650}.eyebrow .line{width:31px}
.hero h1{font:400 clamp(58px,6.0vw,104px)/.94 var(--serif);letter-spacing:-3.5px;text-transform:uppercase;margin:31px 0 30px}
.hero h1 em{font-family:var(--serif);font-weight:400;font-style:italic;letter-spacing:-3px;color:#edcd90;text-transform:none}
.hero-left>p{font-size:14px;line-height:1.85;color:#f0ddca;max-width:420px;margin-bottom:30px;font-weight:400}
.primary-btn{background:#ecd4a4;color:#581925;min-height:55px;padding:0 23px;border-radius:2px;font-size:10px;letter-spacing:2px;font-weight:800;transition:background .3s,transform .3s var(--ease),box-shadow .3s}
.primary-btn:hover{background:#f6e4c2;transform:translateY(-3px);box-shadow:0 10px 30px #2e050b30}.hero .primary-btn{background:#edcf94;color:#48161f}.primary-btn span{font-size:15px}.hero .smallnote{font-size:10px;letter-spacing:.35px;color:#e4bdaf}
.hero-social{color:#e7c9b5;font-size:10px;letter-spacing:1.1px;border-top:1px solid #ffe6c538;margin-top:auto;padding-top:22px}
.hero-right{border-radius:0 2px 2px 0;min-height:575px;overflow:hidden}.hero-right img{transform:scale(1.03);will-change:transform}
.hero-right::after{background:linear-gradient(180deg,transparent 35%,#160a0bbd 100%)}
.hero-photo-caption{left:37px;bottom:37px}.hero-caption-small{color:#ead2a3;letter-spacing:2.6px;font-size:9px;font-weight:750}
.hero-photo-caption strong{font:400 clamp(29px,3.5vw,54px)/.96 var(--serif);letter-spacing:.1px}.hero-photo-caption>span{font-size:11px;letter-spacing:1px;color:#f5e5d7}
.hero-sticker{background:rgba(78,23,31,.84);border:1px solid #efcc91;color:#fff3dd;border-radius:0;width:92px;height:105px;right:25px;top:23px;transform:none;box-shadow:inset 0 0 0 4px #fff4e616;gap:5px;font:500 10px var(--sans);letter-spacing:2px}
.hero-sticker>strong{font:400 35px var(--serif);letter-spacing:-1px;color:#f4d29a}.hero-sticker span:last-child{font-size:8px;letter-spacing:2px}
.marquee{height:49px;background:#e9dcc4;color:#6b332d;border-block:1px solid #dbc8a9}.marquee div{font-size:10px;letter-spacing:2.2px;word-spacing:12px;font-weight:700;animation:marqueeDrift 42s linear infinite}.marquee span{color:#b58745;font-size:11px;padding:0 13px}
@keyframes marqueeDrift{to{transform:translateX(-34%)}}
.menu-section{padding-top:98px;padding-bottom:112px}.eyebrow-dark{color:#ab7e49}.section-head h2{font:400 clamp(48px,5.4vw,80px)/.98 var(--serif);letter-spacing:-1.9px;color:#321e20;margin:20px 0 14px}
.section-head h2 em{font:italic 400 1em var(--serif);letter-spacing:-1.6px;color:var(--wine)}.section-head p{font-size:13px;letter-spacing:.2px;color:#8d7770}
.menu-edition{font-size:9px;letter-spacing:2.3px;color:#957754;font-weight:700}
.menu-toolbar{padding:45px 0 24px;gap:20px;border-color:#ded2c5}
.category-scroll{gap:8px}.category-btn{font-size:10px;letter-spacing:1px;text-transform:uppercase;font-weight:750;border:1px solid #dfd0c2;color:#806a60;background:transparent;border-radius:2px;padding:13px 16px;transition:background .25s,border-color .25s,color .25s}
.category-btn:hover{border-color:#b68c63}.category-btn.active{background:var(--wine);color:#fff3e1;border-color:var(--wine)}
.search-wrap{height:46px;background:#fffcf7;border:1px solid #dfd0c2;border-radius:2px}.search-wrap input{color:var(--ink);font-size:12px}.search-wrap svg{stroke:#a58b74}
.result-info{margin:34px 0 22px}.result-info h3{font:400 29px var(--serif);letter-spacing:0}.result-info span{font-size:10px;letter-spacing:1.3px;text-transform:uppercase;font-weight:600}
.product-grid{gap:21px}.product-card{border-radius:2px;border:1px solid #e7dacc;background:#fffaf3;box-shadow:none;transition:transform .48s var(--ease),box-shadow .4s,border-color .4s;transform:translateZ(0)}
.product-card:hover{transform:translateY(-8px);border-color:#c5a57f;box-shadow:0 24px 50px #522c2818}
.product-image-wrap{aspect-ratio:1.27;background:#e5d8ca}.product-image-wrap::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff16;pointer-events:none}
.product-image-wrap img{transition:transform .8s var(--ease),filter .6s;will-change:transform}.product-card:hover img{transform:scale(1.08)}
.product-info{padding:21px 20px 22px}.product-meta{font-size:9px;letter-spacing:2px;font-weight:700;color:#ad8550}.product-name{font:400 29px/1.1 var(--serif);letter-spacing:-.4px;margin-bottom:8px;color:#311e20}
.product-short{font-size:11px;letter-spacing:.1px;color:#836e63;line-height:1.6;min-height:34px}.product-bottom{align-items:center}
.product-badge{border-radius:0;background:#f3e2bf;color:#6f362c;letter-spacing:2px;font-size:8px;padding:9px 11px;font-weight:800}.product-badge.soldout{background:#78212e;color:#fff}
.is-soldout .product-image-wrap img{filter:saturate(.1);opacity:.55}.is-soldout .add-btn{cursor:not-allowed;opacity:.35}
.price{font:400 24px var(--serif);color:var(--wine)}.price small{font-family:var(--sans);font-size:10px;color:#9a8071;letter-spacing:1px}
.add-btn{height:39px;width:39px;border-radius:50%;background:var(--wine);font-weight:400;font-size:25px;transition:transform .25s,background .25s}.add-btn:hover{transform:rotate(90deg);background:#4c1820}
.food-placeholder{background:linear-gradient(125deg,#e8dccb,#f4ead8);color:#86543a}.food-placeholder>span{font:400 70px var(--serif)}
.story{padding:92px 0;background:#561923;position:relative;overflow:hidden}.story::after{content:"";position:absolute;width:440px;height:440px;border:1px solid #ead0a529;border-radius:50%;right:-220px;bottom:-270px;box-shadow:0 0 0 60px #e6bc7210,0 0 0 120px #e8b97508}
.story-inner{position:relative;z-index:1}.story-mark{width:90px;height:100px;display:flex;align-items:center;justify-content:center;color:#e5c085;border:1px solid #be965c;background:#ffffff08;font:400 65px var(--serif);flex-shrink:0}.story .eyebrow{color:#efc990;font-size:10px;letter-spacing:2px}
.story h2{font:400 clamp(44px,4vw,64px)/1.07 var(--serif);letter-spacing:0;color:#fff4e7}.story h2 em{font:italic 400 1em var(--serif);letter-spacing:0;color:#e9c78f}
.story p{font-size:13px;line-height:1.85;color:#e1bbab}.story-btn{border:1px solid #cd9d68;color:#ffead0;border-radius:0;font-size:10px;letter-spacing:2px;font-weight:800}.story-btn:hover{background:#7c303b}
.footer{background:#35151c;color:#f7e8d0;border-top:1px solid #c29a593d;padding-top:47px;padding-bottom:115px}.footer-wordmark{font:400 39px var(--serif);letter-spacing:9px;color:#efdab9}.footer p{font-size:9px;letter-spacing:2px;color:#bba18e}.footer-end{font-size:9px;letter-spacing:1.5px;color:#d0b19b}
.floating-cart{z-index:23;bottom:23px;right:25px}.floating-cart>button{background:#681d2a;border:1px solid #c59d6b;border-radius:2px;box-shadow:0 15px 38px #31141b42;padding:17px 22px;font-size:10px;letter-spacing:1.7px;transition:transform .25s var(--ease),box-shadow .25s}
.floating-cart>button:hover{transform:translateY(-4px);box-shadow:0 20px 42px #31141b55}.floating-count{background:#edd2a1;color:#5e252c}
.overlay{background:#160d10b8;backdrop-filter:blur(7px)}.product-modal{background:#fffaf3;border-radius:3px;box-shadow:0 40px 110px #16040870}
.modal-visual{background:#eee0d1}.modal-image{aspect-ratio:1.1;object-fit:cover}.photo-caption{font-size:10px;letter-spacing:.5px;color:#a58c75;border-top:1px solid #e3d6c5;text-align:center}
.modal-detail{padding:39px 34px 31px}.modal-detail h2{font:400 44px/1.04 var(--serif);letter-spacing:-.8px}.modal-description{font-size:13px;color:#876f62}.modal-detail .product-meta{color:#a07a49}
.inclusion{border:0;border-left:2px solid #c49b5e;background:#f4e9d7;font-size:11px;line-height:1.6;padding:9px 11px;margin:5px 0;color:#6f503c}
.field-label{font-size:10px;letter-spacing:1.5px;font-weight:800;color:#543d3b}.field-note{font-size:11px;color:#8c746b}
.choice,.option-select,.extra-checkbox{border-color:#e1d0bb;background:#fffdf9;border-radius:2px}.choice{font-size:11px;padding:13px 10px}.choice small{color:#8e6954}.choice.selected{border:1px solid #893c39;background:#f9ebd5;padding:13px 10px;box-shadow:inset 0 0 0 1px #893c39;color:#68232b}.extra-checkbox{font-size:11px}.extra-checkbox strong{color:#804635}.extras-list select{border-radius:2px}
.preorder-box{background:#f5ead9;border:1px solid #d9b783;border-radius:2px;padding:14px}.preorder-box strong{color:#6e2431}.schedule-fields input{background:white;border-radius:2px}
.qty-btn{background:#f2e6d4;color:#6b282e;transition:background .2s}.qty-btn:hover{background:#ddc39d}.modal-price strong{color:#6b252d;font:400 29px var(--serif)}.modal-submit{letter-spacing:1.3px}
.close-btn{color:#601e28;background:#f6e7d0;border-radius:50%;transition:transform .25s}.close-btn:hover{transform:rotate(90deg)}
.cart-drawer{background:#fffaf3;box-shadow:-30px 0 90px #15050b5c}.cart-header{border-color:#e7d9c8}.cart-header h2{font:400 44px var(--serif);letter-spacing:-1px}.cart-item-name{font:500 19px var(--serif);letter-spacing:-.2px}.cart-item{border-color:#e7dccc}.included-line{color:#846c4e}.extra-line{color:#955732}.cart-bottom{background:#fffaf3;border-color:#e5d8c8}
.delivery-input h3{font:400 30px var(--serif)}.delivery-input input,.delivery-input textarea,.delivery-input select{border-radius:2px;background:#fffdfa;border-color:#decbb6}.delivery-input label{font-size:10px;color:#856553}.grand strong{font:400 32px var(--serif)}
.cart-empty-monogram{font:400 70px var(--serif);color:#9d683d}.cart-empty h3{font:400 30px var(--serif)}.cart-empty p{font-size:12px}
.receipt-panel{background:#12090ac2;backdrop-filter:blur(9px)}.receipt-card{border-radius:2px;background:#fffaf2}.receipt-heading{border-bottom:1px solid #e6d5bd}.receipt-brand-text{font:400 32px var(--serif);letter-spacing:6px;color:#8a3037}.sample-pill{color:#b0824e;letter-spacing:2px}.receipt-card h3{font:400 34px var(--serif);color:#64242d}.receipt-note{font-size:12px;color:#7a6559}.receipt-actions button{border-radius:2px;letter-spacing:.5px}.receipt-card pre{background:#fff8ea;border-color:#dfcbb4;color:#45312d}.receipt-share-help{font-size:12px;color:#82634d}
.toast{background:#501e28;color:#fff0da;border:1px solid #c19e70;border-radius:2px;letter-spacing:.3px}
@media(max-width:1080px){.container{width:calc(100% - 52px)}.hero h1{font-size:clamp(51px,6.0vw,75px)}.hero-left{padding:60px 30px 28px 33px}.hero-right{min-height:540px}.product-info{padding:17px}.product-name{font-size:25px}}
@media(max-width:760px){html{scroll-padding-top:79px}.container{width:calc(100% - 28px)}.announcement{height:29px;font-size:8px;letter-spacing:1.1px;gap:7px}.announcement-line{width:8px}.header-inner{height:70px;gap:9px}.brand{min-width:183px;width:183px;height:69px}.brand-crest{left:0;top:4px;width:45px;height:55px;background-size:177px 177px;background-position:-67px -27px}.brand-type{left:41px;top:11px;width:143px;height:45px;background-size:184px 184px;background-position:-18px -90px}.header-actions{gap:8px}.city{font-size:9px;letter-spacing:1px}.icon-btn{height:38px;width:38px}.icon-btn svg{height:18px;width:18px}
.hero{min-height:0;padding-top:13px;padding-bottom:23px;grid-template-columns:1fr}.hero-left{border-radius:2px 2px 0 0;padding:40px 27px 36px}.hero-left::after{font-size:290px;top:60px;right:-39px}.hero h1{font-size:clamp(55px,11.5vw,82px);letter-spacing:-2px;margin:24px 0 22px}.hero h1 em{letter-spacing:-1.4px}.hero-left>p{font-size:13px;line-height:1.8;margin-bottom:23px}.hero .eyebrow{font-size:9px;letter-spacing:2.2px}.hero-cta .primary-btn{min-height:52px;font-size:9px;letter-spacing:1.6px}.hero-social{display:none}.hero-right{min-height:300px;height:300px;border-radius:0 0 2px 2px}.hero-right img{object-position:center 52%}.hero-photo-caption{bottom:21px;left:22px}.hero-photo-caption strong{font-size:32px}.hero-photo-caption>span{font-size:10px}.hero-sticker{right:15px;top:14px;width:69px;height:77px;gap:2px;border-width:1px}.hero-sticker>strong{font-size:27px}.hero-sticker span:first-child,.hero-sticker span:last-child{font-size:7px}
.marquee{height:43px}.marquee div{font-size:9px;letter-spacing:1.7px}.menu-section{padding-top:62px;padding-bottom:82px}.section-head h2{font-size:clamp(48px,10vw,64px);letter-spacing:-1.1px;margin:14px 0 13px}.section-head p{font-size:12px}.menu-toolbar{padding-top:28px;padding-bottom:17px;gap:15px}.category-btn{font-size:9px;letter-spacing:.8px;padding:12px 14px}.search-wrap{height:43px;min-width:0}.result-info{margin:26px 0 18px}.result-info h3{font-size:25px}.result-info span{font-size:9px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.product-image-wrap{aspect-ratio:1.04}.product-info{padding:12px 12px 15px}.product-meta{font-size:8px;letter-spacing:1.35px;margin-bottom:7px}.product-name{font-size:clamp(20px,5.1vw,25px);margin-bottom:7px;min-height:0}.product-short{font-size:10px;line-height:1.55;min-height:34px;margin-bottom:10px}.price{font-size:22px}.product-badge{font-size:7px;letter-spacing:1.1px;padding:6px 7px}.add-btn{width:32px;height:32px;font-size:23px}.story{padding:65px 0}.story-mark{width:55px;height:63px;font-size:43px}.story h2{font-size:43px}.story p{font-size:12px}.story-btn{margin-top:17px}.footer{padding:37px 0 115px}.footer-wordmark{font-size:34px;letter-spacing:7px}.footer p{font-size:8px;letter-spacing:1.4px}
.floating-cart{bottom:max(10px,env(safe-area-inset-bottom));left:13px;right:13px}.floating-cart>button{width:100%;padding:16px 18px;font-size:10px;letter-spacing:1px;border-radius:2px}
.product-modal{width:100%;max-height:94dvh;border-radius:12px 12px 0 0;top:auto;bottom:0;left:50%;transform:translateX(-50%)}.modal-scroll{max-height:94dvh;display:block}.modal-visual{position:static}.modal-image{height:256px;max-height:37dvh;min-height:0;aspect-ratio:auto;object-fit:cover}.photo-caption{font-size:9px;padding:10px}.modal-detail{padding:24px 20px max(26px,env(safe-area-inset-bottom))}.modal-detail h2{font-size:39px}.modal-description{margin:13px 0 17px}.modal-bottom{background:#fffaf3;position:sticky;bottom:-1px;z-index:2;margin-top:22px;padding:12px 0 10px}.modal-submit{font-size:10px}.cart-drawer{width:100vw;max-width:485px}.cart-header{padding:18px 19px}.cart-header h2{font-size:37px}.cart-content{padding:18px 19px}.cart-bottom{padding:15px 19px max(16px,env(safe-area-inset-bottom))}.cart-item-name{font-size:19px}.receipt-card{padding:21px}.receipt-brand-text{font-size:27px;letter-spacing:5px}.receipt-card h3{font-size:28px}}
@media(max-width:370px){.announcement{font-size:7px}.container{width:calc(100% - 22px)}.header-inner{height:66px}.brand{min-width:169px;width:169px}.brand-type{transform:scale(.91);transform-origin:left center}.city{font-size:8px}.hero h1{font-size:53px}.hero-left{padding:35px 22px}.product-grid{gap:8px}.product-info{padding:11px}.product-name{font-size:19px}.product-short{font-size:9px}.price{font-size:20px}.add-btn{width:29px;height:29px}}
@media(hover:none){.product-card:hover{transform:none;box-shadow:none}.product-card:hover img{transform:none}.add-btn:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.marquee div{animation:none!important}*{scroll-behavior:auto!important}}
@media print{.footer{display:none!important}.receipt-card{background:#fff!important}}

/* Refined emblem: original Andalus wordmark retained without the enclosing oval */
.brand-crest{background:none;mix-blend-mode:normal;display:flex;align-items:center;justify-content:center;left:0;width:62px;height:65px;top:6px}
.brand-crest svg{width:58px;height:58px;filter:drop-shadow(0 0 1px #e8c35935)}
.brand-type{width:181px;left:62px;top:16px;background-size:223px 223px;background-position:-24px -111px;mix-blend-mode:multiply}
@media(max-width:760px){.brand-crest{left:0;top:5px;width:46px;height:55px}.brand-crest svg{width:44px;height:44px}.brand-type{left:46px;top:15px;width:143px;height:39px;background-size:178px 178px;background-position:-19px -87px}}
@media(max-width:370px){.brand-crest{width:42px}.brand-crest svg{width:40px;height:40px}.brand-type{left:41px;top:15px;width:140px;height:39px;background-size:173px 173px;background-position:-18px -85px;transform:none}}
/* final visual QA fixes */
.brand-type{height:35px}
.choice.selected small{color:#66242f!important}
@media(max-width:760px){.brand-type{height:31px}}
@media(max-width:370px){.brand-type{height:29px}}


/* v5.css */
/* ANDALUS / V5 / THE ATELIER EDITION
   Self-contained visual language. No emoji fonts, stock iconography or external dependencies. */
:root {
 --paper:#f4eee4;--white:#fffaf3;--ink:#26191a;--muted:#796f69;--line:#ded1c1;
 --wine:#6d1e2a;--wine-dark:#39151e;--gold:#cca464;--gold-pale:#edcea0;
 --night:#190f12;--night-light:#27171b;--cream:#fcf2e3;
 --serif:'GFS Didot','Didot','Bodoni MT','Times New Roman',Georgia,serif;
 --reading:'EB Garamond','Iowan Old Style',Georgia,serif;
 --sans:'Inter Display','Avenir Next','Helvetica Neue',Arial,sans-serif;
 --ease:cubic-bezier(.19,1,.22,1)
}
html{scroll-padding-top:94px}body{background:var(--paper);font-family:var(--sans);color:var(--ink)}
body::selection,::selection{background:#b88954;color:#211415}
.container{width:min(1440px,calc(100% - 100px))}
button,input,select,textarea{font-family:var(--sans)}
:focus-visible{outline:2px solid #d6b275!important;outline-offset:3px}
/* Navigation */
.announcement{background:#2b141b;color:#c8ae92;height:33px;gap:22px;letter-spacing:2px;font-size:9px;font-weight:550}
.announcement-line{background:#c69d60;width:32px;opacity:.55}
.announcement-separator{height:2px;width:2px;border-radius:100%;background:#bb915a}
.header{background:rgba(24,14,17,.97);border:0;border-bottom:1px solid #ab815239;box-shadow:0 9px 28px #10060814;transition:background .5s,box-shadow .5s}
.header.header-scrolled{background:rgba(24,14,17,.95);box-shadow:0 12px 35px #1106083b}
.header-inner{height:91px;gap:35px}
.brand{min-width:initial;width:286px;height:75px;flex-shrink:0;display:flex;align-items:center;position:relative;padding:0;overflow:visible;transition:opacity .3s}
.brand:hover{opacity:.84}.brand-logo-v5{width:100%;height:auto;max-height:75px;object-fit:contain;display:block;position:static;mix-blend-mode:normal;filter:none}
.desktop-links{gap:44px}.desktop-links a{color:#e4d3be;font-size:10px;letter-spacing:2.1px;font-weight:550;text-transform:uppercase}
.desktop-links a:hover{opacity:1;color:#e9bf80}.desktop-links a::after{background:var(--gold);height:1px;bottom:-12px}
.header-actions{gap:29px}.city{font-weight:500;color:#c5a780;font-size:10px;letter-spacing:2.15px;white-space:nowrap}
.icon-btn{border:1px solid #cca66965;width:46px;height:46px;border-radius:50%;background:transparent;transition:background .3s,border-color .3s,transform .3s}
.icon-btn:hover{background:#e0bb8130;border-color:#e0bb81;transform:translateY(-2px)}
.cart-trigger svg{stroke:#f0d4ac;width:20px;height:20px}.cart-count{background:var(--gold);color:var(--night)}
/* Full-bleed editorial hero */
.hero.container{width:100%;max-width:none;margin:0;min-height:650px;height:min(720px,calc(100svh - 100px));padding:0;position:relative;display:block;overflow:hidden;background:#28151a;isolation:isolate}
.hero-right{position:absolute;inset:0;min-height:0;border:0;border-radius:0;overflow:hidden;background:#1b0e12;z-index:0}
.hero-right img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;object-position:72% 51%;transform:scale(1.045);filter:saturate(.96) contrast(1.055) brightness(.84);will-change:transform}
.hero-right::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#160c10 0%,#231016fa 22%,#2f1018dc 37%,#2f111885 52%,#1b101423 82%),linear-gradient(0deg,#170e15b9 0%,transparent 36%);pointer-events:none}
.hero-left{z-index:2;position:relative;width:min(55%,740px);height:100%;padding:clamp(70px,8vw,126px) 40px 74px max(50px,calc((100vw - 1340px)/2));background:none!important;border:none;border-radius:0;display:flex;flex-direction:column;isolation:isolate;overflow:visible}
.hero-left::before,.hero-left::after{display:none}
.hero .eyebrow{font:500 10px var(--sans);letter-spacing:3.6px;color:#e5c18c;gap:17px;white-space:nowrap}.hero .eyebrow .line{height:1px;width:38px;background:#d4af75}
.hero h1{font:400 clamp(90px,8.4vw,145px)/.82 var(--serif);letter-spacing:-5px;margin:40px 0 35px;text-transform:uppercase;color:#fff4e5;text-wrap:balance;text-shadow:0 5px 25px #16060d15}
.hero h1 em{font:italic 400 1.04em/.92 var(--serif);letter-spacing:-5.5px;color:#e6bb78;text-transform:none;display:inline-block}
.hero-left>p{max-width:445px;color:#f0dbcb;font:400 19px/1.65 var(--reading);letter-spacing:.17px;margin:0 0 34px}
.primary-btn{font:650 10px var(--sans);letter-spacing:2px;border:1px solid #dcba84;border-radius:2px;min-height:57px;padding:0 25px;gap:28px;background:#d8ad6d;color:#29131c;transition:transform .45s var(--ease),background .4s,box-shadow .45s var(--ease),color .3s}
.primary-btn:hover{background:#f1d2a0;color:#1d1015;transform:translateY(-3px);box-shadow:0 14px 32px #09030836}
.hero .primary-btn{background:#e4c38d;color:#301820;min-width:225px}
.cta-line{width:23px;height:1px;background:currentColor;position:relative;display:block;transition:width .38s var(--ease)}
.cta-line::after{content:"";position:absolute;width:6px;height:6px;right:0;top:-3px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg)}
.primary-btn:hover .cta-line{width:34px}
.hero-social{margin-top:auto;display:flex;align-items:center;gap:17px;border:none;padding:0;color:#d3b79e;font-size:9px;font-weight:500;letter-spacing:2.3px}
.hero-hairline{width:38px;height:1px;background:#a77d53;display:block;flex-shrink:0}
.hero-photo-caption{left:auto;right:max(45px,calc((100vw - 1340px)/2));bottom:43px;text-align:right;align-items:flex-end;display:flex;gap:9px;max-width:340px;filter:drop-shadow(0 2px 7px #070405)}
.hero-caption-small{font-size:9px;letter-spacing:2.5px;color:#e6c696}
.hero-photo-caption strong{font:400 clamp(29px,3vw,42px)/.95 var(--serif);letter-spacing:0;color:#fff3df}
.hero-photo-caption>span{color:#f0d9c5;font-size:10px;letter-spacing:1.8px}
.hero-sticker{position:absolute;right:max(45px,calc((100vw - 1340px)/2));top:42px;border:1px solid #dfbb7d77;border-radius:0;transform:none;width:100px;height:104px;background:rgba(32,14,19,.69);color:#eee0ce;box-shadow:inset 0 0 0 4px #d1aa6113;gap:6px;font:500 8px var(--sans);letter-spacing:2px;backdrop-filter:blur(8px)}
.hero-sticker strong{font:400 34px var(--serif);color:#e4c08c}
.hero-sticker span:last-child{color:#bba188;letter-spacing:2.3px;font-size:8px}
.hero-scroll{position:absolute;z-index:2;bottom:39px;left:50%;transform:translateX(-50%);font-size:8px;letter-spacing:2px;color:#e0ccb7;display:flex;gap:12px;align-items:center;white-space:nowrap}
.hero-scroll span{height:1px;width:36px;background:#e0b57f}
/* Understated animated running type, no ornamental characters */
.marquee{height:62px;background:#d6b37d;border:0;color:#2e1919}.marquee div{animation:marqueeDrift 50s linear infinite;font-size:10px;letter-spacing:3px;font-weight:720;word-spacing:6px}
.marquee span{display:inline-block;width:22px;height:1px;background:#7c4f3d;vertical-align:middle;padding:0!important;margin:0 25px;opacity:.9}
.editorial-intro{display:grid;grid-template-columns:210px minmax(0,1.25fr) minmax(220px,.72fr);gap:35px;align-items:end;padding-block:100px 105px;border-bottom:1px solid #dcccbb}
.editorial-index{color:#977047;font-size:10px;letter-spacing:2px;font-weight:600;align-self:start;padding-top:10px}
.editorial-intro h2{font:400 clamp(42px,4.1vw,66px)/1.07 var(--serif);color:#331b22;letter-spacing:-1.4px;margin:0}
.editorial-intro h2 em{font:italic 400 1em var(--serif);color:#7a2b37}
.editorial-intro p{font:400 19px/1.55 var(--reading);color:#78675e;margin:0;max-width:330px}
/* Menu on quiet, luxurious parchment */
.menu-section{padding-top:78px;padding-bottom:115px}
.eyebrow-dark{color:#a07740;font:650 9px var(--sans);letter-spacing:2.7px}
.section-head{align-items:end}.section-head h2{font:400 clamp(50px,5vw,85px)/.94 var(--serif);letter-spacing:-2.5px;color:#331d21;margin:21px 0 19px}
.section-head h2 em{font:italic 400 1em var(--serif);color:#742634;letter-spacing:-1px}
.section-head p{font-size:12px;color:#827367;line-height:1.75;max-width:480px}
.menu-edition{color:#a48159;font-size:9px;letter-spacing:2px;font-weight:500;white-space:nowrap}
.menu-toolbar{padding:46px 0 22px;border-bottom:1px solid #d7c8b7;gap:18px}
.category-scroll{gap:7px;padding:3px 0;scrollbar-width:none}
.category-btn{border:1px solid #d6c9b6;color:#6e5c56;border-radius:1px;background:transparent;font-size:9px;letter-spacing:1.2px;font-weight:650;padding:12px 15px;transition:background .36s,color .36s,border-color .36s}
.category-btn:hover{border-color:#a98059;background:#efe1cd}
.category-btn.active{border-color:#692331;background:#692331;color:#f7e9d5;box-shadow:none}
.search-wrap{background:rgba(255,251,244,.86);border-radius:1px;border:1px solid #d4c4b1;min-width:210px;max-width:265px;height:44px}
.search-wrap input{font-size:11px;color:#332626}.search-wrap input::placeholder{color:#a28e80}.search-wrap svg{color:#a3815b}
.result-info{margin:34px 0 24px}.result-info h3{font:400 32px var(--serif);letter-spacing:-.4px}
.result-info span{font-size:9px;letter-spacing:1.7px;color:#9e8c79}
.product-grid{gap:22px}.product-card{position:relative;background:#fffaf4;border:1px solid #e1d4c4;border-radius:1px;box-shadow:0 8px 30px #4f281505;transition:transform .55s var(--ease),box-shadow .55s var(--ease),border-color .45s;overflow:hidden}
.product-card:hover{transform:translateY(-8px);border-color:#c2a581;box-shadow:0 25px 60px #4a241c17}
.card-photo-button{display:block;position:relative;overflow:hidden}.product-image-wrap{aspect-ratio:1.31;background:#d9c6ad;overflow:hidden}
.product-image-wrap img{object-fit:cover;transition:transform 1.1s cubic-bezier(.19,1,.22,1),filter .55s ease}
.product-card:hover .product-image-wrap img{transform:scale(1.085);filter:saturate(1.1)}
.product-image-wrap::after{position:absolute;inset:0;content:"";pointer-events:none;border:1px solid #ffffff42;box-shadow:inset 0 0 60px #3d190c0d}
.product-info{padding:22px 23px 23px}
.product-meta{font-size:9px;letter-spacing:2px;color:#a27e55;font-weight:700;margin-bottom:11px}
.product-name{font:400 clamp(24px,2.5vw,34px)/1.07 var(--serif);letter-spacing:-.25px;color:#311d21;margin:0 0 8px}
.product-short{font:400 12px/1.65 var(--sans);color:#827467;margin:0 0 20px;min-height:37px}
.product-bottom{border-top:1px solid #ebdfd1;padding-top:15px}
.price{font:400 27px var(--serif);color:#782c38}.price small{font:500 9px var(--sans);letter-spacing:1px;color:#9a8777;margin-right:3px}
.product-badge{background:#341b1cde;color:#ffe8c2;border:1px solid #dec38c7d;position:absolute;top:13px;left:13px;font-weight:600;font-size:8px;letter-spacing:1.9px;border-radius:0;padding:10px 12px}
.product-badge.soldout{background:#682834;color:#fff}
.add-btn{width:40px;height:40px;border-radius:50%;background:#712733;color:#f6e3c3;font:300 25px var(--sans);transition:background .32s,transform .4s var(--ease)}
.add-btn:hover{background:#3c1722;transform:rotate(90deg) scale(1.05)}
.empty-state>span{color:#996d42}
/* The story: cinematic dark wine, no fake emblem */
.story{background:radial-gradient(ellipse at 90% 0%,#732e3880,transparent 55%),linear-gradient(100deg,#2b111a,#4b1825);padding:95px 0;position:relative;overflow:hidden}
.story::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(120deg,transparent 0 96px,#e3cda10b 97px,transparent 98px);opacity:.45;pointer-events:none}
.story::after{border-color:#b8925338;box-shadow:0 0 0 65px #ddb36c0b,0 0 0 140px #ddb36c07}
.story-inner{position:relative;align-items:center;gap:49px}.story-mark{width:235px;height:130px;border:1px solid #cc9e7055;background:transparent;display:flex;justify-content:center;padding:24px;flex-shrink:0}
.story-mark img{width:100%;height:100%;object-fit:contain}.story h2{font:400 clamp(42px,4vw,62px)/1.03 var(--serif);letter-spacing:-.6px;color:#fceee2}
.story h2 em{font:italic 400 1em var(--serif);color:#e1bd84}
.story .eyebrow{font:600 9px var(--sans);letter-spacing:2.5px;color:#dfb981}
.story p{font:400 18px/1.55 var(--reading);color:#dbbcaf;max-width:510px}
.story-btn{border:1px solid #bb915b;color:#f2dac0;font-size:9px;letter-spacing:1.7px;border-radius:2px;min-width:170px}.story-btn:hover{background:#a9795530}
.footer{background:#190d13;border:0;padding:48px 0 110px}
.footer-logo-v5{width:240px;max-width:100%;height:auto}.footer p{font-size:9px;letter-spacing:2px;color:#bf9b80;margin:12px 0 0}
.footer-end{color:#a28b7c;font-size:9px;font-weight:500;letter-spacing:1.7px}
.floating-cart{bottom:24px;right:29px}
.floating-cart>button{background:#4b1826;color:#ffe6cb;border:1px solid #d4ad7790;border-radius:2px;padding:17px 25px;gap:32px;font-size:9px;letter-spacing:2px;box-shadow:0 13px 38px #24100f54;transition:background .3s,transform .3s}
.floating-cart>button:hover{background:#6d2333;transform:translateY(-3px)}
.floating-count{background:#e6bf84;color:#34151c}
/* Premium customization sheets, bag and receipt */
.overlay{background:rgba(15,7,10,.77);backdrop-filter:blur(7px)}
.product-modal{border-radius:3px;background:#fbf6ee;box-shadow:0 30px 100px #0e030a8c;width:min(940px,calc(100vw - 36px))}
.modal-visual{background:#e8dccb}.modal-image{aspect-ratio:1.1}
.photo-caption{font:400 11px/1.55 var(--sans);color:#7a685b;padding:13px 17px;border-bottom:1px solid #dfd1c3}
.modal-detail{padding:38px 32px 28px;background:#fbf7ef}
.modal-detail .product-meta{color:#a28159}
.modal-detail h2{font:400 46px/1.01 var(--serif);color:#341e22;letter-spacing:-.6px}
.modal-description{font:400 17px/1.45 var(--reading);color:#7c685b}
.field-label{font-size:9px;letter-spacing:1.7px;color:#593940}
.inclusion{background:#f4e7d4;border-left:2px solid #b78c53;color:#665346;font-size:11px}
.choice{border:1px solid #ddcdba;border-radius:1px;background:#fffcf8;font-size:11px;color:#4c3731;padding:12px}
.choice small{color:#7f6355}.choice.selected{background:#4d1c2a;border-color:#4d1c2a;color:#fff4e5;border-width:1px;padding:12px}
.choice.selected small{color:#e4c48d!important}.choice:hover:not(.selected){border-color:#a98c62;background:#f5eddf}
.option-select,.extra-checkbox{border-color:#ddd0c0;border-radius:2px}
.preorder-box{border-radius:2px;background:#f8ebd4}.qty-btn{background:#f2e4d4;color:#522832}
.modal-bottom{background:#fbf7ef}.modal-price strong{color:#732733}.modal-submit{font-size:10px;letter-spacing:1px}
.close-btn{background:#eee1d0;color:#602533;border-radius:50%}
.cart-drawer{background:#fcf8f1;box-shadow:-15px 0 75px #0d060a8a}
.cart-header{border-color:#d9cbb9}.cart-header h2{font:400 40px var(--serif)}
.cart-content{background:#fcf8f1}.cart-item-name{font:400 21px var(--serif)}.cart-item img{border-radius:2px}.cart-item-detail{color:#756e67}
.cart-bottom{background:#fffaf4;border-color:#ded2c4}.grand strong{color:#742a35}
.delivery-input input,.delivery-input textarea,.delivery-input select{border-radius:2px;border-color:#d7c7b7;background:#fffdf8}
.receipt-panel{background:#11090dcb;backdrop-filter:blur(7px)}
.receipt-card{background:#fffaf2;border:1px solid #d4b884;border-radius:3px;padding:28px;box-shadow:0 28px 100px #0007}
.receipt-brand-text{font:400 38px var(--serif);color:#6d2532;letter-spacing:6px}
.receipt-card h3{font:400 34px var(--serif);color:#642634}
.receipt-note{color:#776960}.receipt-actions button{border-radius:1px;letter-spacing:.5px;font-size:11px}
.receipt-actions button:first-child{background:#5e2330}.receipt-actions button:nth-child(n+2){background:#efe2d1;color:#602932}
.toast{background:#381722;border:1px solid #c59c67;color:#f7e8d7;border-radius:3px}
/* Custom visual rhythm */
.product-card,.editorial-intro,.section-head,.story-inner{backface-visibility:hidden}
@media(max-width:1150px){
 .container{width:calc(100% - 66px)}
 .brand{width:248px}.hero-left{padding-left:60px;width:65%}.hero h1{font-size:clamp(82px,9vw,119px)}
 .editorial-intro{grid-template-columns:1fr 2fr;gap:25px}.editorial-intro p{grid-column:2}
 .hero-photo-caption{right:32px}.hero-sticker{right:32px}
 .story-mark{width:190px}
}
@media(max-width:760px){
 html{scroll-padding-top:80px}
 .container{width:calc(100% - 36px)}
 .announcement{height:27px;font-size:7px;gap:8px;letter-spacing:1.2px;padding:0 4px}
 .announcement-line{display:none}.announcement-separator{margin-inline:2px}
 .header-inner{height:72px;gap:10px}.brand{width:min(59vw,242px);height:68px;flex-shrink:1}.brand-logo-v5{max-height:59px}
 .header-actions{gap:10px}.city{font-size:8px;letter-spacing:1px}.icon-btn{width:40px;height:40px}
 .hero.container{height:auto;min-height:0;display:flex;flex-direction:column;background:#1e1015}
 .hero-right{position:relative;order:2;inset:auto;height:310px;min-height:0;overflow:hidden}
 .hero-right img{object-position:center 52%;transform:scale(1.01)}
 .hero-right::after{background:linear-gradient(0deg,#1e0d14c8 0%,transparent 49%),linear-gradient(90deg,#220e125e,transparent 65%)}
 .hero-left{order:1;width:100%;min-height:355px;height:auto;padding:50px 26px 42px;max-width:100%;background:radial-gradient(ellipse at 100% 0%,#6e233645,transparent 65%)!important}
 .hero .eyebrow{font-size:8px;letter-spacing:2.25px;gap:12px}.hero .eyebrow .line{width:24px}
 .hero h1{font-size:clamp(76px,16vw,110px);letter-spacing:-3.6px;margin:27px 0 20px;line-height:.78}
 .hero h1 em{letter-spacing:-3.1px}
 .hero-left>p{font-size:16px;line-height:1.46;margin-bottom:25px;max-width:360px}
 .hero .primary-btn{min-width:204px;min-height:49px;padding:0 16px;font-size:9px}
 .hero-social,.hero-scroll{display:none}
 .hero-photo-caption{right:auto;left:22px;bottom:23px;align-items:flex-start;text-align:left;max-width:65%}
 .hero-photo-caption strong{font-size:29px}.hero-photo-caption>span{font-size:9px;letter-spacing:1px}
 .hero-sticker{width:77px;height:80px;right:17px;top:16px;font-size:7px;letter-spacing:1px;gap:4px}.hero-sticker strong{font-size:28px}
 .marquee{height:48px}.marquee div{font-size:9px;letter-spacing:2px}.marquee span{margin:0 18px;width:14px}
 .editorial-intro{padding:49px 0 56px;display:block}.editorial-index{display:block;font-size:9px;margin-bottom:22px}
 .editorial-intro h2{font-size:clamp(37px,9.7vw,55px);line-height:1.04;letter-spacing:-1px}
 .editorial-intro p{font-size:17px;margin-top:23px;max-width:430px}
 .menu-section{padding-top:58px;padding-bottom:76px}
 .section-head h2{font-size:clamp(41px,10.5vw,60px);letter-spacing:-1.4px;line-height:.98;margin:13px 0}
 .section-head p{font-size:11px;max-width:100%}
 .menu-toolbar{padding:24px 0 20px;gap:14px}
 .category-btn{font-size:9px;padding:12px 14px}.search-wrap{max-width:100%;width:100%}
 .result-info{margin:27px 0 16px}.result-info h3{font-size:26px}.result-info span{font-size:8px}
 .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .product-image-wrap{aspect-ratio:1.06}.product-info{padding:13px 12px 13px}
 .product-name{font-size:clamp(20px,5.5vw,27px);line-height:1.09;letter-spacing:-.3px}
 .product-meta{font-size:8px;letter-spacing:1.2px;margin-bottom:7px}
 .product-short{font-size:10px;line-height:1.5;min-height:45px;margin-bottom:12px}
 .product-bottom{padding-top:11px}.price{font-size:22px}.price small{font-size:8px}
 .product-badge{padding:7px;font-size:7px;letter-spacing:1px;top:8px;left:8px}
 .add-btn{width:33px;height:33px;font-size:24px}
 .story{padding:64px 0}.story-inner{display:flex;align-items:flex-start;gap:24px}
 .story-mark{width:195px;height:102px;padding:13px}
 .story h2{font-size:clamp(40px,10vw,60px);letter-spacing:-.5px}
 .story p{font-size:16px}.story-btn{margin-top:6px}
 .footer{padding:39px 0 110px}.footer-logo-v5{width:230px}
 .footer-end{font-size:9px}
 .floating-cart{left:11px;right:11px;bottom:max(10px,env(safe-area-inset-bottom))}
 .floating-cart>button{border-radius:2px;width:100%;padding:16px 19px;font-size:9px}
 .modal-detail{padding:24px 19px max(25px,env(safe-area-inset-bottom))}.modal-detail h2{font-size:39px}
 .modal-image{height:240px;aspect-ratio:auto}.modal-scroll{max-height:94dvh}
 .product-modal{width:100vw;max-height:94dvh;border-radius:13px 13px 0 0}
 .modal-bottom{background:#fbf7ef}.cart-drawer{width:100vw;max-width:480px}
 .cart-header h2{font-size:37px}.cart-content{padding:18px 19px}.cart-bottom{padding:15px 19px max(18px,env(safe-area-inset-bottom))}
 .receipt-card{padding:20px}.receipt-card h3{font-size:29px}
}
@media(max-width:395px){
 .announcement{font-size:6px;letter-spacing:.6px}
 .header-inner{height:67px}.brand{width:210px}.city{font-size:7px}
 .hero-left{min-height:335px;padding:42px 22px 38px}
 .hero h1{font-size:72px}.hero-left>p{font-size:15px}
 .hero-right{height:275px}
 .container{width:calc(100% - 28px)}
 .product-grid{gap:8px}.product-info{padding:11px 10px}.product-name{font-size:21px}.price{font-size:20px}
 .story-mark{width:172px}
}
@media(max-width:345px){.brand{width:185px}.city{display:none}.hero h1{font-size:64px}.product-name{font-size:19px}.product-short{font-size:9px}}
@media(hover:none){.product-card:hover{transform:none;box-shadow:none}.product-card:hover img{transform:none;filter:none}}
@media(prefers-reduced-motion:reduce){.marquee div{animation:none!important}.hero-right img{transform:none!important}*{scroll-behavior:auto!important}}
@media print{.editorial-intro{display:none}.receipt-card{background:#fff!important}}

.receipt-logo-v5{display:block;width:250px;max-width:calc(100% - 52px);height:auto;object-fit:contain}.receipt-heading{gap:20px}
.reading-progress{position:fixed;top:0;left:0;height:2px;width:100%;background:#d5a869;transform:scaleX(0);transform-origin:left center;z-index:120;pointer-events:none;box-shadow:0 0 15px #d6ab6b7a}
.hero .primary-btn{translate:var(--mag-x,0px) var(--mag-y,0px)}
@media(max-width:345px){.hero h1{font-size:60px}}


/* noir.css */
/* ANDALUS / NOIR & GOLD. Rich dark surfaces, honest imagery, elegant restrained motion.
   Self-hosted assets. No external script/font services. No emoji decorations. */
:root{
 --paper:#0a0b09;--white:#171715;--ink:#f7ead5;--muted:#aa9f8f;
 --line:#4b4130;--wine:#bb8d45;--wine-dark:#10110e;
 --gold:#d8ab5e;--gold-pale:#ffdea0;--night:#080907;--night-light:#171711;
 --cream:#f5e1be;--serif:'GFS Didot','Didot','Bodoni MT',Georgia,serif;
 --reading:'EB Garamond','Iowan Old Style',Georgia,serif;
 --sans:'Inter Display','Avenir Next',Arial,sans-serif;
 --gold-gradient:linear-gradient(113deg,#a46a2b 0%,#ffe8a8 19%,#e2b569 40%,#c58d3c 70%,#ffe1a0 100%);
 --gold-line:#af8849;
}
html{scroll-padding-top:105px;color-scheme:dark}
body{background:#090a09;color:#f5eadb;overflow-x:clip}
::selection{background:#e3bb79;color:#130f0a}
a,button{touch-action:manipulation}
:focus-visible{outline:2px solid #f1cb85!important;outline-offset:4px}
.container{width:min(1480px,calc(100% - 72px))}
.announcement{height:30px;background:#0d0d0b;border-bottom:1px solid #b9944338;color:#d3b784;letter-spacing:2.35px;font-size:9px}
.announcement-line{background:#bd9250}
/* Black glass gold-edged navigation */
.header,.header.header-scrolled{position:sticky;top:0;z-index:26;background:rgba(7,8,7,.91);border-bottom:1px solid #d0a45155;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);box-shadow:0 16px 42px #0007}
.header-inner{height:86px;gap:32px}
.brand{width:224px;height:80px;flex:0 0 224px}
.brand-logo-v5{width:100%;height:75px;max-height:75px;object-fit:contain;filter:drop-shadow(0 1px 14px #cb98422d)}
.desktop-links{display:flex;align-items:center;justify-content:center;gap:clamp(17px,2.15vw,42px);flex:1}
.desktop-links a{font-size:11px;letter-spacing:.25px;text-transform:none;color:#e9e1d4;font-weight:500;white-space:nowrap;padding:20px 1px}
.desktop-links a::after{bottom:13px;transform-origin:center;left:0;width:100%;background:linear-gradient(90deg,transparent,#e6bc69,transparent)}
.desktop-links a.nav-current,.desktop-links a:hover{color:#e5be73}
.header-actions{gap:14px}
.header-actions .city{color:#bd9e65;letter-spacing:1.7px;font-size:9px}
.icon-btn{border:0;background:none;width:44px;height:44px}
.icon-btn:hover{background:#d1a3551c;transform:none}
.cart-trigger svg{stroke:#f6d797;width:24px;height:24px}
.cart-count{color:#150f07;background:var(--gold-gradient);font-weight:750}
/* Cinematic top */
.hero.container{height:clamp(560px,49vw,710px);min-height:560px;max-height:none;background:linear-gradient(130deg,#0c0c09,#18130e);isolation:isolate}
.hero-atmosphere{position:absolute;inset:0;background:radial-gradient(ellipse at 23% 45%,#88531e33,transparent 50%),radial-gradient(ellipse at 70% 20%,#c8913519,transparent 44%);z-index:1;pointer-events:none}
.hero-right{position:absolute;inset:0 0 0 37%;border:0;z-index:0;background:#090909;overflow:hidden}
.hero-right img{height:100%;width:100%;object-fit:cover;object-position:48% 56%;filter:contrast(1.06) saturate(1.11) brightness(.86);transform:scale(1.045)}
.hero-right::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#0c0b09 1%,#110d09ea 9%,#16110ca6 28%,transparent 66%),linear-gradient(0deg,#080907c8,transparent 32%,transparent 74%,#09090850);z-index:1}
.hero-left{position:relative;z-index:2;width:clamp(485px,49vw,710px);height:100%;padding:clamp(64px,7vw,95px) 18px 52px max(44px,calc((100vw - 1380px)/2));isolation:isolate;display:flex;flex-direction:column;align-items:flex-start}
.hero .eyebrow{font-size:10px;letter-spacing:4px;color:#d5b475;gap:17px}
.hero .eyebrow .line{width:37px;background:var(--gold)}
.hero h1{margin:24px 0 0;line-height:1;width:min(100%,520px);height:158px;overflow:visible}
.hero-display-logo{width:100%;height:158px;object-fit:contain;object-position:left center;filter:drop-shadow(0 8px 26px #0006)}
.hero-manifesto{font-size:12px;letter-spacing:5px;color:#fff0d5;font-weight:550;margin:11px 0 21px}
.hero-left>p{font:400 21px/1.56 var(--reading);color:#efe4d3;max-width:455px;margin:0 0 28px;letter-spacing:.1px}
.hero .primary-btn{background:#100f0bcc;border:1px solid #e5be6c;color:#ffe3ac;border-radius:50px;min-height:51px;min-width:205px;letter-spacing:1px;font-size:11px;padding:0 24px;gap:24px;box-shadow:inset 0 0 0 1px #d5b16a1c}
.hero .primary-btn:hover{background:#d3a65b;color:#110d08;box-shadow:0 18px 40px #000a}
.hero-social{margin-top:auto;color:#c4a570;letter-spacing:2px;font-size:9px}
.hero-hairline{background:#d2a85b}
.hero-photo-caption{position:absolute;left:auto;right:clamp(24px,6vw,88px);bottom:35px;z-index:3;display:flex;align-items:flex-end;text-align:right;gap:4px}
.hero-caption-small{color:#e6bf7c;font-size:9px;letter-spacing:2px}
.hero-photo-caption strong{font:400 clamp(25px,2.7vw,36px)/1.1 var(--serif);color:#fff3d8}
.hero-photo-caption>span{color:#debf88;font-size:10px;letter-spacing:1px}
.hero-scroll{color:#d4b77f;font-size:8px;bottom:23px}
/* Showcase collection, directly interactive with real menu categories */
.noir-collections{padding:84px 0 30px;position:relative}
.noir-collections:before{content:"";position:absolute;width:min(60vw,900px);height:320px;left:20%;top:40%;background:radial-gradient(ellipse,#8d631c19,transparent 70%);pointer-events:none}
.noir-collections-header{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin:0 0 32px}
.noir-kicker{font-size:9px;letter-spacing:3px;color:#c99c56;font-weight:650}
.noir-collections-header h2{font:400 clamp(42px,5vw,70px)/1.03 var(--serif);margin:15px 0 0;color:#f6ebda;letter-spacing:-1.5px}
.noir-collections-header h2 em{color:#e7bc75;font-weight:400}
.noir-collections-header>p{max-width:280px;font:400 17px/1.5 var(--reading);color:#baa88e;margin:0}
.noir-collection-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(2,278px);gap:14px}
.noir-category{display:block;position:relative;grid-column:span 2;isolation:isolate;overflow:hidden;min-width:0;border:1px solid #ae874652;border-radius:15px;background:#171510;color:#fff5e4;box-shadow:0 16px 43px #0007;transition:transform .65s cubic-bezier(.19,1,.22,1),border-color .4s,box-shadow .4s}
.noir-category:nth-child(1),.noir-category:nth-child(2){grid-column:span 3}
.noir-category:hover{transform:translateY(-5px);border-color:#e4b76a;box-shadow:0 24px 55px #000a}
.noir-category img{width:100%;height:100%;object-fit:cover;object-position:center 45%;filter:saturate(.96) contrast(1.05) brightness(.81);transition:transform 1.25s cubic-bezier(.19,1,.22,1),filter .65s}
.noir-category:hover img{transform:scale(1.085);filter:saturate(1.1) brightness(.98)}
.noir-category-cover{position:absolute;inset:0;background:linear-gradient(0deg,#070707ed 0%,#0808089b 28%,transparent 75%),linear-gradient(180deg,#0909098f,transparent 31%);pointer-events:none}
.noir-category-nr{position:absolute;top:21px;left:24px;font-size:9px;letter-spacing:2.1px;color:#ffe0a2;font-weight:550}
.noir-category-caption{position:absolute;left:27px;right:23px;bottom:23px;display:grid;gap:7px}
.noir-category-caption strong{font:400 clamp(31px,3vw,43px)/1 var(--serif);letter-spacing:-.8px;color:#fdf1d8}
.noir-category-caption>span:nth-child(2){font:400 15px/1.35 var(--reading);color:#edddc4}
.noir-category-link{display:flex;align-items:center;justify-content:space-between;border:1px solid #d7ad5f;padding:11px 16px;border-radius:30px;width:fit-content;gap:22px;margin-top:7px;color:#ffe5b2;font-size:9px;letter-spacing:1.4px;font-weight:650;transition:background .3s,color .3s}
.noir-category-link b{font:400 19px/10px Georgia,serif;transition:translate .3s}
.noir-category:hover .noir-category-link{background:#dcb36d;color:#100e0a}
.noir-category:hover .noir-category-link b{translate:4px 0}
/* Eyebrow and editorial */
.marquee{height:49px;background:#12120f;border-top:1px solid #a5803f47;border-bottom:1px solid #a5803f47;color:#cda862}
.marquee div{color:#dfbd81;font-size:9px;letter-spacing:2.5px}
.marquee span{background:#ac8547}
.editorial-intro{border-bottom:1px solid #a3875536;padding-block:77px 89px;gap:42px}
.editorial-index{color:#d5a95f}
.editorial-intro h2{color:#f4e8d4;font-size:clamp(40px,4.5vw,67px)}
.editorial-intro h2 em{color:#e8b76d}
.editorial-intro p{color:#afa08c;font:400 19px/1.5 var(--reading)}
/* Dark collection catalogue */
.menu-section{padding-top:93px;padding-bottom:140px}
.eyebrow-dark{color:#deb976}
.section-head h2{color:#fff1d9;font-size:clamp(48px,5vw,77px)}
.section-head h2 em{color:#ddb16c}
.section-head p{color:#b7a58e;font-size:12px}
.menu-edition{color:#bba16b}
.menu-toolbar{border-bottom:1px solid #b08c4d40;padding-top:45px}
.category-btn{border:1px solid #66553a;color:#d4c5aa;background:#161713;border-radius:24px;font-size:10px;letter-spacing:.4px;padding:12px 18px}
.category-btn:hover{border-color:#c6a061;background:#28251b;color:#f5d7a5}
.category-btn.active{border-color:#dfb56c;color:#11100c;background:var(--gold-gradient);box-shadow:0 0 25px #c69a4d17}
.search-wrap{background:#161714;border:1px solid #7c6542;border-radius:24px}
.search-wrap input{color:#fff3e0;caret-color:#edc177}.search-wrap input::placeholder{color:#b9a989}.search-wrap svg{color:#d1a45f}
.result-info h3{color:#f4e4cc;font-size:35px}.result-info span{color:#ac8e5e}
.product-grid{gap:18px}
.product-card{background:#141512;border-radius:14px;border:1px solid #7f653d5e;box-shadow:0 10px 34px #0008;transition:transform .45s cubic-bezier(.19,1,.22,1),border-color .35s,box-shadow .45s;}
.product-card:hover{border-color:#e0ad63;box-shadow:0 22px 60px #000c;transform:translateY(-5px)}
.product-image-wrap{background:#090a09;aspect-ratio:1.34}
.product-image-wrap img{filter:saturate(.99) brightness(.92)}
.product-card:hover img{filter:saturate(1.13) brightness(1.01)}
.product-image-wrap:after{box-shadow:inset 0 -80px 80px #090a0955;border:0}
.product-info{padding:18px 20px 20px}
.product-meta{color:#c29b5f;font-size:8px}
.product-name{color:#f6e8d2;font-size:clamp(23px,2.4vw,31px)}
.product-short{color:#b4a797;font-size:11px;line-height:1.48}
.product-bottom{border-color:#997c4b44}
.price{color:#f1c57d;font-weight:550}.price small{color:#ad9674}
.add-btn{background:#d7aa60;color:#13100d;border-radius:50%;font-size:24px;box-shadow:0 0 0 1px #f2d5a5a3}
.add-btn:hover{background:#f1cc88;color:#110f09}
.product-badge{background:#d8af70;color:#211709;border-radius:0 0 9px 0}
.product-badge.soldout{background:#272621;color:#ddd0b7}
.empty-state{color:#e8d5ba}.empty-letter{color:#e1b56a}
/* Story/footer */
.story{background:radial-gradient(ellipse at 22% 0,#a36d2818,transparent 48%),#11110e;border-top:1px solid #d0a35a48;border-bottom:1px solid #d0a35a48}
.story-mark{background:#181612;border:1px solid #cda36563;padding:18px}
.story h2,.story h2 em{color:#faebd6}.story h2 em{color:#d6a55b}
.story .eyebrow{color:#d8aa6b}.story p{color:#b9a78e}
.story-btn,.outline-btn{border:1px solid #cda362;color:#f3d4a0;border-radius:25px}
.story-btn:hover,.outline-btn:hover{background:#d4a55d;color:#111009}
.footer{background:#090909;border-top:1px solid #caa2593b;padding-block:56px 115px}
.footer-logo-v5{width:255px;height:80px}.footer p,.footer-end{color:#b69b6e}
.floating-cart{bottom:23px;right:28px}
.floating-cart>button{background:#161410;border:1px solid #d6ab61;color:#f5deb1;border-radius:35px;padding:15px 23px;box-shadow:0 12px 40px #000b;font-size:10px;letter-spacing:1px}
.floating-cart>button:hover{background:#2a2116;transform:translateY(-3px)}
.floating-count{background:#d7a55d;color:#100c07}
/* Dark high-contrast product dialog and checkout */
.overlay{background:#000b;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.product-modal{background:#10110f;border:1px solid #af8949a3;border-radius:17px;box-shadow:0 35px 120px #000e;color:#eee2ce}
.modal-scroll,.modal-detail{background:#11120f}
.modal-visual{background:#10110e}.modal-image{object-fit:cover}
.photo-caption{background:#11120f;color:#b6a081;border-bottom:1px solid #99774763;font-size:11px;text-align:left}
.modal-detail{padding:36px 31px 32px}
.modal-detail h2{color:#ffedce;font-size:clamp(33px,3.8vw,51px)}
.modal-description{color:#b8ab97;font-size:17px}
.modal-detail .product-meta{color:#d9ae6b}
.field-label{color:#e8c68b;font-size:10px;letter-spacing:1.2px}
.field-note{color:#a79a87}
.inclusion{color:#dccaaf;background:#1f211a;border-left:2px solid #dfb369;font-size:11px}
.choice{background:#181915;border:1px solid #665637;border-radius:9px;color:#f0e2c8;padding:12px 9px}
.choice span{color:inherit}.choice small{color:#ba9e75}
.choice:hover:not(.selected){border-color:#cda15b;background:#24241c}
.choice.selected{background:linear-gradient(150deg,#2c261a,#221f16);border-color:#edbc69;color:#ffe4aa;box-shadow:inset 0 0 0 1px #a27a3e; padding:12px 9px}
.choice.selected small{color:#f8d390!important}
.option-select,.extra-checkbox{background:#1a1b17;border:1px solid #655438;border-radius:8px;color:#f0e4d1}
.option-select option,.extra-checkbox select option{background:#22221d;color:#f6e9d5}
.option-select:focus,.extra-checkbox:focus-within{border-color:#e3b36d}
.extra-checkbox{color:#e7d3af}.extra-checkbox strong{color:#f1c582}
.extra-checkbox select{background:#20211d;color:#ffe2ae;border:1px solid #80643b;border-radius:5px}
.preorder-box{background:#232015;border:1px solid #b88c4b;border-radius:8px;color:#dfcba6}
.preorder-box strong{color:#ffdc9b}.preorder-box p,.preorder-box small{color:#c8b795}
.schedule-fields input{background:#1a1b17;color:#f1d5a9;border:1px solid #907349;border-radius:5px;color-scheme:dark}
.qty-btn{background:#2c281f;color:#f7cf8c;border:1px solid #6d5a38;border-radius:5px}
.qty-btn:hover{background:#483725}
.modal-price{color:#c7ab80}.modal-price strong{color:#ffd38a}
.modal-bottom{background:#11120f;border-color:#9274486b}
.modal-submit,.primary-btn{background:var(--gold-gradient);border:1px solid #f1d297;color:#171109;border-radius:27px;font-weight:700}
.modal-submit:hover,.primary-btn:hover{background:#ffe0a3;color:#110d09}
.close-btn{background:#22221c;border:1px solid #8c744f;color:#e9c58c}
.cart-drawer{background:#11120f;color:#f3e4cb;border-left:1px solid #a47c44;box-shadow:-30px 0 100px #000e}
.cart-header{background:#141511;border-bottom:1px solid #7c6540}.cart-header .eyebrow-dark{color:#d5ae73}.cart-header h2{color:#f6ead6}.brand-period{color:#f0c476}
.cart-content{background:#11120f}.cart-item{border-bottom:1px solid #52452e}.cart-item img{border:1px solid #655137;border-radius:9px}
.cart-item-name{color:#f3e3c9}.cart-item-detail{color:#baa585}.cart-item-price{color:#ebc788}
.included-line{color:#a9b39d}.extra-line{color:#e6b56b}.cart-schedule{color:#e0bb79}
.cart-item-actions .text-btn{color:#efc985}.remove-btn{color:#d6a08b}
.cart-bottom{background:#171814;border-top:1px solid #80643e}
.delivery-input h3{color:#f6dfbd}.delivery-input p,.delivery-input label{color:#bba990}
.delivery-input input,.delivery-input textarea,.delivery-input select{background:#20211c;border:1px solid #69573a;border-radius:7px;color:#f6e8d5;color-scheme:dark}
.delivery-input input::placeholder,.delivery-input textarea::placeholder{color:#a2957e}
.summary-row{color:#c5b79c}.summary-row strong{color:#f0dbb9}.summary-row.grand{border-color:#715b3a;color:#fff2d9}.summary-row.grand strong{color:#fbd18c}
.cart-empty-monogram{color:#d5a760}.cart-empty h3{color:#f2e2c8}.cart-empty p{color:#a99b87}
.form-error{color:#e9a78d}.toast{background:#211c15;border:1px solid #cb9c57;color:#f7e1bf;border-radius:12px}
/* Receipt retains a printable pale paper for clarity and device save/share */
.receipt-panel{background:#000d;backdrop-filter:blur(12px)}
.receipt-card{background:#f6ebd8;border:1px solid #b89050;border-radius:14px;color:#2d2317;box-shadow:0 20px 110px #000e}
.receipt-heading{border-color:#cfb586}.receipt-card h3{color:#4b3020}.receipt-note{color:#65553d}
.receipt-actions button{border-radius:8px}.receipt-actions button:first-child{background:#a9793d;color:#0d0b08}
.receipt-actions button:nth-child(n+2){background:#e4d4b9;color:#3f2c19}
.receipt-card pre{background:#fffaed;border-color:#cdb895;color:#2d261d}
.receipt-share-help{color:#71593a}
.reading-progress{background:var(--gold-gradient);height:3px;box-shadow:0 0 18px #d2a76698}
/* Device-specific composition */
@media(max-width:1140px){
 .container{width:calc(100% - 46px)}
 .header-inner{gap:20px}.brand{width:190px;flex-basis:190px}
 .desktop-links{gap:18px}.desktop-links a{font-size:10px}
 .header-actions .city{display:none}
 .hero-left{padding-left:40px;width:52%}
 .hero-right{left:35%}
 .noir-collection-grid{grid-template-rows:repeat(2,238px)}
 .noir-category-caption strong{font-size:34px}
}
@media(max-width:760px){
 html{scroll-padding-top:86px}
 .container{width:calc(100% - 28px)}
 .announcement{height:22px;font-size:7px;letter-spacing:.65px;gap:7px}
 .announcement-separator{display:none}
 .header{position:sticky;top:0}.header-inner{height:69px;gap:10px;justify-content:space-between}
 .brand{width:181px;height:65px;flex:0 1 181px;max-width:52vw}.brand-logo-v5{height:65px;max-height:65px;width:100%;object-position:left center}
 .desktop-links{display:none}
 .header-actions{margin-left:auto}.icon-btn{height:43px;width:43px}.cart-trigger svg{width:25px;height:25px}
 .hero.container{min-height:0;height:auto;display:block;position:relative;padding:0;overflow:hidden;background:#0b0b09}
 .hero-right{position:absolute;inset:0;width:100%;height:100%;min-height:0;z-index:0;opacity:.90}
 .hero-right img{object-position:65% 45%;height:100%;filter:brightness(.57) contrast(1.13) saturate(1.16)}
 .hero-right::after{background:linear-gradient(90deg,#090a09cf 0%,#0d0c0880 70%,#090a094d),linear-gradient(0deg,#080908 0%,#090a0944 40%,#08090860 100%)}
 .hero-left{position:relative;z-index:2;height:auto;min-height:485px;padding:46px 25px 39px;width:100%;order:1;background:none!important;display:flex;align-items:flex-start}
 .hero .eyebrow{font-size:7.5px;letter-spacing:2.1px;gap:10px;white-space:normal}.hero .eyebrow .line{width:23px}
 .hero h1{width:min(92%,400px);height:auto;min-height:129px;margin:24px 0 0}
 .hero-display-logo{width:100%;height:130px;object-fit:contain;object-position:left center}
 .hero-manifesto{font-size:10px;letter-spacing:2.9px;margin:3px 0 16px}
 .hero-left>p{font-size:16px;line-height:1.45;max-width:340px;margin:0 0 24px;color:#f3e7d7}
 .hero .primary-btn{min-height:47px;min-width:188px;font-size:9px;letter-spacing:1.1px}
 .hero-social{font-size:8px;margin-top:auto;padding-top:28px}
 .hero-photo-caption{position:absolute;right:17px;bottom:18px;left:auto;text-align:right;align-items:flex-end;max-width:35%;z-index:3}
 .hero-photo-caption strong{font-size:19px}.hero-photo-caption>span,.hero-caption-small{font-size:7px;letter-spacing:.7px}
 .hero-scroll{display:none}
 .noir-collections{padding:51px 0 20px}
 .noir-collections-header{display:block;margin:0 2px 22px}.noir-collections-header h2{font-size:43px;letter-spacing:-1px;margin:10px 0}
 .noir-collections-header>p{font-size:15px;max-width:330px}
 .noir-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;gap:11px}
 .noir-category:nth-child(n){grid-column:span 1;height:193px;border-radius:12px}
 .noir-category:nth-child(1){grid-column:span 2;height:235px}
 .noir-category img{object-position:center 42%}
 .noir-category-nr{top:12px;left:13px;font-size:7px;letter-spacing:.8px}
 .noir-category-caption{left:15px;right:10px;bottom:13px;gap:3px}
 .noir-category-caption strong{font-size:clamp(23px,6vw,31px)}
 .noir-category-caption>span:nth-child(2){font-size:12px;line-height:1.25}
 .noir-category-link{padding:7px 12px;gap:14px;margin-top:8px;font-size:7px;letter-spacing:.6px}
 .noir-category-link b{font-size:16px}
 .marquee{height:43px}.marquee div{font-size:9px}
 .editorial-intro{padding:55px 0;display:block}.editorial-index{display:block;font-size:9px;margin-bottom:18px}
 .editorial-intro h2{font-size:39px;line-height:1.04}.editorial-intro p{font-size:16px;margin-top:20px}
 .menu-section{padding-top:55px;padding-bottom:89px}
 .section-head h2{font-size:47px}.section-head p{font-size:11px;line-height:1.5}.menu-edition{display:none}
 .menu-toolbar{padding:22px 0 18px;gap:13px}.category-btn{font-size:9px;padding:10px 14px;white-space:nowrap}
 .search-wrap{width:100%;max-width:none;min-width:0;height:42px}
 .result-info{margin:26px 0 17px}.result-info h3{font-size:29px}.result-info span{font-size:9px}
 .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .product-image-wrap{aspect-ratio:1.01}.product-info{padding:11px 11px 13px}
 .product-name{font-size:clamp(19px,5.4vw,26px);line-height:1.08}
 .product-meta{font-size:7px;letter-spacing:1px}.product-short{font-size:9px;min-height:42px;line-height:1.4}
 .price{font-size:20px}.price small{font-size:8px}.add-btn{width:31px;height:31px}
 .story{padding:61px 0}.story-inner{display:flex}.story-mark{width:148px;height:92px}.story h2{font-size:42px}.story p{font-size:15px}
 .footer{padding:35px 0 112px}.footer-logo-v5{width:208px;height:75px}
 .floating-cart{left:11px;right:11px;bottom:max(12px,env(safe-area-inset-bottom))}
 .floating-cart>button{width:100%;border-radius:28px;padding:14px 17px}
 .product-modal{width:100vw;max-height:95dvh;background:#11120f;border-radius:18px 18px 0 0;border-bottom:0}
 .modal-scroll{max-height:95dvh}.modal-image{height:255px;max-height:36dvh;object-fit:cover}
 .modal-detail{padding:22px 19px max(25px,env(safe-area-inset-bottom))}.modal-detail h2{font-size:38px}
 .modal-description{font-size:15px}.choice{padding:12px 6px;font-size:10px}.choice.selected{padding:12px 6px}
 .modal-bottom{background:#11120f;position:sticky;bottom:0;padding:15px 0 8px}
 .cart-drawer{width:100vw;max-width:480px}.cart-content{background:#11120f}.cart-bottom{background:#171814}
 .receipt-card{padding:20px}
}
@media(max-width:370px){
 .header-inner{height:62px}.brand{width:158px;flex-basis:158px}.brand-logo-v5{height:60px;max-height:60px}
 .hero-left{padding:35px 19px 32px;min-height:455px}.hero h1{min-height:115px}.hero-display-logo{height:116px}
 .hero-left>p{font-size:15px}.hero-manifesto{letter-spacing:2px}
 .hero-photo-caption{display:none}
 .noir-category:nth-child(n){height:181px}.noir-category:nth-child(1){height:218px}
 .noir-category-caption{left:11px;right:8px}.noir-category-caption strong{font-size:23px}.noir-category-caption>span:nth-child(2){font-size:11px}
 .noir-category-link{font-size:7px;padding:6px 9px;gap:8px}
 .product-info{padding:10px 9px}.product-name{font-size:19px}.product-short{font-size:8.5px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
@media print{body{background:#fff;color:#000}.receipt-card{background:#fff!important;color:#111!important}}


/* polish.css */
/* ANDALUS / FINAL DETAIL PASS
   One scroll surface inside the checkout drawer; all controls are in natural flow.
   The supplied SVG is used without a background, crop, or rasterization. */
:root { --and-gold:#d7ab5b; --and-gold-light:#f5d397; }
html { scroll-padding-top:94px; }
body { -webkit-tap-highlight-color:transparent; }
button, a, input, textarea, select { touch-action:manipulation; }
button:focus-visible, a:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible { outline:2px solid var(--and-gold-light);outline-offset:3px; }
/* Brand: faithful to user supplied transparent SVG */
.header-inner { height:76px; gap:clamp(14px,2vw,30px); }
.brand { flex:0 0 clamp(170px,17vw,211px);width:clamp(170px,17vw,211px);height:67px;min-width:0; }
.brand-logo-v5 { height:61px;max-height:61px;width:100%;object-fit:contain;object-position:left center;filter:none; }
.desktop-links { gap:clamp(14px,1.65vw,31px); }
.desktop-links a { padding-block:13px;font-size:11px; }
.header-actions { gap:14px; }
.header-actions .icon-btn { width:43px;height:43px;padding:8px; }
.header-actions .icon-btn svg { height:23px;width:23px; }
.cart-count { font-size:10px;min-width:18px;height:18px; }
.hero h1 { height:auto;min-height:0;margin:19px 0 9px;width:min(100%,460px); }
.hero-display-logo { height:auto;aspect-ratio:837/150;width:100%;object-fit:contain;filter:drop-shadow(0 9px 20px #0004); }
.hero-manifesto { margin:6px 0 18px;letter-spacing:3.2px;font-size:11px; }
.hero-left>p { font-size:clamp(16px,1.6vw,19px);line-height:1.56;max-width:410px; }
.hero .primary-btn { min-width:0;min-height:43px;padding:0 19px;gap:14px;font-size:10px;letter-spacing:.7px; }
.hero .primary-btn .cta-line { width:19px; }
.noir-category-link { padding:7px 11px;gap:12px;letter-spacing:.6px;font-size:8px;line-height:1;min-height:29px; }
.noir-category-caption strong { font-size:clamp(27px,2.5vw,37px); }
.noir-category-caption>span:nth-child(2){font-size:14px;}
.product-card .add-btn { width:37px;height:37px;font-size:22px;position:relative; }
.product-card .add-btn::before { content:"";position:absolute;inset:-4px; }
/* Cart: header only is fixed; items, delivery fields AND totals scroll together. */
.cart-drawer { display:flex;flex-direction:column;max-height:100dvh;height:100dvh;overflow:hidden; }
.cart-header { flex:0 0 auto;padding:17px 21px 13px;align-items:center; }
.cart-header h2 { font-size:clamp(26px,3vw,32px);margin:4px 0 0; }
.cart-header .eyebrow { font-size:9px; }
.cart-header .close-btn { width:35px;height:35px;font-size:23px; }
.cart-scroll-region { flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;scrollbar-gutter:stable; }
.cart-scroll-region:focus-visible { outline-offset:-2px; }
.cart-content { display:block;flex:none;overflow:visible;max-height:none;min-height:0;padding:20px 22px 7px; }
.cart-bottom { position:static;display:block;flex:none;min-height:0;padding:17px 22px max(28px,env(safe-area-inset-bottom));margin:0;background:#141510;border-top:1px solid #7a623c6b; }
.cart-item { gap:11px;padding-bottom:15px;margin-bottom:15px; }
.cart-item img { width:76px;height:76px;flex:none; }
.cart-item-name { font-size:18px; }
.cart-item-price { font-size:12px; }
.cart-item-actions .qty-btn { width:33px;height:33px; }
.cart-item-actions { gap:8px; }
.delivery-input { margin:18px 0 10px;gap:7px; }
.delivery-input h3 { font-size:24px;margin:0 0 2px; }
.delivery-input .field-note { margin:0 0 8px;font-size:11px;line-height:1.5; }
.delivery-input label { font-size:10px;margin-top:8px;letter-spacing:.3px; }
.delivery-input input,.delivery-input textarea,.delivery-input select { min-height:43px;padding:10px 12px; }
.delivery-input textarea { min-height:67px; }
#cart-totals { margin-bottom:14px; }
.summary-row { font-size:12px;margin-bottom:5px;line-height:1.45; }
.summary-row.grand { border-top:1px solid #765e3e;margin-top:9px;padding-top:10px; }
.summary-row.grand strong { font-size:22px; }
.cart-bottom .checkout-btn { min-height:44px;max-height:44px;font-size:11px;letter-spacing:.65px;box-shadow:none; }
.cart-bottom>.field-note { font-size:10px;line-height:1.55;text-align:center;margin:10px 0 0;color:#b6a589; }
/* Buttons are restrained: content and food photography take visual priority. */
.modal-submit { min-height:44px;font-size:10px;padding:0 15px; }
.modal-bottom { gap:10px; }
.modal-price strong { font-size:26px; }
.choice { font-size:12px;min-height:44px; }
.choice small { font-size:11px; }
.floating-cart>button { min-height:45px;padding:11px 17px;border-radius:26px;gap:14px;box-shadow:0 6px 22px #000a;font-size:10px; }
.floating-cart svg { width:17px;height:17px; }
.floating-count { min-width:19px; }
.receipt-heading img { width:190px;height:auto;max-height:40px;object-fit:contain;object-position:left center; }
.receipt-card .receipt-actions button { padding:11px 14px;font-size:12px;min-height:43px; }
.receipt-card { overscroll-behavior:contain; }
/* Avoid tall modals and decorative elements crowding narrow screens. */
@media(max-width:860px){
  .header-inner { height:64px; }
  .brand { width:175px;flex-basis:175px;height:57px; }
  .brand-logo-v5 { max-height:51px;height:51px; }
  .desktop-links { gap:13px; }
  .desktop-links a { font-size:10px; }
  .city { display:none; }
}
@media(max-width:760px){
  html { scroll-padding-top:69px; }
  .header-inner { height:62px; }
  .brand { width:min(57vw,196px);flex-basis:min(57vw,196px);height:54px; }
  .brand-logo-v5 { height:51px;max-height:51px;object-position:left center; }
  .hero h1 { margin:16px 0 8px;width:min(100%,360px); }
  .hero-display-logo { width:100%;height:auto; }
  .hero-manifesto { font-size:10px;letter-spacing:2.2px;margin:8px 0 16px; }
  .hero-left>p { font-size:15px;line-height:1.53; }
  .hero .primary-btn { min-height:42px;min-width:0;padding:0 16px;letter-spacing:.65px; }
  .noir-collections-header h2 { font-size:35px; }
  .noir-category-caption strong { font-size:clamp(23px,6vw,30px); }
  .noir-category-caption>span:nth-child(2){font-size:12px;}
  .noir-category-link { border-color:#cda666aa;min-height:27px;padding:6px 8px;font-size:8px; }
  .product-card .add-btn { width:33px;height:33px; }
  .floating-cart { width:auto;left:auto;right:14px;bottom:max(13px,env(safe-area-inset-bottom)); }
  .floating-cart>button { width:auto;min-width:152px;max-width:205px;min-height:43px;gap:9px;padding:10px 15px;border-radius:28px;letter-spacing:.3px; }
  #floating-cart .floating-count { font-size:9px; }
  .floating-cart #floating-cart-total,.floating-cart #floating-total { white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:90px;font-size:10px; }
  .cart-header { padding:15px 18px 12px; }
  .cart-content { padding:17px 18px 8px; }
  .cart-bottom { padding:16px 18px max(29px,env(safe-area-inset-bottom)); }
  .cart-scroll-region { scrollbar-gutter:auto; }
  .summary-row.grand strong { font-size:21px; }
  .modal-detail { padding:21px 18px max(22px,env(safe-area-inset-bottom)); }
  .modal-detail h2 { font-size:34px; }
  .modal-image { height:210px;max-height:28dvh; }
  .modal-description { font-size:14px; }
  .modal-bottom { padding-block:10px 7px; }
  .receipt-card { max-height:94dvh; }
}
@media(max-width:390px){
  .brand { width:167px;flex-basis:167px; }
  .brand-logo-v5 { height:47px;max-height:47px; }
  .header-inner { gap:6px; }
  .cart-header h2 { font-size:26px; }
  .modal-price strong { font-size:22px; }
  .noir-category-link { font-size:7px; }
}
@media(prefers-reduced-motion:reduce) {
  .noir-category,.product-card,.primary-btn,.floating-cart>button { transition:none!important;transform:none!important; }
}

/* Graceful status and caption weight */
.receipt-logo-v5{width:205px!important;max-height:46px;object-fit:contain;object-position:left center;}
.summary-row.grand strong{min-width:0;white-space:nowrap;}
.cart-bottom #cart-totals{contain:layout;}


/* hero-refresh.css */
/* Hero refresh: warmer, less repetitive, more food-forward */
.hero.container{min-height:660px;height:min(760px,calc(100svh - 96px));background:#150b0f}
.hero-atmosphere{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 16% 28%,rgba(219,171,103,.14),transparent 25%),radial-gradient(circle at 82% 18%,rgba(255,220,160,.08),transparent 18%);z-index:0}
.hero-right img{object-position:64% 50%;transform:scale(1.015);filter:saturate(1.04) contrast(1.02) brightness(1.02)}
.hero-right::after{background:linear-gradient(90deg,rgba(18,9,13,.82) 0%,rgba(25,11,16,.62) 16%,rgba(31,12,18,.30) 30%,rgba(24,10,14,.08) 48%,rgba(17,9,13,.04) 100%),linear-gradient(0deg,rgba(18,10,14,.18) 0%,rgba(18,10,14,0) 30%)}
.hero-left{width:min(47%,660px);padding:clamp(72px,8vw,124px) 40px 74px max(50px,calc((100vw - 1340px)/2))}
.hero .eyebrow{color:#e9c890}
.hero h1{font-size:clamp(68px,6.7vw,110px);line-height:.92;letter-spacing:-3.4px;margin:24px 0 14px;text-transform:none;color:#fff3df;text-shadow:0 6px 24px rgba(0,0,0,.16)}
.hero h1 span{display:block;max-width:7ch}
.hero h1 em{display:block;font-size:.54em;line-height:1;margin-top:10px;letter-spacing:-1.4px;color:#f0c584;opacity:.96}

.hero-manifesto{font-size:11px;letter-spacing:3.3px;color:#f2dbc3;font-weight:650;margin:0 0 18px}
.hero-left>p{max-width:520px;color:#f3e4d2;font-size:18px;line-height:1.65;margin-bottom:22px}
.hero-pill-row{display:flex;flex-wrap:wrap;gap:10px 10px;margin:0 0 28px;max-width:560px}
.hero-pill{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border:1px solid rgba(228,194,140,.34);background:rgba(35,16,22,.42);backdrop-filter:blur(10px);color:#f4dec2;font:600 10px/1 var(--sans);letter-spacing:1.7px;text-transform:uppercase;border-radius:999px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}
.hero-cta{display:flex;flex-wrap:wrap;align-items:center;gap:16px}
.hero .primary-btn{min-width:216px}
.hero-secondary-link{display:inline-flex;align-items:center;min-height:50px;color:#f0d1a1;text-decoration:none;font:650 10px var(--sans);letter-spacing:2px;transition:transform .35s var(--ease),color .3s ease,opacity .3s ease;opacity:.92}
.hero-secondary-link:hover{color:#fff0d2;transform:translateY(-2px)}
.hero-social{margin-top:30px}
.hero-photo-caption{right:max(45px,calc((100vw - 1340px)/2));bottom:48px;max-width:360px;background:linear-gradient(180deg,rgba(15,7,10,.22),rgba(15,7,10,.54));padding:18px 20px;border:1px solid rgba(231,193,132,.22);backdrop-filter:blur(10px)}
.hero-welcome-card{position:absolute;z-index:2;right:max(55px,calc((100vw - 1340px)/2));top:96px;max-width:270px;padding:20px 22px;background:rgba(23,11,15,.42);border:1px solid rgba(230,190,129,.28);backdrop-filter:blur(12px);box-shadow:0 22px 55px rgba(0,0,0,.18)}
.hero-welcome-card strong{display:block;font:400 29px/1 var(--serif);color:#fff1dc;margin-bottom:8px}
.hero-welcome-card span{display:block;font:400 13px/1.55 var(--reading);color:#ebd7c1}
.hero-sticker{display:none}
.noir-collections,.editorial-intro,.menu-section,.story,.footer{content-visibility:auto;contain-intrinsic-size:900px}
.noir-category img,.story-mark img,.footer-logo-v5,.brand-logo-v5{image-rendering:auto}
.noir-category{overflow:hidden}
.noir-category img{transition:transform 1s cubic-bezier(.19,1,.22,1),filter .45s ease}
.noir-category:hover img{transform:scale(1.06);filter:saturate(1.04)}
.noir-category::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 0%,rgba(255,245,232,.04) 35%,transparent 52%);transform:translateX(-120%);transition:transform .95s var(--ease);pointer-events:none}
.noir-category:hover::after{transform:translateX(120%)}
@keyframes heroGentleFloat{0%{transform:scale(1.02) translate3d(0,0,0)}50%{transform:scale(1.045) translate3d(0,-8px,0)}100%{transform:scale(1.02) translate3d(0,0,0)}}
@media (prefers-reduced-motion:no-preference){.hero-right img{animation:heroGentleFloat 16s ease-in-out infinite}}
@media(max-width:1150px){.hero-left{width:min(54%,700px)}.hero-welcome-card{right:34px;top:84px}}
@media(max-width:760px){.hero.container{height:auto;min-height:0;display:flex;flex-direction:column;background:#140b0f}.hero-left{order:1;width:100%;min-height:0;padding:46px 24px 34px;max-width:100%;background:linear-gradient(180deg,#140b0f 0%, #140b0f 84%, rgba(20,11,15,.96) 100%) !important}.hero h1{font-size:clamp(44px,11.2vw,64px);line-height:.98;letter-spacing:-1.7px;margin:18px 0 10px}.hero-manifesto{font-size:9px;letter-spacing:2.3px;margin-bottom:14px}.hero-left>p{font-size:15px;line-height:1.55;max-width:100%;margin-bottom:18px}.hero-pill-row{gap:8px;margin-bottom:22px}.hero-pill{min-height:32px;padding:0 12px;font-size:8px;letter-spacing:1.2px}.hero .primary-btn{min-width:188px;min-height:46px;padding:0 15px;font-size:9px}.hero-secondary-link{min-height:46px;font-size:9px;letter-spacing:1.7px}.hero-social{display:flex;margin-top:18px;font-size:8px;letter-spacing:1.8px}.hero-right{order:2;height:330px}.hero-right::after{background:linear-gradient(0deg,rgba(20,11,15,.14) 0%,rgba(20,11,15,0) 28%),linear-gradient(90deg,rgba(20,11,15,.06),transparent 40%)}.hero-photo-caption{left:18px;right:18px;bottom:18px;max-width:none;padding:14px 16px}.hero-photo-caption strong{font-size:24px}.hero-welcome-card{display:none}.hero-scroll{display:none}}
@media(max-width:390px){.hero-left{padding:40px 20px 30px}.hero h1{font-size:40px}.hero-left>p{font-size:14px}.hero-pill{font-size:7.5px;padding:0 10px}}

/* Hero refresh 2: clean food-forward composition */
.hero.container{display:grid;grid-template-columns:minmax(360px, 520px) 1fr;align-items:stretch;min-height:640px;height:auto;overflow:hidden;background:#0f080b}
.hero-left{position:relative;z-index:2;width:auto;padding:78px 42px 62px max(28px,calc((100vw - 1340px)/2));background:linear-gradient(180deg,#160b10 0%,#14080d 100%)}
.hero-right{position:relative;inset:auto;min-height:640px;height:100%;background:#0c0908}
.hero-right img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 54%;transform:none;filter:saturate(1.02) contrast(1.01) brightness(1.02);animation:none}
.hero-right::after,.hero-atmosphere,.hero-photo-caption,.hero-welcome-card{display:none !important}
.hero h1{font-size:clamp(62px,6vw,96px);line-height:.95;letter-spacing:-2.8px;margin:20px 0 12px;max-width:8.2ch}
.hero h1 span{max-width:none}
.hero h1 em{font-size:.44em;line-height:1.05;margin-top:14px;letter-spacing:-.8px}
.hero-left>p{max-width:430px;font-size:17px;line-height:1.72;margin-bottom:18px}
.hero-pill-row{max-width:470px;margin-bottom:26px}
.hero-pill{background:transparent;border-color:rgba(228,194,140,.42)}
.hero-social{margin-top:26px}
.hero-scroll{bottom:20px;left:calc(520px + 50% - 100px);transform:none;opacity:.72}
/* Remove dark veils from food images site-wide */
.noir-category img{filter:saturate(1.03) contrast(1.01) brightness(1.02) !important}
.noir-category:hover img{filter:saturate(1.05) contrast(1.01) brightness(1.03) !important;transform:scale(1.045)}
.noir-category-cover{background:none !important}
.product-image-wrap::after{display:none !important}
.product-image-wrap img,.product-card:hover img{filter:none !important}
@media(max-width:1150px){
  .hero.container{grid-template-columns:minmax(330px, 460px) 1fr;min-height:590px}
  .hero-left{padding:64px 30px 52px}
  .hero-right{min-height:590px}
  .hero h1{font-size:clamp(54px,6.4vw,82px)}
  .hero-scroll{display:none}
}
@media(max-width:760px){
  .hero.container{display:flex;flex-direction:column;background:#10080c}
  .hero-left{order:1;padding:42px 22px 24px;background:#14090d !important}
  .hero-right{order:2;height:300px;min-height:300px}
  .hero-right img{position:absolute;object-fit:cover;object-position:center 52%;filter:saturate(1.03) contrast(1.01) brightness(1.02)}
  .hero h1{font-size:clamp(40px,10vw,56px);line-height:1.02;letter-spacing:-1.2px;max-width:9ch}
  .hero h1 em{font-size:.52em;line-height:1.05;margin-top:10px;letter-spacing:-.5px}
  .hero-manifesto{font-size:8px;letter-spacing:2.1px;margin-bottom:12px}
  .hero-left>p{font-size:14px;line-height:1.6;max-width:none;margin-bottom:16px}
  .hero-pill-row{gap:8px;margin-bottom:18px;max-width:none}
  .hero-pill{min-height:30px;padding:0 10px;font-size:7.5px;letter-spacing:1px}
  .hero-social{display:none}
  .hero-scroll{display:none}
}
@media(max-width:390px){
  .hero-left{padding:38px 18px 22px}
  .hero-right{height:270px;min-height:270px}
  .hero h1{font-size:37px}
  .hero-left>p{font-size:13.5px}
}


/* refined.css */
/* Refined edition: food remains fully visible; locally hosted typography. */
@font-face{font-family:AndalusDisplay;src:url('assets/fonts/display.woff') format('woff');font-display:swap;font-weight:400}
@font-face{font-family:AndalusDisplay;src:url('assets/fonts/display-italic.woff') format('woff');font-display:swap;font-weight:400;font-style:italic}
@font-face{font-family:AndalusSans;src:url('assets/fonts/sans.woff') format('woff');font-display:swap;font-weight:400}
@font-face{font-family:AndalusSans;src:url('assets/fonts/sans-bold.woff') format('woff');font-display:swap;font-weight:600 900}
:root{--serif:AndalusDisplay,Georgia,serif;--sans:AndalusSans,Arial,sans-serif;--reading:AndalusSans,Arial,sans-serif;--ease:cubic-bezier(.22,1,.36,1)}
body{font-family:var(--sans);-webkit-font-smoothing:antialiased}button,input,select,textarea{font-family:var(--sans)}
:focus-visible{outline:2px solid #edca87;outline-offset:4px}button,a{-webkit-tap-highlight-color:transparent}
.hero.container{grid-template-columns:minmax(0, .85fr) minmax(0,1.15fr);min-height:0;background:#0b0c0b;max-width:1600px;margin-inline:auto}
.hero-left{grid-column:1;grid-row:1;background:#0b0c0b!important;padding:clamp(32px,5vw,76px) clamp(24px,4vw,64px)}
.hero-left::after{display:none}.hero-right{grid-column:2;grid-row:1;display:flex;align-items:center;min-height:0;height:auto;background:#050505}
.hero-right img{position:relative;inset:auto;display:block;width:100%;height:auto;object-fit:contain;object-position:center;filter:none!important;transform:none!important;translate:none!important;animation:none!important}
.hero-right-shade,.hero-right::after{display:none!important}.hero h1{font-size:clamp(44px,4.8vw,76px);font-weight:400;line-height:1.06;letter-spacing:-2px;max-width:10ch;text-shadow:none;margin:22px 0}
.hero h1 em{font-size:.62em;margin-top:12px;letter-spacing:-1px}.hero-left>p{font-size:15px;line-height:1.7;color:#d7cbb7}.hero-manifesto{line-height:1.7;font-size:9px;letter-spacing:2px}.hero-pill{font-size:9px;letter-spacing:.6px;min-height:32px}.hero-scroll{display:none}
.hero .primary-btn{min-height:48px;border-radius:8px}.hero-social{font-size:9px;letter-spacing:1px}.hero .eyebrow{font-size:10px;letter-spacing:1.8px}
.noir-collections,.editorial-intro,.menu-section,.story,.footer{content-visibility:visible;contain-intrinsic-size:none}
.noir-collection-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:20px}.noir-category,.noir-category-major{display:flex;flex-direction:column;grid-column:auto;grid-row:auto;min-height:0;height:auto;border-radius:16px;background:#111310;border:1px solid #ad8a4d36}
.noir-category img{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;filter:none!important;transform:none!important}
.noir-category::after,.noir-category-cover{display:none!important}.noir-category-nr{position:static;order:2;padding:16px 20px 0;font-size:9px;color:#bea16c}.noir-category-caption{position:static;order:3;padding:10px 20px 24px;background:none;text-shadow:none}.noir-category-caption strong{font-family:var(--serif);font-size:30px}.noir-category-caption>span{font-size:12px;line-height:1.5}.noir-category-link{margin-top:14px!important}
.noir-collections-header h2,.section-head h2{font-size:clamp(40px,5vw,66px);line-height:1.06;letter-spacing:-1.5px}.editorial-intro{padding-block:64px}.editorial-intro h2{font-size:clamp(34px,4vw,54px)}
.menu-section{padding-top:64px}.product-grid{gap:24px}.product-card{border-radius:16px;overflow:hidden;display:flex;flex-direction:column}.card-photo-button{display:block;width:100%}.product-image-wrap{aspect-ratio:3/2;background:#080908}.product-image-wrap img,.product-card:hover img{width:100%;height:100%;object-fit:contain;transform:none!important;filter:none!important;will-change:auto}
.product-info{padding:20px;display:flex;flex-direction:column;flex:1}.product-name{font:400 clamp(23px,2.1vw,29px)/1.18 var(--serif);letter-spacing:-.4px;text-wrap:balance}.product-short{font-size:12px;line-height:1.5;min-height:36px}.product-bottom{margin-top:auto;padding-top:16px}.product-meta{font-size:9px;letter-spacing:1.5px}.price{font-family:var(--sans);font-weight:600;font-size:22px;font-variant-numeric:tabular-nums}.add-btn{min-height:44px;min-width:44px}.add-btn:hover{transform:translateY(-2px)}
.menu-toolbar{gap:14px}.category-scroll{scrollbar-width:none;scroll-padding:12px}.category-scroll::-webkit-scrollbar{display:none}.category-btn{min-height:44px;padding:12px 16px;font-size:11px;letter-spacing:.6px;border-radius:24px}.search-wrap{min-height:46px;border-radius:10px}.search-wrap input{font-size:16px}
.modal-image{display:block;width:100%;height:auto;max-height:none;aspect-ratio:3/2;object-fit:contain;background:#080908;transform:none!important;filter:none!important}.modal-visual{background:#080908}.photo-caption{font-size:11px;line-height:1.5}.modal-detail{padding:28px}.modal-detail h2{font:400 34px/1.12 var(--serif)}.modal-description{font-size:14px;line-height:1.65}.field-note{font-size:12px;line-height:1.55}.salad-ingredients{margin:8px 0 14px}.option-select,.delivery-input input,.delivery-input textarea,.delivery-input select{font-size:16px;min-height:46px}.extra-checkbox{min-height:48px}.extra-checkbox select{min-height:38px;min-width:54px}.qty-btn,.close-btn{min-width:44px;min-height:44px}.modal-bottom{gap:16px}.modal-submit{min-height:48px}.floating-cart{bottom:max(16px,env(safe-area-inset-bottom));right:20px}
@media(min-width:1100px){.noir-category:nth-child(4),.noir-category:nth-child(5){grid-column:auto}.noir-collection-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.noir-category{grid-column:span 2}.noir-category:nth-child(4){grid-column:2/span 2}.noir-category:nth-child(5){grid-column:4/span 2}}
@media(max-width:1000px) and (min-width:761px){.hero h1{font-size:48px}.hero-left{padding:36px 24px}.hero-pill-row{display:none}.noir-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
.container{width:calc(100% - 32px)}.header-inner{min-height:72px}.brand-logo-v5{max-width:210px}.announcement{font-size:8px;letter-spacing:1px;height:28px}.hero.container{width:100%;display:flex;flex-direction:column;min-height:0}.hero-right{order:0;width:100%;height:auto;min-height:0}.hero-right img{height:auto;aspect-ratio:3/2;object-fit:contain;position:relative}.hero-left{order:1;padding:28px 24px 32px}.hero h1{font-size:clamp(39px,10vw,52px);line-height:1.02;max-width:none;letter-spacing:-1.2px;margin:14px 0}.hero h1 span{max-width:none}.hero h1 em{font-size:.7em}.hero-manifesto{display:none}.hero-left>p{font-size:14px;line-height:1.6;margin-bottom:16px}.hero-pill-row{display:none}.hero .eyebrow{font-size:9px}.hero-cta{gap:18px}.hero .primary-btn{min-width:180px;font-size:10px}.hero-secondary-link{font-size:9px}.noir-collections{padding-block:48px}.noir-collections-header{margin-bottom:24px}.noir-collections-header p{font-size:13px}.noir-collection-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:14px;scrollbar-width:thin}.noir-category,.noir-category-major{flex:0 0 84%;scroll-snap-align:start}.noir-category-caption strong{font-size:30px}.noir-category-caption{padding-bottom:20px}.editorial-intro{padding-block:40px}.editorial-intro p{font-size:13px}.menu-section{padding-top:36px}.section-head p{font-size:13px;line-height:1.65}.menu-edition{display:none}.menu-toolbar{position:sticky;top:72px;z-index:10;background:#0b0c0bf5;padding:12px 0;backdrop-filter:blur(14px)}.product-grid{grid-template-columns:1fr;gap:22px}.product-info{padding:18px 20px}.product-name{font-size:28px;text-wrap:initial}.product-short{min-height:0;font-size:13px}.product-bottom{padding-top:12px}.product-badge{font-size:9px}.modal-detail{padding:24px 20px}.modal-detail h2{font-size:32px}.product-modal{max-height:94dvh}.modal-scroll{overscroll-behavior:contain}.cart-drawer{max-width:100vw}.cart-scroll-region{overscroll-behavior:contain}.floating-cart{right:16px;bottom:max(14px,env(safe-area-inset-bottom))}.footer{padding-bottom:100px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}.reading-progress{display:none}}
@media(max-width:400px){.announcement{white-space:nowrap;justify-content:center}.announcement>span:nth-of-type(4),.announcement-separator{display:none}}


/* finish.css */
/* Andalus / final interaction finish. Keep food, branding, and menu intact. */
:root {
  --motion-ease: cubic-bezier(.22,1,.36,1);
  --motion-short: 180ms;
  --motion-medium: 360ms;
  --header-height: 76px;
}
html { scrollbar-gutter: stable; scroll-padding-top: calc(var(--header-height) + 20px); }
body { overflow-x: clip; }
body.locked {
  position: fixed; top: var(--locked-y,0); left: 0;
  width: var(--locked-width,100%); overflow: hidden;
}
button, a { touch-action: manipulation; }
button { cursor: pointer; }
button:disabled { cursor: default; }
.header { transition: background-color 260ms ease, border-color 260ms ease; }
.header.header-scrolled { background: #0b0c0bf5; border-bottom-color: #b8955559; }
.header-inner { height: var(--header-height); min-height: var(--header-height); }
.brand-logo-v5 { transition: opacity var(--motion-short) ease; }
.brand:hover .brand-logo-v5 { opacity: .8; }
.desktop-links a { position: relative; text-decoration: none; }
.desktop-links a::after {
  content: ''; position: absolute; bottom: 5px; height: 1px; left: 0; right: 0;
  background: #dbb775; transform: scaleX(0); transform-origin: left;
  transition: transform var(--motion-medium) var(--motion-ease);
}
.desktop-links a:hover::after, .desktop-links a.nav-current::after { transform: scaleX(1); }
.desktop-links a.nav-current { text-decoration: none; }
.hero-right { opacity: 1; }
.hero h1 > span, .hero h1 > em { display: block; }
.hero h1 { width: 100%; }
.hero-right img { will-change: auto; }
.hero .primary-btn {
  background: linear-gradient(115deg,#ecd198,#c6a15f);
  border: 1px solid #dfc18b; color: #17150f; box-shadow: none;
  min-height: 50px; padding-inline: 22px; border-radius: 8px;
}
.hero .primary-btn .cta-line { border-color: currentColor; }
.hero .primary-btn .cta-line::after { border-color: currentColor; }
.hero-secondary-link { min-height: 44px; letter-spacing: 1.4px; }
.hero-social { padding-top: 0; }
.primary-btn, .outline-btn, .add-btn, .qty-btn, .close-btn, .icon-btn {
  transition: background-color var(--motion-short) ease, border-color var(--motion-short) ease,
    color var(--motion-short) ease, transform var(--motion-short) var(--motion-ease);
}
.primary-btn:active, .outline-btn:active, .add-btn:active, .qty-btn:active, .icon-btn:active { transform: scale(.97); }
.hero .primary-btn:hover { background: linear-gradient(115deg,#f4dca8,#d7b779); color: #17150f; }
.noir-category, .product-card {
  transition: border-color 300ms ease, box-shadow 300ms ease, translate 420ms var(--motion-ease);
}
.noir-category { height: auto !important; }
.noir-category-link b { transition: translate 300ms var(--motion-ease); }
@media (hover: hover) and (pointer: fine) {
  .noir-category:hover, .product-card:hover {
    translate: 0 -4px; border-color: #c9a3679c;
    box-shadow: 0 16px 34px #0003;
  }
  .noir-category:hover .noir-category-link b { translate: 4px 0; }
  .add-btn:hover { transform: none; background: #d4b57a; color: #11120f; }
}
/* No continuous ornamental movement; the menu stays calm while reading. */
.marquee > div { animation: none !important; transform: none; }
.marquee { justify-content: center; }
.collection-controls { display: none; }
.menu-toolbar { position: relative; }
.category-scroll { position: relative; isolation: isolate; padding: 4px 0; gap: 6px; }
.category-btn { position: relative; z-index: 1; flex: none; white-space: nowrap; }
.category-indicator {
  position: absolute; left: 0; top: 0; z-index: 0; pointer-events: none;
  border-radius: 24px; background: linear-gradient(110deg,#e8cb90,#bc9657);
  box-shadow: inset 0 0 0 1px #f5dba347;
  transition: transform 420ms var(--motion-ease), width 360ms var(--motion-ease), height 180ms ease;
}
.has-indicator .category-btn.active, .has-indicator .category-btn.active:hover {
  background: transparent; border-color: transparent; box-shadow: none; color: #151610;
}
.category-btn:focus-visible { outline-offset: -3px; }
.search-wrap { transition: border-color 220ms ease, box-shadow 220ms ease; }
.search-wrap:focus-within { border-color: #d7b775; box-shadow: 0 0 0 3px #d7b77515; }
.search-wrap input:focus-visible { outline: none; }
.result-info h3 { text-wrap: balance; }
.product-card { min-width: 0; }
.product-name { text-wrap: pretty; }
.product-image-wrap { overflow: hidden; }
.product-image-wrap img { color: #ccb98e; }
.price, #item-total, #floating-total, .cart-item-price, .summary-row strong { font-variant-numeric: tabular-nums; }
.overlay { background: #0009; backdrop-filter: blur(7px); -webkit-backdrop-filter: blur(7px); }
.product-modal { width: min(980px,calc(100vw - 48px)); border-color: #b08e5366; }
.product-modal > .close-btn {
  background: #11130fee; color: #e4c58c; border: 1px solid #b99a645e;
  box-shadow: none; border-radius: 50%; z-index: 5;
}
.is-closing { pointer-events: none; }
.modal-scroll { grid-template-columns: 1fr 1fr; }
.modal-detail { padding: 32px 30px 24px; }
.modal-visual { background: #080908; }
.modal-photo-stage { position: relative; overflow: hidden; aspect-ratio: 3 / 2; }
.modal-photo-stage .modal-image {
  display: block; width: 100%; height: 100%; aspect-ratio: 3 / 2;
  max-height: none; min-height: 0; object-fit: contain;
}
.modal-photo-stage .photo-incoming { position: absolute; inset: 0; }
.modal-photo-stage::after {
  content: ''; position: absolute; left: 18px; right: 18px; bottom: 0; height: 2px;
  background: #d6b274; opacity: 0; transform: scaleX(.24); transform-origin: left;
  transition: opacity 150ms ease; pointer-events: none;
}
.modal-photo-stage.is-loading::after { opacity: 1; animation: photo-loading 1s ease-in-out infinite alternate; }
@keyframes photo-loading { to { transform: scaleX(.85); } }
.photo-caption { padding: 12px 20px 16px; color: #b5a88e; }
.modal-description { color: #c9c0ae; }
.inclusion { border-left-color: #b69458; border-radius: 0 5px 5px 0; }
.size-options { gap: 8px; }
.choice, .choice.selected { min-height: 56px; padding: 11px 12px; border-width: 1px; border-radius: 8px; }
.choice { transition: border-color 200ms ease, background-color 200ms ease, color 200ms ease; }
.choice.selected { background: #b9975b1c; border-color: #d0aa69; color: #f4d799; box-shadow: inset 0 0 0 1px #d0aa691c; }
.choice:active { transform: scale(.985); }
.choice small { margin-top: 4px; }
.preorder-box { border-radius: 10px; }
.schedule-fields input { color-scheme: dark; }
.extra-checkbox { padding-block: 10px; }
.extra-checkbox select, .option-select { border-radius: 7px; }
.modal-bottom {
  position: sticky; bottom: -24px; z-index: 3;
  background: #11120ff5; border-top: 1px solid #b99a6438;
  padding: 16px 0 18px; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
}
.modal-price strong { display: block; font-family: var(--sans); font-size: 26px; line-height: 1.3; }
.modal-submit { flex: 1; border-radius: 8px; min-height: 50px; }
.modal-submit.is-added { background: #d8c597; color: #182014; opacity: 1; cursor: default; }
.cart-header { border-bottom-color: #a6854b40; }
.cart-header h2, .cart-empty h3, .delivery-input h3 { font-family: var(--serif); }
.cart-item img { object-fit: contain; background: #080908; border: 1px solid #b6955e22; }
.cart-item-actions { flex-wrap: wrap; gap: 8px; }
.cart-item-actions .qty-btn { min-width: 38px; min-height: 38px; }
.text-btn, .remove-btn { min-height: 38px; padding: 6px 8px; }
.cart-bottom .checkout-btn { max-height: none; min-height: 50px; border-radius: 8px; }
.floating-cart { transition: opacity 220ms ease, translate 360ms var(--motion-ease); }
.motion-ready .floating-cart:not(.has-items):not(.past-hero) { opacity: 0; translate: 0 12px; pointer-events: none; }
.floating-cart > button { max-width: none; min-height: 48px; gap: 14px; }
.floating-cart #floating-total { max-width: none; font-size: 11px; }
.floating-count { display: inline-flex; align-items: center; justify-content: center; }
.toast {
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
  width: max-content; min-height: 54px; max-width: calc(100vw - 32px);
  bottom: max(82px,calc(env(safe-area-inset-bottom) + 68px)); padding: 8px 12px 8px 20px;
  border: 1px solid #bfa06b70; border-radius: 12px; background: #1a1c17f5;
  color: #eee2ca; box-shadow: 0 12px 36px #0004; backdrop-filter: blur(10px);
  font-size: 12px; font-weight: 400;
}
.toast button { color: #eacb8e; border: 1px solid #bda16b42; border-radius: 7px; background: #c5a3630d; padding: 9px 12px; min-height: 38px; font-size: 11px; white-space: nowrap; }
.reading-progress { height: 2px; box-shadow: none; }
.receipt-card { border-radius: 14px; }
@media (min-width: 761px) and (max-width: 1000px) {
  .hero h1 { font-size: 46px; }
  .hero-left { padding: 38px 28px; }
  .hero-left > p { font-size: 14px; }
}
@media (max-width: 860px) and (min-width: 761px) { :root { --header-height: 64px; } }
@media (max-width: 760px) {
  :root { --header-height: 72px; }
  .hero-left { padding: 28px 24px 34px; }
  .hero h1 { font-size: clamp(39px,10.2vw,54px); min-height: 0; width: 100%; }
  .hero h1 span { max-width: none; }
  .hero h1 em { margin-top: 9px; }
  .hero-left > p { margin-top: 12px; }
  .hero-social { margin-top: 23px; padding-top: 0; font-size: 8px; letter-spacing: .8px; }
  .hero-cta { gap: 10px 18px; }
  .hero .primary-btn { min-height: 48px; padding-inline: 18px; }
  .noir-collections-header h2 { font-size: clamp(38px,10vw,48px); }
  .noir-collection-grid { position: relative; overflow-y: hidden; padding-bottom: 4px; scrollbar-width: none; }
  .noir-collection-grid::-webkit-scrollbar { display: none; }
  .noir-category, .noir-category-major { flex-basis: 86%; height: auto !important; }
  .noir-category-caption { display: flex; flex-direction: column; flex: 1; }
  .noir-category-caption > span:nth-child(2) { min-height: 36px; }
  .noir-category-link { align-self: flex-start; }
  .collection-controls { display: flex; align-items: center; gap: 20px; margin-top: 18px; }
  .collection-counter { display: flex; align-items: center; gap: 10px; font: 10px var(--sans); color: #8f8470; font-variant-numeric: tabular-nums; }
  #collection-current { color: #e9c78b; }
  .collection-rule { width: 18px; height: 1px; background: #877044; }
  .collection-progress { height: 1px; flex: 1; background: #b2946033; overflow: hidden; }
  .collection-progress > span { display: block; height: 100%; width: 100%; background: #cfad73; transform-origin: left; transition: transform 400ms var(--motion-ease); }
  .collection-arrows { display: flex; gap: 8px; }
  .collection-arrows button { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 50%; border: 1px solid #b9975e66; background: transparent; color: #dcbc83; }
  .collection-arrows button:disabled { opacity: .28; }
  .collection-arrows svg { width: 17px; fill: none; stroke: currentColor; stroke-width: 1.5; }
  .menu-toolbar { position: sticky; top: var(--header-height); margin-inline: -16px; padding: 10px 16px; z-index: 10; gap: 9px; }
  .category-scroll { margin-inline: -16px; padding-inline: 16px; width: calc(100% + 32px); }
  .category-btn { min-height: 42px; font-size: 10px; padding: 11px 15px; }
  .search-wrap { height: 44px; min-height: 44px; }
  .result-info { margin-top: 22px; gap: 16px; }
  .result-info h3 { font-size: 28px; }
  .product-grid { gap: 22px; }
  .product-info { padding: 18px 20px 20px; }
  .product-modal { width: 100%; max-height: 94dvh; border-radius: 20px 20px 0 0; }
  .modal-scroll { max-height: 94dvh; display: block; }
  .modal-detail { padding: 23px 20px max(24px,env(safe-area-inset-bottom)); }
  .modal-detail h2 { font-size: 32px; line-height: 1.1; }
  .modal-photo-stage { aspect-ratio: 3 / 2; }
  .modal-bottom { bottom: -24px; gap: 18px; padding: 14px 0 max(16px,env(safe-area-inset-bottom)); }
  .modal-price strong { font-size: 25px; }
  .modal-submit { min-height: 49px; font-size: 10px; }
  .cart-drawer {
    top: auto; bottom: 0; left: 0; right: 0; width: 100%; max-width: none;
    height: 92dvh; max-height: 92dvh; border: 1px solid #b08e5366; border-bottom: 0;
    border-radius: 20px 20px 0 0;
  }
  .cart-header { padding: 18px 20px 15px; }
  .cart-header h2 { font-size: 31px; }
  .cart-content { padding: 20px 20px 8px; }
  .cart-bottom { padding-inline: 20px; }
  .floating-cart { right: 16px; left: 16px; bottom: max(14px,env(safe-area-inset-bottom)); }
  .floating-cart > button { width: 100%; max-width: none; min-height: 50px; justify-content: space-between; padding: 12px 19px; }
  .toast { gap: 14px; font-size: 11px; padding-left: 15px; }
  .toast button { min-height: 40px; }
}
@media (max-width: 359px) {
  .hero-left { padding-inline: 20px; }
  .hero .primary-btn { font-size: 9px; padding-inline: 14px; }
  .hero-secondary-link { font-size: 8px; letter-spacing: 1px; }
  .modal-detail { padding-inline: 16px; }
  .cart-content, .cart-bottom { padding-inline: 16px; }
  .cart-item img { width: 62px; height: 62px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
  .noir-category:hover, .product-card:hover { translate: none; }
  .reading-progress { display: none; }
}
@media print {
  body.locked { position: static !important; width: auto !important; overflow: visible !important; }
  .receipt-card { border: 0; }
}

/* Contrast and feedback verified at 320px. */
.modal-submit, .cart-bottom .checkout-btn { background: linear-gradient(115deg,#e8ce96,#c5a166); color: #17150f; box-shadow: none; }
.modal-submit:hover, .cart-bottom .checkout-btn:hover { background: #edd5a4; color: #17150f; box-shadow: none; }
.cart-schedule { background: #b2925520; color: #e6c995; border: 1px solid #b2925550; border-radius: 7px; padding: 10px; line-height: 1.65; }
.cart-item-detail { font-size: 12px; line-height: 1.55; }
.modal-submit.is-added { background: #d8c597; color: #182014; }
/* Let collection content determine row height at every breakpoint. */
.noir-collection-grid { grid-template-rows: none; grid-auto-rows: auto; }
.noir-category img { flex: 0 0 auto; }
.noir-category-nr, .noir-category-caption { flex-shrink: 0; }
.product-image-wrap::after { display: none !important; box-shadow: none !important; }
.product-card:hover, .noir-category:hover { transform: none; }
@media (min-width: 761px) and (max-width: 1099px) {
  .noir-collection-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .noir-category:nth-child(n) { grid-column: auto; grid-row: auto; }
}
@media (min-width: 1100px) {
  .noir-collection-grid { grid-template-columns: repeat(6,minmax(0,1fr)); }
  .noir-category:nth-child(n) { grid-column: span 2; grid-row: auto; }
  .noir-category:nth-child(4) { grid-column: 2 / span 2; }
  .noir-category:nth-child(5) { grid-column: 4 / span 2; }
}


/* hero-campaign.css */
/* Moroccan feast campaign: a bright set with live typography, no food overlays. */
.hero.hero-campaign {
  display: grid; grid-template-columns: 1fr; align-items: center;
  position: relative; isolation: isolate;
  width: 100%; max-width: 1600px; height: clamp(610px,56.25vw,840px); min-height: 0;
  margin-inline: auto; padding: 0; overflow: hidden;
  background: #f1d4a4; border-bottom: 1px solid #a5813c70;
}
.hero-campaign .hero-right {
  grid-column: 1; grid-row: 1; position: absolute; inset: 0;
  display: block; width: 100%; height: 100%; min-height: 0; margin: 0;
  background: #f1d4a4; opacity: 1;
}
.hero-campaign .hero-art { display: block; width: 100%; height: 100%; }
.hero-campaign .hero-right img {
  position: relative; inset: auto;
  display: block; width: 100%; height: 100%; aspect-ratio: auto;
  object-fit: cover; object-position: center;
  filter: none !important; transform: none !important;
}
.hero-campaign .hero-left {
  grid-column: 1; grid-row: 1; align-self: center;
  position: relative; z-index: 2; width: 38%; height: auto; min-height: 0;
  padding: 48px 0 54px clamp(30px,4.5vw,72px);
  background: transparent !important;
}
.hero-campaign .eyebrow { color: #6c3426; font-size: 9px; letter-spacing: 1.9px; gap: 12px; }
.hero-campaign .eyebrow .line { background: #925a36; width: 26px; }
.hero-campaign h1 {
  width: 100%; max-width: none; min-height: 0; height: auto;
  margin: 24px 0; font-size: clamp(49px,4.9vw,78px);
  color: #50231c; font-weight: 400; line-height: 1.04; letter-spacing: -.035em;
  text-shadow: none;
}
.hero-campaign h1 > span { max-width: none; }
.hero-campaign h1 > em {
  margin-top: 4px; font-size: 1em; line-height: 1.08;
  letter-spacing: -.035em; color: #7c3825; opacity: 1;
}
.hero-campaign .hero-left > p {
  max-width: 320px; margin: 0 0 26px;
  color: #603b29; font-size: 15px; line-height: 1.7;
}
.hero-campaign .hero-cta { gap: 6px 20px; }
.hero-campaign .primary-btn {
  background: #57251e; border: 1px solid #57251e; color: #fff0d8;
  min-height: 51px; padding-inline: 22px; border-radius: 7px; box-shadow: none;
}
.hero-campaign .primary-btn:hover { background: #743328; border-color: #743328; color: #fff6e8; }
.hero-campaign .hero-secondary-link { color: #57251e; opacity: 1; font-size: 9px; letter-spacing: 1px; }
.hero-campaign .hero-secondary-link:hover { color: #8b422c; }
.hero-campaign .hero-social {
  display: flex; margin-top: 23px; padding: 0; color: #6b4430;
  font-size: 8px; letter-spacing: .9px; line-height: 1.6;
}
.hero-campaign .hero-hairline { background: #a57045; }
.hero-campaign a:focus-visible { outline-color: #57251e; }
@media (max-width: 1100px) and (min-width: 1001px) {
  .hero-campaign .hero-left { width: 39%; padding-left: 32px; }
  .hero-campaign h1 { font-size: 51px; }
  .hero-campaign .hero-left > p { font-size: 14px; max-width: 290px; }
}
@media (max-width: 1000px) {
  .hero.hero-campaign { display: flex; flex-direction: column; height: auto; background: #f4e4c8; }
  .hero-campaign .hero-right {
    position: relative; inset: auto; order: 0; height: auto;
    aspect-ratio: 1.5; width: 100%; min-height: 0;
  }
  .hero-campaign .hero-right img { object-fit: cover; object-position: right center; }
  .hero-campaign .hero-left {
    order: 1; width: 100%; padding: 32px 32px 38px;
    background: #f4e4c8 !important;
  }
  .hero-campaign h1 { font-size: clamp(48px,7.6vw,66px); margin: 17px 0 18px; }
  .hero-campaign h1 > span, .hero-campaign h1 > em { max-width: none; }
  .hero-campaign h1 > em { margin-top: 2px; }
  .hero-campaign .hero-left > p { max-width: 490px; font-size: 15px; margin-bottom: 22px; }
  .hero-campaign .hero-cta { gap: 8px 22px; }
  .hero-campaign .hero-social { margin-top: 19px; }
}
@media (max-width: 600px) {
  .hero-campaign .hero-right { aspect-ratio: 1.25; }
  .hero-campaign .hero-left { padding: 27px 24px 32px; }
  .hero-campaign .eyebrow { font-size: 8px; letter-spacing: 1.55px; gap: 10px; }
  .hero-campaign h1 { font-size: clamp(43px,12.2vw,66px); margin: 16px 0 18px; }
  .hero-campaign .hero-left > p { font-size: 14px; line-height: 1.65; max-width: 380px; }
  .hero-campaign .primary-btn { padding-inline: 18px; min-height: 48px; min-width: 0; }
  .hero-campaign .hero-social { font-size: 7.5px; letter-spacing: .7px; }
}
@media (max-width: 359px) {
  .hero-campaign .hero-left { padding-inline: 20px; }
  .hero-campaign h1 { font-size: 41px; }
  .hero-campaign .hero-left > p { font-size: 13px; }
  .hero-campaign .hero-cta { gap: 2px 18px; }
}


/* pizza-campaign.css */
/* A separate evening campaign; the pastilla hero retains its own art direction. */
.pizza-campaign {
  position: relative;
  isolation: isolate;
  width: min(100%, 1600px);
  min-height: clamp(540px, 56.28vw, 900px);
  margin: 0 auto 38px;
  overflow: hidden;
  background: #240c16;
  color: #fff4df;
}
.pizza-campaign-art { position: absolute; inset: 0; z-index: -1; }
.pizza-campaign-art img { width: 100%; height: 100%; object-fit: cover; object-position: left center; }
.pizza-campaign-copy {
  width: 28%;
  margin-left: 70%;
  min-height: inherit;
  padding: 48px 28px 48px 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
.pizza-campaign-kicker { color: #ecc695; font: 600 10px/1.6 var(--sans); letter-spacing: 2px; }
.pizza-campaign h2 { margin: 25px 0 22px; font: 400 clamp(50px, 4.7vw, 76px)/1.03 var(--serif); letter-spacing: -1.8px; }
.pizza-campaign h2 em { color: #f0bc74; font-weight: 400; }
.pizza-campaign-copy p { max-width: 330px; margin: 0 0 29px; color: #ecdbd3; font: 400 15px/1.8 var(--sans); }
.pizza-campaign .pizza-campaign-cta { min-height: 54px; border-radius: 2px; padding: 0 23px; gap: 20px; background: #f1d5a5; color: #2e1516; font: 700 10px/1.4 var(--sans); letter-spacing: 1.3px; }
.pizza-campaign .pizza-campaign-cta:hover { background: #ffe4b9; }
.pizza-campaign-cta svg { width: 19px; height: 19px; transition: transform .25s ease; }
.pizza-campaign-cta:hover svg { transform: translateX(4px); }
.pizza-campaign-note { margin-top: 28px; color: #d9b591; font: 500 9px/1.6 var(--sans); letter-spacing: 1.6px; }
@media (min-width: 961px) and (max-width: 1050px) {
  .pizza-campaign { min-height: 530px; }
  .pizza-campaign-art img { object-position: 38% center; }
  .pizza-campaign-copy { margin-left: 70%; width: 30%; padding-right: 24px; }
  .pizza-campaign h2 { font-size: 49px; }
  .pizza-campaign-kicker { font-size: 8px; letter-spacing: 1.3px; }
  .pizza-campaign-copy p { font-size: 13px; }
  .pizza-campaign .pizza-campaign-cta { padding-inline: 17px; gap: 13px; }
}
@media (max-width: 960px) {
  .pizza-campaign { min-height: 0; margin-bottom: 22px; }
  .pizza-campaign-art { position: relative; display: block; height: auto; aspect-ratio: 1.25; overflow: hidden; z-index: 0; }
  .pizza-campaign-art img { width: 142%; max-width: none; height: 100%; object-fit: cover; object-position: left center; }
  .pizza-campaign-copy { width: 100%; margin: 0; padding: 35px 26px 40px; min-height: 0; }
  .pizza-campaign h2 { margin: 19px 0 18px; font-size: clamp(48px, 9.5vw, 66px); }
  .pizza-campaign h2 br { display: none; }
  .pizza-campaign h2 em { display: block; }
  .pizza-campaign-copy p { max-width: 430px; font-size: 14px; margin-bottom: 24px; }
  .pizza-campaign-note { margin-top: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  .pizza-campaign-cta svg { transition: none; }
}


/* service-refresh.css */
/* Included drinks and a quiet, scannable WeChat contact panel. */
@media (min-width:1100px){.noir-category:nth-child(n){grid-column:span 2;grid-row:auto}}
.drink-bundle{min-width:0;margin:25px 0 22px;padding:0;border:0}
.drink-bundle legend{width:100%;margin-bottom:12px;font:600 13px/1.6 var(--sans);color:var(--cream,#eee1cc)}
.drink-bundle legend span{display:block;font-size:9px;letter-spacing:1.5px;color:#c1a573;font-weight:400}
.bundle-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.bundle-options label{position:relative;display:flex;align-items:center;gap:9px;padding:15px 12px;border:1px solid #ffffff26;border-radius:5px;cursor:pointer;background:#ffffff03;transition:border-color .2s,background .2s}
.bundle-options label:has(input:checked){border-color:#c2a16a;background:#bd985c12}
.bundle-options label:has(input:focus-visible){outline:2px solid #e2c38e;outline-offset:3px}
.bundle-options input{accent-color:#c2a16a;flex:0 0 auto;width:15px;height:15px;margin:0}
.bundle-options strong{display:block;color:#f3e6d0;font:600 12px/1.5 var(--sans)}
.bundle-options small{display:block;color:#b6ab98;font:400 11px/1.6 var(--sans);margin-top:3px}
.juice-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px 10px;margin-top:12px}
.juice-grid label{min-width:0;color:#c3b398;font:500 11px/1.6 var(--sans)}
.juice-grid select{width:100%;min-width:0;margin-top:5px;padding:12px 9px;font-size:12px}
#juice-fields>.field-note{margin:15px 0 8px}
.footer-contact{display:grid;grid-template-columns:1fr auto;align-items:center;gap:60px;padding-top:65px;padding-bottom:60px;border-bottom:1px solid #b99a652b}
.footer-contact-copy{max-width:490px}
.footer-contact h2{font:400 clamp(38px,4.7vw,64px)/1.08 var(--serif);letter-spacing:-1.3px;color:#f0e5d4;margin:22px 0}
.footer-contact h2 em{font-weight:400;color:#c7a574}
.footer-contact-copy p{font:400 14px/1.9 var(--sans);color:#afa697;margin:0 0 15px;max-width:410px}
.footer-contact-copy .wechat-instructions{font-size:12px;color:#948c7f;max-width:370px}
.wechat-save{display:inline-flex;gap:30px;align-items:center;color:#d6b684;font:600 10px/1.6 var(--sans);letter-spacing:1.5px;padding:12px 0;border-bottom:1px solid #c1a16a66;text-decoration:none}
.wechat-save:hover{color:#ffe2af;border-color:currentColor}
.footer-qr{margin:0 30px 0 0;text-align:center}
.wechat-qr{display:block;width:216px;height:216px;max-width:100%;background:#fff8e9;border-radius:4px;object-fit:contain;filter:none!important;opacity:1!important}
.footer-qr figcaption{font:500 9px/1.6 var(--sans);letter-spacing:2px;color:#b8a27e;margin-top:17px}
.wechat-checkout{margin:25px 0 8px;border-top:1px solid #ffffff20;border-bottom:1px solid #ffffff20;color:#d6c5a9}
.wechat-checkout summary{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:18px 0;cursor:pointer;font:500 12px/1.6 var(--sans);list-style:none}
.wechat-checkout summary::-webkit-details-marker{display:none}
.wechat-summary-hint{font-size:8px;letter-spacing:1.2px;color:#c4a371}
.wechat-checkout[open] .wechat-summary-hint{visibility:hidden}
.wechat-checkout-content{text-align:center;padding:6px 0 24px}
.wechat-checkout .wechat-qr{margin:0 auto}
.wechat-checkout-content p{max-width:280px;margin:16px auto 10px;color:#a99f8f;font:400 12px/1.8 var(--sans)}
.wechat-checkout-content a{font:500 12px/1.6 var(--sans);color:#d8b885;text-underline-offset:4px}
@media(max-width:760px){.footer-contact{grid-template-columns:1fr;gap:32px;padding-top:46px;padding-bottom:40px}.footer-qr{margin:0;justify-self:start}.footer-contact h2{font-size:43px}.footer-contact-copy p{font-size:13px}.bundle-options label{padding:13px 9px;gap:7px}}
@media(max-width:359px){.bundle-options{grid-template-columns:1fr}.juice-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.bundle-options label{transition:none}}
.schedule-fields>label{min-width:0}
.schedule-fields input{min-width:0;max-width:100%;width:100%;box-sizing:border-box}
@media(max-width:359px){.schedule-fields{grid-template-columns:1fr}}

