/* ==========================================================
   Menu Pasqua — palette primavera (verde salvia + champagne)
   Struttura identica a menu-natale.css
   ========================================================== */

:root{
  --bg: #0f0f10;
  --card: #171717;
  --text: #eaeaea;

  --brand: #9ed4b0;    /* verde primavera */
  --brand-2: #4a8c62; /* verde scuro */
  --ring: rgba(158,212,176,.25);

  --shadow: 0 12px 30px rgba(0,0,0,.42);
  --radius: 18px;
}

*{ box-sizing:border-box; }
html,body{ height:100%; }

body{
  margin:0;
  color: var(--text);
  background: var(--bg);
  font-family: "Titillium Web", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

/* pagina */
.menu-page{
  width:min(980px, 100%);
  margin:0 auto;
  padding:22px 16px 42px;
}

/* HERO */
.menu-hero{
  position: relative;
  border:1px solid #1a2d1e;
  border-radius: var(--radius);
  padding:26px 18px 18px;

  background:
    radial-gradient(
      900px 420px at 50% -10%,
      rgba(140, 210, 160, .14),
      transparent 60%
    ),
    radial-gradient(
      520px 320px at 90% 60%,
      rgba(100, 190, 130, .09),
      transparent 65%
    ),
    linear-gradient(
      135deg,
      #0d1f12 0%,
      #0f2316 45%,
      #0a180e 100%
    );

  box-shadow: var(--shadow);
}

.meta-row{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  color: rgba(234,234,234,.82);
  font-weight:700;
  letter-spacing:.10em;
  text-transform:uppercase;
  font-size:12px;
}

.meta-row .dot{
  width:6px; height:6px;
  border-radius:999px;
  background: var(--brand);
  box-shadow: 0 0 0 4px rgba(158,212,176,.14);
}

/* titolo hero */
.hero-title{
  margin:12px 0 12px;
  text-align:center;
  line-height:1.02;
}
.hero-title__small{
  display:block;
  font-family: "Archivo Black", system-ui;
  letter-spacing:.08em;
  font-size:40px;
  color:#c8f0d4;
  text-transform:uppercase;
}
.hero-title__big{
  display:block;
  font-family: "Archivo Black", system-ui;
  letter-spacing:.03em;
  font-size:76px;
  background: linear-gradient(90deg, #5aab7a 0%, #a8e6be 50%, #3d7a55 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  text-transform:uppercase;
}

/* pill prezzo + CTA */
.hero-actions{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.price-pill{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.55rem .95rem;
  border-radius:999px;
  border:1px solid #1e3d28;
  background:#112218;
  color:#c8f0d4;
  font-weight:900;
  box-shadow: var(--shadow);
}
.price-pill strong{ color:#a8e6be; }
.price-pill span{ opacity:.95; }

.cta{
  display:inline-flex;
  align-items:center;
  gap:10px;
  height:42px;
  padding:0 14px;
  border-radius:14px;
  text-decoration:none;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  font-size:12px;
  color:#c8f0d4;
  border:1px solid rgba(158,212,176,.34);
  background: linear-gradient(135deg, rgba(158,212,176,.22), rgba(18,34,24,.85));
}
.cta:hover{ box-shadow: 0 0 0 4px var(--ring); }

/* sezioni */
.menu-section{
  margin-top:22px;
}

.menu-section .head{
  margin:0 2px 10px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
}

.menu-section .head h2{
  margin:0;
  font-family: "Archivo Black", system-ui;
  color:#a8e6be;
  text-transform:uppercase;
  letter-spacing:.06em;
  font-size:16px;
  opacity:.98;
}

/* linea divisoria sottile tra sezioni */
.menu-section:not(:first-of-type)::before{
  content:"";
  display:block;
  height:1px;
  background:linear-gradient(to right, transparent, rgba(158,212,176,.20), transparent);
  margin:18px 0 18px;
}

.items{
  display:grid;
  gap:10px;
}

/* card piatti */
.menu-item.card{
  position:relative;
  padding:14px 16px 14px 18px;
  border-radius:16px;
  border:1px solid #1a2f20;
  background:
    linear-gradient(to right, rgba(158,212,176,.06), transparent 30%),
    var(--card);
  box-shadow: var(--shadow);
}

/* barra laterale sottile */
.menu-item.card::before{
  content:"";
  position:absolute;
  left:0; top:12px; bottom:12px; width:3px;
  border-radius:2px;
  background: linear-gradient(180deg, #7ec89a 0%, #3d7a55 100%);
  opacity:.85;
}

.dish{
  margin:0;
  text-align:left;
  color:#c8f0d4;
  font-weight:800;
  letter-spacing:.1px;
  font-size:18px;
  line-height:1.25;
}

.dish-note{
  margin:.35rem 0 0;
  color: rgba(200,240,212,.65);
  font-size:14px;
  font-weight:500;
  line-height:1.4;
}

/* compresi */
.coperto.card{
  border-radius:16px;
  border:1px solid #1e3528;
  background: linear-gradient(180deg,#101e14 0%, #121f16 100%);
  color:#c4e8d0;
  font-weight:600;
  padding:14px 16px;
  box-shadow: var(--shadow);
}
.coperto.card strong{
  color:#a8e6be;
  font-weight:700;
}

/* prenota */
.prenota.card{
  border-radius:16px;
  border:1px solid #1a2f20;
  background:
    radial-gradient(520px 220px at 10% 10%, rgba(158,212,176,.10), transparent 60%),
    var(--card);
  padding:16px;
  box-shadow: var(--shadow);
}

.prenota__title{
  font-family: "Archivo Black", system-ui;
  color:#a8e6be;
  letter-spacing:.06em;
  text-transform:uppercase;
  font-size:14px;
  margin-bottom:10px;
}

.prenota__nums{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  align-items:center;
}

.tel{
  display:inline-flex;
  align-items:center;
  gap:10px;

  padding:10px 14px;
  border-radius:14px;

  color:#c8f0d4;
  font-weight:900;
  font-size:18px;
  text-decoration:none;

  border:1px solid rgba(158,212,176,.16);
  background: rgba(23,23,23,.55);

  white-space:nowrap;
}

.tel:hover{
  border-color: rgba(158,212,176,.34);
  box-shadow: 0 0 0 4px var(--ring);
  color:#a8e6be;
}

/* responsive */
@media (max-width:700px){
  .hero-title__small{ font-size:34px; }
  .hero-title__big{ font-size:56px; }
  .dish{ font-size:16.5px; }
  .items{ gap:9px; }
}

/* ==========================================================
   DOWNLOAD MENU PDF
   ========================================================== */

.menu-download{
  margin-top: 36px;
  display:flex;
  justify-content:center;
}

.download-btn{
  display:inline-flex;
  align-items:center;
  gap:12px;

  padding:14px 22px;
  border-radius:999px;

  font-weight:900;
  font-size:15px;
  letter-spacing:.04em;
  text-transform:uppercase;
  text-decoration:none;

  color: rgba(200,240,212,.95);
  border:1px solid rgba(158,212,176,.45);

  background:
    radial-gradient(200px 80px at 20% 30%, rgba(140,210,160,.18), transparent 60%),
    linear-gradient(135deg, #0d1f12 0%, #0f2316 45%, #0a180e 100%);

  box-shadow: 0 14px 36px rgba(0,0,0,.45);
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

.download-btn:hover{
  transform: translateY(-2px);
  border-color: rgba(158,212,176,.75);
  box-shadow: 0 18px 44px rgba(0,0,0,.55);
}

.download-btn:active{ transform: translateY(0); }

.pdf-icon{
  width:22px;
  height:22px;
  flex-shrink:0;
}

@media (max-width: 600px){
  .download-btn{
    width:100%;
    justify-content:center;
    padding:14px 18px;
    font-size:14px;
  }
}
