
/* =========================================================
   DI SOMMA GROUP — GLOBAL HEADER / FOOTER SHELL
   ========================================================= */
:root{--dsg-deep:#00305b;--dsg-blue:#045184;--dsg-paper:#f4f7f9;--dsg-ink:#071827;--dsg-shell-h:88px}
body{padding-top:0!important}
.dsgShellNav{position:fixed;z-index:99990;top:0;left:0;right:0;height:var(--dsg-shell-h);color:var(--dsg-deep);background:rgba(255,255,255,.78);border-bottom:1px solid rgba(0,48,91,.10);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);font-family:Inter,Arial,Helvetica,sans-serif}
.dsgShellNav *{box-sizing:border-box}
.dsgShellInner{width:min(1500px,calc(100% - 48px));height:100%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:26px}
.dsgShellBrand{display:flex;align-items:center;flex:0 1 auto;min-width:0}
.dsgShellBrand img{display:block;width:clamp(145px,15vw,220px);max-width:100%;max-height:58px;object-fit:contain;object-position:left center}
.dsgShellActions{display:flex;align-items:center;gap:14px;min-width:0}
.dsgShellLinks{display:flex;align-items:center;gap:26px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;white-space:nowrap}
.dsgShellLinks>a,.dsgShellDrop>a{position:relative;color:var(--dsg-deep)!important;text-decoration:none!important;padding:32px 0}
.dsgShellLinks>a:after,.dsgShellDrop>a:after{content:"";position:absolute;left:0;right:100%;bottom:23px;height:1px;background:var(--dsg-deep);transition:.25s}
.dsgShellLinks>a:hover:after,.dsgShellDrop:hover>a:after{right:0}
.dsgShellDrop{position:relative;display:flex;align-items:center}
.dsgShellDropPanel{position:absolute;top:calc(100% - 8px);left:-18px;min-width:245px;padding:10px;background:rgba(255,255,255,.98);border:1px solid rgba(0,48,91,.12);box-shadow:0 24px 60px rgba(0,48,91,.15);opacity:0;visibility:hidden;transform:translateY(9px);transition:.22s;display:grid;gap:2px}
.dsgShellDrop:hover .dsgShellDropPanel,.dsgShellDrop:focus-within .dsgShellDropPanel{opacity:1;visibility:visible;transform:none}
.dsgShellDropPanel a{display:block!important;color:var(--dsg-deep)!important;text-decoration:none!important;padding:12px 14px!important;font-size:10px!important;line-height:1.25!important;letter-spacing:.11em!important;text-transform:uppercase!important;font-weight:800!important;background:transparent!important;border:0!important}
.dsgShellDropPanel a:hover{background:#edf4f8!important;color:var(--dsg-blue)!important}
.dsgShellPhone{display:flex!important;align-items:center;justify-content:center;gap:9px;border:1px solid rgba(0,48,91,.25)!important;border-radius:999px;padding:10px 14px!important;color:var(--dsg-deep)!important;text-decoration:none!important;font-size:10px!important;font-weight:800!important;letter-spacing:.08em!important;white-space:nowrap;background:rgba(255,255,255,.36)!important;transition:.25s}
.dsgShellPhone svg{width:14px;height:14px;fill:currentColor}.dsgShellPhone:hover{background:var(--dsg-deep)!important;color:white!important}
.dsgShellBurger{display:none;position:relative;width:42px;height:42px;border-radius:50%;border:1px solid rgba(0,48,91,.25);background:rgba(255,255,255,.35);color:var(--dsg-deep);cursor:pointer;flex:0 0 42px}
.dsgShellBurger:before,.dsgShellBurger:after,.dsgShellBurger span{content:"";position:absolute;left:11px;width:18px;height:1.5px;background:currentColor;transition:.28s}.dsgShellBurger:before{top:13px}.dsgShellBurger span{top:20px}.dsgShellBurger:after{top:27px}.dsgShellBurger.open:before{top:20px;transform:rotate(45deg)}.dsgShellBurger.open span{opacity:0}.dsgShellBurger.open:after{top:20px;transform:rotate(-45deg)}
.dsgShellMobile{position:fixed;z-index:99980;inset:0;background:rgba(244,247,249,.98);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:calc(var(--dsg-shell-h) + 28px) max(22px,6vw) 38px;overflow:auto;transform:translateY(-102%);visibility:hidden;transition:transform .38s cubic-bezier(.2,.8,.2,1),visibility .38s;color:var(--dsg-deep);font-family:Inter,Arial,Helvetica,sans-serif}
.dsgShellMobile.open{transform:none;visibility:visible}.dsgShellMobileLabel{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:#668092;margin:18px 0 4px}.dsgShellMobile a{display:flex!important;align-items:center;justify-content:space-between;color:var(--dsg-deep)!important;text-decoration:none!important;padding:13px 0!important;border-bottom:1px solid rgba(0,48,91,.14)!important;font-size:clamp(20px,6vw,34px)!important;line-height:1!important;font-weight:800!important;letter-spacing:-.04em!important;text-transform:uppercase!important;background:none!important}.dsgShellMobile a:after{content:"↘";font-size:.55em;font-weight:400}.dsgShellMobile .sub{font-size:clamp(15px,4.8vw,24px)!important;padding-left:12px!important;color:#284b62!important}.dsgMenuOpen{overflow:hidden!important}

.dsgShellFooter{background:#071827!important;color:#8ea0ac!important;padding:30px 0!important;border-top:1px solid rgba(255,255,255,.12)!important;font-family:Inter,Arial,Helvetica,sans-serif!important;font-size:10px!important;letter-spacing:.12em!important;text-transform:uppercase!important}
.dsgShellFooterIn{width:min(1500px,calc(100% - 48px));margin:auto;display:flex;justify-content:space-between;gap:20px;align-items:center}.dsgShellFooter a{color:inherit!important;text-decoration:underline!important;text-underline-offset:4px!important}
.dsgPrivacyLayer{position:fixed;z-index:100050;inset:0;background:rgba(0,48,91,.72);backdrop-filter:blur(12px);display:none;padding:clamp(18px,5vw,70px);overflow:auto}.dsgPrivacyLayer.open{display:flex}.dsgPrivacyBox{position:relative;width:min(900px,100%);margin:auto;background:#f4f7f9;color:#071827;padding:clamp(35px,6vw,80px);font-family:Inter,Arial,Helvetica,sans-serif}.dsgPrivacyBox h2{font-size:clamp(42px,7vw,85px);line-height:.88;letter-spacing:-.06em;text-transform:uppercase;color:#00305b;margin:18px 0 40px}.dsgPrivacyBox p{font-size:16px;line-height:1.7;max-width:720px}.dsgPrivacyClose{position:absolute;right:20px;top:18px;border:1px solid rgba(0,48,91,.16);background:transparent;border-radius:50%;width:44px;height:44px;font-size:27px;color:#00305b;cursor:pointer}

/* Hide legacy navigation/footer from standalone preview pages. */
body > nav.nav,body > .nav:not(.dsgShellNav),body > .mobileNav,body > header.site-header,body > header:not(.hero):not(.pageHero):not(.dsgKeepHeader){display:none!important}
body > footer:not(.dsgShellFooter){display:none!important}

@media(max-width:1180px){.dsgShellLinks{gap:17px;font-size:9px}.dsgShellPhone span{display:none}.dsgShellPhone{width:40px;height:40px;padding:0!important}.dsgShellBrand img{width:155px}}
@media(max-width:900px){:root{--dsg-shell-h:78px}.dsgShellInner{width:calc(100% - 34px)}.dsgShellLinks{display:none}.dsgShellBurger{display:block}.dsgShellBrand img{width:clamp(132px,38vw,175px);max-height:48px}.dsgShellActions{gap:8px}.dsgShellFooterIn{width:calc(100% - 34px);flex-direction:column;align-items:flex-start}.dsgShellPhone{width:42px;height:42px}.dsgShellMobile{padding-top:calc(var(--dsg-shell-h) + 20px)}}
@media(max-width:420px){.dsgShellInner{width:calc(100% - 26px)}.dsgShellBrand img{width:132px}.dsgShellPhone{width:38px;height:38px}.dsgShellBurger{width:38px;height:38px;flex-basis:38px}.dsgShellBurger:before,.dsgShellBurger:after,.dsgShellBurger span{left:10px}}
