/* NORKY'S V5 — Layout simplificado inspirado en la lógica de una carta digital.
   Mantiene Montserrat, paleta oficial verde/naranja y el panel V4 sin cambios visuales. */
:root{--page:#ffffff;--ink:#1a2720;--inksoft:#4d5b51;--brand:#02a64f;--branddark:#087842;--orange:#ff8a35;--border:#e8ece7;--cream:#f8faf8;--shadowsoft:0 7px 24px rgba(30,51,35,.055)}
body:not(.admin-page){background:#fff;color:var(--ink);font-size:13px}
body:not(.admin-page) h1,body:not(.admin-page) h2,body:not(.admin-page) h3{letter-spacing:-.035em}
body:not(.admin-page) .container{width:min(1200px,calc(100% - 44px))}
body:not(.admin-page) .site-header{background:#fff;color:#172b1d;box-shadow:none;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:90}
body:not(.admin-page) .nav-wrap{height:72px;gap:24px}
body:not(.admin-page) .nav-logo{width:140px;max-width:140px;height:48px;background:none;padding:0;border:0;object-fit:contain}
body:not(.admin-page) .brand-copy small{font-size:9px;color:#788979;font-weight:600;letter-spacing:0}
body:not(.admin-page) .main-nav{gap:6px;margin-left:auto;margin-right:8px}
body:not(.admin-page) .nav-link{color:#5e6d60;font-weight:700;font-size:12px;border-radius:7px;padding:12px 14px;white-space:nowrap}
body:not(.admin-page) .nav-link:hover,body:not(.admin-page) .nav-link.is-active{color:#067a3b;background:#eef8ef;border-color:transparent}
body:not(.admin-page) .cart-button{border:0;background:var(--brand);border-radius:8px;font-weight:800;font-size:12px;padding:11px 15px;display:flex;align-items:center;gap:7px}
body:not(.admin-page) .cart-button span#cartCount{background:#ffffff;color:#087a3c;min-width:20px;margin:0}
body:not(.admin-page) .mobile-nav{background:#fff;border-bottom:1px solid var(--border);top:70px;position:sticky;z-index:89;display:none}
body:not(.admin-page) .order-context{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:29px 0 21px}
body:not(.admin-page) .context-overline{display:block;color:#238447;font-size:9px;font-weight:800;letter-spacing:.13em;margin-bottom:7px}
body:not(.admin-page) .order-context h1{font-size:29px;line-height:1.1;letter-spacing:-.05em;margin:0 0 7px;font-weight:900}
body:not(.admin-page) .accent-word{color:var(--brand)}
body:not(.admin-page) .order-context p{margin:0;color:#7a817d;font-size:11px;line-height:1.7}
body:not(.admin-page) .delivery-pill{background:#e8f7ec;color:#087b3d;border:1px solid #b6e8c8;padding:11px 16px;border-radius:28px;font-weight:800;white-space:nowrap;font-size:12px}
body:not(.admin-page) .delivery-pill span{color:#06a64b;margin-right:5px;font-size:10px}
/* banner como imagen completa, en lugar de capas de texto superpuesto */
body:not(.admin-page) .hero{background:#fff;overflow:visible;isolation:auto}
body:not(.admin-page) .hero-inner{position:relative;min-height:0;padding:0;display:block;aspect-ratio:1320/385;background:#e7f5e8;border-radius:13px;overflow:hidden;box-shadow:0 4px 15px #163e2014}
body:not(.admin-page) .hero-inner::before{display:none}
body:not(.admin-page) .hero-slide-hit{border:0;background:transparent;width:100%;height:100%;padding:0;display:block;position:relative;text-align:left;cursor:pointer}
body:not(.admin-page) .hero-slide-hit picture{display:block;width:100%;height:100%}
body:not(.admin-page) .hero-slide-hit img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
body:not(.admin-page) .hero-slide-hit:hover img{filter:brightness(.97)}
body:not(.admin-page) .hero-slide-hit:focus-visible{outline:4px solid #ffb06d;outline-offset:-5px}
body:not(.admin-page) .hero-slide-hit.not-clickable{cursor:default}
body:not(.admin-page) .hero-click-hint{position:absolute;bottom:25px;right:24px;padding:10px 14px;background:#ffffffeb;color:#0b6b36;border-radius:8px;font-size:11px;font-weight:800;box-shadow:0 4px 11px #182e1d23;pointer-events:none}
body:not(.admin-page) .hero-slide-hit.not-clickable .hero-click-hint{display:none}
body:not(.admin-page) .hero-arrow{left:auto;top:50%;z-index:3;width:34px;height:34px;background:#fff9;border:1px solid #ffffffcc;border-radius:50%;font-size:25px;color:#167c46;box-shadow:0 3px 10px #102f251f;transform:translateY(-50%)}
body:not(.admin-page) .hero-arrow.prev{left:14px}
body:not(.admin-page) .hero-arrow.next{right:14px}
body:not(.admin-page) .slide-dots{z-index:2;bottom:13px;left:50%;gap:6px}
body:not(.admin-page) .slide-dots button{background:#fff9;border:1px solid #157e3866;height:8px;width:8px}
body:not(.admin-page) .slide-dots button.active{background:#0b9f4c;width:23px;border-color:#ffffffaa}
/* carta online: filtros a un lado, tarjetas horizontales en dos columnas */
body:not(.admin-page) .section{padding:48px 0}
body:not(.admin-page) .menu-section{background:white}
body:not(.admin-page) .menu-shell{display:grid;grid-template-columns:213px minmax(0,1fr);gap:37px;align-items:start}
body:not(.admin-page) .menu-sidebar{border-right:1px solid var(--border);min-height:460px;padding-right:22px}
body:not(.admin-page) .sidebar-sticky{position:sticky;top:110px}
body:not(.admin-page) .sidebar-kicker{font-size:9px;color:#95a19a;font-weight:900;letter-spacing:.15em}
body:not(.admin-page) .sidebar-head h2{font-size:15px;font-weight:900;color:#21322b;margin:6px 0 16px}
body:not(.admin-page) .menu-search{display:flex;gap:6px;background:#f8f9f8;border:1px solid #e9edea;border-radius:8px;align-items:center;padding:0 10px;margin:0 0 17px;height:40px}
body:not(.admin-page) .menu-search span{font-size:19px;color:#90a19a}
body:not(.admin-page) .menu-search input{width:100%;border:0;background:none;outline:0;font-size:11px;min-width:0;color:#152d1f}
body:not(.admin-page) .category-pills{display:flex;flex-direction:column;gap:3px;overflow:visible;margin:0;padding:0}
body:not(.admin-page) .category-pills button{width:100%;flex:none;display:flex;align-items:center;justify-content:space-between;text-align:left;gap:10px;border:0;border-radius:7px;background:transparent;color:#617067;font-size:11px;line-height:1.4;font-weight:700;padding:10px 11px}
body:not(.admin-page) .category-pills button:hover{background:#f2f8f3;color:#087f3f}
body:not(.admin-page) .category-pills button.selected{background:var(--brand);color:#fff;border:0}
body:not(.admin-page) .category-pills em{font-size:9px;font-weight:800;font-style:normal;opacity:.75}
body:not(.admin-page) .sidebar-note{margin-top:24px;padding:13px 12px;background:#eff9f0;color:#4c8062;border-radius:9px;font-size:10px;line-height:1.7;font-weight:600}
body:not(.admin-page) .sidebar-note span{color:#00a34c;font-weight:900}
body:not(.admin-page) .menu-intro{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:1px 0 28px}
body:not(.admin-page) .eyebrow-minimal{font-weight:900;font-size:9px;letter-spacing:.12em;color:#0d9f4e}
body:not(.admin-page) .menu-intro h2{font:900 31px/1.1 Montserrat,sans-serif;letter-spacing:-.05em;color:#1d3224;margin:8px 0 6px}
body:not(.admin-page) .menu-intro p{font-size:11px;color:#8b968f;margin:0}
body:not(.admin-page) .menu-count{color:#87978e;font-size:10px;font-weight:800;white-space:nowrap}
body:not(.admin-page) .product-grid{display:flex;flex-direction:column;gap:25px}
body:not(.admin-page) .menu-group{width:100%}
body:not(.admin-page) .menu-group-title{font:900 13px Montserrat,sans-serif;letter-spacing:.03em;color:#27352d;margin:0 0 11px;text-transform:uppercase}
body:not(.admin-page) .product-grid-inner{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
body:not(.admin-page) .product-card{display:grid;grid-template-columns:57% 43%;align-items:stretch;min-height:142px;box-shadow:none;border-radius:10px;border:1px solid #e7ece8;position:relative;transform:none;overflow:hidden;background:#fff}
body:not(.admin-page) .product-card:hover{box-shadow:0 9px 25px #0e46291a;transform:translateY(-1px)}
body:not(.admin-page) .product-body{min-width:0;padding:16px 15px 14px;display:flex;flex-direction:column;align-items:start}
body:not(.admin-page) .product-body h3{font-size:12px;line-height:1.35;font-weight:900;margin:0 0 6px;letter-spacing:-.02em;min-height:0}
body:not(.admin-page) .product-body .price{font-size:12px;font-weight:900;color:#086c37;line-height:1.2}
body:not(.admin-page) .product-body p{font-size:10px;color:#7c877f;margin:8px 0 0;line-height:1.55;min-height:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
body:not(.admin-page) .product-image{min-width:0;position:relative;background:#f4f7f3}
body:not(.admin-page) .product-image>img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
body:not(.admin-page) .product-image button{position:absolute;right:10px;bottom:10px;background:#fc7133;color:#fff;border:0;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;font-size:23px;line-height:1;box-shadow:0 5px 9px #0a33182e}
body:not(.admin-page) .product-image button:hover{background:#dd501b}
body:not(.admin-page) .product-spotlight{box-shadow:0 0 0 4px #ffae71,0 10px 35px #166b313d!important}
/* los 4 destacados al final de la carta */
body:not(.admin-page) .promos{background:#f8faf7;border-top:1px solid #edf1ec}
body:not(.admin-page) .section-heading{margin-bottom:25px}
body:not(.admin-page) .section-heading h2{color:#1b3825;font-size:29px;font-weight:900;line-height:1.12;margin:0 0 7px}
body:not(.admin-page) .section-heading p{font-size:11px;color:#7a877e}
body:not(.admin-page) .kicker{font-size:9px;color:#078c47;letter-spacing:.14em;margin-bottom:7px}
body:not(.admin-page) .promos-heading{display:flex;align-items:end;justify-content:space-between;gap:25px}
body:not(.admin-page) .text-link{background:none;color:#0c8244;font-size:11px;font-weight:800;border:0;padding:10px 0}
body:not(.admin-page) .featured-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;max-width:none;margin:0}
body:not(.admin-page) .featured-card{border:1px solid #e8eee8;border-radius:12px;box-shadow:none;position:relative;overflow:hidden;transition:transform .15s,box-shadow .15s}
body:not(.admin-page) .featured-card:hover{box-shadow:var(--shadowsoft);transform:translateY(-3px)}
body:not(.admin-page) .featured-image{height:153px;position:relative;overflow:hidden;background:#f0f4ef}
body:not(.admin-page) .featured-image img{width:100%;height:100%;object-fit:cover}
body:not(.admin-page) .featured-ribbon{position:absolute;top:10px;left:10px;background:#fff;color:#08773f;font-size:9px;font-weight:900;padding:7px 9px;border-radius:5px;box-shadow:0 3px 7px #00000012;letter-spacing:0}
body:not(.admin-page) .featured-body{padding:17px}
body:not(.admin-page) .featured-body h3{font-size:13px;margin:0 0 7px}
body:not(.admin-page) .featured-body p{color:#7e8880;font-size:10px;min-height:43px;margin-bottom:13px}
body:not(.admin-page) .featured-bottom .price{font-size:16px;color:#087641}
body:not(.admin-page) .featured-bottom button{background:#fa7839;color:white;border-radius:7px;font-size:10px;padding:10px 11px}
/* locales al pie, solo cuatro tarjetas compactas */
body:not(.admin-page) .locations{background:white;border-top:1px solid #edf1ec;padding:54px 0 70px}
body:not(.admin-page) .stores-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
body:not(.admin-page) .store-card{border:1px solid #e8ede9;border-radius:12px;box-shadow:none;overflow:hidden}
body:not(.admin-page) .store-card:hover{box-shadow:var(--shadowsoft)}
body:not(.admin-page) .store-photo{height:128px;overflow:hidden;background:#eef8ef}
body:not(.admin-page) .store-photo img{width:100%;height:100%;object-fit:cover}
body:not(.admin-page) .store-card-body{padding:16px}
body:not(.admin-page) .store-card .commune{font-size:9px;color:#16a357;font-weight:800;letter-spacing:.02em}
body:not(.admin-page) .store-card h3{font:900 16px/1.2 Montserrat,sans-serif;color:#1c3225;margin:7px 0 7px}
body:not(.admin-page) .store-card p{font-size:10px;color:#6e7d73;margin:6px 0;line-height:1.55}
body:not(.admin-page) .store-card .store-address{min-height:31px}
body:not(.admin-page) .store-card .store-hours{min-height:30px}
body:not(.admin-page) .store-card-link{background:#0a914b;color:#fff;border-radius:7px;padding:11px 8px;margin-top:13px;font-size:10px;font-weight:900;box-shadow:none}
body:not(.admin-page) .store-extras{display:flex;justify-content:space-between;flex-wrap:wrap;gap:7px;margin-top:12px}
body:not(.admin-page) .store-extras a{font-size:10px;text-decoration:underline;color:#087b42;font-weight:700}
/* Nosotros es sección separada, abierta desde su pestaña */
body:not(.admin-page) .about-section{display:none;padding:84px 0 94px;background:#f9fcf9}
body:not(.admin-page) .about-mode .hero,body:not(.admin-page) .about-mode .menu-section,body:not(.admin-page) .about-mode .promos,body:not(.admin-page) .about-mode .locations,body:not(.admin-page) .about-mode .order-context{display:none!important}
body:not(.admin-page) .about-mode .about-section{display:block}
/* footer blanco y limpio */
body:not(.admin-page) .footer{background:#f8faf8;color:#314738;border-top:1px solid #ebefe9}
body:not(.admin-page) .footer-inner{padding:38px 0 30px;grid-template-columns:2fr 1fr 1.4fr;gap:60px}
body:not(.admin-page) .footer .nav-logo{width:129px;max-width:129px;height:48px}
body:not(.admin-page) .footer-inner p{color:#819185;font-size:10px;line-height:1.8;max-width:320px}
body:not(.admin-page) .footer h3{font-size:10px;letter-spacing:.12em;font-weight:900;color:#263c2c}
body:not(.admin-page) .footer button{color:#5c6e61;font-size:11px}
body:not(.admin-page) .footer a{color:#1c7e43;font-size:11px}
body:not(.admin-page) .footer-bottom{border-top:1px solid #e7ece7;font-size:10px;color:#849289;padding:17px}
/* QR pages still use existing functional UI */
body:not(.admin-page) .store-banner{background:linear-gradient(105deg,#076b38,#0a9c4b);padding:52px 0}
body:not(.admin-page) .store-banner h1{font-size:clamp(34px,5vw,62px)}
body:not(.admin-page) .store-page .category-pills{flex-flow:row wrap;gap:7px;margin:23px 0}
body:not(.admin-page) .store-page .category-pills button{width:auto;border:1px solid #e3ece5;padding:9px 13px}
body:not(.admin-page) .store-page .category-pills button.selected{border-color:var(--brand)}
@media(max-width:1020px){
 body:not(.admin-page) .menu-shell{grid-template-columns:190px minmax(0,1fr);gap:24px}
 body:not(.admin-page) .product-card{min-height:145px}
 body:not(.admin-page) .product-body{padding:12px}
 body:not(.admin-page) .featured-grid,body:not(.admin-page) .stores-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 body:not(.admin-page) .featured-image{height:180px}
}
@media(max-width:700px){
 body:not(.admin-page) .container{width:calc(100% - 28px)}
 body:not(.admin-page) .nav-wrap{height:65px;gap:8px}
 body:not(.admin-page) .brand-copy{display:none}
 body:not(.admin-page) .nav-logo{width:116px;max-width:116px;height:41px}
 body:not(.admin-page) .main-nav{display:none}
 body:not(.admin-page) .mobile-nav{display:flex;top:65px;padding:7px 5px;gap:4px}
 body:not(.admin-page) .mobile-nav button{flex:1;padding:9px 5px;background:#f3f8f4;color:#457757;border-radius:6px;font-size:10px;font-weight:800}
 body:not(.admin-page) .cart-button{padding:9px 11px;font-size:11px}
 body:not(.admin-page) .cart-label{display:none}
 body:not(.admin-page) .order-context{padding:21px 0 14px;align-items:start}
 body:not(.admin-page) .order-context h1{font-size:24px}
 body:not(.admin-page) .order-context p{font-size:10px;max-width:280px}
 body:not(.admin-page) .delivery-pill{font-size:0;padding:9px 10px;margin-top:5px}
 body:not(.admin-page) .delivery-pill span{font-size:12px;margin:0}
 body:not(.admin-page) .hero-inner{aspect-ratio:600/400;border-radius:10px;padding:0;min-height:0}
 body:not(.admin-page) .hero-inner:before{display:none}
 body:not(.admin-page) .hero-slide-hit{width:100%;height:100%}
 body:not(.admin-page) .hero-slide-hit img{width:100%;height:100%;object-fit:cover}
 body:not(.admin-page) .hero-click-hint{bottom:25px;right:11px;padding:8px 10px;font-size:10px}
 body:not(.admin-page) .hero-arrow{width:29px;height:29px;font-size:20px}
 body:not(.admin-page) .hero-arrow.prev{left:7px}
 body:not(.admin-page) .hero-arrow.next{right:7px}
 body:not(.admin-page) .menu-section{padding:32px 0}
 body:not(.admin-page) .menu-shell{display:block}
 body:not(.admin-page) .menu-sidebar{border-right:0;min-height:0;padding:0;margin:0 0 22px}
 body:not(.admin-page) .sidebar-sticky{position:static}
 body:not(.admin-page) .sidebar-head h2{margin-bottom:10px}
 body:not(.admin-page) .menu-search{height:39px;margin-bottom:12px}
 body:not(.admin-page) .category-pills{display:flex;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x proximity;padding:0 0 8px;gap:6px}
 body:not(.admin-page) .category-pills button{width:auto;flex:0 0 auto;white-space:nowrap;padding:9px 11px;border:1px solid #edf1ec;font-size:10px;gap:8px}
 body:not(.admin-page) .sidebar-note{display:none}
 body:not(.admin-page) .menu-intro{margin-bottom:22px}
 body:not(.admin-page) .menu-intro h2{font-size:25px}
 body:not(.admin-page) .product-grid-inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 body:not(.admin-page) .product-card{grid-template-columns:1fr;grid-template-rows:110px auto;min-height:0}
 body:not(.admin-page) .product-image{grid-row:1;grid-column:1;min-height:110px}
 body:not(.admin-page) .product-body{grid-row:2;grid-column:1;padding:11px 10px;min-height:122px}
 body:not(.admin-page) .product-body h3{font-size:11px}
 body:not(.admin-page) .product-body .price{font-size:11px}
 body:not(.admin-page) .product-body p{font-size:9px;-webkit-line-clamp:2}
 body:not(.admin-page) .product-image button{right:6px;bottom:6px;width:29px;height:29px}
 body:not(.admin-page) .section-heading h2{font-size:24px}
 body:not(.admin-page) .section-heading p{font-size:10px}
 body:not(.admin-page) .promos{padding:38px 0}
 body:not(.admin-page) .promos-heading{align-items:start}
 body:not(.admin-page) .text-link{font-size:9px;max-width:98px;text-align:right}
 body:not(.admin-page) .featured-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 body:not(.admin-page) .featured-image{height:110px}
 body:not(.admin-page) .featured-body{padding:11px}
 body:not(.admin-page) .featured-body h3{font-size:11px}
 body:not(.admin-page) .featured-body p{font-size:9px;min-height:43px}
 body:not(.admin-page) .featured-bottom .price{font-size:12px}
 body:not(.admin-page) .featured-bottom button{padding:7px;font-size:9px}
 body:not(.admin-page) .stores-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 body:not(.admin-page) .store-photo{height:112px}
 body:not(.admin-page) .store-card-body{padding:12px}
 body:not(.admin-page) .store-card h3{font-size:12px}
 body:not(.admin-page) .store-card p{font-size:9px}
 body:not(.admin-page) .store-card-link{font-size:9px;padding:10px 5px}
 body:not(.admin-page) .footer-inner{grid-template-columns:1fr 1fr;gap:18px;padding:29px 0}
 body:not(.admin-page) .footer-intro{grid-column:span 2}
 body:not(.admin-page) .footer .nav-logo{width:120px}
 body:not(.admin-page) .store-page .category-pills{flex-wrap:wrap}
 body:not(.admin-page) .about-section{padding:45px 0}
}
@media(max-width:385px){body:not(.admin-page) .product-grid-inner{grid-template-columns:1fr}body:not(.admin-page) .product-card{grid-template-columns:59% 41%;grid-template-rows:auto;min-height:132px}body:not(.admin-page) .product-body{grid-row:1;grid-column:1}body:not(.admin-page) .product-image{grid-row:1;grid-column:2}}
