:root{
  --rosa:#EEC9D2;--cioc:#4E342E;--panna:#FFF8F2;--salvia:#9BB59B;
  --testo:#2b2b2b;--bordo:#e9e0d9;--oro:#B88917
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:ui-sans-serif,system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;background:var(--panna);color:var(--testo);line-height:1.6}
a{color:var(--cioc);text-decoration:none}
.container{max-width:1140px;margin:0 auto;padding:1rem}
.topbar{background:var(--cioc);color:#fff;text-align:center;padding:.6rem 1rem;font-size:.95rem;position:relative;overflow:hidden}
.topbar::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 0 0,rgba(255,255,255,.18) 0,transparent 55%),radial-gradient(circle at 100% 0,rgba(255,255,255,.12) 0,transparent 50%);opacity:.9;pointer-events:none}
.nav{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;gap:1rem}
.brand{display:flex;align-items:center;gap:.7rem}
.brand img{height:110px}
.brand h1{font-size:1.6rem;color:var(--cioc)}
.nav-right{display:flex;align-items:center;gap:.6rem}
.social-pill{display:flex;align-items:center;gap:.25rem;padding:.35rem .6rem;border-radius:999px;border:1px solid var(--bordo);background:#fff;font-size:.85rem}
.social-pill span{font-size:1rem}
.cta{background:var(--cioc);color:#fff;padding:.6rem 1rem;border-radius:999px;font-weight:700;white-space:nowrap}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:center;padding:1.4rem 0}
.kv img{width:100%;border-radius:16px;box-shadow:0 14px 44px rgba(0,0,0,.12)}
.badge{display:inline-block;background:var(--rosa);color:var(--cioc);padding:.3rem .7rem;border-radius:999px;font-weight:700}
.hero h2{font-size:2.2rem;color:var(--cioc);margin:.5rem 0}
.actions{margin-top:1rem;display:flex;gap:.8rem;flex-wrap:wrap}
.btn{display:inline-block;padding:.75rem 1rem;border-radius:12px;font-weight:700;border:none;cursor:pointer}
.btn.primary{background:var(--rosa);color:var(--cioc)}
.btn.dark{background:var(--cioc);color:#fff}
.btn.ghost{background:transparent;border:1px solid var(--cioc);color:var(--cioc)}
.section{padding:2rem 0}
.section h3{text-align:center;color:var(--cioc);font-size:1.7rem;margin-bottom:1rem}
.split{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;align-items:center}
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.gallery img{width:100%;height:220px;object-fit:cover;border-radius:12px;box-shadow:0 6px 18px rgba(0,0,0,.08)}
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}
.card{background:#fff;border:1px solid var(--bordo);border-radius:14px;padding:1rem;box-shadow:0 6px 24px rgba(0,0,0,.06)}
.footer{background:#fff;border-top:1px solid var(--bordo);margin-top:2rem}
.footer-inner{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:1.2rem 0;font-size:.95rem}
.tag{display:inline-block;padding:.25rem .6rem;border-radius:999px;background:var(--salvia);color:#17361c;font-size:.8rem}
.muted{color:#555}
hr.sep{border:0;border-top:1px dashed var(--bordo);margin:1rem 0}
.form-grid{margin-top:1rem;display:grid;gap:.8rem;max-width:720px}
.form-grid input,.form-grid textarea,.form-grid select{padding:.6rem .7rem;border-radius:10px;border:1px solid var(--bordo);font:inherit;background:#fff}
.form-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.4rem}
.xmas-band{margin-top:1.5rem;border-radius:16px;padding:1rem 1.2rem;background:linear-gradient(120deg,rgba(238,201,210,.75),rgba(255,248,242,.95));display:grid;grid-template-columns:2fr 1.4fr;gap:1rem;align-items:center}
.xmas-band img{width:100%;border-radius:14px;box-shadow:0 10px 30px rgba(0,0,0,.12)}
.back-link{display:inline-block;margin-bottom:1rem}
.menu-details{margin-top:.4rem;font-size:.9rem}
.menu-details summary{cursor:pointer;color:var(--cioc);font-weight:600;list-style:none}
.menu-details summary::-webkit-details-marker{display:none}
.menu-details ul{margin-top:.3rem;padding-left:1rem}
@media(max-width:900px){.hero,.split,.xmas-band{grid-template-columns:1fr}.cta{display:none}.nav-right{flex-wrap:wrap;justify-content:flex-end}}
