/* Shared header only. Load after site.css and page styles. */
header.site .hrow{gap:20px}
header.site .logo{flex:none;gap:13px}
header.site .logo svg{height:46px}
header.site .logo .l1{font-size:12px}
header.site .logo .l2{font-size:24px}
header.site .logo .l3{font-size:7.92px}
header.site nav.main{display:flex;gap:18px;flex:none}
header.site nav.main>a,header.site .sr-services>summary{white-space:nowrap;min-height:44px;display:inline-flex;align-items:center}
header.site .menu-btn{display:none;min-height:44px;min-width:44px}
header.site .hrow>a.btn-p{white-space:nowrap}
header.site .sr-services{position:relative;margin:0;padding:0;border:0;opacity:1;transform:none}
header.site .sr-services>summary{gap:5px;justify-content:flex-start;font-family:var(--sans);font-size:13.5px;font-weight:500;line-height:1.6;letter-spacing:.01em;color:var(--body);list-style:none}
header.site .sr-services>summary::-webkit-details-marker{display:none}
header.site .sr-services>summary::after{content:none}
header.site .sr-services>summary svg{height:14px;width:14px;fill:none;stroke:currentColor;stroke-width:1.5}
header.site .sr-services[open]>summary svg{transform:rotate(180deg)}
header.site .sr-services>summary:hover,header.site .sr-services.on>summary{color:var(--blu)}
header.site .sr-services.on>summary{font-weight:600}
header.site .sr-services>summary:focus-visible{outline:2px solid var(--blu);outline-offset:3px;border-radius:2px}
header.site .sr-services-panel{position:absolute;top:calc(100% + 10px);left:-18px;width:288px;padding:10px 16px;background:var(--surface);border:1px solid var(--line);border-radius:3px;box-shadow:0 12px 32px rgba(14,31,61,.12)}
header.site .sr-services-panel a{display:flex;align-items:center;min-height:44px;padding:9px 4px;white-space:normal;line-height:1.45;font-size:13.5px}
header.site .sr-services-panel a:hover{background:var(--sunk)}
header.site .sr-services-finance,header.site .sr-services-all{border-top:1px solid var(--line);margin-top:6px;padding-top:6px}
header.site .sr-services-all a{font-size:12.5px;color:var(--muted)}
header.site nav.main>a.sr-search{width:44px;height:44px;justify-content:center;flex:none;padding:0}
header.site .sr-search svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
header.site .sr-search-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1121px) and (max-width:1240px){
  header.site .hrow{gap:16px;padding-inline:32px}
  header.site nav.main{gap:14px}
  header.site .hrow>a.btn-p{padding-inline:15px}
}
@media(max-width:1120px){
  /* The expanded navigation is a useful fallback when JavaScript is unavailable. */
  header.site .hrow{flex-wrap:wrap;gap:12px}
  header.site .hrow>a.btn-p{margin-left:auto}
  header.site nav.main{position:static;display:flex;order:4;flex:1 0 100%;flex-direction:column;align-items:stretch;gap:0;padding:8px 0 12px;background:var(--bg);max-height:none;overflow:visible}
  header.site nav.main>a,header.site .sr-services>summary{width:100%;min-height:44px;padding:11px 0;border-bottom:1px solid var(--line);font-size:15px}
  header.site .sr-services>summary{justify-content:space-between}
  header.site .sr-services-panel{position:static;width:100%;padding:4px 0 10px 16px;border:0;border-left:2px solid var(--line);border-radius:0;background:transparent;box-shadow:none}
  header.site nav.main .sr-services-panel a{width:100%;font-size:14px;padding:11px 8px;border-bottom:0}
  header.site .sr-services-all a{font-size:13px}
  header.site .sr-search-label{position:static;width:auto;height:auto;clip:auto;margin:0;overflow:visible}
  header.site nav.main>a.sr-search{justify-content:flex-start;width:100%;gap:10px;min-height:48px;padding:11px 0}
  header.site[data-nav-enhanced] .hrow{flex-wrap:nowrap}
  header.site[data-nav-enhanced] .menu-btn{display:block;margin-left:auto}
  header.site[data-nav-enhanced] .hrow>a.btn-p{margin-left:0}
  header.site[data-nav-enhanced] nav.main{display:none}
  header.site[data-nav-enhanced] nav.main.open{display:flex;position:absolute;left:0;right:0;top:100%;padding:8px var(--gut) 18px;border-bottom:1px solid var(--line);max-height:calc(100dvh - 88px);overflow-y:auto;overscroll-behavior:contain}
}
@media(max-width:860px){
  header.site .logo svg{height:39px}
  header.site .logo .l1{font-size:10.8px}
  header.site .logo .l2{font-size:20.4px}
  header.site .logo .l3{display:none}
}
@media(max-width:520px){
  header.site .logo svg{height:36px}
  header.site .logo .l2{font-size:19.2px}
  header.site .hrow>a.btn-p{display:none}
  header.site nav.main>a[href="/contatti/"]{background:var(--blu);color:#fff;font-weight:600;text-align:center;justify-content:center;padding:13px 0;margin-top:12px;border:0;border-radius:2px}
  :root[data-theme="dark"] header.site nav.main>a[href="/contatti/"],:root:not([data-theme="light"]) header.site nav.main>a[href="/contatti/"]{color:#0A1526}
}
@media(max-width:520px) and (prefers-color-scheme:light){
  :root:not([data-theme="dark"]) header.site nav.main>a[href="/contatti/"]{color:#fff}
}
