
#aef-menu-app,#aef-menu-app *{box-sizing:border-box}
#aef-menu-app{
  --rosso:#9f1720;--rosso2:#711017;--crema:#f7f1e7;--oro:#d9b76f;
  --bianco:#fff;--testo:#1d1b19;--grigio:#6f6a64;--linea:#e8dfd4;
  max-width:1040px;margin:0 auto;padding:0 13px 100px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--testo)
}
.aef-hero{
  position:relative;isolation:isolate;overflow:hidden;margin:15px 0 16px;
  min-height:245px;border:1px solid #eadfd1;border-radius:30px;
  background:
    radial-gradient(circle at 85% 16%,rgba(159,23,32,.16),transparent 28%),
    radial-gradient(circle at 10% 85%,rgba(217,183,111,.20),transparent 30%),
    linear-gradient(145deg,#fff 0%,#fbf7f0 55%,#f4ecdf 100%);
  box-shadow:0 18px 45px rgba(42,29,18,.09)
}
.aef-hero:after{
  content:"🍕";position:absolute;right:-20px;top:10px;z-index:-1;
  font-size:142px;line-height:1;transform:rotate(-10deg);opacity:.075;filter:grayscale(.2)
}
.aef-hero:before{
  content:"";position:absolute;inset:0;z-index:-2;
  background-image:linear-gradient(90deg,rgba(255,255,255,.96),rgba(255,255,255,.72)),var(--aef-cover);
  background-size:cover;background-position:center
}
.aef-hero-inner{padding:34px 20px 28px;text-align:center}
.aef-kicker{
  display:inline-flex;align-items:center;gap:7px;margin-bottom:4px;
  color:var(--rosso);font-size:11px;font-weight:950;letter-spacing:1.8px
}
.aef-kicker:before,.aef-kicker:after{content:"";display:block;width:22px;height:1px;background:currentColor;opacity:.55}
.aef-hero h1{
  margin:2px 0 0;font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(38px,9vw,58px);line-height:.98;letter-spacing:-2px;font-weight:800
}
.aef-hero p{max-width:620px;margin:13px auto 0;color:var(--grigio);font-size:14px;line-height:1.55}
.aef-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px}
.aef-badges span{
  display:inline-flex;align-items:center;min-height:34px;padding:7px 11px;
  border:1px solid rgba(159,23,32,.11);border-radius:999px;background:rgba(255,255,255,.88);
  box-shadow:0 4px 10px rgba(0,0,0,.025);font-size:10px;font-weight:900
}
.aef-search-wrap{position:relative;margin:14px 0 8px}
.aef-search-icon{position:absolute;left:17px;top:50%;transform:translateY(-50%);font-size:22px;pointer-events:none;color:#555}
.aef-search{
  display:block;width:100%;min-height:58px;border:1px solid #ded5ca;border-radius:18px;
  padding:0 48px 0 48px;background:#fff;color:var(--testo);font-size:16px;outline:none;
  box-shadow:0 8px 24px rgba(0,0,0,.045)
}
.aef-search:focus{border-color:var(--rosso);box-shadow:0 0 0 4px rgba(159,23,32,.08),0 8px 24px rgba(0,0,0,.045)}
.aef-clear{
  position:absolute;right:10px;top:50%;transform:translateY(-50%);display:none;width:36px;height:36px;
  border:0;border-radius:50%;background:#f1ede7;color:#333;font-size:20px;cursor:pointer
}
.aef-search-result{display:none;padding:0 5px 8px;color:var(--rosso);font-size:12px;font-weight:900}
.aef-catbar-wrap{
  position:sticky;top:0;z-index:100;margin-bottom:11px;padding:9px 0 10px;
  border-bottom:1px solid rgba(0,0,0,.05);background:rgba(255,255,255,.93);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)
}
.aef-catbar{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:1px 1px 3px}
.aef-catbar::-webkit-scrollbar{display:none}
.aef-cat-btn{
  flex:0 0 auto;min-height:41px;padding:0 14px;border:1px solid #e3dbd0;border-radius:999px;
  background:#fff;color:#292725;font-size:11px;font-weight:900;white-space:nowrap;cursor:pointer;
  box-shadow:0 3px 10px rgba(0,0,0,.025);transition:.18s ease
}
.aef-cat-btn:hover{transform:translateY(-1px)}
.aef-cat-btn.active{background:linear-gradient(135deg,var(--rosso),var(--rosso2));border-color:var(--rosso);color:#fff;box-shadow:0 7px 16px rgba(159,23,32,.18)}
.aef-section{
  margin:11px 0;overflow:hidden;border:1px solid var(--linea);border-radius:21px;background:#fff;
  box-shadow:0 9px 28px rgba(35,26,20,.045);scroll-margin-top:74px
}
.aef-section-head{
  width:100%;padding:17px 15px;border:0;background:#fff;display:flex;align-items:center;text-align:left;cursor:pointer
}
.aef-section-icon{
  width:44px;height:44px;flex:0 0 44px;margin-right:11px;border-radius:14px;
  background:linear-gradient(145deg,#faf6ef,#f2e9dc);display:flex;align-items:center;justify-content:center;
  font-size:20px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.025)
}
.aef-section-title{flex:1;min-width:0}
.aef-section-title strong{
  display:block;font-size:16px;line-height:1.12;font-weight:950;text-transform:uppercase;letter-spacing:-.25px
}
.aef-section-title small{display:block;margin-top:4px;color:var(--grigio);font-size:10px;font-weight:750}
.aef-arrow{
  width:33px;height:33px;border-radius:50%;background:#f3efe8;display:flex;align-items:center;justify-content:center;
  font-size:17px;font-weight:900;transition:.2s
}
.aef-section.open .aef-arrow{transform:rotate(180deg);background:var(--rosso);color:#fff}
.aef-section-body{display:none;padding:0 15px;border-top:1px solid var(--linea)}
.aef-section.open .aef-section-body{display:block}
.aef-item{position:relative;padding:16px 0;border-bottom:1px solid #eee8e0}
.aef-item:last-child{border-bottom:0}
.aef-item.featured{
  margin:0 -15px;padding:17px 15px;
  background:linear-gradient(100deg,rgba(159,23,32,.075),rgba(217,183,111,.065),transparent)
}
.aef-new{
  display:inline-block;margin:0 0 8px;padding:5px 8px;border-radius:999px;
  background:linear-gradient(135deg,var(--rosso),var(--rosso2));color:#fff;
  font-size:8px;line-height:1;font-weight:950;letter-spacing:.7px
}
.aef-item-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}
.aef-item-name{font-size:14px;line-height:1.24;font-weight:950;text-transform:uppercase;letter-spacing:-.1px}
.aef-item-price{
  min-width:54px;padding:5px 9px;border-radius:10px;background:#fff4f4;color:var(--rosso);
  text-align:center;white-space:nowrap;font-size:15px;line-height:1.05;font-weight:950
}
.aef-item-desc{margin:7px 0 0;color:#66615c;font-size:12.7px;line-height:1.48}
.aef-tag{
  display:inline-block;margin:8px 4px 0 0;padding:5px 8px;border-radius:999px;
  background:#f4eee5;color:#74502b;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.35px
}
.aef-degustazione{background:linear-gradient(145deg,#1d1c1a,#111);border-color:#2a2926;color:#fff}
.aef-degustazione .aef-section-head{background:transparent;color:#fff}
.aef-degustazione .aef-section-icon{background:rgba(255,255,255,.08)}
.aef-degustazione .aef-section-title small{color:#d7c9a8}
.aef-degustazione .aef-arrow{background:rgba(255,255,255,.1);color:#fff}
.aef-degustazione.open .aef-arrow{background:var(--oro);color:#1a1a1a}
.aef-degustazione .aef-section-body{border-top-color:rgba(255,255,255,.1)}
.aef-degustazione .aef-item{border-bottom-color:rgba(255,255,255,.11)}
.aef-degustazione .aef-item.featured{background:linear-gradient(90deg,rgba(217,183,111,.12),transparent)}
.aef-degustazione .aef-item-name{color:#fff}
.aef-degustazione .aef-item-desc{color:#ddd4c8}
.aef-degustazione .aef-item-price{background:var(--oro);color:#161616}
.aef-degustazione .aef-tag{background:rgba(217,183,111,.14);color:#efd59c}
.aef-info{
  margin-top:16px;padding:18px;border:1px solid var(--linea);border-radius:19px;background:linear-gradient(145deg,#faf6ef,#f5eee5);text-align:center
}
.aef-info strong{display:block;margin-bottom:5px;font-size:14px}
.aef-info span{color:var(--grigio);font-size:11px}
.aef-no-results{
  display:none;margin:18px 0;padding:23px 16px;border-radius:17px;background:#fff1f1;color:var(--rosso);
  text-align:center;font-size:13px;font-weight:850
}
.aef-wa{
  position:fixed;z-index:9998;left:50%;bottom:15px;transform:translateX(-50%);
  width:calc(100% - 26px);max-width:520px;min-height:58px;padding:11px 19px;border-radius:999px;
  background:linear-gradient(135deg,#1a9b53,#11763d);color:#fff!important;text-decoration:none!important;
  display:flex;align-items:center;justify-content:center;gap:9px;font-size:14px;font-weight:950;
  box-shadow:0 12px 30px rgba(9,74,38,.30)
}
.aef-wa-icon{font-size:22px}
@media(min-width:720px){
  #aef-menu-app{padding-left:20px;padding-right:20px}
  .aef-hero-inner{padding:48px 34px 38px}
  .aef-section-body{padding-left:21px;padding-right:21px}
  .aef-item.featured{margin:0 -21px;padding:19px 21px}
  .aef-item-name{font-size:15px}.aef-item-desc{font-size:13.5px}
}
