.stand-body { background:radial-gradient(circle at 92% 7%,rgba(255,212,59,.22) 0 170px,transparent 171px),#fffaf0; color:#102044; }
.stand-site-header { position:sticky; top:0; background:rgba(255,250,240,.96); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); }

.stand-page { width:min(1440px,calc(100% - 64px)); margin:0 auto 90px; }
.stand-hero { margin:36px 0 28px; padding:clamp(34px,6vw,72px); overflow:hidden; position:relative; border-radius:34px; background:#102044; color:#fff; box-shadow:10px 12px 0 #ffd43b; }
.stand-hero::after { content:""; width:210px; height:210px; position:absolute; right:-55px; bottom:-85px; border-radius:50%; background:#ff5c62; }
.stand-hero h1 { max-width:900px; position:relative; z-index:1; color:#fff; font-size:clamp(48px,8vw,100px); letter-spacing:-.065em; }
.stand-hero h1 em { color:#ffd43b; }
.stand-hero>p:last-child { max-width:680px; margin:24px 0 0; position:relative; z-index:1; color:#fff; font-size:17px; line-height:1.6; }
.stand-open-note { margin:0 0 22px; padding:15px 18px; display:flex; align-items:center; gap:12px; border-radius:17px; background:#d9f8ee; color:#08775e; }
.stand-open-note span { padding:6px 9px; border-radius:999px; background:#1fc7a7; color:#102044; font-size:9px; font-weight:1000; text-transform:uppercase; }
.stand-open-note strong { font-size:15px; }
.stand-open-note small { margin-left:auto; color:#356d61; }
.stand-order-panel { margin-top:0; border:3px solid #102044; box-shadow:9px 10px 0 #165dff; }
.stand-order-panel .pos-menu { border-color:#ffd43b; background:#fffaf0; }
.stand-order-panel .pos-category-filter button.active { border-color:#ff5c62; background:#ff5c62; }
.stand-order-panel .pos-order-bar { border-width:3px; box-shadow:0 12px 35px rgba(16,32,68,.28); }
.stand-catalog { display:grid; gap:30px; }
.stand-catalog-category { padding:clamp(24px,3vw,38px); border:1px solid #e4e7ee; border-radius:30px; background:#fff; box-shadow:0 14px 42px rgba(16,32,68,.08); }
.stand-catalog-category>header { margin-bottom:22px; display:flex; align-items:center; gap:13px; }
.stand-catalog-category>header>span { width:46px; height:46px; flex:0 0 auto; display:grid; place-items:center; border-radius:15px; background:#165dff; font-size:23px; box-shadow:0 4px 0 rgba(16,32,68,.18); transform:rotate(-4deg); }
.stand-catalog-category>header>i { height:2px; flex:1; border-radius:2px; background:linear-gradient(90deg,#dfe4ef,transparent); }
.stand-catalog-category h2 { margin:0; color:#102044; font-size:clamp(29px,3vw,40px); letter-spacing:-.045em; }
.stand-catalog-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:14px; }
.stand-catalog-card { --dish-accent:#8fb1ff; min-height:188px; overflow:hidden; position:relative; display:flex; align-items:center; flex-direction:column; border:2px solid #102044; border-radius:22px; background:#fffdf8; box-shadow:0 6px 0 rgba(16,32,68,.15); }
.stand-catalog-card::before { content:""; width:150px; height:105px; position:absolute; top:-39px; left:50%; border-radius:50%; background:var(--dish-accent); transform:translateX(-50%); }
.stand-catalog-card.category-aperitivo,.stand-catalog-card.category-panino { --dish-accent:#ff5c62; }
.stand-catalog-card.category-antipasto { --dish-accent:#ff963f; }
.stand-catalog-card.category-primo { --dish-accent:#165dff; }
.stand-catalog-card.category-secondo { --dish-accent:#1fc7a7; }
.stand-catalog-card.category-contorno { --dish-accent:#ffd43b; }
.stand-catalog-card.category-piatto-unico { --dish-accent:#845ef7; }
.stand-catalog-card.category-dolce { --dish-accent:#d63384; }
.stand-catalog-card.category-bevanda { --dish-accent:#22b8cf; }
.stand-catalog-card.without-image { text-align:center; background:linear-gradient(145deg,#fff 0%,#fffaf0 100%); }
.stand-catalog-visual { width:70px!important; height:70px; min-height:70px; margin:22px auto 0; padding:0!important; overflow:hidden; position:relative; z-index:1; display:grid!important; place-items:center; border:6px solid #fff; border-radius:50%; background:var(--dish-accent); box-shadow:0 6px 14px rgba(16,32,68,.14); }
.stand-catalog-visual img { width:100%; height:100%; display:block; object-fit:cover; }
.stand-catalog-visual span { font-size:31px; line-height:1; }
.stand-catalog-card>div:last-child { width:100%; padding:16px 12px 17px; display:flex; align-items:center; justify-content:flex-start; flex:1; flex-direction:column; text-align:center; }
.stand-catalog-card h3 { max-width:100%; margin:0; color:#102044; font-size:clamp(18px,1.25vw,22px); line-height:1.06; letter-spacing:-.035em; overflow-wrap:break-word; }
.stand-catalog-card p { max-width:24ch; margin:7px 0 0; color:#687089; font-size:11px; line-height:1.35; text-align:center; }
.stand-catalog-card small { margin-top:11px; color:#687089; font-size:10px; font-weight:800; line-height:1.35; }
.stand-catalog-card b { margin-top:11px; padding:5px 9px; border-radius:999px; background:#ff5c62; color:#fff; font-size:9px; letter-spacing:.05em; text-transform:uppercase; }
.stand-catalog-card.is-sold-out { opacity:.58; filter:grayscale(.25); }
.stand-closed,.stand-confirmation { margin-top:10px; padding:clamp(28px,5vw,54px); border-radius:28px; background:#fff; box-shadow:0 9px 30px rgba(16,32,68,.09); }
.stand-closed span,.stand-confirmation small { color:#ff5c62; font-size:10px; font-weight:1000; letter-spacing:.1em; text-transform:uppercase; }
.stand-closed h2,.stand-confirmation h2 { margin:8px 0 16px; font-size:clamp(34px,5vw,58px); letter-spacing:-.05em; }
.stand-closed p,.stand-confirmation p { max-width:720px; color:#687089; line-height:1.6; }
.stand-closed a { display:inline-block; margin-top:8px; color:#165dff; font-weight:1000; }
.stand-confirmation { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:20px; border:3px solid #1fc7a7; }
.stand-confirmation>span { width:58px; height:58px; display:grid; place-items:center; border-radius:50%; background:#1fc7a7; color:#102044; font-size:30px; font-weight:1000; }
.stand-confirmation .primary { text-decoration:none; }
.stand-honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
@media(max-width:720px) {
  .stand-page { width:calc(100% - 32px); margin-bottom:55px; }
  .stand-site-header > nav { display:none; }

  .stand-hero { margin-top:20px; padding:38px 24px; border-radius:26px; box-shadow:6px 7px 0 #ffd43b; }
  .stand-hero h1 { font-size:clamp(22px,7.5vw,48px); line-height:1.08; overflow-wrap:anywhere; }
  .stand-hero h1 em { display:block; }
  .stand-open-note { align-items:flex-start; flex-direction:column; }
  .stand-open-note small { margin-left:0; }
  .stand-confirmation { grid-template-columns:1fr; }
  .stand-confirmation .primary { width:100%; }
  .stand-catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .stand-catalog-category { padding:22px 18px 25px; border-radius:24px; }
  .stand-catalog-card { min-height:178px; }
  .stand-catalog-card h3 { font-size:19px; }
}
@media(max-width:400px) {
  .stand-catalog-grid { grid-template-columns:1fr; }
}
@media(min-width:721px) and (max-width:960px) {
  .stand-catalog-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(min-width:961px) and (max-width:1250px) {
  .stand-catalog-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
}

/* Riserva la stessa area delle altre testate senza mostrare Iscriviti. */
.stand-site-header .stand-header-spacer{visibility:hidden;pointer-events:none;flex-shrink:0}
.stand-site-header{font-family:var(--font-sans,ui-sans-serif,system-ui,sans-serif)}

/* Public menu shares the Sponsor page shell and responsive spacing. */
.stand-body{background:#fffaf0;font-family:var(--font-sans,ui-sans-serif,system-ui,sans-serif)}
.stand-site-header{position:fixed;left:0;right:0}
.stand-page{width:100%;margin:0;max-width:100%}
.stand-public-hero h1{hyphens:manual;overflow-wrap:normal}
.stand-public-content{min-width:0}
.stand-catalog-category{border:2px solid #102044;box-shadow:5px 6px 0 #102044;border-radius:21px}
.stand-catalog-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(14px,1.6vw,22px)}
@media(max-width:1180px){.stand-catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:900px){.stand-catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){
 .stand-page{width:100%;margin:0}
 .stand-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .stand-catalog-category{padding:22px 16px 25px}
}
@media(max-width:430px){.stand-catalog-grid{grid-template-columns:1fr}}

.stand-public-hero h1 em{display:block;white-space:nowrap;hyphens:none;font-size:.62em}

.stand-catalog-card .stand-catalog-price{display:inline-block;margin-top:10px;padding:6px 12px;border-radius:999px;background:#ffd43b;color:#102044;font-size:20px;font-weight:800;line-height:1.2;white-space:nowrap;font-variant-numeric:tabular-nums}
