/* Product navigation: one calm, shared header across both locales.
   Keep the semantic navigation and native disclosure; no cloned mobile menu. */
.brand-site .ship-header {
 --navigation-ink:#28251f;
 --navigation-muted:#706b62;
 --navigation-paper:#fff;
 --navigation-line:#e8e4dc;
 --navigation-cta-width:124px;
 position:sticky;
 z-index:40;
 top:16px;
 display:grid;
 grid-template-columns:auto minmax(0,1fr);
 align-items:center;
 gap:36px;
 width:calc(100% - 48px);
 max-width:1600px;
 min-height:64px;
 margin:24px auto 0;
 padding:8px 24px;
 border:0;
 border-radius:16px;
 background:#fffffff5;
 color:var(--navigation-ink);
 box-shadow:none;
 backdrop-filter:blur(18px);
 -webkit-backdrop-filter:blur(18px);
}
.brand-site .ship-header .wordmark {
 grid-column:1;
 grid-row:1;
 display:flex;
 align-items:center;
 justify-content:flex-start;
 gap:6px;
 min-width:0;
 font-size:1.25rem;
 font-weight:600;
 letter-spacing:-.065em;
 line-height:1.1;
 white-space:nowrap;
 color:var(--navigation-ink);
 text-decoration:none;
}
.brand-site .ship-header .original-brand-logo {
 flex:none;
 width:36px;
 height:36px;
 object-fit:contain;
}
.brand-site .ship-header .wordmark-dot { color:#8e937b; }
.brand-site .ship-header .ship-navigation {
 grid-column:2;
 grid-row:1;
 display:grid;
 grid-template-columns:repeat(5,max-content) minmax(0,1fr) var(--navigation-cta-width);
 align-items:center;
 gap:22px;
 width:100%;
 min-width:0;
 margin:0;
 padding:0;
 background:transparent;
 border:0;
 border-radius:0;
 font-size:1rem;
 line-height:1.4;
}
.brand-site .ship-header .ship-navigation>a:not(.ship-nav-cta),
.brand-site .ship-header .ship-products>summary {
 display:flex;
 align-items:center;
 gap:7px;
 min-height:44px;
 margin:0;
 padding:0;
 color:var(--navigation-ink);
 background:transparent;
 border:0;
 border-radius:0;
 font-weight:400;
 text-decoration:none;
 transition:color .16s ease;
}
.brand-site .ship-header .ship-navigation>a:not(.ship-nav-cta):hover,
.brand-site .ship-header .ship-products[open]>summary,
.brand-site .ship-header .ship-products>summary:hover { color:var(--navigation-muted); }
.brand-site .ship-header .ship-products>summary>span { font-size:1rem; line-height:1; }
.brand-site .ship-header .ship-nav-cta {
 grid-column:7;
 display:flex;
 align-items:center;
 justify-content:center;
 min-width:0;
 min-height:48px;
 margin:0;
 padding:12px 18px;
 border:1px solid #28251f;
 border-radius:9px;
 color:#fff;
 background:linear-gradient(#38352f,#28251f);
 box-shadow:inset 0 1px #ffffff15;
 font-size:1rem;
 font-weight:500;
 line-height:1.3;
 text-decoration:none;
 transition:background .16s ease,box-shadow .16s ease;
}
.brand-site .ship-header .ship-nav-cta:hover {
 color:#fff;
 background:#1f1c18;
 box-shadow:inset 0 1px #ffffff15,0 3px 8px #28251f12;
 transform:none;
}
.brand-site .ship-header .nav-guide-count {
 position:absolute;
 width:1px;
 height:1px;
 margin:-1px;
 padding:0;
 border:0;
 overflow:hidden;
 clip-path:inset(50%);
 white-space:nowrap;
}
.brand-site .ship-header .ship-menu-toggle:not([hidden]) { display:none; }
.brand-site .ship-header .ship-apps { position:relative; min-width:0; }
.brand-site .ship-header .ship-apps>summary {
 gap:9px;
 padding:10px 12px;
 border:0;
 border-radius:8px;
 background:transparent;
 color:var(--navigation-ink);
 font-size:1rem;
 font-weight:400;
 transition:background .16s ease;
}
.brand-site .ship-header .ship-apps>summary:hover { color:var(--navigation-ink); }
.brand-site .ship-header .ship-apps[open]>summary { background:#f0eeea; color:var(--navigation-ink); }
.brand-site .ship-header .ship-apps-chevron { display:inline-block; flex:none; }
.brand-site .ship-header .ship-apps[open]>summary>.ship-apps-chevron { transform:rotate(180deg); }
.brand-site .ship-header .ship-apps-panel {
 position:absolute;
 z-index:1;
 inset-block-start:calc(100% - 2px);
 inset-inline-start:-80px;
 width:min(720px,calc(100vw - 64px));
 max-height:calc(100dvh - 150px);
 padding:32px;
 border:1px solid var(--navigation-line);
 border-radius:16px;
 background:var(--navigation-paper);
 box-shadow:0 12px 30px #28251f0d;
 overflow:auto;
 overscroll-behavior:contain;
 scrollbar-width:thin;
 scroll-padding:12px;
 text-align:start;
}
.brand-site .ship-header .ship-apps-grid {
 display:grid;
 grid-template-columns:repeat(2,minmax(0,1fr));
 grid-template-rows:repeat(5,minmax(82px,auto));
 grid-auto-flow:column;
 gap:0 20px;
}
.brand-site .ship-header .ship-apps-grid>a {
 display:flex;
 align-items:center;
 gap:14px;
 min-width:0;
 min-height:82px;
 padding:12px 8px;
 border:1px solid transparent;
 border-radius:10px;
 background:transparent;
 color:var(--navigation-ink);
 text-decoration:none;
 text-align:start;
 transition:background .16s ease,border-color .16s ease;
}
.brand-site .ship-header .ship-apps-grid>a:hover,
.brand-site .ship-header .ship-apps-grid>a:focus-visible { background:#f4f2ee; border-color:#e8e3da; }
.brand-site .ship-header .ship-apps-grid>a>span:last-child { min-width:0; }
.brand-site .ship-header .ship-apps-grid strong { display:block; color:var(--navigation-ink); font-size:1rem; font-weight:600; line-height:1.4; }
.brand-site .ship-header .ship-apps-grid small { display:block; color:var(--navigation-muted); font-size:.8125rem; line-height:1.45; margin-top:4px; }
.brand-site .ship-header .ship-apps-icon {
 display:grid;
 place-items:center;
 flex:none;
 width:40px;
 height:40px;
 border:0;
 border-radius:0;
 background:transparent;
 color:#736856;
}
.brand-site .ship-header .ship-apps-icon svg { display:block; width:26px; height:26px; }
.brand-site .ship-header :is(a,button,summary):focus-visible { outline:2px solid #62684c; outline-offset:5px; }

@media(max-width:1320px) and (min-width:1181px) {
 .brand-site .ship-header { gap:24px; padding-inline:20px; --navigation-cta-width:116px; }
 .brand-site .ship-header .ship-navigation { gap:16px; }
}
/* Collapse before the primary navigation becomes cramped, not at phone width. */
@media(max-width:1180px) {
 .brand-site .ship-header {
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  top:12px;
  min-height:70px;
  padding:10px 18px;
  margin-top:16px;
  border-radius:18px;
 }
 .brand-site .ship-header .ship-menu-toggle:not([hidden]) {
  grid-column:2;
  grid-row:1;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:44px;
  padding:9px 12px;
  border:1px solid #e3dfd5;
  border-radius:9px;
  background:#f4f1eb;
  color:var(--navigation-ink);
  font-size:.8125rem;
  line-height:1;
 }
 .brand-site .ship-header .ship-navigation {
  grid-column:1/-1;
  grid-row:2;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:0;
  width:100%;
  max-height:calc(100dvh - 122px);
  overflow-y:auto;
  padding:8px 0 4px;
  border-top:1px solid var(--navigation-line);
  font-size:1rem;
  scrollbar-width:thin;
 }
 .brand-site .ship-header.ship-nav-enhanced .ship-navigation { display:none; }
 .brand-site .ship-header.ship-nav-enhanced .ship-navigation.is-open { display:flex; }
 .brand-site .ship-header .ship-navigation>a:not(.ship-nav-cta),
 .brand-site .ship-header .ship-products>summary { min-height:50px; padding:12px 8px; }
 .brand-site .ship-header .ship-products>summary { justify-content:space-between; }
 .brand-site .ship-header .ship-nav-cta { margin:12px 0 0; min-height:48px; padding:13px 18px; font-size:.9375rem; }
 .brand-site .ship-header .ship-apps { position:static; }
 .brand-site .ship-header .ship-apps>summary { justify-content:flex-start; padding-inline:12px; }
 .brand-site .ship-header .ship-apps-chevron { margin-inline-start:auto; }
 .brand-site .ship-header .ship-apps-panel {
  position:static;
  width:100%;
  max-height:none;
  margin-block:10px 8px;
  padding:16px 12px;
  border:1px solid #e8e3da;
  border-radius:12px;
  background:#fff;
  box-shadow:none;
  overflow:visible;
 }
 .brand-site .ship-header .ship-apps-grid { gap:4px 8px; }
 .brand-site .ship-header .ship-apps-grid>a { padding:11px 10px; }
}
@media(max-width:600px) {
 .brand-site .ship-header { width:calc(100% - 20px); min-height:64px; top:8px; margin-top:10px; padding:8px 12px; gap:10px; border-radius:15px; }
 .brand-site .ship-header .wordmark { gap:4px; font-size:1.075rem; }
 .brand-site .ship-header .original-brand-logo { width:30px; height:30px; }
 /* Text remains in the accessibility tree; the visible mobile control is compact. */
 .brand-site .ship-header .ship-menu-toggle:not([hidden]) { width:40px; min-height:44px; padding:0; gap:0; font-size:0; }
 .brand-site .ship-header .ship-menu-toggle>span { font-size:1.125rem; }
 .brand-site .ship-header .ship-apps-panel { padding:12px 8px; }
 .brand-site .ship-header .ship-apps-grid { grid-template-columns:minmax(0,1fr); grid-template-rows:none; grid-auto-flow:row; gap:2px; }
 .brand-site .ship-header .ship-apps-grid>a { min-height:70px; }
 .brand-site .ship-header .ship-apps-icon { width:38px; height:38px; }
}
@media(max-width:360px) {
 .brand-site .ship-header { padding-inline:9px; gap:6px; }
 .brand-site .ship-header .wordmark { font-size:1rem; }
 .brand-site .ship-header .original-brand-logo { width:26px; height:26px; }
}
html.access-contrast .brand-site .ship-header,
html.access-contrast .brand-site .ship-header :is(.ship-apps-panel,.ship-apps>summary,.ship-apps-icon) { background:#fff; border-color:#222; color:#111; }
html.access-contrast .brand-site .ship-header :is(.wordmark,.ship-products>summary,.ship-navigation>a:not(.ship-nav-cta),.language-switch a,.ship-apps-grid strong,.ship-apps-grid small) { color:#111; }
html.access-contrast .brand-site .ship-header .ship-apps-grid>a:is(:hover,:focus-visible) { background:#fff; border-color:#111; }
html.access-contrast .brand-site .ship-header .ship-nav-cta { color:#fff; background:#111; border-color:#111; }
html.access-contrast .brand-site .ship-header :is(a,button,summary):focus-visible { outline-color:#124dc0; }
@media(prefers-reduced-motion:reduce) {
 .brand-site .ship-header * { transition:none; }
}
html.access-motion .brand-site .ship-header * { transition:none; }

/* A quiet, native disclosure in the footer. Both routes work without JS. */
.brand-site .ship-footer .footer-language {
 position:relative;
 flex:none;
 min-width:0;
 color:#514d46;
 font-size:.8125rem;
}
.brand-site .ship-footer .footer-language>summary {
 display:flex;
 align-items:center;
 gap:9px;
 min-height:44px;
 padding:6px 8px;
 border:0;
 border-radius:7px;
 background:transparent;
 color:inherit;
 font:inherit;
 list-style:none;
 cursor:pointer;
}
.brand-site .ship-footer .footer-language>summary::-webkit-details-marker { display:none; }
.brand-site .ship-footer .footer-language>summary svg { flex:none; }
.brand-site .ship-footer .footer-language[open]>summary { background:#e8e5dd; }
.brand-site .ship-footer .footer-language .language-options {
 position:absolute;
 z-index:4;
 inset-block-end:calc(100% + 8px);
 inset-inline-end:0;
 display:grid;
 gap:3px;
 width:168px;
 margin:0;
 padding:6px;
 border:1px solid #d8d4cb;
 border-radius:11px;
 background:#fcfbf8;
 box-shadow:0 8px 28px #28251f14;
 direction:inherit;
}
.brand-site .ship-footer .footer-language .language-options a {
 display:flex;
 align-items:center;
 justify-content:flex-start;
 width:100%;
 min-height:44px;
 margin:0;
 padding:9px 12px;
 border:0;
 border-radius:6px;
 background:transparent;
 color:#514d46;
 font:inherit;
 text-decoration:none;
}
.brand-site .ship-footer .footer-language .language-options a:is(:hover,[aria-current]) { background:#eeece5; color:#28251f; }
.brand-site .ship-footer .footer-language :focus-visible { outline:2px solid var(--brand-accent); outline-offset:3px; }
@media(max-width:600px) {
 .brand-site .ship-footer .footer-language { width:max-content; max-width:100%; margin-top:8px; }
 /* The mixed-direction footer can place this control on either edge. Open
    in normal flow on phones so neither language can fall off the viewport. */
 .brand-site .ship-footer .footer-language .language-options { position:static; max-width:100%; margin-block-start:6px; }
}
html.access-contrast .brand-site .ship-footer .footer-language .language-options { background:#fff!important; border-color:#111; }
