:root { --ink:#19130f; --brown:#2a2018; --cream:#faf5ec; --cream-2:#f2e8d9; --gold:#f5b91b; --brand-red:#d6281c; --brand-yellow:#f1d900; --text:#3a2a1d; --muted:#746b63; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--cream); color:var(--text); font-family:var(--font-sans),Arial,sans-serif; }
a { color:inherit; text-decoration:none; }
button { font:inherit; }
.container { width:min(1280px, calc(100% - 48px)); margin-inline:auto; }
.site-header { position:sticky; top:0; z-index:20; height:74px; background:rgba(25,19,15,.97); color:#fff; border-bottom:1px solid rgba(245,185,27,.16); }
.header-inner { height:100%; display:flex; align-items:center; gap:34px; }
.brand { display:flex; align-items:center; gap:10px; color:var(--brand-yellow); font-family:var(--font-serif),serif; font-size:20px; font-weight:700; line-height:.82; white-space:nowrap; }
.brand small { display:block; color:#fff7e8; font-size:13px; font-weight:600; }
.brand-mark { display:grid; place-items:center; width:38px; height:38px; border:2px solid var(--brand-red); border-radius:50%; color:var(--brand-red); background:var(--brand-yellow); font-size:24px; }
.desktop-nav { display:flex; justify-content:center; gap:26px; margin-left:auto; font-size:13px; }
.desktop-nav a { color:#efe8df; transition:color .2s; }
.desktop-nav a:hover { color:var(--gold); }
.header-actions { display:flex; gap:8px; align-items:center; }
.header-actions button,.header-actions a { position:relative; display:grid; place-items:center; width:38px; height:38px; color:white; background:transparent; border:0; border-radius:50%; }
.header-actions b { position:absolute; right:-1px; top:-3px; display:grid; place-items:center; width:17px; height:17px; border-radius:50%; color:var(--ink); background:var(--gold); font-size:10px; }
.hero { background:var(--ink); color:white; }
.hero-grid { min-height:510px; display:grid; grid-template-columns:44% 56%; overflow:hidden; }
.hero-copy { position:relative; z-index:2; display:flex; flex-direction:column; justify-content:center; padding:62px 52px 62px 0; }
.eyebrow { margin:0 0 18px; color:var(--gold); font-size:12px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
h1 { max-width:600px; margin:0; font-family:var(--font-serif),serif; font-size:clamp(48px,5vw,72px); line-height:.93; letter-spacing:-.035em; }
.hero-lede { margin:22px 0 0; color:#ded5cc; font-size:17px; line-height:1.55; }
.hero-actions { display:flex; gap:12px; margin-top:30px; }
.button { min-height:48px; padding:0 22px; display:inline-flex; align-items:center; justify-content:center; gap:9px; border-radius:9px; font-size:12px; font-weight:750; letter-spacing:.03em; transition:transform .2s,background .2s; }
.button:hover { transform:translateY(-2px); }
.button-primary { background:var(--gold); color:var(--ink); box-shadow:0 9px 25px rgba(245,185,27,.2); }
.button-primary:hover { background:var(--brand-yellow); }
.button-secondary { border:1px solid rgba(255,255,255,.42); color:white; }
.hero-photo { min-height:510px; background:linear-gradient(90deg,var(--ink) 0%,transparent 30%),linear-gradient(0deg,rgba(25,19,15,.15),rgba(25,19,15,.04)),url('/images/hero-bread.jpg') center/cover no-repeat; }
.benefit-strip { background:#fffaf2; border-bottom:1px solid #e8dccb; }
.benefit-grid { min-height:106px; display:grid; grid-template-columns:repeat(4,1fr); align-items:center; }
.benefit { display:flex; align-items:center; justify-content:center; gap:12px; min-height:54px; padding:0 18px; border-right:1px solid #e8dccb; }
.benefit:last-child { border:0; }
.benefit>span { display:grid; place-items:center; width:36px; height:36px; border-radius:50%; color:var(--brand-red); background:#fff0d9; }
.benefit strong,.benefit small { display:block; }
.benefit strong { font-size:13px; }
.benefit small { margin-top:3px; color:var(--muted); font-size:11px; }
.preview-section { padding:56px 0 72px; text-align:center; }
.section-kicker { margin:0; color:var(--brand-red); font-size:11px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
h2 { margin:6px 0 28px; font-family:var(--font-serif),serif; font-size:40px; line-height:1; }
.category-preview { display:grid; grid-template-columns:repeat(7,1fr); gap:22px; }
.category-preview div { display:grid; gap:10px; justify-items:center; font-size:13px; }
.category-preview span { display:grid; place-items:center; width:92px; height:92px; border-radius:50%; background:radial-gradient(circle at 35% 30%,#f4cf82,#8c4f23); color:white; border:4px solid white; box-shadow:0 6px 20px rgba(58,42,29,.16); font-family:var(--font-serif),serif; font-size:28px; }
@media(max-width:900px){.desktop-nav{display:none}.header-inner{justify-content:space-between}.hero-grid{grid-template-columns:1fr;min-height:600px;position:relative}.hero-photo{position:absolute;inset:0;min-height:0;background:linear-gradient(90deg,rgba(25,19,15,.94),rgba(25,19,15,.42)),linear-gradient(0deg,rgba(25,19,15,.3),rgba(25,19,15,.1)),url('/images/hero-bread.jpg') center/cover}.hero-copy{padding:64px 0;max-width:590px}.benefit-grid{grid-template-columns:repeat(2,1fr);padding:14px 0}.benefit:nth-child(2){border-right:0}.category-preview{grid-template-columns:repeat(4,1fr)}}
@media(max-width:520px){.container{width:min(100% - 28px,1280px)}.site-header{height:66px}.brand{font-size:17px}.brand-mark{width:34px;height:34px}.header-actions button{display:none}.hero-grid{min-height:535px}.hero-copy{justify-content:flex-end;padding:54px 0}.eyebrow{font-size:10px;margin-bottom:13px}h1{font-size:46px}.hero-lede{font-size:15px}.hero-actions{flex-direction:column;align-items:stretch}.button{width:100%}.benefit{padding:7px 5px;justify-content:flex-start;border-bottom:1px solid #e8dccb}.benefit-grid{gap:0}.benefit strong{font-size:11px}.benefit small{font-size:9px}.preview-section{padding:40px 0}.category-preview{grid-template-columns:repeat(3,1fr);gap:20px 10px}.category-preview span{width:78px;height:78px}h2{font-size:34px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Shared commercial UI */
body{min-width:320px;overflow-x:hidden;background:var(--cream);line-height:1.5}.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}.logo{display:flex;align-items:center;gap:10px;min-width:max-content;color:var(--brand-yellow);font-family:var(--font-serif),Georgia,serif}.logo-emblem{position:relative;display:grid;place-items:center;width:42px;height:42px;border:2px solid var(--brand-red);border-radius:50%;background:var(--brand-yellow);color:var(--brand-red)}.logo-emblem i{position:absolute;left:-8px;font-style:normal;font-size:15px}.logo-emblem b{font-size:24px;line-height:1}.logo-copy{display:grid;line-height:.9}.logo-copy small{color:#fff8e9;font-family:var(--font-sans);font-size:10px;font-weight:650;letter-spacing:.08em;text-transform:uppercase}.logo-copy strong{font-size:21px}.logo-compact .logo-emblem{width:36px;height:36px}.logo-compact .logo-copy strong{font-size:18px}.mobile-menu-button{display:none;background:none;border:0;color:#fff;padding:7px}.header-actions button{cursor:pointer}.header-actions svg{width:19px}.cart-trigger{border:0}.drawer-layer,.mobile-nav-layer,.admin-modal-layer{position:fixed;inset:0;z-index:100;background:rgba(15,11,8,.66);backdrop-filter:blur(3px);animation:fadeIn .18s ease}.cart-drawer{position:absolute;right:0;top:0;width:min(470px,100%);height:100%;display:flex;flex-direction:column;background:#fffaf3;box-shadow:-18px 0 50px rgba(0,0,0,.22);animation:slideLeft .25s ease}.drawer-header{display:flex;align-items:flex-start;justify-content:space-between;padding:28px;border-bottom:1px solid #eadfce}.drawer-header h2{margin:3px 0 0;font-size:34px}.icon-button,.filter-title button,.assistant-head button,.admin-sidebar-head button,.admin-modal header button{display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:50%;background:#f2e8d9;color:var(--text);cursor:pointer}.icon-button svg{width:19px}.drawer-items{flex:1;overflow-y:auto;padding:8px 28px}.drawer-item{display:grid;grid-template-columns:76px 1fr auto;gap:14px;padding:18px 0;border-bottom:1px solid #eadfce}.drawer-item>img{width:76px;height:76px;object-fit:cover;border-radius:10px}.drawer-item-copy{display:grid;align-content:start;gap:2px}.drawer-item-copy small{color:var(--muted);font-size:11px}.drawer-item-copy>b{margin-top:4px;color:var(--brand-red);font-size:14px}.remove-button{align-self:start;border:0;background:none;color:#9e8f82;cursor:pointer;padding:8px}.remove-button svg{width:17px}.quantity-control{display:inline-grid;grid-template-columns:32px 30px 32px;align-items:center;width:max-content;margin-top:8px;border:1px solid #dbd0c1;border-radius:7px;background:white;overflow:hidden}.quantity-control button{display:grid;place-items:center;height:30px;border:0;background:white;cursor:pointer}.quantity-control button:hover{background:var(--cream-2)}.quantity-control svg{width:13px}.quantity-control span{text-align:center;font-size:12px;font-weight:700}.drawer-summary{padding:23px 28px 27px;border-top:1px solid #e2d7c7;background:#fff}.drawer-summary>div{display:flex;justify-content:space-between;font-size:16px}.drawer-summary>small{display:block;margin:4px 0 17px;color:var(--muted);font-size:11px}.button-wide{width:100%}.text-link{display:inline-flex;align-items:center;gap:6px;color:var(--text);font-size:12px;font-weight:750}.text-link svg{width:16px}.drawer-summary .text-link{display:flex;justify-content:center;margin-top:14px}.empty-state{min-height:330px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:34px}.empty-state>svg{width:48px;height:48px;color:var(--brand-red)}.empty-state h3,.empty-state h2{margin:15px 0 4px;font-family:var(--font-serif);font-size:28px}.empty-state p{margin:0 0 20px;color:var(--muted)}.mobile-nav{width:min(360px,90%);height:100%;padding:20px;background:var(--ink);color:white;animation:slideRight .25s ease}.mobile-nav-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.12)}.mobile-nav nav{display:grid;margin-top:18px}.mobile-nav nav a{display:flex;justify-content:space-between;padding:14px 4px;border-bottom:1px solid rgba(255,255,255,.1);font-weight:600}.mobile-nav-info{display:grid;gap:10px;margin-top:25px;color:#d9d0c7;font-size:12px}.mobile-nav-info strong{display:flex;gap:8px}.mobile-nav-info svg{width:16px}.search-overlay{position:fixed;inset:0;z-index:110;display:grid;place-items:start center;padding-top:100px;background:rgba(15,11,8,.72);backdrop-filter:blur(4px)}.search-modal{width:min(650px,calc(100% - 28px));display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 14px 12px 20px;border-radius:15px;background:white;box-shadow:0 25px 70px rgba(0,0,0,.25)}.search-modal input{height:48px;border:0;outline:0;font-size:18px}.search-modal>svg{color:var(--brand-red)}

.section{padding-top:78px;padding-bottom:78px}.soft-section{background:var(--cream-2);border-block:1px solid #e6dac8}.section-heading{margin-bottom:30px}.section-heading h2{margin:5px 0 0;font-size:46px}.section-heading>p:not(.section-kicker){max-width:650px;color:var(--muted)}.centered{text-align:center}.heading-row{display:flex;align-items:end;justify-content:space-between}.category-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:22px}.category-card{display:grid;justify-items:center;gap:11px;text-align:center;font-size:13px;transition:transform .2s}.category-card:hover{transform:translateY(-5px)}.category-card>span{width:100%;max-width:124px;aspect-ratio:1;border:5px solid white;border-radius:50%;overflow:hidden;box-shadow:0 9px 25px rgba(58,42,29,.18)}.category-card img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.category-card:hover img{transform:scale(1.06)}.promotion-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.promotion-card{overflow:hidden;border:1px solid #e4d7c4;border-radius:14px;background:#fffaf3;box-shadow:0 7px 22px rgba(58,42,29,.07);transition:transform .2s,box-shadow .2s}.promotion-card:hover{transform:translateY(-4px);box-shadow:0 15px 32px rgba(58,42,29,.14)}.promotion-photo{position:relative;aspect-ratio:1.8;overflow:hidden}.promotion-photo img{width:100%;height:100%;object-fit:cover}.promotion-photo span,.sale-badge{position:absolute;left:11px;top:11px;padding:4px 8px;border-radius:5px;background:var(--brand-red);color:#fff;font-size:10px;font-weight:800}.promotion-card>div:last-child{position:relative;padding:14px 16px 17px}.promotion-card p{margin:0 0 3px;font-size:14px;font-weight:700}.promotion-card strong{color:var(--brand-red);font-size:18px}.promotion-card del{margin-left:8px;color:#9d9289;font-size:12px}.promotion-card>div:last-child>svg{position:absolute;right:14px;bottom:16px;width:18px}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.product-card{min-width:0;overflow:hidden;border:1px solid #e8dccb;border-radius:15px;background:#fffaf3;box-shadow:0 7px 22px rgba(58,42,29,.06);transition:transform .2s,box-shadow .2s}.product-card:hover{transform:translateY(-5px);box-shadow:0 16px 34px rgba(58,42,29,.13)}.product-image{position:relative;display:block;aspect-ratio:1.22;overflow:hidden;background:#e7d7c2}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.product-card:hover .product-image img{transform:scale(1.045)}.availability{display:inline-flex;width:max-content;padding:4px 8px;border-radius:999px;background:#efece4;color:#685f57;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.product-image>.availability{position:absolute;right:10px;bottom:10px}.availability-available{background:#e4f1e6;color:#32653a}.availability-out_of_stock{background:#eee8e5;color:#7e6c64}.availability-consult{background:#f1e8db;color:#815425}.availability-made_to_order{background:#fff1c6;color:#785a08}.product-card-body{padding:15px 16px 17px}.product-card-body h2,.product-card-body h3{margin:0;font-family:var(--font-serif);font-size:22px;line-height:1.05}.product-card-body>p{min-height:38px;margin:7px 0 12px;color:var(--muted);display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:12px;line-height:1.55}.product-price{display:flex;align-items:center;gap:8px}.product-price strong{color:var(--brand-red);font-size:19px}.product-price del{color:#9b9087;font-size:11px}.add-button{width:100%;height:40px;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:13px;border:0;border-radius:8px;background:var(--gold);color:var(--ink);font-weight:750;font-size:11px;cursor:pointer}.add-button:hover{background:var(--brand-yellow)}.add-button svg{width:15px}.add-button svg:last-child{margin-left:auto;margin-right:10px}.add-button-outline{border:1px solid #d6c7b3;background:transparent}.event-section{padding:78px 0;background:var(--ink);color:white}.event-grid{display:grid;grid-template-columns:54% 46%;min-height:470px;overflow:hidden;border-radius:18px;background:var(--brown)}.event-photo img{width:100%;height:100%;object-fit:cover}.event-copy{display:flex;flex-direction:column;justify-content:center;padding:60px}.event-copy h2{margin:6px 0 16px;font-size:52px}.event-copy>p:not(.section-kicker){max-width:530px;color:#dcd1c5}.event-points{display:grid;gap:5px;margin:9px 0 24px;color:#fff1d9;font-size:13px}.event-copy .button{align-self:flex-start}.assistant-home{padding:78px 0;background:var(--brand-red);color:#fff}.assistant-home-grid{display:grid;grid-template-columns:1fr .8fr;gap:90px;align-items:center}.assistant-home .section-kicker{color:var(--brand-yellow)}.assistant-home h2{font-size:52px}.assistant-home p{max-width:650px;color:#ffe9df}.assistant-demo{display:grid;gap:12px;padding:24px;border-radius:18px;background:#fff5e9;color:var(--text);box-shadow:0 20px 50px rgba(80,12,7,.22)}.demo-bubble{max-width:90%;padding:13px 15px;border-radius:13px;font-size:13px}.demo-user{justify-self:end;background:var(--brand-yellow)}.demo-assistant{display:flex;gap:10px;background:white;border:1px solid #e9dac8}.demo-assistant svg{min-width:18px;color:var(--brand-red)}.location-card{display:grid;grid-template-columns:1fr 1.1fr;min-height:440px;overflow:hidden;border-radius:18px;background:#fff;box-shadow:0 16px 45px rgba(58,42,29,.12)}.location-copy{padding:50px}.location-copy h2{font-size:48px}.location-list{display:grid;gap:17px}.location-list p{display:flex;gap:13px;margin:0}.location-list svg{width:20px;color:var(--brand-red)}.location-list span,.location-list strong,.location-list small{display:block}.location-list small{margin-top:2px;color:var(--muted)}.button-dark{background:var(--ink);color:white}.map-visual{display:grid;place-items:center;background-color:#e8d9c5;background-image:linear-gradient(30deg,rgba(255,255,255,.8) 12%,transparent 12.5%,transparent 87%,rgba(255,255,255,.8) 87.5%),linear-gradient(150deg,rgba(255,255,255,.8) 12%,transparent 12.5%,transparent 87%,rgba(255,255,255,.8) 87.5%);background-size:70px 120px}.map-visual>div{display:grid;justify-items:center;padding:26px;border-radius:14px;background:var(--ink);color:white;box-shadow:0 18px 40px rgba(0,0,0,.25)}.map-visual svg{color:var(--gold)}.map-visual span{color:#d8cdc1;font-size:11px}.site-footer{padding:60px 0 20px;background:var(--ink);color:#eee6dc}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:55px}.footer-brand p{max-width:310px;margin:20px 0 12px;color:#bfb4aa;font-size:13px}.footer-brand>small{color:#82776e;font-size:9px}.site-footer h3{margin:0 0 15px;color:var(--gold);font-family:var(--font-serif);font-size:20px}.site-footer .footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:10px;font-size:12px}.site-footer a,.site-footer span{display:flex;gap:8px;align-items:flex-start;color:#c8beb5}.site-footer svg{width:15px;min-width:15px}.footer-bottom{display:flex;justify-content:space-between;margin-top:42px;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);font-size:10px}.assistant-shell{position:fixed;right:22px;bottom:22px;z-index:80}.assistant-trigger{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;width:275px;padding:11px 13px;border:1px solid #e2d4c0;border-radius:14px;background:#fff8ed;color:var(--text);box-shadow:0 12px 35px rgba(30,20,14,.2);cursor:pointer;text-align:left}.assistant-trigger>svg:first-child{width:33px;height:33px;padding:7px;border-radius:50%;background:var(--brand-red);color:white}.assistant-trigger span,.assistant-trigger strong,.assistant-trigger small{display:block}.assistant-trigger strong{font-size:12px}.assistant-trigger small{color:var(--muted);font-size:9px}.assistant-trigger>svg:last-child{width:17px}.whatsapp-float{position:absolute;right:0;bottom:62px;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#2f9f56;color:#fff;box-shadow:0 10px 25px rgba(0,0,0,.2)}.assistant-panel{width:min(390px,calc(100vw - 28px));height:min(620px,calc(100vh - 40px));display:flex;flex-direction:column;overflow:hidden;border:1px solid #e0d1bc;border-radius:18px;background:#fff8ee;box-shadow:0 25px 80px rgba(20,12,8,.3)}.assistant-head{display:flex;align-items:center;justify-content:space-between;padding:14px 15px;background:var(--ink);color:white}.assistant-head>div{display:flex;align-items:center;gap:9px}.assistant-head>div>svg{color:var(--gold)}.assistant-head span,.assistant-head strong,.assistant-head small{display:block}.assistant-head strong{font-size:12px}.assistant-head small{color:#cbbfb4;font-size:9px}.assistant-head button{width:33px;height:33px;background:rgba(255,255,255,.1);color:white}.assistant-messages{flex:1;overflow-y:auto;padding:14px}.chat-message{display:grid;margin-bottom:12px}.chat-message>p{width:max-content;max-width:88%;margin:0;padding:10px 12px;border-radius:11px;font-size:12px}.chat-user>p{justify-self:end;background:var(--brand-yellow)}.chat-assistant>p{background:#fff;border:1px solid #e8dcc9}.product-card-compact{display:grid;grid-template-columns:82px 1fr;margin-top:8px;border-radius:10px}.product-card-compact .product-image{aspect-ratio:1}.product-card-compact .product-card-body{padding:10px}.product-card-compact .product-card-body h2,.product-card-body h3{font-size:15px}.product-card-compact .product-card-body>p,.product-card-compact .availability{display:none}.product-card-compact .product-price strong{font-size:14px}.product-card-compact .add-button{height:31px;margin-top:5px}.assistant-form{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px;border-top:1px solid #e4d7c5;background:white}.assistant-form input{height:43px;padding:0 12px;border:1px solid #d9ccbb;border-radius:9px;outline:0}.assistant-form button{width:43px;height:43px;display:grid;place-items:center;border:0;border-radius:50%;background:var(--ink);color:white}.assistant-form svg{width:17px}

/* Listing and details */
.page-hero{display:flex;align-items:center;min-height:360px;background:linear-gradient(90deg,rgba(25,19,15,.98),rgba(25,19,15,.7)),url('/images/bread.jpg') center/cover;color:white}.page-hero h1{font-size:62px}.page-hero p:not(.eyebrow){max-width:560px;color:#d9cec4}.compact-hero{min-height:330px}.mini-hero{min-height:230px}.mini-hero h1{font-size:50px}.category-hero{background-position:center;background-size:cover}.special-hero{background-image:linear-gradient(90deg,rgba(25,19,15,.98),rgba(25,19,15,.48)),url('/images/cake-chocolate.jpg');min-height:430px}.about-hero{background-image:linear-gradient(90deg,rgba(25,19,15,.98),rgba(25,19,15,.45)),url('/images/hero-bread.jpg')}.catalog-layout{display:grid;grid-template-columns:235px 1fr;gap:30px}.catalog-filters{position:sticky;top:94px;padding:22px;border:1px solid #e2d6c5;border-radius:14px;background:#fffaf3}.filter-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.filter-title button{display:none}.catalog-filters fieldset{display:grid;gap:9px;margin:0;padding:16px 0;border:0;border-top:1px solid #e5dacb}.catalog-filters legend{margin-bottom:8px;font-size:12px;font-weight:800}.catalog-filters label{display:flex;align-items:center;gap:8px;color:#675e56;font-size:12px}.catalog-filters input[type=range]{accent-color:var(--brand-red)}.range-label{display:flex;justify-content:space-between;font-size:10px}.catalog-tools{display:flex;gap:10px}.catalog-search{flex:1;display:flex;align-items:center;gap:9px;height:48px;padding:0 14px;border:1px solid #dacdbc;border-radius:9px;background:white}.catalog-search input{width:100%;border:0;outline:0}.catalog-search svg,.catalog-sort svg{width:17px;color:var(--brand-red)}.catalog-sort{display:flex;align-items:center;gap:7px;padding:0 12px;border:1px solid #dacdbc;border-radius:9px;background:white}.catalog-sort select{border:0;background:transparent;outline:0}.catalog-count{margin:14px 0;color:var(--muted);font-size:11px}.catalog-grid{grid-template-columns:repeat(3,1fr)}.mobile-filter-button{display:none}.product-detail{padding-top:28px;padding-bottom:75px}.breadcrumbs{display:flex;align-items:center;gap:6px;margin:0 0 24px;color:var(--muted);font-size:10px}.breadcrumbs svg{width:12px}.product-detail-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:65px}.gallery-main{aspect-ratio:1.12;overflow:hidden;border-radius:17px;background:#e8dcca}.gallery-main img{width:100%;height:100%;object-fit:cover}.gallery-thumbs{display:flex;gap:9px;margin-top:10px}.gallery-thumbs button{width:72px;height:62px;padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden}.gallery-thumbs button.active{border-color:var(--gold)}.gallery-thumbs img{width:100%;height:100%;object-fit:cover}.product-info{padding-top:10px}.product-info h1{margin:12px 0 15px;color:var(--text);font-size:55px}.product-description{max-width:560px;color:var(--muted);font-size:16px;line-height:1.65}.detail-price{display:flex;align-items:center;gap:12px;margin:22px 0}.detail-price strong{color:var(--brand-red);font-size:30px}.detail-price del{color:#a1968b}.variant-list{display:grid;gap:8px;margin:22px 0;padding:0;border:0}.variant-list legend{margin-bottom:8px;font-size:12px;font-weight:800}.variant-list label{position:relative;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid #ded1c0;border-radius:9px;background:white;cursor:pointer}.variant-list label.selected{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}.variant-list input{position:absolute;opacity:0}.variant-list span,.variant-list strong,.variant-list small{display:block}.variant-list small{color:var(--muted);font-size:10px}.variant-list svg{width:16px;color:#7a6006}.purchase-row{display:flex;align-items:end;gap:14px}.purchase-row label{display:block;margin-bottom:5px;font-size:11px;font-weight:800}.detail-quantity{margin:0;height:48px}.detail-quantity button{height:46px}.purchase-button{min-width:255px}.purchase-button:disabled,.mobile-add-bar button:disabled{opacity:.55;cursor:not-allowed}.product-meta{display:flex;gap:28px;margin-top:25px;padding-top:20px;border-top:1px solid #e1d5c5}.product-meta p{display:flex;gap:9px;margin:0;color:var(--muted);font-size:11px}.product-meta svg,.allergen-mark{display:grid;place-items:center;width:20px;height:20px;color:var(--brand-red);font-weight:800}.product-meta span,.product-meta strong{display:block}.product-meta strong{color:var(--text)}.mobile-add-bar{display:none}

/* Cart, forms and content pages */
.page-empty{min-height:480px}.cart-page-grid,.checkout-grid{display:grid;grid-template-columns:1.5fr .75fr;gap:30px;align-items:start}.cart-lines,.checkout-card,.order-summary,.special-form{padding:26px;border:1px solid #e2d6c5;border-radius:15px;background:#fffaf3}.cart-lines h2{font-size:34px}.cart-line{display:grid;grid-template-columns:78px 1fr auto auto auto;align-items:center;gap:15px;padding:16px 0;border-bottom:1px solid #e6dac9}.cart-line img{width:78px;height:70px;object-fit:cover;border-radius:9px}.cart-line>div:nth-child(2){display:grid}.cart-line small{color:var(--muted);font-size:10px}.cart-line>div:nth-child(2)>b{display:none}.order-summary{position:sticky;top:95px}.order-summary h2{margin:3px 0 22px;font-size:34px}.order-summary>div{display:flex;justify-content:space-between;gap:14px;margin:10px 0;font-size:12px}.order-summary hr{margin:18px 0;border:0;border-top:1px solid #dfd3c2}.order-summary .summary-total{font-size:16px}.order-summary .summary-total strong{color:var(--brand-red);font-size:21px}.order-summary>small{display:block;margin-top:12px;color:var(--muted);font-size:9px;text-align:center}.checkout-steps{display:flex;align-items:center;justify-content:center;margin-bottom:30px}.checkout-steps span{display:flex;align-items:center;gap:6px;color:#a2968d;font-size:10px}.checkout-steps span.active{color:var(--text);font-weight:700}.checkout-steps b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e7ded2}.checkout-steps .active b{background:var(--ink);color:white}.checkout-steps i{width:70px;height:1px;margin:0 7px;background:#dfd5c7}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-grid .full-field{grid-column:1/-1}.checkout-fields>label,.special-form>label,.review-step>label,.form-grid label,.admin-login-card label,.settings-form label,.admin-modal label{display:grid;gap:6px;font-size:11px;font-weight:700}.checkout-fields input,.checkout-fields select,.checkout-fields textarea,.special-form input,.special-form select,.special-form textarea,.admin-login-card input,.settings-form input,.settings-form textarea,.admin-modal input,.admin-modal select,.admin-modal textarea{width:100%;min-height:45px;padding:10px 12px;border:1px solid #d9ccbb;border-radius:8px;background:white;color:var(--text);outline:0}.checkout-fields textarea,.special-form textarea,.settings-form textarea,.admin-modal textarea{min-height:90px;resize:vertical}.checkout-fields input:focus,.special-form input:focus,.admin-modal input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(245,185,27,.15)}.form-grid label>small,.checkout-fields label>small{color:var(--brand-red);font-size:9px}.fulfillment-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0;padding:0;border:0}.fulfillment-options legend{margin-bottom:9px;font-size:11px;font-weight:800}.fulfillment-options label{position:relative;display:flex;align-items:center;gap:10px;padding:14px;border:1px solid #ddd0bf;border-radius:9px;background:white;cursor:pointer}.fulfillment-options input{position:absolute;opacity:0}.fulfillment-options label:has(input:checked){border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}.fulfillment-options label>svg:first-of-type{color:var(--brand-red)}.fulfillment-options label>svg:last-of-type{display:none;margin-left:auto;width:16px}.fulfillment-options label:has(input:checked)>svg:last-of-type{display:block}.fulfillment-options span,.fulfillment-options strong,.fulfillment-options small{display:block}.fulfillment-options small{color:var(--muted);font-size:9px}.input-icon{display:flex;align-items:center;border:1px solid #d9ccbb;border-radius:8px;background:white}.input-icon svg{width:17px;margin-left:10px;color:var(--brand-red)}.input-icon input{border:0}.checkout-fields>.button{margin-top:20px}.review-line{display:grid;grid-template-columns:60px 1fr auto;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid #e3d8c8}.review-line img{width:60px;height:55px;object-fit:cover;border-radius:7px}.review-line span,.review-line strong,.review-line small{display:block}.review-line small{color:var(--muted)}.review-step>label{margin-top:18px}.review-actions{display:flex;justify-content:space-between;gap:10px;margin-top:20px}.button-outline-dark{border:1px solid #cdbfae;background:transparent}.form-error{margin:14px 0;padding:10px 12px;border-radius:8px;background:#fbe5df;color:#9b2a1d;font-size:11px}.confirmation-page{padding-top:80px;padding-bottom:80px}.confirmation-card{max-width:680px;margin:auto;padding:45px;border:1px solid #e2d6c5;border-radius:18px;background:#fffaf3;text-align:center;box-shadow:0 15px 45px rgba(58,42,29,.11)}.confirmation-card>svg{width:62px;height:62px;color:#3a8d4a}.confirmation-card h1{margin:12px auto 14px;color:var(--text);font-size:48px}.confirmation-card>p:not(.section-kicker){color:var(--muted)}.confirmation-summary{margin:25px 0;padding:20px;border-radius:12px;background:#f1e7d8;text-align:left}.confirmation-summary>div{display:flex;justify-content:space-between;gap:15px;padding:7px 0;font-size:12px}.confirmation-card>.text-link{display:flex;justify-content:center;margin-top:17px}.special-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.special-features{display:grid;grid-template-columns:1fr 1fr;gap:10px}.special-features span{display:flex;align-items:center;gap:9px;padding:12px;border:1px solid #e0d4c4;border-radius:9px;background:white;font-size:11px}.special-features svg{width:18px;color:var(--brand-red)}.special-form{box-shadow:0 12px 35px rgba(58,42,29,.09)}.special-form>.button{margin-top:18px}.special-success{display:grid;justify-items:center;align-content:center;min-height:420px;padding:35px;border-radius:16px;background:white;text-align:center}.special-success>svg{width:55px;height:55px;color:#378b47}.story-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:70px}.story-grid>div:first-child>p:not(.section-kicker){color:var(--muted);font-size:16px}.value-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.value-cards article{padding:24px;border:1px solid #e2d6c5;border-radius:13px;background:white}.value-cards svg{color:var(--brand-red)}.value-cards h3{font-family:var(--font-serif);font-size:23px}.value-cards p{color:var(--muted);font-size:11px}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.contact-card{display:flex;gap:14px;min-height:150px;padding:25px;border:1px solid #e1d5c4;border-radius:14px;background:#fffaf3}.contact-card>svg{color:var(--brand-red)}.contact-card span,.contact-card small,.contact-card strong{display:block}.contact-card small{color:var(--muted);text-transform:uppercase;letter-spacing:.09em}.contact-card a{display:inline-block;margin-top:10px;color:var(--brand-red);font-size:11px;font-weight:800}.legal-page{max-width:850px;padding-top:85px;padding-bottom:85px}.legal-page h1,.not-found h1{color:var(--text);font-size:58px}.legal-page h2{margin-top:35px;font-size:32px}.legal-page p{color:var(--muted)}.not-found{display:grid;justify-items:center;align-content:center;min-height:75vh;text-align:center}.not-found>span{color:var(--brand-red);font-family:var(--font-serif);font-size:70px}.not-found h1{margin:0}.not-found p{color:var(--muted)}.loading-grid{display:grid;gap:10px}.loading-grid span{height:80px;border-radius:10px;background:linear-gradient(90deg,#eadfce,#f7efe4,#eadfce);background-size:200%;animation:shimmer 1.4s infinite}

/* Admin */
.admin-login-page{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:var(--ink)}.admin-login-brand{display:flex;flex-direction:column;justify-content:end;padding:70px;background:linear-gradient(0deg,rgba(25,19,15,.9),rgba(25,19,15,.35)),url('/images/hero-bread.jpg') center/cover;color:white}.admin-login-brand p{max-width:360px;color:#ddd2c6}.admin-login-card{align-self:center;width:min(440px,calc(100% - 40px));margin:auto;padding:38px;border-radius:17px;background:#fffaf3}.login-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--brand-yellow);color:var(--brand-red)}.admin-login-card h1{margin:8px 0 25px;color:var(--text);font-size:44px}.admin-login-card label{margin-top:14px}.admin-login-card>.button{margin-top:20px}.demo-login{width:100%;margin-top:10px;padding:10px;border:0;background:transparent;color:var(--brand-red);font-weight:700;cursor:pointer}.admin-login-card>small{display:block;color:var(--muted);font-size:9px;text-align:center}.admin-shell{min-height:100vh;background:#f5efe6;color:#35291f}.admin-sidebar{position:fixed;inset:0 auto 0 0;z-index:60;width:238px;display:flex;flex-direction:column;padding:18px 14px;background:var(--ink);color:white}.admin-sidebar-head{display:flex;align-items:center;justify-content:space-between;padding:4px 7px 22px;border-bottom:1px solid rgba(255,255,255,.1)}.admin-sidebar-head button{display:none}.admin-sidebar nav{display:grid;gap:4px;margin-top:20px}.admin-sidebar nav a,.admin-logout{display:flex;align-items:center;gap:11px;min-height:43px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:#bfb4aa;font-size:12px;cursor:pointer}.admin-sidebar nav a:hover,.admin-sidebar nav a.active{background:#503515;color:#fff}.admin-sidebar nav a.active{box-shadow:inset 3px 0 var(--gold)}.admin-sidebar nav svg,.admin-logout svg{width:17px}.admin-sidebar nav b{margin-left:auto;padding:2px 6px;border-radius:10px;background:var(--brand-red);font-size:9px}.admin-logout{margin-top:auto}.admin-main{min-height:100vh;margin-left:238px}.admin-topbar{height:68px;display:flex;align-items:center;gap:15px;padding:0 28px;border-bottom:1px solid #e0d6c8;background:white}.admin-topbar p,.admin-topbar strong{display:block;margin:0}.admin-topbar p{color:var(--muted);font-size:9px}.admin-topbar strong{font-size:13px}.admin-menu{display:none;border:0;background:transparent}.demo-chip{margin-left:auto;padding:4px 8px;border-radius:999px;background:#fff0bf;color:#735600;font-size:9px;font-weight:800}.admin-content{padding:28px}.admin-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:22px}.admin-title h1{margin:3px 0 0;color:var(--text);font-size:42px}.admin-title>div>span{color:var(--muted);font-size:11px}.admin-title .button svg{width:16px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.metric-grid article{position:relative;display:grid;padding:18px;border:1px solid #e3d9cb;border-radius:12px;background:white}.metric-grid article>span{position:absolute;right:15px;top:15px;display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:#fff0c7;color:#775600}.metric-grid svg{width:18px}.metric-grid small{color:var(--muted);font-size:10px}.metric-grid strong{margin-top:6px;font-size:25px}.metric-grid em{color:#4a8b54;font-size:9px;font-style:normal}.dashboard-grid{display:grid;grid-template-columns:1.6fr .75fr;gap:14px;margin-top:14px}.admin-panel{padding:18px;border:1px solid #e3d9cb;border-radius:12px;background:white}.panel-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.panel-heading h2,.admin-panel>h2{margin:0;font-family:var(--font-sans);font-size:14px}.panel-heading a{display:flex;align-items:center;color:var(--brand-red);font-size:9px;font-weight:700}.panel-heading svg{width:13px}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:10px}.admin-table th{padding:9px 10px;border-bottom:1px solid #e5ddd2;color:#91867c;font-size:8px;letter-spacing:.07em;text-align:left;text-transform:uppercase}.admin-table td{padding:10px;border-bottom:1px solid #eee7dd}.admin-table tbody tr:last-child td{border:0}.table-product{display:flex;align-items:center;gap:9px}.table-product img{width:42px;height:38px;object-fit:cover;border-radius:6px}.table-product span,.table-product strong,.table-product small{display:block}.table-product small{color:var(--muted)}.status-badge{width:max-content;padding:4px 8px;border:0;border-radius:999px;background:#eee9e2;color:#655d56;font-size:8px;font-weight:750}.status-new,.status-pending{background:#fff0c9;color:#79600f}.status-confirmed,.status-ready{background:#e2f0e4;color:#346a3b}.status-preparing{background:#f7dfc9;color:#8a4d20}.status-cancelled{background:#f3dddd;color:#8a3535}.top-products{display:grid;gap:9px}.top-products>div{display:grid;grid-template-columns:20px 42px 1fr;align-items:center;gap:8px}.top-products>div>b{color:var(--brand-red)}.top-products img{width:42px;height:38px;object-fit:cover;border-radius:6px}.top-products span,.top-products strong,.top-products small{display:block}.top-products strong{font-size:10px}.top-products small{color:var(--muted);font-size:8px}.admin-toolbar{display:flex;gap:9px;margin-bottom:15px}.admin-toolbar label{flex:1;display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid #ddd4c7;border-radius:7px}.admin-toolbar svg{width:15px;color:var(--brand-red)}.admin-toolbar input{width:100%;height:38px;border:0;outline:0}.admin-toolbar select{padding:0 10px;border:1px solid #ddd4c7;border-radius:7px;background:white;font-size:10px}.star-active{width:16px;fill:var(--gold);color:var(--gold)}.table-actions{display:flex}.table-actions button{display:grid;place-items:center;width:28px;height:28px;border:0;background:transparent;color:#766c63;cursor:pointer}.table-actions svg{width:14px}.category-admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.category-admin-card{position:relative;display:grid;grid-template-columns:90px 1fr;gap:14px;padding:13px;border:1px solid #e1d7ca;border-radius:12px;background:white}.category-admin-card>img{width:90px;height:90px;object-fit:cover;border-radius:50%}.category-admin-card small{color:var(--muted)}.category-admin-card h3{margin:3px 0;font-family:var(--font-serif);font-size:22px}.category-admin-card p{margin:0;color:var(--muted);font-size:9px}.category-admin-card>button{position:absolute;right:8px;top:8px;border:0;background:transparent}.category-admin-card>button svg{width:14px}.switch{display:flex!important;align-items:center;gap:7px!important;margin-top:8px;font-size:9px!important}.switch input{position:absolute;opacity:0}.switch span{position:relative;width:31px;height:17px;border-radius:20px;background:#cfc6bb}.switch span:after{content:"";position:absolute;left:2px;top:2px;width:13px;height:13px;border-radius:50%;background:white;transition:.2s}.switch input:checked+span{background:var(--brand-red)}.switch input:checked+span:after{transform:translateX(14px)}.promotion-admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.promotion-admin-grid article{overflow:hidden;border:1px solid #e1d7ca;border-radius:12px;background:white}.promotion-admin-grid img{width:100%;height:155px;object-fit:cover}.promotion-admin-grid article>div{position:relative;padding:15px}.promotion-admin-grid .sale-badge{top:-145px}.promotion-admin-grid h3{margin:0;font-family:var(--font-serif);font-size:23px}.promotion-admin-grid p{display:flex;gap:8px;margin:5px 0}.promotion-admin-grid p strong{color:var(--brand-red)}.promotion-admin-grid small{color:var(--muted)}.special-admin-row{display:grid;grid-template-columns:1fr 1fr auto auto;align-items:center;gap:12px;padding:14px 5px;border-bottom:1px solid #e9e1d6;font-size:10px}.special-admin-row button{padding:7px 10px;border:1px solid #d9cdbc;border-radius:6px;background:white}.settings-form{max-width:850px}.settings-form>h2{margin-bottom:18px}.admin-modal-layer{display:grid;place-items:center;padding:20px}.admin-modal{width:min(760px,100%);max-height:92vh;overflow-y:auto;border-radius:15px;background:#fffaf3}.admin-modal header,.admin-modal footer{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid #e4d9c9}.admin-modal header h2{margin:2px 0 0}.admin-modal>.form-grid{padding:22px}.admin-modal footer{justify-content:flex-end;gap:9px;border-top:1px solid #e4d9c9;border-bottom:0}.admin-modal footer svg{width:15px}.admin-loading{min-height:100vh;display:grid;place-items:center;background:var(--ink);color:white}

@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes slideLeft{from{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes slideRight{from{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes shimmer{from{background-position:200%}to{background-position:-200%}}

@media(max-width:1100px){.desktop-nav{gap:15px}.category-grid{grid-template-columns:repeat(4,1fr)}.product-grid{grid-template-columns:repeat(3,1fr)}.catalog-grid{grid-template-columns:repeat(2,1fr)}.event-copy{padding:38px}.footer-grid{grid-template-columns:1.2fr repeat(3,1fr);gap:30px}.dashboard-grid{grid-template-columns:1fr}.category-admin-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.mobile-menu-button{display:grid}.header-inner>.logo{margin-right:auto}.header-inner{justify-content:initial}.category-grid{grid-template-columns:repeat(4,1fr)}.promotion-grid,.product-grid{grid-template-columns:repeat(2,1fr)}.event-grid,.assistant-home-grid,.location-card,.story-grid,.special-layout{grid-template-columns:1fr}.event-photo{height:360px}.assistant-home-grid{gap:30px}.map-visual{min-height:330px}.footer-grid{grid-template-columns:1.4fr 1fr 1fr}.footer-grid>div:last-child{grid-column:1/-1}.catalog-layout{grid-template-columns:1fr}.filters-layer{display:none}.filters-visible{position:fixed;inset:0;z-index:120;display:block;padding:15px;background:rgba(20,13,9,.7)}.filters-visible .catalog-filters{position:absolute;right:0;top:0;width:min(360px,90%);height:100%;overflow-y:auto;border-radius:0}.filter-title button{display:grid}.mobile-filter-button{display:flex;align-items:center;gap:6px;padding:0 12px;border:1px solid #dacdbc;border-radius:9px;background:white}.mobile-filter-button svg{width:16px}.product-detail-grid{grid-template-columns:1fr;gap:30px}.product-info{padding:0}.cart-page-grid,.checkout-grid{grid-template-columns:1fr}.order-summary{position:static}.special-layout>div:first-child{max-width:700px}.value-cards{grid-template-columns:repeat(3,1fr)}.contact-grid{grid-template-columns:repeat(2,1fr)}.admin-sidebar{transform:translateX(-100%);transition:transform .25s}.admin-sidebar.open{transform:translateX(0)}.admin-sidebar-head button{display:grid}.admin-main{margin-left:0}.admin-menu{display:grid}.metric-grid{grid-template-columns:repeat(2,1fr)}.promotion-admin-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.container{width:min(100% - 28px,1280px)}.header-inner{gap:8px}.logo-copy strong{font-size:17px}.logo-copy small{font-size:8px}.logo-emblem{width:34px;height:34px}.header-actions{gap:0}.header-actions button{display:grid;width:35px}.header-actions button:first-child{display:none}.section{padding-top:52px;padding-bottom:52px}.hero-grid{min-height:560px}.hero-copy{padding:46px 0}.hero-note{font-size:9px}.section-heading h2{font-size:36px}.heading-row{align-items:start}.category-grid{grid-template-columns:repeat(3,1fr);gap:18px 8px}.category-card>span{max-width:94px}.category-card strong{font-size:10px}.promotion-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.promotion-card{min-width:85%;scroll-snap-align:start}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.product-card-body{padding:11px}.product-card-body h2,.product-card-body h3{font-size:18px}.product-card-body>p{min-height:32px;font-size:10px}.product-price strong{font-size:16px}.add-button span{display:none}.event-section{padding:0}.event-grid{width:100%;border-radius:0}.event-photo{height:280px}.event-copy{padding:38px 25px}.event-copy h2,.assistant-home h2{font-size:40px}.assistant-home{padding:55px 0}.location-section{padding-inline:0}.location-card{border-radius:0}.location-copy{padding:35px 25px}.location-copy h2{font-size:40px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 20px}.footer-brand{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom{display:grid;gap:4px}.assistant-shell{right:12px;bottom:12px}.assistant-trigger{width:230px}.whatsapp-float{bottom:58px}.assistant-panel{height:calc(100vh - 24px)}.page-hero{min-height:300px}.page-hero h1{font-size:46px}.mini-hero{min-height:190px}.mini-hero h1{font-size:40px}.catalog-tools{display:grid;grid-template-columns:1fr 1fr}.catalog-search{grid-column:1/-1}.catalog-sort select{width:100%}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-detail{width:100%;padding-top:15px}.breadcrumbs{padding-inline:14px}.product-detail-grid{gap:23px}.gallery-main{border-radius:0;aspect-ratio:1}.gallery-thumbs{padding-inline:14px}.product-info{padding-inline:14px}.product-info h1{font-size:42px}.purchase-row{display:grid;grid-template-columns:auto 1fr}.purchase-button{min-width:0}.product-meta{display:grid}.mobile-add-bar{position:sticky;bottom:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:white;border-top:1px solid #e1d5c4;box-shadow:0 -8px 25px rgba(0,0,0,.08)}.mobile-add-bar small,.mobile-add-bar strong{display:block}.mobile-add-bar small{max-width:180px;color:var(--muted);font-size:9px}.mobile-add-bar .button{min-height:42px}.cart-lines,.checkout-card,.order-summary,.special-form{padding:18px}.cart-line{grid-template-columns:65px 1fr auto}.cart-line img{width:65px;height:60px}.cart-line>.quantity-control{grid-column:2}.cart-line>strong{display:none}.cart-line>.remove-button{grid-column:3;grid-row:1}.checkout-steps i{width:25px}.checkout-steps span{font-size:0}.checkout-steps span b{font-size:10px}.form-grid,.fulfillment-options{grid-template-columns:1fr}.review-actions{display:grid}.confirmation-card{padding:28px 18px}.confirmation-card h1{font-size:39px}.special-features{grid-template-columns:1fr}.value-cards{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr}.legal-page h1,.not-found h1{font-size:43px}.admin-login-page{grid-template-columns:1fr}.admin-login-brand{display:none}.admin-login-card{padding:28px}.admin-content{padding:18px 12px}.admin-title{align-items:start}.admin-title h1{font-size:34px}.admin-title>button span{display:none}.metric-grid{grid-template-columns:1fr 1fr;gap:8px}.metric-grid article{padding:14px}.metric-grid article>span{display:none}.metric-grid strong{font-size:20px}.category-admin-grid,.promotion-admin-grid{grid-template-columns:1fr}.admin-toolbar{display:grid;grid-template-columns:1fr 1fr}.admin-toolbar label{grid-column:1/-1}.special-admin-row{grid-template-columns:1fr auto}.special-admin-row span{grid-column:1}.special-admin-row button{grid-column:2;grid-row:1/3}.admin-modal>.form-grid{grid-template-columns:1fr}.admin-modal .full-field{grid-column:auto}}

/* Public lunch order builder */
.lunch-hero{min-height:430px;background-image:linear-gradient(90deg,rgba(25,19,15,.98),rgba(25,19,15,.48)),url('/images/sandwich.jpg');background-position:center;background-size:cover}.lunch-hero h1{max-width:720px}.lunch-hero-benefits{display:flex;flex-wrap:wrap;gap:18px;margin-top:28px}.lunch-hero-benefits span{display:flex;align-items:center;gap:7px;color:#fff3df;font-size:12px;font-weight:700}.lunch-hero-benefits svg{width:18px;color:var(--gold)}.lunch-builder-section{background:var(--cream-2)}.lunch-builder-grid{display:grid;grid-template-columns:360px 1fr;gap:24px;align-items:start}.lunch-config,.lunch-result{border:1px solid #dfd2c0;border-radius:18px;background:#fffaf3;box-shadow:0 14px 38px rgba(58,42,29,.08)}.lunch-config{position:sticky;top:96px;padding:26px}.lunch-config h2{margin:6px 0 20px;font-size:34px}.people-input{height:62px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:0 15px;border:1px solid #d9cbb9;border-radius:11px;background:white}.people-input svg{width:21px;color:var(--brand-red)}.people-input input{min-width:0;width:100%;border:0;outline:0;background:transparent;font-size:26px;font-weight:800;color:var(--text)}.people-input span{color:var(--muted);font-size:11px}.lunch-options{margin:22px 0 0;padding:0;border:0}.lunch-options legend,.budget-input>span{margin-bottom:9px;font-size:11px;font-weight:800}.occasion-options{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.occasion-options button{min-height:38px;border:1px solid #dcd0c0;border-radius:8px;background:white;color:var(--text);font-size:10px;font-weight:700;cursor:pointer}.occasion-options button.selected{border-color:var(--gold);background:#fff5ce;box-shadow:0 0 0 1px var(--gold)}.preference-options{display:grid;gap:7px}.preference-options button{position:relative;display:grid;gap:1px;padding:11px 38px 11px 12px;border:1px solid #dcd0c0;border-radius:9px;background:white;text-align:left;cursor:pointer}.preference-options button.selected{border-color:var(--gold);background:#fff9e3;box-shadow:0 0 0 1px var(--gold)}.preference-options span{font-size:12px;font-weight:800}.preference-options small{color:var(--muted);font-size:9px}.preference-options svg{position:absolute;right:12px;top:14px;width:16px;color:var(--brand-red)}.budget-input{display:grid;margin:22px 0}.budget-input>div{height:46px;display:flex;align-items:center;border:1px solid #d9cbb9;border-radius:8px;background:white}.budget-input b{padding-left:12px;color:var(--brand-red)}.budget-input input{width:100%;height:100%;padding:0 10px;border:0;outline:0;background:transparent;font-weight:700}.budget-input small{margin-top:5px;color:var(--muted);font-size:9px}.lunch-config .button svg{width:16px}.lunch-result{overflow:hidden}.lunch-result-head{display:flex;justify-content:space-between;gap:20px;padding:28px;border-bottom:1px solid #e5dacb}.lunch-result-head h2{margin:5px 0 9px;font-size:39px}.lunch-result-head p:not(.section-kicker){max-width:590px;margin:0;color:var(--muted);font-size:12px}.lunch-result-icon{min-width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--brand-yellow);color:var(--brand-red)}.lunch-result-icon svg{width:21px}.lunch-lines{padding:0 28px}.lunch-line{display:grid;grid-template-columns:92px 1fr auto;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid #e7ddcf}.lunch-line>img{width:92px;height:80px;object-fit:cover;border-radius:11px}.lunch-line-copy h3{margin:5px 0 2px;font-family:var(--font-serif);font-size:23px;line-height:1}.lunch-line-copy p{max-width:480px;margin:0;color:var(--muted);font-size:10px}.lunch-line-copy>strong{display:block;margin-top:5px;color:var(--brand-red);font-size:11px}.lunch-line-actions{display:grid;justify-items:end;gap:8px}.lunch-line-actions>b{font-size:14px}.lunch-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 28px;background:white}.lunch-summary-copy span,.lunch-summary-copy strong,.lunch-summary-copy small{display:block}.lunch-summary-copy span{color:var(--muted);font-size:10px}.lunch-summary-copy strong{color:var(--brand-red);font-size:28px}.lunch-summary-copy small{font-size:9px}.within-budget{color:#397442}.over-budget{color:#a03a2d}.lunch-summary .button{min-width:190px}.lunch-summary .button svg{width:17px}.lunch-disclaimer{margin:0;padding:0 28px 22px;background:white;color:var(--muted);font-size:9px}.lunch-teaser{padding:72px 0;background:var(--cream-2)}.lunch-teaser-card{display:grid;grid-template-columns:1.05fr .95fr;min-height:390px;overflow:hidden;border-radius:18px;background:var(--brand-yellow);box-shadow:0 18px 45px rgba(58,42,29,.14)}.lunch-teaser-copy{display:flex;flex-direction:column;justify-content:center;padding:52px}.lunch-teaser-copy h2{max-width:560px;margin:7px 0 15px;font-size:49px}.lunch-teaser-copy>p:not(.section-kicker){max-width:540px;margin:0;color:#5d4d17}.lunch-teaser-copy .button{align-self:flex-start;margin-top:24px}.lunch-teaser-photo{position:relative;background:linear-gradient(90deg,rgba(241,217,0,.22),transparent),url('/images/sandwich.jpg') center/cover}.lunch-teaser-photo span{position:absolute;left:24px;bottom:24px;padding:11px 14px;border-radius:10px;background:rgba(25,19,15,.92);color:white;font-size:11px}.lunch-teaser-photo strong{display:block;color:var(--gold);font-size:18px}.occasion-options button:focus-visible,.preference-options button:focus-visible{outline:3px solid rgba(214,40,28,.28);outline-offset:2px}@media(max-width:900px){.lunch-builder-grid{grid-template-columns:1fr}.lunch-config{position:static}.lunch-teaser-card{grid-template-columns:1fr}.lunch-teaser-photo{min-height:300px}}@media(max-width:620px){.lunch-hero{min-height:390px}.lunch-hero h1{font-size:43px}.lunch-hero-benefits{display:grid;gap:8px}.lunch-builder-section{padding-top:18px}.lunch-config,.lunch-result{border-radius:13px}.lunch-config{padding:20px}.lunch-result-head{padding:22px 18px}.lunch-result-head h2{font-size:31px}.lunch-result-icon{display:none}.lunch-lines{padding:0 18px}.lunch-line{grid-template-columns:70px 1fr;gap:11px}.lunch-line>img{width:70px;height:66px}.lunch-line-copy h3{font-size:20px}.lunch-line-actions{grid-column:2;display:flex;align-items:center;justify-content:space-between;width:100%}.lunch-summary{align-items:stretch;display:grid;padding:20px 18px}.lunch-summary .button{width:100%}.lunch-disclaimer{padding:0 18px 20px}.lunch-teaser{padding:45px 0}.lunch-teaser-card{width:100%;border-radius:0}.lunch-teaser-copy{padding:36px 24px}.lunch-teaser-copy h2{font-size:39px}.lunch-teaser-copy .button{align-self:stretch}.lunch-teaser-photo{min-height:250px}}
/* Readable lunch controls and feedback at every viewport. */
.lunch-options legend,.budget-input>span,.people-input span,.occasion-options button,.preference-options small,.budget-input small,.lunch-line-copy p,.lunch-line-copy>strong,.lunch-summary-copy span,.lunch-summary-copy small,.lunch-disclaimer{font-size:14px;line-height:1.5}.preference-options span{font-size:16px}.lunch-result-head p:not(.section-kicker){font-size:15px}.lunch-lines>.lunch-disclaimer{margin:18px 0;padding:16px;border-radius:10px;background:#fff3d4}.lunch-result>.button{margin:0 18px 22px}.people-input:focus-within,.budget-input>div:focus-within{outline:3px solid var(--gold);outline-offset:2px}
.lunch-config{margin:0;min-width:0}.lunch-config:disabled{opacity:.7}

/* Demo accessibility: clearly visible keyboard focus and resilient text */
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #9e2419;outline-offset:3px}
:where(.product-card,.catalog-main,.checkout-card){min-width:0}
.demo-special-details{grid-column:1/-1;min-width:0}.demo-special-details summary{cursor:pointer;font-weight:700;text-decoration:underline;text-underline-offset:3px}.demo-special-details p{overflow-wrap:anywhere}
@media(max-width:620px){.admin-toolbar select,.catalog-sort select,.special-form input,.special-form select,.special-form textarea{font-size:16px}}

.assistant-suggestion-actions{display:grid;gap:7px;margin-top:10px}
.assistant-suggestion-actions button,.assistant-suggestion-actions a{display:flex;gap:7px;align-items:center;justify-content:center;min-height:40px;border-radius:8px;padding:8px;text-align:center;font-size:12px;font-weight:700}
.assistant-suggestion-actions button{border:0;background:var(--gold);color:var(--ink);cursor:pointer}
.assistant-suggestion-actions button:disabled{opacity:.48;cursor:not-allowed}
.assistant-suggestion-actions svg{width:16px}
.assistant-suggestion-actions a{border:1px solid #a99378;background:#fff;color:#38291f}

/* Accessibility refinement: use darker ink for small metadata over light surfaces. */
.section-kicker{color:#962519}
.product-card-body>p,.product-card-compact .product-card-body>p{color:#5b4b3f}
.site-footer .footer-brand>small{color:#e0d5c9}
.product-card .availability{font-size:11px}
@media(prefers-reduced-motion:reduce){.product-card,.category-card{transition:none!important;transform:none!important}}

.demo-customization{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0;padding:17px;border:1px solid #d8c7ad;border-radius:12px;background:#fffaf2}
.demo-customization legend{font-weight:800;padding:0 6px}
.demo-customization label{display:grid;gap:5px;font-size:13px;font-weight:700}
.demo-customization select,.demo-customization input{width:100%;height:42px;padding:8px;border:1px solid #a89079;border-radius:8px;background:#fff;color:#35251e}
.demo-customization>small{grid-column:1/-1;color:#564737}
@media(max-width:620px){.demo-customization{grid-template-columns:1fr}}
/* Mobile admin: keep controls in their own rows and give data tables their
   own horizontal scroll surface instead of crushing cell contents. */
@media(max-width:620px){
 .admin-title{display:flex;flex-direction:column;align-items:stretch;gap:14px}
 .admin-title>div{min-width:0}
 .admin-title>.button{width:100%;max-width:100%;margin:0}
 .admin-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;min-width:0}
 .admin-toolbar label{grid-column:1/-1;min-width:0;width:100%;max-width:100%}
 .admin-toolbar input{min-width:0;max-width:100%}
 .admin-toolbar select{width:100%;min-width:0;max-width:100%;font-size:13px}
 .admin-panel{min-width:0;max-width:100%}
 .admin-table-wrap{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
 .admin-table{min-width:720px;width:100%;table-layout:auto}
 .admin-table th,.admin-table td{white-space:nowrap}
 .admin-table .table-product{min-width:190px}
}

@media(max-width:620px){
 .admin-table-wrap::before{content:"Deslizá horizontalmente para ver precios y acciones →";display:block;position:sticky;left:0;width:max-content;max-width:100%;padding:5px 8px;color:#594c42;font-size:11px}
 .admin-topbar>button:last-child{font-size:11px;white-space:nowrap;padding:7px 5px!important}
}
/* Axe contrast audit: struck-through prices and text on branded dark panels. */
.promotion-card del,.product-price del{color:#685549}
.event-copy>.section-kicker{color:#ffda85}
.assistant-home .section-kicker,.assistant-home-grid>div>p:not(.section-kicker){color:#ffffff}

[hidden]{display:none!important}
.skip-link{position:absolute;left:-9999px;top:8px;z-index:200;padding:12px;background:white;color:#19130f}.skip-link:focus{left:8px}
.catalog-mobile-nav{position:absolute;top:100%;left:0;right:0;display:grid;gap:0;padding:12px 24px;background:var(--ink);box-shadow:0 15px 30px #0004}.catalog-mobile-nav a{padding:12px;color:white;border-bottom:1px solid #ffffff22}
.catalog-category-nav{display:grid;gap:9px;margin-top:15px;font-size:13px}.catalog-category-nav a:hover{text-decoration:underline}
.catalog-grid>[data-product-name]{min-width:0}.catalog-grid .product-card{height:100%}
.product-card-body .add-button{margin-top:18px}.product-card-body .add-button svg{width:16px}
.gallery-thumbs img{width:72px;height:62px;object-fit:cover;border-radius:8px}
.location-section .location-card{width:100%}
.promotion-card>div:last-child>svg{bottom:18px}.promotion-card>div:last-child{min-height:68px}
.assistant-demo{display:flex;align-items:center;justify-content:center}
@media(max-width:900px){.catalog-layout{grid-template-columns:1fr}.catalog-filters{position:static}.catalog-category-nav{display:flex;flex-wrap:wrap;gap:8px 16px}}
@media(max-width:620px){.mobile-menu-button{display:block}.header-actions{margin-left:auto}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-grid .product-card-body p{display:none}.catalog-grid .product-card-body .add-button{font-size:11px}.location-section .location-card{border-radius:0}}

.catalog-image-notice{font-size:12px;line-height:1.5;color:var(--muted,#71665e);margin:0 0 16px}
