/* V10.17 — one quiet search field and one consistent navigation system */
:root{
  --msk-nav-gold:#e6c37d;
  --msk-nav-paper:#fff8ec;
  --msk-nav-body:"Aptos","Segoe UI",Arial,sans-serif;
  --msk-nav-display:"Baskerville","Palatino Linotype",Georgia,serif;
}

/* The header stays visible above the intro film and every page section. */
.topbar,
.detail-top.detail-top--site{
  position:fixed!important;
  z-index:12000!important;
  top:12px!important;
  left:clamp(10px,1.45vw,28px)!important;
  right:clamp(10px,1.45vw,28px)!important;
  width:auto!important;
  height:auto!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  transform:none!important;
  opacity:1!important;
  visibility:visible!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}

.topbar .topbar-shell,
.topbar.is-journey .topbar-shell,
.detail-top__shell{
  position:relative!important;
  width:100%!important;
  min-height:88px!important;
  display:grid!important;
  grid-template-columns:minmax(270px,1fr) auto auto!important;
  align-items:center!important;
  gap:10px clamp(10px,1vw,18px)!important;
  padding:7px clamp(12px,1.15vw,22px)!important;
  overflow:visible!important;
  border:1px solid transparent!important;
  border-radius:24px!important;
  background:
    linear-gradient(112deg,rgba(28,22,18,.975),rgba(11,14,16,.97) 54%,rgba(14,28,29,.965)) padding-box,
    linear-gradient(108deg,rgba(248,210,145,.72),rgba(232,205,166,.15) 43%,rgba(160,223,228,.34) 76%,rgba(248,210,145,.56)) border-box!important;
  box-shadow:0 20px 55px rgba(0,0,0,.46),inset 0 1px 0 rgba(255,238,205,.13)!important;
  backdrop-filter:blur(22px) saturate(1.2)!important;
}
.topbar .topbar-shell::before,
.detail-top__shell::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  border-radius:inherit;
  background:linear-gradient(105deg,transparent 34%,rgba(255,224,165,.08) 50%,transparent 66%);
  transform:translateX(-125%);
  animation:msk-nav-soft-light 12s ease-in-out infinite;
}
.topbar .topbar-shell::after,
.detail-top__shell::after{
  content:""!important;
  position:absolute!important;
  left:20px!important;
  right:20px!important;
  bottom:0!important;
  height:2px!important;
  border:0!important;
  border-radius:2px!important;
  background:linear-gradient(90deg,#8f6132,#f3d59e 48%,#b8edf1)!important;
  box-shadow:0 0 13px rgba(245,202,128,.66)!important;
}
.topbar .topbar-shell>*,.detail-top__shell>*{position:relative;z-index:1}

@keyframes msk-nav-soft-light{
  0%,64%,100%{transform:translateX(-125%);opacity:0}
  72%{opacity:.8}
  88%{transform:translateX(125%);opacity:.2}
  89%{opacity:0}
}

/* Brand: readable at first sight, with the real mark given enough room. */
.topbar .topbrand,
.detail-top--site .detail-brand{
  grid-column:1!important;
  display:flex!important;
  align-items:center!important;
  gap:15px!important;
  min-width:0!important;
  color:var(--msk-nav-paper)!important;
  text-decoration:none!important;
}
.topbar .topbrand-mark,
.detail-brand__mark{
  width:76px!important;
  height:76px!important;
  flex:0 0 76px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid rgba(239,202,142,.48)!important;
  border-radius:50%!important;
  background:radial-gradient(circle at 30% 20%,rgba(239,202,142,.18),rgba(11,13,14,.76) 65%)!important;
  box-shadow:inset 0 1px 0 rgba(255,238,203,.18),0 0 27px rgba(205,147,75,.18)!important;
}
.topbar .topbrand img,
.detail-brand__mark img{
  width:70px!important;
  height:70px!important;
  object-fit:contain!important;
  filter:invert(1) brightness(2.2)!important;
}
.topbar .topbrand-copy,
.detail-brand__copy{display:flex!important;flex-direction:column!important;gap:6px!important;min-width:0!important}
.topbar .topbrand-copy strong,
.detail-brand__copy strong{
  color:#fff9ef!important;
  font:600 19px/1 var(--msk-nav-display)!important;
  letter-spacing:.035em!important;
  text-transform:none!important;
  white-space:nowrap!important;
}
.topbar .topbrand-copy em,
.detail-brand__copy em{
  color:#e2bd7a!important;
  font:650 10px/1.15 var(--msk-nav-body)!important;
  font-style:normal!important;
  letter-spacing:.105em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}

/* Intentionally simple: a blank line and a search icon, no modal furniture. */
.site-search-bar{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:min(280px,22vw)!important;
  height:44px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 44px!important;
  align-items:center!important;
  overflow:hidden!important;
  border:1px solid rgba(232,202,150,.38)!important;
  border-radius:15px!important;
  background:rgba(255,250,242,.96)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.7)!important;
  transform:translate(-50%,-50%)!important;
  transition:border-color .22s ease,box-shadow .22s ease!important;
}
.site-search-label{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.site-search-bar input{
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  padding:0 6px 0 14px!important;
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#29241e!important;
  font:500 14px/1 var(--msk-nav-body)!important;
  letter-spacing:0!important;
}
.site-search-bar input::placeholder{color:#796f63!important;opacity:1!important}
.site-search-bar input::-webkit-search-cancel-button{opacity:.45}
.site-search-bar button{
  width:44px!important;
  height:44px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#34383b!important;
  cursor:pointer!important;
}
.site-search-bar button:hover,.site-search-bar button:focus-visible{color:#a3702f!important;background:rgba(221,184,119,.12)!important}
.site-search-bar svg{width:23px!important;height:23px!important;fill:none!important;stroke:currentColor!important;stroke-width:2.2!important;stroke-linecap:round!important}
.site-search-bar:focus-within{border-color:#e1bd76!important;box-shadow:0 0 0 3px rgba(225,189,118,.12),0 13px 29px rgba(0,0,0,.25)!important}
.site-search-bar.is-missing{animation:msk-search-nope .34s ease both;border-color:#b96652!important}
@keyframes msk-search-nope{25%{margin-left:-4px}55%{margin-left:4px}80%{margin-left:-2px}}

/* World navigation always remains on the right and every state stays pill shaped. */
.topbar .topnav,
.detail-world-nav{
  grid-column:2!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:16px!important;
  min-width:0!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:2px!important;
  scrollbar-width:none!important;
  font-family:var(--msk-nav-body)!important;
}
.topbar .topnav::-webkit-scrollbar,.detail-world-nav::-webkit-scrollbar{display:none!important}
.topbar .topnav a,
.detail-world-nav a{
  position:relative!important;
  flex:0 0 auto!important;
  min-height:43px!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  padding:9px clamp(10px,.72vw,14px)!important;
  overflow:hidden!important;
  border:1px solid rgba(237,207,158,.24)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.025)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
  color:rgba(255,248,237,.78)!important;
  font:650 10px/1 var(--msk-nav-body)!important;
  letter-spacing:.02em!important;
  text-transform:none!important;
  white-space:nowrap!important;
  transform:none!important;
  transition:color .22s ease,border-color .22s ease,background .22s ease,box-shadow .22s ease,transform .22s ease!important;
}
.topbar .topnav a>span,.detail-world-nav a>span{
  min-width:auto!important;
  width:auto!important;
  height:auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#d9b97d!important;
  font-size:8px!important;
  line-height:1!important;
}
.topbar .topnav a:hover,.topbar .topnav a:focus-visible,
.detail-world-nav a:hover,.detail-world-nav a:focus-visible{
  transform:none!important;
  border-color:rgba(237,207,158,.24)!important;
  background:rgba(255,255,255,.025)!important;
  color:rgba(255,248,237,.78)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.topbar .topnav a:focus-visible,.detail-world-nav a:focus-visible{
  outline:2px solid #e6c37d!important;
  outline-offset:2px!important;
}
.topbar .topnav a.active,
.detail-world-nav a.is-current{
  transform:none!important;
  border:1px solid rgba(244,208,146,.73)!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,rgba(225,182,109,.27),rgba(255,255,255,.055))!important;
  color:#fff9ef!important;
  box-shadow:0 0 0 1px rgba(225,182,109,.05),0 11px 26px rgba(0,0,0,.23),inset 0 1px 0 rgba(255,243,221,.13)!important;
}
.topbar .topnav a.active::before,.topbar .topnav a.active::after,
.detail-world-nav a.is-current::before,.detail-world-nav a.is-current::after{display:none!important;content:none!important}

.topbar .topbar-cta,.detail-contact-cta{
  grid-column:3!important;
  justify-self:end!important;
  min-height:50px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:4px!important;
  padding:9px 18px!important;
  border:1px solid rgba(244,210,157,.68)!important;
  border-radius:999px!important;
  background:linear-gradient(120deg,rgba(237,190,117,.18),rgba(222,179,114,.065))!important;
  box-shadow:inset 0 1px 0 rgba(255,234,194,.16),0 0 20px rgba(214,152,75,.1)!important;
  color:#fff4df!important;
  white-space:nowrap!important;
}
.topbar .topbar-cta small,.detail-contact-cta small{color:#e1bb81!important;font:700 8px/1 var(--msk-nav-body)!important;letter-spacing:.17em!important}
.topbar .topbar-cta span,.detail-contact-cta span{font:700 11px/1.1 var(--msk-nav-body)!important;letter-spacing:.035em!important}

/* Page anchors are a separate side rail, so they can never make the top bar taller. */
.detail-section-nav{
  position:fixed!important;
  z-index:11500!important;
  top:50%!important;
  right:12px!important;
  width:142px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:center!important;
  gap:5px!important;
  padding:10px!important;
  overflow:visible!important;
  border:1px solid rgba(229,197,143,.23)!important;
  border-radius:20px!important;
  background:rgba(12,14,14,.84)!important;
  box-shadow:0 16px 38px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.045)!important;
  backdrop-filter:blur(16px)!important;
  transform:translateY(-50%)!important;
}
.detail-section-nav__label{
  margin:0 5px 4px!important;
  color:rgba(226,197,121,.68)!important;
  font:700 7px/1.2 var(--msk-nav-body)!important;
  letter-spacing:.16em!important;
}
.detail-section-nav a{
  width:100%!important;
  min-height:38px!important;
  display:flex!important;
  align-items:center!important;
  margin:0!important;
  padding:8px 10px!important;
  border:1px solid transparent!important;
  border-radius:999px!important;
  color:rgba(255,255,255,.7)!important;
  font:620 10px/1.2 var(--msk-nav-body)!important;
  letter-spacing:.01em!important;
  text-transform:none!important;
  transition:color .2s ease,border-color .2s ease,background .2s ease,transform .2s ease!important;
}
.detail-section-nav a:hover,.detail-section-nav a:focus-visible{
  color:#fff!important;
  border-color:rgba(226,197,121,.36)!important;
  background:rgba(226,197,121,.1)!important;
  transform:translateX(-3px)!important;
}
.detail-section-nav .detail-section-back{margin-top:4px!important;color:#e2c579!important;border-color:rgba(226,197,121,.18)!important}

.detail-shell{padding-top:122px!important}
html{scroll-padding-top:132px!important}
.detail-shell :is(section,[id]){scroll-margin-top:132px!important}

@media(max-width:1450px){
  .topbar .topbar-shell,.topbar.is-journey .topbar-shell,.detail-top__shell{
    grid-template-columns:minmax(245px,1fr) auto!important;
    min-height:138px!important;
    gap:8px!important;
  }
  .topbar .topbrand-mark,.detail-brand__mark{width:68px!important;height:68px!important;flex-basis:68px!important}
  .topbar .topbrand img,.detail-brand__mark img{width:63px!important;height:63px!important}
  .topbar .topbrand-copy strong,.detail-brand__copy strong{font-size:16px!important}
  .site-search-bar{width:min(285px,29vw)!important}
  .topbar .topbrand,.detail-top--site .detail-brand{grid-column:1!important;grid-row:1!important}
  .topbar .topbar-cta,.detail-contact-cta{grid-column:2!important;grid-row:1!important}
  .topbar .topnav,.detail-world-nav{grid-column:1/-1!important;grid-row:2!important;justify-content:flex-end!important;width:100%!important}
  .topbar .topnav a,.detail-world-nav a{padding-inline:9px!important;font-size:9.5px!important}
  .topbar .topbar-cta,.detail-contact-cta{padding-inline:14px!important}
  .detail-shell{padding-top:172px!important}
  html{scroll-padding-top:180px!important}
  .detail-shell :is(section,[id]){scroll-margin-top:180px!important}
}

@media(max-width:1120px){
  .topbar .topbar-shell,.topbar.is-journey .topbar-shell,.detail-top__shell{
    grid-template-columns:minmax(235px,1fr) auto!important;
    padding:7px 12px 9px!important;
  }
  .topbar .topbrand,.detail-top--site .detail-brand{grid-column:1!important;grid-row:1!important}
  .topbar .topbar-cta,.detail-contact-cta{grid-column:2!important;grid-row:1!important}
  .topbar .topnav,.detail-world-nav{grid-column:1/-1!important;grid-row:2!important;justify-content:flex-end!important;width:100%!important}
}

@media(max-width:900px){
  .topbar,.detail-top.detail-top--site{top:8px!important;left:8px!important;right:8px!important}
  .topbar .topbar-shell,.topbar.is-journey .topbar-shell,.detail-top__shell{
    grid-template-columns:minmax(0,1fr) auto!important;
    min-height:186px!important;
    gap:7px 8px!important;
    padding:7px 9px 9px!important;
    border-radius:19px!important;
  }
  .topbar .topbrand-mark,.detail-brand__mark{width:60px!important;height:60px!important;flex-basis:60px!important}
  .topbar .topbrand img,.detail-brand__mark img{width:55px!important;height:55px!important}
  .topbar .topbrand-copy strong,.detail-brand__copy strong{font-size:14px!important}
  .topbar .topbrand-copy em,.detail-brand__copy em{font-size:8px!important;letter-spacing:.08em!important}
  .topbar .topbrand,.detail-top--site .detail-brand{grid-column:1!important;grid-row:1!important}
  .topbar .topbar-cta,.detail-contact-cta{grid-column:2!important;grid-row:1!important;min-height:44px!important;padding:7px 11px!important}
  .site-search-bar{position:relative!important;left:auto!important;top:auto!important;grid-column:1/-1!important;grid-row:2!important;width:100%!important;height:42px!important;border-radius:14px!important;transform:none!important}
  .site-search-bar button{height:42px!important}
  .topbar .topnav,.detail-world-nav{grid-column:1/-1!important;grid-row:3!important;justify-content:flex-start!important;gap:10px!important;width:100%!important}
  .topbar .topnav a,.detail-world-nav a{min-height:40px!important;padding:8px 11px!important;font-size:10px!important}
  .detail-section-nav{
    top:auto!important;
    right:8px!important;
    bottom:8px!important;
    left:8px!important;
    width:auto!important;
    flex-direction:row!important;
    justify-content:flex-start!important;
    gap:4px!important;
    padding:7px!important;
    overflow-x:auto!important;
    transform:none!important;
    border-radius:17px!important;
  }
  .detail-section-nav__label{display:none!important}
  .detail-section-nav a{width:auto!important;min-width:max-content!important;min-height:39px!important;padding:8px 12px!important}
  .detail-section-nav a:hover,.detail-section-nav a:focus-visible{transform:translateY(-2px)!important}
  .detail-section-nav .detail-section-back{margin-top:0!important}
  .detail-shell{padding-top:220px!important;padding-bottom:64px!important}
  html{scroll-padding-top:226px!important}
  .detail-shell :is(section,[id]){scroll-margin-top:226px!important}
}

@media(max-width:520px){
  .topbar .topbrand-copy em,.detail-brand__copy em{display:none!important}
  .topbar .topbrand-copy strong,.detail-brand__copy strong{font-size:12px!important}
  .topbar .topbar-cta small,.detail-contact-cta small{display:none!important}
  .topbar .topbar-cta span,.detail-contact-cta span{font-size:9.5px!important}
}

@media(max-width:390px){
  .topbar .topbrand-copy,.detail-brand__copy{display:none!important}
}

@media(prefers-reduced-motion:reduce){
  .topbar .topbar-shell::before,.detail-top__shell::before{animation:none!important}
  .site-search-bar,.topbar .topnav a,.detail-world-nav a,.detail-section-nav a{transition:none!important}
}
