/* ══ FOOTER v9 — Brand Identity System ══
   Background: navy #1D3D6B (brand)
   Gerarchia tipografica su token semantici:
   --footer-text   (.88) → link, descrizione
   --footer-sub    (.72) → tagline, h4, copy, legal
   --footer-muted  (.56) → icone secondarie
   --footer-rule   (.14) → divider
   --footer-ring   (.22) → bordi social
═══════════════════════════════════════════════ */

/* Footer main: navy brand background (Brand Identity System) */
.site-footer{background:var(--footer-bg,#1D3D6B);color:var(--footer-text,rgba(255,255,255,.88))}
/* Bordo gradiente (top) — brand primary → accent */
.site-footer::before{content:'';display:block;height:2px;background:linear-gradient(90deg,var(--primary,#0F8060),var(--accent,#F39422))}
.footer-main{padding:var(--s7,96px) 0 var(--s6,64px)}
.footer-grid{display:grid;grid-template-columns:2fr 1.4fr 1.4fr;gap:var(--s6,64px)}

/* Logo footer — raddoppiato (116px = 2x 58px) */
.site-footer .site-logo img,
.site-footer .footer-logo{height:116px;width:auto;max-width:464px;display:block;object-fit:contain;transition:opacity var(--tr,.2s)}
.site-footer .site-logo:hover img,
.site-footer .footer-logo:hover{opacity:.88}

/* Tagline footer → testo secondario */
.footer-brand .footer-tagline{font-size:11px;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:var(--footer-sub,rgba(255,255,255,.72));margin:16px 0 12px}
/* Descrizione brand → testo primario */
.footer-brand-desc{font-size:14px;color:var(--footer-text,rgba(255,255,255,.88));line-height:1.65;max-width:300px;font-weight:400}

/* Headings colonne → testo secondario */
.footer-col h4{font-size:11px;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:var(--footer-sub,rgba(255,255,255,.72));margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid var(--footer-rule,rgba(255,255,255,.14))}

/* Links → testo primario */
.footer-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.footer-links a{font-size:14px;font-weight:400;color:var(--footer-text,rgba(255,255,255,.88));text-decoration:none;transition:color var(--tr,.2s),padding-left var(--tr,.2s);display:flex;align-items:center;gap:8px}
.footer-links a:hover{color:#fff;padding-left:4px}
.footer-links a svg{color:var(--footer-muted,rgba(255,255,255,.56));flex-shrink:0}
.footer-links a:hover svg{color:#fff}
/* CTA nel footer → accent brand (Prenota — arancio Boost4biz) */
.footer-links .link-cta{color:var(--accent,#F39422);font-weight:600}
.footer-links .link-cta:hover{color:#fff}

/* Social */
.footer-social{display:flex;gap:10px;margin-top:22px}
.social-btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--footer-ring,rgba(255,255,255,.22));display:flex;align-items:center;justify-content:center;color:#fff;text-decoration:none;transition:all var(--tr,.2s)}
.social-btn:hover{border-color:var(--primary,#0F8060);color:#fff;background:var(--primary,#0F8060);transform:translateY(-2px)}

/* Divider */
.footer-divider{height:1px;background:var(--footer-rule,rgba(255,255,255,.14));border:none;margin:0;opacity:1}

/* Footer bottom — overlay scuro leggero, coerente con navy */
.footer-bottom{padding:16px 0;background:rgba(0,0,0,.22);border-top:1px solid var(--footer-rule,rgba(255,255,255,.14))}
.footer-bottom__in{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
/* Copy & legal → testo secondario */
.footer-copy{font-size:12px;color:var(--footer-sub,rgba(255,255,255,.72));margin:0;font-weight:400}
.footer-legal{display:flex;gap:20px;list-style:none;padding:0;margin:0;flex-wrap:wrap}
.footer-legal a{font-size:12px;color:var(--footer-sub,rgba(255,255,255,.72));text-decoration:none;font-weight:400;transition:color var(--tr,.2s)}
.footer-legal a:hover{color:#fff;text-decoration:underline}

/* Bottoni Prenota/CTA nel footer */
.btn-cta,.btn-prenota{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font,'Inter');font-size:14px;font-weight:600;letter-spacing:0;line-height:1;border-radius:var(--r-md,8px);cursor:pointer;text-decoration:none;white-space:nowrap;transition:all var(--tr,.2s);border:1.5px solid;padding:12px 24px;min-height:44px}
.btn-prenota{color:#fff;border-color:var(--accent,#F39422);background:var(--accent,#F39422)}
.btn-prenota:hover{background:var(--accent-dark,#D47817);color:#fff;border-color:var(--accent-dark,#D47817)}
.btn-cta{background:var(--primary,#0F8060);color:#fff;border-color:var(--primary,#0F8060)}
.btn-cta:hover{background:var(--primary-dark,#0A5C45);border-color:var(--primary-dark,#0A5C45);color:#fff}
.btn-cta.btn-sm,.btn-prenota.btn-sm{padding:8px 16px;font-size:12px;min-height:36px}

@media(max-width:768px){
  .footer-grid{grid-template-columns:1fr;gap:var(--s4,32px)}
  .pre-footer__in{flex-direction:column;align-items:flex-start}
  .footer-bottom__in{flex-direction:column;align-items:flex-start}
  .footer-legal{gap:14px}
  .footer-main{padding:var(--s6,64px) 0 var(--s5,48px)}
  .site-footer .site-logo img,
  .site-footer .footer-logo{height:96px;max-width:384px}
}
