/* Shared site header for the homepage: same markup and look as the inner pages
   (executive-header with nav panels), restyled light by the Arc site layer. */
.executive-header{position:sticky;top:0;z-index:60;background:#f5f3ee;color:#25282b;border-bottom:1px solid #d7d5cf;font-family:'Libre Franklin Local','Libre Franklin',system-ui,sans-serif}
.executive-header .shell{width:calc(100% - 96px);max-width:1280px;margin:auto}
.executive-header .header-row{height:82px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.executive-header .brand{font:600 18px/1 'Libre Franklin Local','Libre Franklin',sans-serif;letter-spacing:.08em;color:#25282b;text-decoration:none;white-space:nowrap}
.executive-header .brand span{color:#3d6b6b;font-weight:400;margin:0 .15em}
.executive-header .brand em{font-family:'Cormorant Local','Cormorant',Georgia,serif;font-style:italic;font-weight:500;font-size:1.18em;color:#3d6b6b}
.desktop-nav{display:flex;align-items:center;flex-wrap:nowrap;gap:clamp(14px,1.4vw,25px)}
.desktop-nav a{color:#25282b;text-decoration:none;font-weight:500;font-size:clamp(13px,1vw,15px);padding:10px 0;border-bottom:1px solid transparent;white-space:nowrap}
.desktop-nav>a:hover,.desktop-nav .navsub:hover>a,.desktop-nav .navsub.is-open>a{color:#835e47;border-color:#835e47}
.desktop-nav .navsub{position:relative;display:flex;align-items:center}
.desktop-nav .navsub::after{content:"";position:absolute;top:100%;left:-13px;right:-13px;height:20px}
.desktop-nav .navsub>a{position:relative;padding-right:clamp(12px,1.1vw,15px)}
.desktop-nav .navsub>a::before{content:"";position:absolute;right:2px;top:50%;width:6px;height:6px;margin-top:-4px;border-right:1.4px solid currentColor;border-bottom:1.4px solid currentColor;transform:rotate(45deg);opacity:.55;transition:transform 160ms cubic-bezier(.4,0,.2,1)}
.desktop-nav .navsub:hover>a::before,.desktop-nav .navsub.is-open>a::before{transform:rotate(225deg);opacity:1}
.navsub__panel{position:absolute;left:-13px;top:calc(100% + 18px);min-width:252px;padding:8px;display:grid;gap:1px;background:#fffefa;border:1px solid #ded8cf;border-radius:10px;box-shadow:0 24px 44px -28px rgba(24,18,12,.6);opacity:0;visibility:hidden;transform:translateY(-5px);transition:opacity 170ms cubic-bezier(.4,0,.2,1),transform 170ms cubic-bezier(.4,0,.2,1),visibility 170ms;z-index:80}
.navsub__panel--right{left:auto;right:-13px}
.desktop-nav .navsub:hover>.navsub__panel,.desktop-nav .navsub.is-open>.navsub__panel{opacity:1;visibility:visible;transform:none}
.navsub__panel a{padding:9px 11px;border-radius:7px;border:0;font-weight:450;font-size:13px;line-height:1.35;color:#4c4e4f}
.navsub__panel a:hover,.navsub__panel a:focus-visible{background:#efeae1;color:#25282b}
.navsub__panel a.navsub__self{display:flex;align-items:center;justify-content:space-between;gap:18px;font-weight:600;color:#25282b}
.navsub__panel a.navsub__self::after{content:"Overview";font:600 10px/1 'Libre Franklin Local',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#3d6b6b}
.navsub__rule{display:block;height:1px;background:#e3ded5;margin:5px 7px}
.navsub__panel a.navsub__child{padding-left:14px;display:flex;align-items:center;gap:9px;font-weight:400;color:#6f7172}
.navsub__panel a.navsub__child::before{content:"";flex:0 0 4px;height:4px;border-radius:999px;background:#c9c2b6}
.mobile-nav{display:none}
@media(max-width:1100px){.executive-header .shell{width:calc(100% - 64px)}.executive-header .header-row{gap:20px}}
@media(max-width:900px){
  .executive-header .header-row{height:64px}
  .desktop-nav{display:none}
  .mobile-nav{display:block}
  .m33-menu>summary{display:flex;gap:12px;align-items:center;min-height:44px;padding:8px 0 8px 10px;color:#25282b;font:500 15px/1.4 'Libre Franklin Local',sans-serif;list-style:none;cursor:pointer}
  .m33-menu summary::-webkit-details-marker{display:none}
  .m33-menu summary::marker{content:''}
  .m33-close-label{display:none}
  .m33-menu[open] .m33-open-label{display:none}
  .m33-menu[open] .m33-close-label{display:inline}
  .m33-menu>summary i{width:17px;height:8px;border-block:1px solid #25282b}
  .m33-menu>nav{position:fixed;inset:64px 0 0;overflow-y:auto;background:#f5f3ee;border-top:1px solid #d7d5cf;padding:16px 24px 28px;display:flex;flex-direction:column;z-index:70}
  .m33-nav-group{border-bottom:1px solid #d7d5cf}
  .m33-nav-group>summary{display:flex;justify-content:space-between;align-items:center;min-height:60px;list-style:none;font:500 22px/1.3 'Libre Franklin Local',sans-serif;color:#25282b;cursor:pointer}
  .m33-nav-group>summary span{font-weight:300;font-size:25px;color:#3d6b6b}
  .m33-nav-group[open]>summary span{transform:rotate(45deg)}
  .m33-nav-group>div{padding:0 0 14px 14px;border-left:1px solid #3d6b6b;margin:6px 0 14px}
  .m33-menu nav .m33-nav-group a{display:flex;align-items:center;min-height:48px;padding:10px 8px;font-size:15px;color:#626568;text-decoration:none}
  .m33-menu nav .m33-nav-direct{display:flex;align-items:center;min-height:56px;padding:12px 0;border-bottom:1px solid #d7d5cf;font:500 20px/1.4 'Libre Franklin Local',sans-serif;color:#25282b;text-decoration:none}
  .m33-menu nav .m33-menu-cta{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding:17px 18px;background:#25282b;color:#f5f3ee;font:550 14px/1.4 'Libre Franklin Local',sans-serif;text-decoration:none}
}
@media(max-width:680px){.executive-header .shell{width:calc(100% - 40px)}}
@media(prefers-reduced-motion:reduce){.navsub__panel{transition:none;transform:none}}

/* Keyboard navigation stays above the sticky header. */
.skip-link{z-index:100}
body.m33-menu-open{overflow:hidden}
