:root{--sf-pink:#ff008c;--sf-black:#050505;--sf-panel:#0c0c0c;--sf-panel2:#111;--sf-white:#fff;--sf-muted:#b8b8b8;--sf-line:rgba(255,255,255,.12);--sf-max:1410px}
.sf-site-page{background:var(--sf-black);color:var(--sf-white);font-family:Arial,Helvetica,sans-serif}
.sf-site-page *{box-sizing:border-box}
.sf-site-page a{color:inherit}
.sf-site-page main{background:var(--sf-black);overflow:hidden}
.sf-site-page .ref-header{height:82px;background:rgba(5,5,5,.98);border-bottom:1px solid var(--sf-line);position:relative;z-index:100;backdrop-filter:blur(12px)}
.sf-site-page .ref-container{width:min(var(--sf-max),calc(100% - 96px));height:100%;margin:auto}
.sf-site-page .ref-header nav{height:100%;display:flex;align-items:center;gap:25px}
.sf-site-page .ref-logo{display:flex;align-items:center;flex:0 0 auto}
.sf-site-page .ref-logo img{width:238px;height:auto;display:block}
.sf-site-page .ref-nav{display:flex;align-items:center;gap:20px;margin-left:auto}
.sf-site-page .ref-nav a{font-size:10px!important;font-weight:900!important;letter-spacing:.06em!important;text-decoration:none!important;color:#fff!important;white-space:nowrap;padding:12px 0!important;border:1px solid transparent!important}
.sf-site-page .ref-nav a:hover,.sf-site-page .ref-nav a.active{color:var(--sf-pink)!important}
.sf-site-page .ref-nav a.active{padding:12px 14px!important;border-color:var(--sf-pink)!important}
.sf-site-page .ref-call{margin-left:8px;background:var(--sf-pink);color:#fff!important;padding:15px 19px!important;font-size:9px!important;font-weight:900!important;letter-spacing:.06em!important;text-decoration:none!important;white-space:nowrap}
.sf-site-page .ref-mobile{display:none;margin-left:auto;background:transparent;border:1px solid #fff;color:#fff;padding:11px 13px;font-weight:900;font-size:10px}

/* Shared page rhythm */
.sf-site-page main>section{position:relative}
.sf-site-page .page-hero,.sf-site-page .blog-hero,.sf-site-page .fr-hero,.sf-site-page .v11-hero,.sf-site-page .franchise-page-hero,.sf-site-page .format-detail-hero{min-height:500px;padding:115px 0 85px;background:#070707!important;color:#fff!important;display:flex;align-items:flex-end;isolation:isolate;overflow:hidden}
.sf-site-page .page-hero:before,.sf-site-page .blog-hero:before,.sf-site-page .fr-hero:before,.sf-site-page .v11-hero:before,.sf-site-page .franchise-page-hero:before,.sf-site-page .format-detail-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.82) 40%,rgba(0,0,0,.38) 100%);z-index:-1}
.sf-site-page .page-hero h1,.sf-site-page .blog-hero h1,.sf-site-page .fr-hero h1,.sf-site-page .v11-hero h1,.sf-site-page .franchise-page-hero h1,.sf-site-page .format-detail-hero h1{font-size:clamp(48px,6.2vw,88px)!important;line-height:.92!important;letter-spacing:-.055em!important;text-transform:uppercase!important;max-width:1050px!important;margin:0 0 20px!important;color:#fff!important;font-weight:950!important}
.sf-site-page .page-hero h1 span,.sf-site-page .blog-hero h1 span,.sf-site-page .fr-hero h1 span,.sf-site-page .v11-hero h1 span,.sf-site-page .franchise-page-hero h1 span,.sf-site-page .format-detail-hero h1 span{color:var(--sf-pink)!important}
.sf-site-page .page-hero p,.sf-site-page .blog-hero p,.sf-site-page .fr-hero p,.sf-site-page .v11-hero p,.sf-site-page .franchise-page-hero p,.sf-site-page .format-detail-hero p{color:#ddd!important;max-width:850px;line-height:1.65!important;font-size:18px!important}
.sf-site-page .container,.sf-site-page .ref-container{width:min(var(--sf-max),calc(100% - 96px));margin-left:auto;margin-right:auto}

/* Every content section adopts the FoodMeeting / homepage visual language */
.sf-site-page .content,.sf-site-page .v11-section,.sf-site-page .fr-section,.sf-site-page .cases,.sf-site-page .where-section,.sf-site-page .blog-lead-cta{background:#070707!important;color:#fff!important;border-top:1px solid var(--sf-line)}
.sf-site-page .content.white,.sf-site-page .v11-section.alt,.sf-site-page .fr-section.white{background:#0c0c0c!important;color:#fff!important}
.sf-site-page .content,.sf-site-page .v11-section,.sf-site-page .fr-section,.sf-site-page .cases{padding-top:88px!important;padding-bottom:88px!important}
.sf-site-page .content h2,.sf-site-page .v11-section h2,.sf-site-page .fr-section h2,.sf-site-page .cases h2,.sf-site-page .where-section h2,.sf-site-page .blog-lead-cta h2{font-size:clamp(38px,4.6vw,68px)!important;line-height:.95!important;letter-spacing:-.045em!important;text-transform:uppercase!important;color:#fff!important;margin:0 0 22px!important;font-weight:950!important}
.sf-site-page h2 span,.sf-site-page h3 span{color:var(--sf-pink)!important}
.sf-site-page .content p,.sf-site-page .v11-section p,.sf-site-page .fr-section p,.sf-site-page .cases p,.sf-site-page .where-section p{color:#c9c9c9!important;line-height:1.7!important}
.sf-site-page .v11-lead,.sf-site-page .fr-section .lead,.sf-site-page .content .lead{color:#c9c9c9!important}

/* Cards */
.sf-site-page .v11-grid,.sf-site-page .v11-check,.sf-site-page .v11-format-grid,.sf-site-page .v11-process,.sf-site-page .fr-grid,.sf-site-page .cases-grid{gap:14px!important}
.sf-site-page .v11-card,.sf-site-page .v11-process>div,.sf-site-page .fr-card,.sf-site-page .case-card,.sf-site-page .blog-card{background:linear-gradient(180deg,#121212,#0a0a0a)!important;border:1px solid rgba(255,255,255,.13)!important;color:#fff!important;box-shadow:none!important}
.sf-site-page .v11-card{padding:30px!important}
.sf-site-page .v11-card h3,.sf-site-page .fr-card h3,.sf-site-page .case-card h3,.sf-site-page .blog-card h2{color:#fff!important;font-size:23px!important;line-height:1.05!important;text-transform:uppercase!important}
.sf-site-page .v11-card p,.sf-site-page .fr-card p,.sf-site-page .case-card p,.sf-site-page .blog-card p{color:#bdbdbd!important}
.sf-site-page .v11-card b,.sf-site-page .v11-process b{color:var(--sf-pink)!important}
.sf-site-page .v11-process>div{border-top:3px solid var(--sf-pink)!important;color:#fff!important;padding:22px 16px!important}
.sf-site-page .v11-process>div strong,.sf-site-page .v11-process>div small{color:#fff!important}

/* Galleries / format pages */
.sf-site-page .v11-gallery,.sf-site-page .v11-format-grid{margin-top:34px!important}
.sf-site-page .v11-format-card{border:1px solid rgba(255,255,255,.15)!important;background:#111!important}
.sf-site-page .v11-format-copy h3{color:#fff!important;text-transform:uppercase!important}
.sf-site-page .v11-format-copy p{color:#ddd!important}
.sf-site-page .v11-gallery figcaption{background:linear-gradient(transparent,rgba(0,0,0,.92))!important;color:#fff!important}

/* Buttons / CTA */
.sf-site-page .v11-btn,.sf-site-page .ref-call,.sf-site-page button[type=submit]{border-radius:0!important;font-weight:900!important;text-transform:uppercase!important}
.sf-site-page .v11-btn.primary,.sf-site-page .v11-cta{background:var(--sf-pink)!important;border-color:var(--sf-pink)!important;color:#fff!important}
.sf-site-page .v11-btn.light{background:transparent!important;color:#fff!important;border-color:#fff!important}
.sf-site-page .v11-cta{padding:88px 0!important}
.sf-site-page .v11-cta h2{color:#fff!important}

/* FAQ: keep functionality, only restyle shell */
.sf-site-page .v11-faq details{background:#101010!important;border:1px solid rgba(255,255,255,.13)!important;color:#fff!important}
.sf-site-page .v11-faq summary{background:#101010!important;color:#fff!important;padding:22px 48px 22px 22px!important}
.sf-site-page .v11-faq details p{background:#101010!important;color:#c7c7c7!important}

/* Existing forms: no field/content changes, only surrounding visual system */
.sf-site-page .v11-form{background:#0b0b0b!important;border:1px solid rgba(255,255,255,.14)!important;border-left:3px solid var(--sf-pink)!important;border-radius:0!important}
.sf-site-page .v11-form h3{color:#fff!important}

/* Blog */
.sf-site-page .blog-hero{min-height:440px}
.sf-site-page .blog-card{padding:28px!important;min-height:240px;display:flex;flex-direction:column}
.sf-site-page .blog-card h2{margin:0 0 12px!important}
.sf-site-page .blog-card p{margin:0 0 18px!important}
.sf-site-page .blog-card a{color:var(--sf-pink)!important;font-weight:900!important;margin-top:auto}

/* Footer: one visual language across all SviluppoFood pages */
.sf-site-page footer{background:#050505!important;border-top:1px solid var(--sf-line)!important;color:#fff!important;padding:48px 0 24px!important}
.sf-site-page footer .container{width:min(var(--sf-max),calc(100% - 96px));margin:auto}
.sf-site-page footer .footer-grid{display:grid!important;grid-template-columns:1.3fr .8fr .8fr;gap:50px!important}
.sf-site-page footer .footer-grid h4{font-size:10px!important;letter-spacing:.16em!important;color:var(--sf-pink)!important;text-transform:uppercase!important;margin:0 0 13px!important}
.sf-site-page footer .footer-grid p,.sf-site-page footer .footer-grid a{color:#aaa!important;font-size:12px!important;line-height:1.55!important}
.sf-site-page footer .footer-grid a{text-decoration:none!important}
.sf-site-page footer .footer-grid a:hover{color:#fff!important}
.sf-site-page footer .footer-bottom{border-top:1px solid rgba(255,255,255,.1)!important;margin-top:35px!important;padding-top:16px!important;color:#777!important;font-size:10px!important;display:flex;justify-content:space-between}

/* Page-level accent strips to make hierarchy immediately readable */
.sf-site-page .page-hero .container:before,.sf-site-page .blog-hero .container:before,.sf-site-page .fr-hero .container:before,.sf-site-page .v11-hero .container:before,.sf-site-page .franchise-page-hero .container:before,.sf-site-page .format-detail-hero .container:before{content:"SVILUPPOFOOD · FORMAT · RETAIL · FRANCHISING";display:block;color:var(--sf-pink);font-size:10px;font-weight:900;letter-spacing:.2em;margin-bottom:16px}

/* Home legacy V15 content rebuilt in the V20 visual language */
.sf-home-v21-section{padding:82px 0;border-top:1px solid var(--sf-line);background:#070707}
.sf-home-v21-section.alt{background:#0c0c0c}
.sf-home-v21-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:32px}
.sf-home-v21-kicker{font-size:10px;letter-spacing:.2em;font-weight:900;color:var(--sf-pink);margin-bottom:9px}
.sf-home-v21-title{font-size:clamp(42px,5vw,72px);line-height:.92;letter-spacing:-.05em;text-transform:uppercase;margin:0;font-weight:950}
.sf-home-v21-title span{color:var(--sf-pink)}
.sf-home-v21-copy{max-width:540px;color:#c7c7c7;font-size:15px;line-height:1.65;margin:0}
.sf-home-v21-services{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.12)}
.sf-home-v21-service{min-height:220px;padding:28px;background:#0a0a0a;border:1px solid rgba(255,255,255,.05);position:relative}
.sf-home-v21-service b{color:var(--sf-pink);font-size:12px;letter-spacing:.1em}
.sf-home-v21-service h3{font-size:25px;line-height:1;text-transform:uppercase;margin:45px 0 10px}
.sf-home-v21-service p{color:#aaa;font-size:13px;line-height:1.5;margin:0}
.sf-home-v21-service:after{content:"→";position:absolute;right:24px;bottom:20px;color:var(--sf-pink);font-size:24px}
.sf-home-v21-format-feature{display:grid;grid-template-columns:1fr 1.45fr;gap:34px;align-items:stretch}
.sf-home-v21-format-text{padding:12px 0}
.sf-home-v21-format-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.sf-home-v21-format-tile{position:relative;min-height:170px;overflow:hidden;border:1px solid rgba(255,255,255,.13);background:#111}
.sf-home-v21-format-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.sf-home-v21-format-tile:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 25%,rgba(0,0,0,.9) 100%)}
.sf-home-v21-format-tile:hover img{transform:scale(1.04)}
.sf-home-v21-format-tile strong{position:absolute;left:14px;bottom:12px;z-index:2;font-size:17px;text-transform:uppercase}
.sf-home-v21-audience{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.sf-home-v21-audience a{padding:25px 22px;background:#101010;border:1px solid rgba(255,255,255,.12);text-decoration:none;min-height:180px}
.sf-home-v21-audience b{color:var(--sf-pink);font-size:11px;letter-spacing:.08em}
.sf-home-v21-audience h3{font-size:21px;line-height:1.05;text-transform:uppercase;margin:35px 0 8px}
.sf-home-v21-audience p{color:#aaa;font-size:12px;line-height:1.5;margin:0}
.sf-home-v21-check{display:grid;grid-template-columns:1.25fr .75fr;gap:0;background:linear-gradient(100deg,#ff008c 0%,#d40077 100%);color:#fff}
.sf-home-v21-check-copy{padding:48px}
.sf-home-v21-check h2{font-size:clamp(38px,4.5vw,64px);line-height:.95;text-transform:uppercase;letter-spacing:-.04em;margin:0 0 15px}
.sf-home-v21-check p{font-size:15px;line-height:1.55;max-width:650px;margin:0 0 22px}
.sf-home-v21-check-link{display:flex;align-items:center;justify-content:center;background:#080808;min-height:250px;padding:30px}
.sf-home-v21-check-link a{display:inline-flex;padding:16px 22px;background:#fff;color:#111;text-decoration:none;font-size:11px;font-weight:900;letter-spacing:.05em}
.sf-home-v21-press-logos{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:30px}
.sf-home-v21-press-logo{height:92px;background:#fff;display:flex;align-items:center;justify-content:center;padding:15px;border:1px solid rgba(255,255,255,.15)}
.sf-home-v21-press-logo img{max-width:100%;max-height:54px;object-fit:contain}
.sf-home-v21-split{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.12)}
.sf-home-v21-split-card{min-height:330px;padding:44px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:end;background:#0b0b0b}
.sf-home-v21-split-card:before{content:"";position:absolute;inset:0;background-size:cover;background-position:center;opacity:.35}
.sf-home-v21-split-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.94))}
.sf-home-v21-split-card>*{position:relative;z-index:2}
.sf-home-v21-split-card h3{font-size:40px;line-height:.95;text-transform:uppercase;margin:0 0 10px}
.sf-home-v21-split-card p{max-width:540px;color:#ddd;line-height:1.5}
.sf-home-v21-split-card .sf-home-link{display:inline-flex;align-self:flex-start;margin-top:8px;border:1px solid var(--sf-pink);padding:13px 16px;font-size:10px;font-weight:900;text-decoration:none}
.sf-home-v21-split-card.fast:before{background-image:url('images/formats/format-kaizen-esterno.jpg')}
.sf-home-v21-split-card.format:before{background-image:url('images/formats/o-cuoppo-esterno.webp')}
.sf-home-v21-sponsor{background:#0c0c0c;border-top:1px solid var(--sf-line);border-bottom:1px solid var(--sf-line);padding:65px 0}
.sf-home-v21-sponsor-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}
.sf-home-v21-sponsor h2{font-size:clamp(34px,4vw,58px);line-height:.95;text-transform:uppercase;margin:0 0 10px;letter-spacing:-.04em}
.sf-home-v21-sponsor p{color:#aaa;max-width:620px;margin:0;line-height:1.6}
.sf-home-v21-final{padding:90px 0;background:var(--sf-pink);color:#fff;text-align:center}
.sf-home-v21-final h2{font-size:clamp(48px,7vw,92px);line-height:.9;letter-spacing:-.055em;text-transform:uppercase;margin:0 0 25px}
.sf-home-v21-final a{display:inline-flex;background:#fff;color:#111;padding:16px 24px;text-decoration:none;font-size:11px;font-weight:900}

@media(max-width:1100px){.sf-site-page .ref-nav{gap:12px}.sf-site-page .ref-nav a{font-size:9px!important}.sf-site-page .ref-call{padding:14px 13px!important}.sf-home-v21-services{grid-template-columns:repeat(2,1fr)}.sf-home-v21-format-feature{grid-template-columns:1fr}.sf-home-v21-audience{grid-template-columns:repeat(2,1fr)}.sf-home-v21-check{grid-template-columns:1fr}.sf-home-v21-press-logos{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.sf-site-page .ref-header{height:72px}.sf-site-page .ref-nav,.sf-site-page .ref-call{display:none}.sf-site-page .ref-mobile{display:block}.sf-site-page .ref-logo img{width:220px}.sf-site-page .ref-header nav{position:relative}.sf-site-page .ref-mobile.open{background:var(--sf-pink);border-color:var(--sf-pink)}.sf-site-page .ref-nav.open{display:flex;position:absolute;top:72px;left:0;right:0;background:#050505;flex-direction:column;align-items:stretch;padding:10px;border:1px solid rgba(255,255,255,.13);z-index:120}.sf-site-page .ref-nav.open a{padding:13px 15px!important;border-bottom:1px solid rgba(255,255,255,.08)!important}.sf-site-page .container,.sf-site-page .ref-container{width:calc(100% - 50px)}.sf-site-page .page-hero,.sf-site-page .blog-hero,.sf-site-page .fr-hero,.sf-site-page .v11-hero,.sf-site-page .franchise-page-hero,.sf-site-page .format-detail-hero{min-height:560px;padding:105px 0 70px}.sf-home-v21-head{display:block}.sf-home-v21-copy{margin-top:20px}.sf-home-v21-split{grid-template-columns:1fr}.sf-home-v21-sponsor-inner{display:block}.sf-home-v21-sponsor .sf-btn{margin-top:22px}}
@media(max-width:620px){.sf-site-page .container,.sf-site-page .ref-container{width:calc(100% - 32px)}.sf-site-page .ref-logo img{width:190px}.sf-site-page .page-hero,.sf-site-page .blog-hero,.sf-site-page .fr-hero,.sf-site-page .v11-hero,.sf-site-page .franchise-page-hero,.sf-site-page .format-detail-hero{min-height:500px;padding:90px 0 55px}.sf-site-page .page-hero h1,.sf-site-page .blog-hero h1,.sf-site-page .fr-hero h1,.sf-site-page .v11-hero h1,.sf-site-page .franchise-page-hero h1,.sf-site-page .format-detail-hero h1{font-size:44px!important}.sf-site-page .content,.sf-site-page .v11-section,.sf-site-page .fr-section,.sf-site-page .cases{padding-top:65px!important;padding-bottom:65px!important}.sf-home-v21-section{padding:62px 0}.sf-home-v21-services,.sf-home-v21-audience{grid-template-columns:1fr}.sf-home-v21-format-grid{grid-template-columns:1fr 1fr}.sf-home-v21-press-logos{grid-template-columns:1fr 1fr}.sf-home-v21-check-copy{padding:34px 25px}.sf-home-v21-check-link{min-height:170px}.sf-home-v21-split-card{padding:32px 25px;min-height:290px}.sf-site-page footer .footer-grid{grid-template-columns:1fr!important}.sf-site-page footer .footer-bottom{display:block!important}.sf-site-page footer .footer-bottom>*{display:block;margin-bottom:7px}}
