/* ============================================================
   site.css — chrome (header/footer) + allineamento tipografico
   per TUTTE le pagine interne (non la home, che ha il suo home.css).
   Niente reset universale: qui NON azzeriamo i margini globali per
   non rompere i layout Elementor esistenti.
   ============================================================ */
:root{
  --navy:#002454; --navy-2:#0A2E63; --blue:#003090; --indigo:#3F47CC;
  --gold:#F2A024; --gold-d:#C6831E;
  --paper:#F5F6F8; --surface:#FFFFFF; --line:#E2E5EC; --ink:#131722; --steel:#5B6475;
}

/* box model solo per il chrome (markup nostro, pulito) */
.ustrip,.ustrip *,.site-hdr,.site-hdr *,.site-footer,.site-footer *{box-sizing:border-box}

.site-hdr .wrap,.ustrip .wrap,.site-footer .wrap{max-width:1240px;margin:0 auto;padding:0 40px}
.site-chrome-mono{font-family:"IBM Plex Mono",monospace}

/* --- bottoni (riuso dalla home) --- */
.ustrip .btn,.site-hdr .btn{display:inline-flex;align-items:center;gap:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;font-size:13.5px;padding:15px 26px;border-radius:0;transition:.16s;line-height:1}
.site-hdr .btn .ar{font-family:"IBM Plex Mono",monospace}
.site-hdr .btn-gold{background:var(--gold);color:var(--ink)} .site-hdr .btn-gold:hover{background:#ffb23f}

/* ===================== HEADER ===================== */
.ustrip{background:var(--navy);color:rgba(255,255,255,.72)}
.ustrip .in{display:flex;align-items:center;gap:24px;height:40px;font:500 12.5px "IBM Plex Mono",monospace}
.ustrip a{color:rgba(255,255,255,.72);text-decoration:none} .ustrip a:hover{color:#fff}
.ustrip .lang{margin-left:auto;display:flex;gap:12px;align-items:center}
.ustrip .lang .l{display:flex;align-items:center;gap:5px;color:rgba(255,255,255,.55)}
.ustrip .lang .l.on{color:#fff}
.ustrip .lang img{width:19px;height:13px;border-radius:2px;display:block}

.site-hdr{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;box-shadow:0 6px 20px rgba(3,12,32,.06)}
.site-hdr .bar{display:flex;align-items:center;gap:40px;height:88px}
.site-hdr .brand{display:flex;align-items:center;gap:13px}
.site-hdr .brand .lg{width:76px;height:76px;display:block}
.site-hdr .nav{display:flex;gap:30px;margin-left:10px}
.site-hdr .nav a{font-weight:600;font-size:14px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink);padding:6px 0;text-decoration:none}
.site-hdr .nav a.on,.site-hdr .nav a:hover{color:var(--navy)}
.site-hdr .bar .cta{margin-left:auto}
.site-hdr .burger{display:none} .site-hdr .nvt{display:none}

/* ===================== FOOTER ===================== */
.site-footer{background:#071A3A;color:rgba(255,255,255,.62);padding:52px 0 28px;font-size:14px;margin-top:60px}
.site-footer .grid{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:28px;margin-bottom:20px}
.site-footer a{color:rgba(255,255,255,.62);text-decoration:none} .site-footer a:hover{color:#fff}
.site-footer .fmono{font:500 12px "IBM Plex Mono";letter-spacing:.03em}

/* ===================== ALLINEAMENTO TIPOGRAFICO CONTENUTI ===================== */
/* solo font-family (sicuro, non causa testi invisibili); i colori Elementor restano */
.site-content,
.site-content p,.site-content li,.site-content a,.site-content span,
.site-content h1,.site-content h2,.site-content h3,.site-content h4,.site-content h5,.site-content h6,
.site-content .elementor-heading-title,
.site-content .elementor-widget-text-editor,
.site-content .elementor-button-text{font-family:"Poppins",system-ui,-apple-system,sans-serif !important}
.site-content h1,.site-content h2,.site-content h3,.site-content .elementor-heading-title{letter-spacing:-.02em}
/* bottoni Elementor squadrati (coerenza col design system) */
.site-content .elementor-button,.site-content .theme-btn,.site-content .wp-block-button__link{border-radius:0 !important}
/* switcher lingua Elementor nel contenuto: ridondante (l'header ne ha gia uno) */
.site-content .elementor-widget-polylang-language-switcher{display:none !important}
/* anti "stuck invisible": alcune sezioni Elementor restano a opacita 0 se l'animazione non parte */
.site-content .elementor-invisible{opacity:1 !important}
/* onde decorative Fionca: fuori dalla nuova direzione (grafica pulita) */
.site-content .elementor-shape{display:none !important}
/* i vecchi divisori a underscore "____" (H5): rimossi del tutto (niente filetto, stile human) */
.site-content .hf-rule{display:none !important}

/* ===================== RESPONSIVE (hamburger, come la home) ===================== */
@media (max-width: 900px){
  .site-hdr .wrap,.ustrip .wrap,.site-footer .wrap{padding:0 20px}
  .ustrip .in{height:auto;padding:8px 0;flex-wrap:wrap;gap:10px;justify-content:center;font-size:11px}
  .ustrip .in>span{display:none}
  .ustrip .lang{margin:0 auto}
  .site-hdr .bar{flex-wrap:wrap;gap:10px;height:auto;padding:12px 0}
  .site-hdr .brand .lg{width:60px !important;height:60px !important}
  .site-hdr .burger{display:flex;flex-direction:column;justify-content:center;gap:5px;margin-left:auto;padding:10px;cursor:pointer}
  .site-hdr .burger span{width:26px;height:2px;background:var(--ink);display:block;border-radius:2px}
  .site-hdr .nav{order:3;flex-basis:100%;flex-direction:column;gap:0;display:none;margin:0}
  .site-hdr .nvt:checked ~ .nav{display:flex}
  .site-hdr .nav a{padding:14px 2px;border-top:1px solid var(--line);font-size:15px}
  .site-hdr .bar .cta{order:4;flex-basis:100%;justify-content:center;display:none;margin-left:0}
  .site-hdr .nvt:checked ~ .cta{display:inline-flex}
  .site-footer .grid{flex-direction:column;gap:18px}
}
