/* Shared Forttrieb navigation. Product layouts reserve --ft-platform-height. */
:root { --ft-platform-height: 3.5rem; }
.ft-platform { position: fixed; inset: 0 0 auto; height: var(--ft-platform-height); z-index: 10000; color: #f6f6f2; background: #171815; border-bottom: 1px solid #383a34; font: 500 14px/1.35 system-ui, sans-serif; text-align: left; color-scheme: dark; }
.ft-platform *, .ft-platform *::before, .ft-platform *::after { box-sizing: border-box; }
.ft-platform__inner { height: 100%; max-width: 1600px; margin: auto; padding: 0 clamp(16px, 3vw, 48px); display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.ft-platform a { color: inherit; text-decoration: none; }
.ft-platform__brand { flex: none; font-size: 15px; font-weight: 750; letter-spacing: .065em; }
.ft-platform__links { display: flex; align-items: center; gap: 5px; }
.ft-platform__links a, .ft-platform__choices a { display: block; border-radius: 7px; padding: 8px 13px; color: #d3d5cd; font-size: 13px; font-weight: 550; letter-spacing: 0; }
.ft-platform a:hover, .ft-platform summary:hover { color: #fff; background: #30322c; }
.ft-platform__links a[aria-current="page"], .ft-platform__choices a[aria-current="page"] { color: #171815; background: #f2f3ed; }
.ft-platform a:focus-visible, .ft-platform summary:focus-visible { outline: 2px solid #d4ff3a; outline-offset: 3px; }
.ft-platform__mobile { display: none; position: relative; margin: 0; border: 0; padding: 0; }
.ft-platform__mobile summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; cursor: pointer; min-width: 145px; min-height: 38px; padding: 8px 12px; margin: 0; border: 1px solid #55584e; border-radius: 7px; color: #f6f6f2; background: #24261f; font: inherit; list-style: none; }
.ft-platform__mobile summary::-webkit-details-marker { display: none; }
.ft-platform__mobile summary::after { content: "⌄"; font-size: 17px; line-height: 1; }
.ft-platform__mobile[open] summary::after { content: "⌃"; }
.ft-platform__choices { position: absolute; top: calc(100% + 9px); right: 0; width: min(260px, calc(100vw - 32px)); padding: 8px; display: grid; gap: 4px; background: #171815; border: 1px solid #55584e; border-radius: 10px; box-shadow: 0 12px 24px #0005; }
.ft-platform__choices a { padding: 12px; }
@media (max-width: 820px) { .ft-platform__links { display: none; } .ft-platform__mobile { display: block; } }
@media print { .ft-platform { display: none; } :root { --ft-platform-height: 0px; } }

.ft-platform__links a, .ft-platform__choices a { min-height: 44px; display: flex; align-items: center; }
