:root{
  --primary:#195470;
  --secondary:#ecc625;
  --text:#0f1b2b;
  --muted:#6b7a8a;
  --border:#eef2f6;
  --bg:#f7f9fb;
}

/* Namespace per evitare collisioni con altre pagine */
.te-root *{box-sizing:border-box}

.te-hero{background:linear-gradient(180deg,#fff,var(--bg))}
.te-h1{font-size:2rem;line-height:1.25;margin:0 0 .5rem;color:var(--text)}
.te-h2{font-size:1.6rem;margin:0 0 .9rem;color:var(--text)}
.te-sub{font-size:1rem;color:var(--muted);margin:0 0 1rem}
.te-accent{color:var(--primary);background:linear-gradient(transparent 70%, rgba(236,198,37,.35) 0)}

.te-section{padding:2.25rem 0}
.te-section-alt{background:var(--bg);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}

.te-card{border:1px solid var(--border);border-radius:.75rem}
.te-chip{background:var(--secondary);border-radius:999px;padding:.35rem .6rem;font-weight:700}
.te-ul li{margin:.35rem 0}
.te-tags span{display:inline-block;background:#f0f3f7;border-radius:999px;padding:.35rem .6rem;margin:.25rem .25rem 0 0;font-size:.8rem;color:#2b3a4a}

.te-kpi{background:#fff;border:1px solid var(--border);border-radius:.75rem;padding:1rem}
.te-muted{color:var(--muted)}

.te-form .form-control{border-radius:.5rem}

/* Mobile alignment improvements */
@media (max-width: 767.98px){
  .te-hero .row{ text-align:center }
  .te-hero .d-flex{ justify-content:center }
  .te-footer .te-footer-nav-mobile{ align-items:center }
}

/* Offset per navbar fixed-top su desktop */
@media (min-width: 992px){
  .te-root{ padding-top: 88px } /* altezza stimata navbar + margine */
}

/* Corregge offset scroll su anchor target */
.te-root [id]{ scroll-margin-top: 100px }

/* Footer B2B styles */
.te-footer{background:linear-gradient(135deg, var(--text) 0%, #16537a 100%);color:#fff;position:relative}
.te-footer a{color:#fff}
.te-footer .te-social-link{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:rgba(255,255,255,.12);border-radius:999px;margin-right:.5rem}
.te-footer .te-footer-link{color:rgba(255,255,255,.8);margin:0 .5rem}
.te-footer .te-footer-link:hover{color:#fff;text-decoration:none}
.te-back-to-top{position:fixed;right:1rem;bottom:1rem;width:44px;height:44px;border-radius:999px;background:var(--primary);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 16px rgba(0,0,0,.2);z-index:1000}
