:root{--r:#d71920;--k:#111;--g:#666;--line:#e8e8e8;--soft:#f6f6f4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Manrope,Arial,sans-serif;color:var(--k);background:#fff}a{text-decoration:none;color:inherit}header{height:88px;background:var(--r);display:flex;align-items:center;padding:0 5vw;gap:34px;color:#fff;position:sticky;top:0;z-index:20}.brand{color:#fff;font-weight:800;font-size:25px;line-height:.85}.brand small{display:block;font-size:8px;letter-spacing:1.2px;margin-top:7px}nav{display:flex;gap:25px;margin-left:auto}nav a{color:#fff;font-size:12px;font-weight:800}nav a.active{border-bottom:2px solid #fff;padding-bottom:5px}.headcta{background:#fff;color:var(--r);padding:13px 18px;font-weight:800;font-size:11px;white-space:nowrap}.hero{min-height:620px;background:linear-gradient(115deg,#a9070d 0%,#d71920 56%,#ec2f35 100%);color:#fff;padding:90px 8vw 76px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;border:100px solid rgba(255,255,255,.08);right:-90px;top:20px}.hero-copy{position:relative;z-index:2;max-width:920px}.eyebrow,.kicker{font-size:11px;font-weight:800;letter-spacing:2.3px;margin-bottom:17px}.hero h1{font-size:clamp(54px,7.2vw,102px);line-height:.88;margin:0 0 28px;letter-spacing:-5px}.hero p{max-width:760px;font-size:18px;line-height:1.6;font-weight:700}.hero-actions{display:flex;gap:12px;margin-top:34px;flex-wrap:wrap}.btn{display:inline-flex;padding:16px 20px;background:#fff;color:var(--r);font-size:12px;font-weight:800}.btn.outline{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.8)}.hero-badge{position:absolute;right:8vw;bottom:55px;z-index:2;border-left:1px solid rgba(255,255,255,.6);padding-left:22px;display:flex;flex-direction:column}.hero-badge b{font-size:26px}.hero-badge span{font-size:9px;letter-spacing:1.7px;margin-top:4px}.intro{padding:95px 8vw 55px;max-width:1050px}.kicker{color:var(--r)}.intro h2,.occasions h2,.quote h2,.seo-band h2{font-size:clamp(38px,5vw,68px);line-height:.96;letter-spacing:-3px;margin:0 0 22px}.intro p{max-width:800px;color:#555;font-size:18px;line-height:1.7}.services{padding:10px 8vw 95px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.services article{border:1px solid var(--line);padding:30px 26px;min-height:225px}.num{color:var(--r);font-size:11px;font-weight:800;margin-bottom:38px}.services h3{font-size:20px;line-height:1.15;margin:0 0 13px}.services p{color:#666;font-size:14px;line-height:1.65;margin:0}.seo-band{background:#111;color:#fff;padding:78px 8vw;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.kicker.light{color:#ff686d}.seo-band p{font-size:17px;line-height:1.75;color:#d0d0d0}.seo-band strong{color:#fff}.occasions{padding:90px 8vw;background:var(--soft)}.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}.chips span{background:#fff;border:1px solid #ddd;padding:13px 16px;font-size:11px;font-weight:800}.quote{background:var(--r);color:#fff;padding:82px 8vw;display:grid;grid-template-columns:1fr .85fr;gap:70px;align-items:center}.quote p{max-width:680px;line-height:1.7;color:#ffe6e7}.quote-actions{display:grid;gap:10px}.cta{display:block;padding:22px 24px;font-size:14px;font-weight:800}.cta small{font-size:11px;font-weight:600}.whatsapp{background:#fff;color:#111}.mail{background:#111;color:#fff}.local{padding:45px 8vw;border-bottom:1px solid #ddd}.local h2{font-size:22px;margin:0 0 8px}.local p{margin:0;color:#666;font-size:13px}footer{background:#111;color:#fff;padding:28px 8vw;display:flex;gap:28px;align-items:center;font-size:11px;flex-wrap:wrap}footer b{font-size:20px}footer a{color:#fff}@media(max-width:920px){header{height:auto;padding:18px 5vw;flex-wrap:wrap}nav{order:3;width:100%;overflow:auto;gap:18px}.headcta{margin-left:auto}.hero{padding:65px 6vw 110px}.hero h1{letter-spacing:-2px}.hero-badge{left:6vw;right:auto;bottom:35px}.intro,.occasions{padding-left:6vw;padding-right:6vw}.services{grid-template-columns:1fr 1fr;padding-left:6vw;padding-right:6vw}.seo-band,.quote{grid-template-columns:1fr;gap:35px;padding-left:6vw;padding-right:6vw}}@media(max-width:620px){.brand{font-size:21px}.headcta{display:none}.hero{min-height:650px}.hero h1{font-size:53px}.hero p{font-size:16px}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%;justify-content:center}.services{grid-template-columns:1fr}.services article{min-height:auto}.intro h2,.occasions h2,.quote h2,.seo-band h2{letter-spacing:-1.8px}.quote-actions{width:100%}}

.catering-visual{background:#fff;padding:0;overflow:visible;position:relative}.catering-visual img{display:block;width:100%;height:auto;object-fit:contain;object-position:center top}.visual-hotspot{position:absolute;display:block;z-index:5;cursor:pointer}.visual-whatsapp{left:3%;top:86.3%;width:34%;height:10%}.visual-email{left:38.4%;top:86.3%;width:31.5%;height:10%}

/* Domande frequenti sul catering aziendale */
.catering-faq{padding:75px 8vw 82px;background:#fff}
.catering-faq .kicker{font-size:11px;font-weight:800;letter-spacing:2px;color:#c71920}
.catering-faq h2{font-size:clamp(33px,4.5vw,60px);line-height:1.04;letter-spacing:-.04em;margin:14px 0 28px}
.catering-faq details{border-top:1px solid #e5e1dc;padding:19px 0}
.catering-faq details:last-of-type{border-bottom:1px solid #e5e1dc}
.catering-faq summary{list-style:none;cursor:pointer;font-size:17px;font-weight:800;line-height:1.5;display:flex;justify-content:space-between;gap:20px}
.catering-faq summary::-webkit-details-marker{display:none}
.catering-faq summary:after{content:"+";color:#d71920;font-size:24px;line-height:1;font-weight:600}
.catering-faq details[open] summary:after{content:"−"}
.catering-faq details p{margin:12px 0 3px;color:#5d5d5d;line-height:1.7;font-size:15px;max-width:850px}
.catering-faq .faq-cta{display:inline-block;margin-top:28px;background:#d71920;color:#fff;padding:15px 19px;font-size:12px;font-weight:800}
@media(max-width:640px){.catering-faq{padding:58px 6vw}.catering-faq summary{font-size:15px}}
