/* SVILUPPOFOOD V27 — unified visual language. Home V21 is the visual reference. */
:root{--pink:#ff008c;--black:#050505;--ink:#111;--cream:#f3f1ec;--line:#dedbd5;--muted:#5c5c5c}
/* One type system everywhere: same sans-serif family as the approved V21 home. */
html,body.sf-inner-v27,.sf-inner-v27 *{font-family:Arial,Helvetica,sans-serif!important}
body.sf-inner-v27{margin:0;background:var(--cream)!important;color:var(--ink)!important;font-size:15px;line-height:1.6}
body.sf-inner-v27 main{background:var(--cream)!important;color:var(--ink)!important}
/* Header: exactly the V21 home language */
.sf-inner-v27 .sf-top,.sf-home-exact .sf-top{height:82px!important;background:#050505!important;border-bottom:1px solid rgba(255,255,255,.14)!important;display:flex;align-items:center;position:relative;z-index:1000}
.sf-inner-v27 .sf-top .sf-wrap,.sf-home-exact .sf-top .sf-wrap{display:flex;align-items:center;gap:20px;height:100%;width:min(1410px,calc(100% - 70px));margin:auto}
.sf-inner-v27 .sf-brand img,.sf-home-exact .sf-brand img{width:225px!important;height:auto;display:block}
.sf-inner-v27 .sf-menu,.sf-home-exact .sf-menu{display:flex;align-items:center;gap:13px;margin-left:auto}
.sf-inner-v27 .sf-menu a,.sf-home-exact .sf-menu a{font-family:Arial,Helvetica,sans-serif!important;font-size:9px!important;font-weight:900!important;letter-spacing:.025em!important;white-space:nowrap;padding:11px 0!important;border:1px solid transparent;text-decoration:none;color:#fff}
.sf-inner-v27 .sf-menu a:hover,.sf-inner-v27 .sf-menu a.active,.sf-home-exact .sf-menu a:hover,.sf-home-exact .sf-menu a.active{color:var(--pink)!important}
.sf-inner-v27 .sf-menu a.active,.sf-home-exact .sf-menu a.active{padding:11px 10px!important;border-color:var(--pink)!important}
.sf-inner-v27 .sf-check,.sf-home-exact .sf-check{margin-left:5px!important;background:var(--pink)!important;color:#fff!important;padding:14px 16px!important;font-size:9px!important;font-weight:900!important;letter-spacing:.03em!important;white-space:nowrap;text-decoration:none}
.sf-inner-v27 .sf-mobile,.sf-home-exact .sf-mobile{display:none;margin-left:auto;background:transparent;border:1px solid #fff;color:#fff;padding:11px 13px;font-weight:900;font-size:10px}
/* Internal pages: same visual rhythm as V21, with photographs and readable light sections. */
.sf-inner-v27 .page-hero,.sf-inner-v27 .blog-hero,.sf-inner-v27 .fr-hero,.sf-inner-v27 .v11-hero,.sf-inner-v27 .franchise-page-hero,.sf-inner-v27 .format-detail-hero{min-height:500px!important;padding:115px 0 70px!important;display:flex;align-items:flex-end;position:relative;overflow:hidden!important;color:#fff!important}
.sf-inner-v27 .page-hero:before,.sf-inner-v27 .blog-hero:before,.sf-inner-v27 .fr-hero:before,.sf-inner-v27 .v11-hero:before,.sf-inner-v27 .franchise-page-hero:before,.sf-inner-v27 .format-detail-hero:before{background:linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.50),rgba(0,0,0,.15))!important;z-index:1!important}
.sf-inner-v27 .page-hero .container,.sf-inner-v27 .blog-hero .ref-container,.sf-inner-v27 .fr-hero .container,.sf-inner-v27 .v11-hero .container,.sf-inner-v27 .franchise-page-hero .container,.sf-inner-v27 .format-detail-hero .v11-wrap{position:relative;z-index:2}
.sf-inner-v27 .page-hero h1,.sf-inner-v27 .blog-hero h1,.sf-inner-v27 .fr-hero h1,.sf-inner-v27 .v11-hero h1,.sf-inner-v27 .franchise-page-hero h1,.sf-inner-v27 .format-detail-hero h1{font-family:Arial,Helvetica,sans-serif!important;font-size:clamp(46px,5.8vw,82px)!important;line-height:.92!important;letter-spacing:-.05em!important;text-transform:uppercase!important;font-weight:900!important;color:#fff!important;margin:0 0 18px!important;max-width:1050px!important}
.sf-inner-v27 .page-hero h1 span,.sf-inner-v27 .blog-hero h1 span,.sf-inner-v27 .fr-hero h1 span,.sf-inner-v27 .v11-hero h1 span,.sf-inner-v27 .franchise-page-hero h1 span,.sf-inner-v27 .format-detail-hero h1 span{color:var(--pink)!important}
.sf-inner-v27 .eyebrow,.sf-inner-v27 .ref-kicker,.sf-inner-v27 .v11-kicker,.sf-inner-v27 .fr-kicker{font-family:Arial,Helvetica,sans-serif!important;color:var(--pink)!important;font-weight:900!important;letter-spacing:.18em!important;text-transform:uppercase!important;font-size:10px!important;margin-bottom:12px!important}
/* light content sections */
.sf-inner-v27 .content,.sf-inner-v27 .v11-section,.sf-inner-v27 .fr-section,.sf-inner-v27 .cases,.sf-inner-v27 .where-section,.sf-inner-v27 .blog-lead-cta{background:#f3f1ec!important;color:#111!important;border-top:1px solid var(--line)!important;padding-top:76px!important;padding-bottom:76px!important}
.sf-inner-v27 .content.white,.sf-inner-v27 .v11-section.alt,.sf-inner-v27 .fr-section.white{background:#fff!important;color:#111!important}
.sf-inner-v27 .content h2,.sf-inner-v27 .v11-section h2,.sf-inner-v27 .fr-section h2,.sf-inner-v27 .cases h2,.sf-inner-v27 .where-section h2,.sf-inner-v27 .blog-lead-cta h2{font-family:Arial,Helvetica,sans-serif!important;color:#111!important;font-size:clamp(38px,4.5vw,64px)!important;line-height:.95!important;letter-spacing:-.045em!important;text-transform:uppercase!important;font-weight:900!important;margin:0 0 20px!important}
.sf-inner-v27 .content h2 span,.sf-inner-v27 .v11-section h2 span,.sf-inner-v27 .fr-section h2 span,.sf-inner-v27 .cases h2 span{color:var(--pink)!important}
.sf-inner-v27 .content h3,.sf-inner-v27 .v11-section h3,.sf-inner-v27 .fr-section h3,.sf-inner-v27 .cases h3,.sf-inner-v27 .where-section h3{font-family:Arial,Helvetica,sans-serif!important;color:#111!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:-.02em!important}
.sf-inner-v27 .content p,.sf-inner-v27 .v11-section p,.sf-inner-v27 .fr-section p,.sf-inner-v27 .cases p,.sf-inner-v27 .where-section p,.sf-inner-v27 .blog-lead-cta p{font-family:Arial,Helvetica,sans-serif!important;color:#3f3f3f!important;line-height:1.7!important;font-size:15px!important}
.sf-inner-v27 .lead{color:#3f3f3f!important;max-width:850px}
/* Cards: same squared geometry as V21 */
.sf-inner-v27 .feature,.sf-inner-v27 .v11-card,.sf-inner-v27 .fr-card,.sf-inner-v27 .case-card,.sf-inner-v27 .v11-process>div,.sf-inner-v27 .franchise-step{background:#fff!important;color:#111!important;border:1px solid #d8d4cd!important;border-radius:0!important;box-shadow:none!important}
.sf-inner-v27 .feature{padding:28px!important}.sf-inner-v27 .feature b,.sf-inner-v27 .v11-card b,.sf-inner-v27 .v11-process b,.sf-inner-v27 .franchise-step>b{color:var(--pink)!important;font-size:11px!important;letter-spacing:.08em!important}
.sf-inner-v27 .feature h3,.sf-inner-v27 .v11-card h3,.sf-inner-v27 .fr-card h3,.sf-inner-v27 .case-card h3,.sf-inner-v27 .franchise-step h3{font-size:23px!important;line-height:1.02!important;margin:14px 0 9px!important}
.sf-inner-v27 .feature p,.sf-inner-v27 .v11-card p,.sf-inner-v27 .fr-card p,.sf-inner-v27 .case-card p,.sf-inner-v27 .franchise-step p{color:#555!important}
/* Images are first-class content, never suppressed */
.sf-inner-v27 img{max-width:100%;height:auto}.sf-inner-v27 .v11-gallery,.sf-inner-v27 .v11-format-grid,.sf-inner-v27 .format-projects,.sf-inner-v27 .blog-grid{margin-top:30px!important}
.sf-inner-v27 .v11-gallery img,.sf-inner-v27 .format-project-card img,.sf-inner-v27 .blog-card-image img{display:block;width:100%;object-fit:cover}
.sf-inner-v27 .v11-format-card,.sf-inner-v27 .format-project-card,.sf-inner-v27 .blog-card{background:#fff!important;border:1px solid #d8d4cd!important;border-radius:0!important;overflow:hidden;box-shadow:none!important}
.sf-inner-v27 .v11-format-copy,.sf-inner-v27 .blog-card-body{background:#fff!important;color:#111!important}.sf-inner-v27 .v11-format-copy h3,.sf-inner-v27 .blog-card h2{color:#111!important}.sf-inner-v27 .v11-format-copy p,.sf-inner-v27 .blog-card p{color:#555!important}
.sf-inner-v27 .format-project-card figcaption{background:#fff!important;color:#111!important;padding:18px!important}.sf-inner-v27 .format-project-card figcaption b,.sf-inner-v27 .blog-meta,.sf-inner-v27 .blog-card .read{color:var(--pink)!important}
/* Buttons */
.sf-inner-v27 .btn,.sf-inner-v27 .v11-btn,.sf-inner-v27 .buttons a{border-radius:0!important;text-decoration:none!important;font-family:Arial,Helvetica,sans-serif!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.02em!important}.sf-inner-v27 .btn-primary,.sf-inner-v27 .v11-btn.primary{background:var(--pink)!important;border-color:var(--pink)!important;color:#fff!important}.sf-inner-v27 .btn:not(.btn-primary),.sf-inner-v27 .v11-btn.light{background:#111!important;color:#fff!important;border-color:#111!important}
/* Forms: only visual treatment, no field/action changes */
.sf-inner-v27 form{font-family:Arial,Helvetica,sans-serif!important}.sf-inner-v27 .v11-form{background:#fff!important;color:#111!important;border:1px solid #d8d4cd!important;border-left:4px solid var(--pink)!important;border-radius:0!important}.sf-inner-v27 .v11-form h3,.sf-inner-v27 .v11-form label{color:#111!important}.sf-inner-v27 .v11-form input,.sf-inner-v27 .v11-form select,.sf-inner-v27 .v11-form textarea{background:#fff!important;color:#111!important;border:1px solid #bbb!important;border-radius:0!important;font-family:Arial,Helvetica,sans-serif!important}
/* FAQ */
.sf-inner-v27 .v11-faq details{background:#fff!important;border:1px solid #d8d4cd!important;color:#111!important;border-radius:0!important}.sf-inner-v27 .v11-faq summary{background:#fff!important;color:#111!important;padding:20px 48px 20px 22px!important;font-family:Arial,Helvetica,sans-serif!important;font-weight:900!important}.sf-inner-v27 .v11-faq details p{background:#fff!important;color:#555!important}
/* Articles */
.sf-inner-v27 .article-hero{color:#fff!important}.sf-inner-v27 .article-body,.sf-inner-v27 .article-content{background:#fff!important;color:#222!important}.sf-inner-v27 .article-body p,.sf-inner-v27 .article-content p{color:#444!important;line-height:1.8!important}.sf-inner-v27 .article-body h2,.sf-inner-v27 .article-content h2,.sf-inner-v27 .article-body h3,.sf-inner-v27 .article-content h3{color:#111!important}
/* Footer same as home */
.sf-inner-v27 .sf-footer-exact{background:#050505!important;color:#fff!important;border-top:1px solid rgba(255,255,255,.13)!important;padding:45px 0 25px!important}.sf-inner-v27 .sf-footer-grid{display:grid!important;grid-template-columns:1.3fr .8fr .8fr;gap:50px}.sf-inner-v27 .sf-footer-grid h4{font-size:10px!important;letter-spacing:.15em!important;color:var(--pink)!important}.sf-inner-v27 .sf-footer-grid a{color:#aaa!important;text-decoration:none!important}.sf-inner-v27 .sf-footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:35px;padding-top:16px;color:#777;font-size:10px;display:flex;justify-content:space-between}
/* Mobile */
@media(max-width:1250px){.sf-inner-v27 .sf-menu{gap:9px}.sf-inner-v27 .sf-menu a{font-size:8.5px!important}.sf-inner-v27 .sf-check{padding:13px 12px!important;font-size:8px!important}.sf-inner-v27 .sf-brand img{width:205px!important}.sf-inner-v27 .sf-top .sf-wrap{width:min(1180px,calc(100% - 40px))}}
@media(max-width:900px){.sf-inner-v27 .sf-menu,.sf-inner-v27 .sf-check{display:none!important}.sf-inner-v27 .sf-mobile{display:block!important}.sf-inner-v27 .sf-top{height:72px!important}.sf-inner-v27 .sf-brand img{width:220px!important}.sf-inner-v27 .sf-mobile.open{background:var(--pink);border-color:var(--pink)}.sf-inner-v27 .sf-menu.open{display:flex!important;position:absolute;top:72px;left:16px;right:16px;background:#050505;flex-direction:column;align-items:stretch;padding:8px;border:1px solid rgba(255,255,255,.15);z-index:2000}.sf-inner-v27 .sf-menu.open a{padding:13px 14px!important;border-bottom:1px solid rgba(255,255,255,.08);font-size:10px!important}.sf-inner-v27 .sf-menu.open a.active{border-color:var(--pink)!important}.sf-inner-v27 .page-hero,.sf-inner-v27 .blog-hero,.sf-inner-v27 .franchise-page-hero,.sf-inner-v27 .format-detail-hero{min-height:480px!important;padding:95px 0 55px!important}.sf-inner-v27 .page-hero h1,.sf-inner-v27 .blog-hero h1,.sf-inner-v27 .franchise-page-hero h1,.sf-inner-v27 .format-detail-hero h1{font-size:46px!important}.sf-inner-v27 .content,.sf-inner-v27 .v11-section,.sf-inner-v27 .fr-section,.sf-inner-v27 .cases,.sf-inner-v27 .blog-lead-cta{padding-top:60px!important;padding-bottom:60px!important}.sf-inner-v27 .feature-grid{grid-template-columns:1fr 1fr!important}.sf-inner-v27 .sf-footer-grid{grid-template-columns:1fr!important}.sf-inner-v27 .sf-footer-bottom{display:block}.sf-inner-v27 .sf-footer-bottom span{display:block;margin-bottom:7px}}
@media(max-width:620px){.sf-inner-v27 .sf-brand img{width:190px!important}.sf-inner-v27 .page-hero h1,.sf-inner-v27 .blog-hero h1,.sf-inner-v27 .franchise-page-hero h1,.sf-inner-v27 .format-detail-hero h1{font-size:40px!important}.sf-inner-v27 .feature-grid{grid-template-columns:1fr!important}.sf-inner-v27 .content h2,.sf-inner-v27 .v11-section h2,.sf-inner-v27 .fr-section h2{font-size:42px!important}}

/* V30 FINAL BLOG IMAGE SEPARATION
   Blog landing banner = clean editorial image without embedded typography.
   Salone article/card = dedicated Salone Franchising Milano creative. */
.sf-inner-v27.sf-page-blog .blog-hero{
  background-image:url('images/blog-sviluppofood-franchising-format-fast-casual.jpg')!important;
  background-size:cover!important;
  background-position:center!important;
}


/* V28 ACCESSIBILITY / CONTRAST + SOCIAL FOOTER */
.sf-inner-v27 .v11-section.dark h2,
.sf-inner-v27 .v11-section.dark h3,
.sf-inner-v27 .v11-section.dark h4,
.sf-inner-v27 .v11-section.dark strong,
.sf-inner-v27 .v11-section.dark p,
.sf-inner-v27 .v11-section.dark li { color:#fff !important; opacity:1 !important; visibility:visible !important; }
.sf-inner-v27 .v11-section.dark h2 span,
.sf-inner-v27 .v11-section.dark h3 span { color:var(--pink) !important; }
.sf-inner-v27 .v11-section.dark p,
.sf-inner-v27 .v11-section.dark .v11-lead { color:#d6d6d6 !important; }
.sf-inner-v27 .v11-section.dark .v11-card p { color:#d0d0d0 !important; }
.sf-inner-v27 .v11-section.dark .v11-format-copy p { color:#eee !important; }
.sf-inner-v27 .form-box { color:#fff !important; }
.sf-inner-v27 .form-box label { color:#fff !important; opacity:1 !important; }
.sf-inner-v27 .form-box input,
.sf-inner-v27 .form-box textarea { color:#fff !important; background:#080808 !important; border-color:#555 !important; }
.sf-inner-v27 .form-box input::placeholder,
.sf-inner-v27 .form-box textarea::placeholder { color:#aaa !important; opacity:1 !important; }
.sf-inner-v27 .form-box input[type="checkbox"] { accent-color:var(--pink); }
.sf-inner-v27 .form-box p a { color:var(--pink) !important; }
.sf-address { font-size:16px !important; line-height:1.65 !important; color:#111 !important; margin-top:14px !important; }
.sf-address strong { color:#111 !important; }
.sf-social-footer { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-top:20px; }
.sf-social-footer > span { color:var(--pink); font-size:9px; font-weight:900; letter-spacing:.14em; margin-right:4px; }
.sf-social-footer a { display:inline-flex !important; align-items:center; justify-content:center; padding:7px 10px !important; border:1px solid rgba(255,0,140,.75) !important; border-radius:999px; color:#fff !important; background:transparent; font-size:9px !important; font-weight:900; letter-spacing:.04em; text-decoration:none !important; margin:0 !important; }
.sf-social-footer a:hover { background:var(--pink) !important; border-color:var(--pink) !important; color:#fff !important; }
.sf-social-footer .sf-social-wa { border-color:#25D366 !important; }
.sf-social-footer .sf-social-wa:hover { background:#25D366 !important; border-color:#25D366 !important; }
@media(max-width:620px){ .sf-social-footer { gap:7px; } .sf-social-footer a { padding:7px 9px !important; font-size:8px !important; } }

.sf-wa-float { position:fixed; right:22px; bottom:22px; z-index:9999; display:inline-flex; align-items:center; gap:8px; padding:11px 14px; border-radius:999px; background:#25D366; color:#fff !important; text-decoration:none !important; box-shadow:0 10px 28px rgba(0,0,0,.25); font-size:10px; font-weight:900; letter-spacing:.04em; }
.sf-wa-float span { width:24px; height:24px; border:1px solid rgba(255,255,255,.85); border-radius:50%; display:grid; place-items:center; font-size:8px; }
.sf-wa-float b { color:#fff !important; }
.sf-wa-float:hover { transform:translateY(-2px); }
@media(max-width:620px){ .sf-wa-float { right:14px; bottom:14px; padding:10px 12px; } .sf-wa-float b { display:none; } }
