
.shared-site-header{
    position:fixed!important;inset:0 0 auto!important;z-index:1000!important;
    padding:12px 0!important;color:#273047!important;pointer-events:none;
    transition:padding .3s ease,color .3s ease;
}
.shared-header-container{width:min(1180px,calc(100% - 32px));margin:0 auto}
.shared-header-inner{
    position:relative;display:grid!important;grid-template-columns:1fr auto 1fr!important;
    align-items:center!important;gap:24px!important;min-height:64px!important;padding:8px 14px!important;
    background:rgba(255,255,255,.93)!important;border:1px solid rgba(255,255,255,.96)!important;
    border-radius:22px!important;box-shadow:0 16px 42px rgba(25,35,56,.12)!important;
    backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important;
    pointer-events:auto;transition:background .3s ease,border-color .3s ease,box-shadow .3s ease,transform .3s ease,backdrop-filter .3s ease;
}
.shared-site-header.scrolled{padding:8px 0!important}
.shared-site-header.scrolled .shared-header-inner{
    background:rgba(255,255,255,.97)!important;border-color:rgba(255,255,255,.98)!important;
    box-shadow:0 13px 36px rgba(25,35,56,.16)!important;backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important;
}
.shared-brand{display:flex!important;align-items:center!important;justify-self:start!important;min-width:0!important}
.shared-brand img{display:block!important;width:118px!important;max-width:100%!important;max-height:48px!important;object-fit:contain!important;filter:drop-shadow(0 3px 8px rgba(0,0,0,.10))!important}
.shared-nav-wrap{display:block!important;position:static!important;justify-self:center!important;background:transparent!important;box-shadow:none!important;padding:0!important}
.shared-nav{display:flex!important;align-items:center!important;gap:34px!important;font-family:Georgia,serif!important;font-size:.92rem!important;font-weight:700!important;letter-spacing:.055em!important;text-transform:uppercase!important;color:#273047!important}
.shared-nav a{position:relative!important;display:block!important;padding:11px 0!important;color:inherit!important;text-shadow:none!important;white-space:nowrap!important;transition:color .22s ease!important}
.shared-nav a::after{content:"";position:absolute;left:0;bottom:5px;width:0;height:2px;background:#3143a4;transition:width .22s ease,background .22s ease}
.shared-nav a:hover::after,.shared-nav a.active::after{width:100%}
.shared-nav a:hover,.shared-nav a.active{color:#3143a4!important}
.shared-menu-toggle{display:none!important;justify-self:end!important;width:44px!important;height:44px!important;border-radius:50%!important;border:1px solid #d9dce6!important;background:#fff!important;box-shadow:0 6px 16px rgba(31,42,64,.08)!important;padding:0!important;place-items:center!important;cursor:pointer!important;color:#3143a4!important}
.shared-menu-toggle .menu-bar{display:block;width:18px;height:2px;background:currentColor;border-radius:999px;transition:transform .22s ease,opacity .22s ease}
.shared-menu-toggle .menu-bar+.menu-bar{margin-top:4px}
.shared-menu-toggle[aria-expanded="true"] .menu-bar:nth-child(1){transform:translateY(6px) rotate(45deg)}
.shared-menu-toggle[aria-expanded="true"] .menu-bar:nth-child(2){opacity:0}
.shared-menu-toggle[aria-expanded="true"] .menu-bar:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

/* Home: merge navigation visually into the first hero, then become white after scroll. */
.home-page .shared-site-header:not(.scrolled) .shared-header-inner{
    background:transparent!important;border-color:transparent!important;box-shadow:none!important;
    backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
.home-page .shared-site-header:not(.scrolled) .shared-nav{color:#fff!important}
.home-page .shared-site-header:not(.scrolled) .shared-nav a{color:#fff!important;text-shadow:0 2px 12px rgba(44,28,9,.32)!important}
.home-page .shared-site-header:not(.scrolled) .shared-nav a::after{background:#fff!important}
.home-page .shared-site-header:not(.scrolled) .shared-brand img{filter:drop-shadow(0 3px 10px rgba(0,0,0,.18))!important}

@media(max-width:820px){
    html.mobile-menu-open,html.mobile-menu-open body{overflow:hidden!important;overscroll-behavior:none!important}
    .shared-site-header{padding:8px 0!important;z-index:2000!important}
    .shared-header-container{width:calc(100% - 20px)!important}
    .shared-header-inner{display:flex!important;justify-content:space-between!important;min-height:58px!important;padding:7px 10px!important;border-radius:17px!important;position:relative!important;z-index:2002!important}
    .shared-brand{position:relative!important;z-index:2004!important}
    .shared-brand img{width:96px!important;max-height:40px!important}
    .shared-menu-toggle{display:grid!important;position:relative!important;z-index:2004!important;width:44px!important;height:44px!important}

    /* When the mobile menu is open, always give the header a clean white surface. */
    html.mobile-menu-open .shared-header-inner{
        background:rgba(255,255,255,.98)!important;border-color:rgba(255,255,255,.98)!important;
        box-shadow:0 13px 36px rgba(25,35,56,.16)!important;backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important;
    }
    html.mobile-menu-open .shared-menu-toggle{color:#3143a4!important;background:#fff!important;border-color:#d9dce6!important}

    /* Full-screen navigation sheet. No more narrow dropdown card. */
    .shared-nav-wrap{
        display:flex!important;position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;
        margin:0!important;padding:92px 14px 24px!important;background:rgba(249,249,247,.985)!important;
        border:0!important;border-radius:0!important;box-shadow:none!important;
        backdrop-filter:blur(24px)!important;-webkit-backdrop-filter:blur(24px)!important;
        opacity:0!important;visibility:hidden!important;transform:translateY(-18px)!important;
        pointer-events:none!important;transition:opacity .24s ease,transform .28s ease,visibility .24s ease!important;
        align-items:flex-start!important;justify-content:center!important;overflow:auto!important;z-index:2001!important;
    }
    .shared-nav-wrap::before{
        content:"MENU";position:absolute;top:100px;left:24px;color:#8a91a0;font-size:.68rem;font-weight:900;letter-spacing:.22em;
    }
    .shared-nav-wrap.open{opacity:1!important;visibility:visible!important;transform:translateY(0)!important;pointer-events:auto!important}
    .shared-nav{
        display:grid!important;grid-template-columns:1fr!important;gap:10px!important;width:100%!important;max-width:520px!important;
        margin-top:38px!important;font-size:1.04rem!important;color:#273047!important;
    }
    .shared-nav a{
        display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:66px!important;width:100%!important;
        padding:17px 20px!important;border-radius:17px!important;background:#fff!important;color:#273047!important;text-shadow:none!important;
        border:1px solid rgba(49,67,164,.08)!important;box-shadow:0 10px 24px rgba(26,38,61,.06)!important;
    }
    .shared-nav a::after{
        content:"›"!important;display:grid!important;position:static!important;width:34px!important;height:34px!important;border-radius:50%!important;
        place-items:center!important;background:#f0f2f8!important;color:#3143a4!important;font-size:1.45rem!important;line-height:1!important;
        transform:none!important;transition:.2s ease!important;
    }
    .shared-nav a:hover,.shared-nav a.active{background:#eef1fb!important;color:#3143a4!important;border-color:rgba(49,67,164,.15)!important}
    .shared-nav a.active::before{content:"";display:inline-block;width:9px;height:9px;flex:0 0 9px;border-radius:50%;background:#f4d625;margin-right:12px}
    .shared-nav a.active::after{background:#fff!important}
    .home-page .shared-site-header:not(.scrolled) .shared-nav a{color:#273047!important;text-shadow:none!important}
    .home-page .shared-site-header:not(.scrolled) .shared-menu-toggle{
        color:#fff!important;background:rgba(255,255,255,.10)!important;border-color:rgba(255,255,255,.62)!important;box-shadow:none!important;
        backdrop-filter:blur(6px)!important;-webkit-backdrop-filter:blur(6px)!important;
    }
    html.mobile-menu-open .home-page .shared-site-header:not(.scrolled) .shared-menu-toggle{color:#3143a4!important;background:#fff!important;border-color:#d9dce6!important}
}

.inner-page .hero,.inner-page main.contact{padding-top:124px!important}
@media(max-width:820px){.inner-page .hero,.inner-page main.contact{padding-top:94px!important}}
