/* Shared header, isolated from the original homepage's Bootstrap styles. */
.topbar,.site-header{font-family:'Nunito Sans',Arial,sans-serif;line-height:1.75;letter-spacing:normal;font-weight:400}
.topbar *,.site-header *{box-sizing:border-box}
.topbar{position:relative;z-index:2;background:#2b2026;color:#ebdfe5;font-size:11px;letter-spacing:.04em}
.topbar .wrap,.site-header .wrap{width:min(1220px,calc(100% - 80px));margin:auto}
.topbar .wrap{display:flex;justify-content:space-between;gap:15px;padding:8px 0}
.topbar a{color:#ebdfe5;text-decoration:none}.topbar a:hover{color:#fff}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid #e9dce2;backdrop-filter:blur(12px);color:#2b2026;font-size:16px}
.site-header .nav-wrap{display:flex;align-items:center;justify-content:space-between;height:90px;gap:28px}
.site-header a{color:inherit;text-decoration:none;transition:color .2s,background .2s,transform .2s}
.site-header a:hover{color:#6e2346}
.site-header .brand-lockup{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}
.site-header .brand-lockup img{display:block;width:62px;height:44px;object-fit:contain;flex-shrink:0}
.site-header .brand-wordmark{display:block;line-height:1.1}
.site-header .brand-wordmark strong{display:block;font-size:25px;font-weight:900;letter-spacing:-.045em;line-height:1.1}
.site-header .brand-wordmark strong i{font-style:normal;color:#4c102c}
.site-header .brand-wordmark small{display:block;font-size:8px;font-weight:800;line-height:1.5;letter-spacing:.12em;margin-top:4px}
.site-header .nav-links{display:flex;align-items:center;gap:29px}
.site-header .nav-links>a{font-size:13px;font-weight:700;position:relative}
.site-header .nav-links>a[aria-current=page]:not(.btn){color:#6e2346}
.site-header .nav-links>a[aria-current=page]:not(.btn):after{content:'';position:absolute;width:16px;height:2px;background:#4c102c;bottom:-9px;left:0}
.site-header .nav-links .btn{display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:42px;padding:12px 17px;margin-left:12px;border:1px solid #4c102c;background:#4c102c;color:#fff;font:800 11px/1.4 'Nunito Sans',Arial,sans-serif;border-radius:2px;box-shadow:none;white-space:normal}
.site-header .nav-links .btn:hover{background:#722748;border-color:#722748;color:#fff;transform:translateY(-2px);box-shadow:none}
.site-header .menu-toggle{display:none;background:transparent;border:1px solid #e9dce2;padding:9px 13px;font:inherit;color:inherit;cursor:pointer;border-radius:0}
.site-header :focus-visible{outline:3px solid #8b4163!important;outline-offset:5px}
@media(max-width:1100px){.topbar .wrap,.site-header .wrap{width:calc(100% - 48px)}.site-header .nav-links{gap:18px}.site-header .nav-links .btn{margin-left:0}}
@media(max-width:850px){.site-header .menu-toggle{display:block}.site-header .nav-wrap{height:75px}.site-header .nav-links{display:none;position:absolute;top:75px;left:0;right:0;background:white;padding:25px;box-shadow:0 20px 25px #0001;align-items:stretch;max-height:calc(100svh - 75px);overflow:auto}.site-header .nav-links.open{display:flex;flex-direction:column;gap:22px}.site-header .nav-links .btn{align-self:start}.topbar .secondary-contact{display:none}}
@media(max-width:540px){.topbar .wrap,.site-header .wrap{width:calc(100% - 36px)}.site-header{font-size:15px}.topbar{font-size:9px}.topbar .wrap{gap:8px}.site-header .brand-lockup{gap:9px}.site-header .brand-lockup img{width:48px;height:35px}.site-header .brand-wordmark strong{font-size:22px}.site-header .brand-wordmark small{font-size:6.5px;letter-spacing:.08em}}
@media print{.site-header,.topbar{display:none}}
