/* A shared following header. The reference homepage keeps its original styles. */
.site-follow-header {
  --expanded-height:103px;
  --header-glass:#f5f4eed1;
  --header-ink:var(--ink);
  --header-edge:#64745f26;
  --header-inset:#ffffff80;
  --header-shadow:#1d302212;
  --menu-surface:#ffffff30;
  --menu-edge:#60725e3d;
  --menu-hover:#ffffff80;
}
.site-follow-header.motion-home {
  --header-glass:#203b2ebd;
  --header-ink:#f2f5eb;
  --header-edge:#d4dfca2e;
  --header-inset:#e8f0df0d;
  --header-shadow:#132d201f;
  --menu-surface:#f0f5e808;
  --menu-edge:#c5d6b94d;
  --menu-hover:#f0f5e816;
}
.site-follow-header .header {
  --header-size:var(--expanded-height);
  --utility-offset:34px;
  position:fixed;
  top:var(--utility-offset);
  left:0;
  right:0;
  width:100%;
  height:var(--header-size);
  margin:0 auto;
  z-index:30;
  border:1px solid transparent;
  border-bottom-color:var(--line);
  border-radius:0;
  transition:width .55s cubic-bezier(.2,.75,.25,1),top .45s cubic-bezier(.2,.75,.25,1),height .55s cubic-bezier(.2,.75,.25,1),padding .55s cubic-bezier(.2,.75,.25,1),border-radius .5s ease,background-color .35s ease,border-color .35s ease,box-shadow .35s ease;
}
.site-follow-header:not(.motion-home) .header+main {margin-top:var(--expanded-height)}
.site-follow-header.motion-home .header {background:transparent;border-bottom-color:#ffffff30;color:#fff}
.site-follow-header .header .brand img {transition:width .55s ease,height .55s ease}
.site-follow-header .header .brand>span {transition:font-size .55s ease}
.site-follow-header .compact-menu-label,
.site-follow-header .compact-nav-actions {display:none}

/* The same glass treatment continues through contraction and expansion. */
.site-follow-header .header:is(.is-travelling,.is-condensed,.is-expanding) {
  background:var(--header-glass);
  border-color:var(--header-edge);
  box-shadow:inset 0 1px 0 var(--header-inset),0 8px 26px var(--header-shadow);
  -webkit-backdrop-filter:blur(20px) saturate(125%);
  backdrop-filter:blur(20px) saturate(125%);
}
.site-follow-header .header.is-condensed {
  --header-size:66px;
  top:14px;
  width:min(520px,calc(100% - 32px));
  padding:0 18px;
  gap:18px;
  border-radius:15px;
  color:var(--header-ink);
}
.site-follow-header .header.is-condensed .brand {gap:9px}
.site-follow-header .header.is-condensed .brand img {width:74px;height:43px}
.site-follow-header .header.is-condensed .brand>span {font-size:12px}
.site-follow-header .header.is-condensed .brand-sub {display:none}
.site-follow-header .header.is-condensed .header-actions {gap:0;flex-shrink:0;margin-left:auto}
.site-follow-header .header.is-condensed .header-actions>.search-toggle,
.site-follow-header .header.is-condensed .header-cta {display:none}

.site-follow-header .header:is(.is-condensed,.is-expanding) .menu-toggle {
  display:grid;
  grid-template-columns:auto 18px;
  grid-template-rows:1fr 1fr;
  column-gap:12px;
  row-gap:0;
  align-items:center;
  justify-content:center;
  min-width:92px;
  width:auto;
  height:42px;
  margin:0;
  padding:10px 12px;
  border:1px solid var(--menu-edge);
  border-radius:7px;
  background:var(--menu-surface);
  color:var(--header-ink);
  cursor:pointer;
  transition:background-color .2s ease,border-color .2s ease;
}
.site-follow-header .header:is(.is-condensed,.is-expanding) .menu-toggle:hover {background:var(--menu-hover)}
.site-follow-header .header:is(.is-condensed,.is-expanding) .menu-toggle:focus-visible {outline:2px solid currentColor;outline-offset:4px}
.site-follow-header .header:is(.is-condensed,.is-expanding) .menu-toggle>.compact-menu-label {
  display:block;
  grid-column:1;
  grid-row:1/3;
  width:auto;
  height:auto;
  margin:0;
  font:500 12px/1 var(--body);
  color:inherit;
  background:transparent;
}
.site-follow-header .header:is(.is-condensed,.is-expanding) .menu-toggle>span:not(.compact-menu-label) {
  display:block;
  grid-column:2;
  position:static;
  width:18px;
  height:1px;
  margin:0;
  background:currentColor;
  transition:transform .2s ease;
}
.site-follow-header .header:is(.is-condensed,.is-expanding) .menu-toggle>span:first-child {grid-row:1;align-self:end;margin-bottom:3px}
.site-follow-header .header:is(.is-condensed,.is-expanding) .menu-toggle>span:nth-child(2) {grid-row:2;align-self:start;margin-top:3px}
.site-follow-header .header:is(.is-condensed,.is-expanding) .menu-toggle[aria-expanded="true"]>span:first-child {transform:translateY(3.5px) rotate(45deg)}
.site-follow-header .header:is(.is-condensed,.is-expanding) .menu-toggle[aria-expanded="true"]>span:nth-child(2) {transform:translateY(-3.5px) rotate(-45deg)}

/* One navigation tree becomes the compact menu, with every catalog link intact. */
.site-follow-header .header:is(.is-condensed,.is-expanding) nav:not(.open) {display:none}
.site-follow-header .header:is(.is-condensed,.is-expanding) nav.open {
  display:block;
  position:absolute;
  top:calc(100% + 10px);
  left:0;
  right:0;
  width:100%;
  max-height:calc(100dvh - 106px);
  padding:12px 23px 22px;
  overflow:auto;
  overscroll-behavior:contain;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--paper);
  color:var(--ink);
  box-shadow:0 14px 32px #132b251f;
}
.site-follow-header .header:is(.is-condensed,.is-expanding) nav .nav-dropdown {display:block;width:100%;border-bottom:1px solid var(--line)}
.site-follow-header .header:is(.is-condensed,.is-expanding) nav .nav-dropdown>summary {justify-content:space-between;padding:18px 0;font-size:14px;color:var(--forest)}
.site-follow-header .header:is(.is-condensed,.is-expanding) nav .nav-dropdown>summary>span {color:var(--green)}
.site-follow-header .header:is(.is-condensed,.is-expanding) nav .nav-panel {position:static;top:auto;left:auto;width:100%;padding:0 0 14px;border:0;background:transparent;box-shadow:none}
.site-follow-header .header:is(.is-condensed,.is-expanding) nav .nav-panel>a {padding:12px 8px;font-size:12px!important;color:var(--ink)}
.site-follow-header .header:is(.is-condensed,.is-expanding) nav .nav-panel>a.nav-overview {color:var(--green)}
.site-follow-header .header:is(.is-condensed,.is-expanding) .mobile-contact {display:block;padding:18px 0;font-size:12px;color:var(--forest)}
.site-follow-header .header:is(.is-condensed,.is-expanding) .compact-nav-actions {display:grid;grid-template-columns:1.2fr 1fr;gap:12px;align-items:center;border-top:1px solid var(--line);padding-top:18px}
.site-follow-header .compact-nav-actions .button {min-height:45px;padding:0 15px;font-size:10px;justify-content:center;text-align:center}
.site-follow-header .compact-nav-search {min-height:45px;padding:8px 0;border:0;border-bottom:1px solid #9ba994;background:transparent;color:var(--forest);font:500 11px/1.4 var(--body);cursor:pointer}
.site-follow-header.motion-home[data-logo="green"] .header.is-condensed .brand:before {width:90px;top:-3px;bottom:-3px}

@media(min-width:851px) {
  /* Give the shell room first; the full navigation returns after it settles. */
  .site-follow-header .header.is-expanding>nav:not(.open),
  .site-follow-header .header.is-expanding .header-actions>.search-toggle,
  .site-follow-header .header.is-expanding .header-cta {display:none}
  .site-follow-header .header.is-expanding .header-actions {margin-left:auto;gap:0}
  .site-follow-header .header.is-expanding nav.open {left:auto;right:4.3%;width:min(520px,calc(100% - 32px))}
  .site-follow-header .header.is-expanding .brand-sub {visibility:hidden}
  .site-follow-header .header.is-revealing>nav,
  .site-follow-header .header.is-revealing .header-actions>.search-toggle,
  .site-follow-header .header.is-revealing .header-cta,
  .site-follow-header .header.is-revealing .brand-sub {animation:doyle-nav-reveal .4s ease both}
}
@keyframes doyle-nav-reveal {from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}

@media(max-width:1150px) {
  .site-follow-header.motion-home {--expanded-height:90px}
  .site-follow-header .header.is-expanding nav.open {right:4%}
}
@media(max-width:850px) {
  .site-follow-header {--expanded-height:82px}
  .site-follow-header.motion-home {--expanded-height:82px}
  .site-follow-header .header {--utility-offset:30px}
  .site-follow-header.motion-home .header {--utility-offset:32px}
  .site-follow-header .header nav.open {top:100%;max-height:calc(100dvh - var(--header-size) - var(--utility-offset));overscroll-behavior:contain}
  .site-follow-header .header:is(.is-condensed,.is-expanding) nav.open {top:calc(100% + 10px);max-height:calc(100dvh - 106px)}
  .site-follow-header.motion-home .header.is-condensed nav.open .nav-dropdown>summary>span {color:var(--green)}
}
@media(max-width:560px) {
  .site-follow-header {--expanded-height:77px}
  .site-follow-header.motion-home {--expanded-height:78px}
  .site-follow-header.motion-home .header {--utility-offset:52px}
  .site-follow-header .header.is-condensed {--header-size:64px;top:12px;padding:0 14px;gap:12px;border-radius:13px}
  .site-follow-header .header.is-condensed .brand img {width:62px;height:37px}
  .site-follow-header .header.is-condensed .brand>span {font-size:10px;letter-spacing:.07em}
  .site-follow-header .header:is(.is-condensed,.is-expanding) .menu-toggle {min-width:82px;height:40px;padding:9px 10px;column-gap:10px}
  .site-follow-header .header:is(.is-condensed,.is-expanding) .menu-toggle>.compact-menu-label {font-size:11px}
  .site-follow-header .header:is(.is-condensed,.is-expanding) nav.open {padding:9px 18px 18px;max-height:calc(100dvh - 100px)}
  .site-follow-header.motion-home[data-logo="green"] .header.is-condensed .brand:before {width:74px}
  .site-follow-header .header:is(.is-condensed,.is-expanding) .compact-nav-actions {grid-template-columns:1fr;gap:9px}
  .site-follow-header .compact-nav-actions .button,
  .site-follow-header .compact-nav-search {font-size:11px}
}
@media(prefers-reduced-motion:reduce) {
  .site-follow-header .header,
  .site-follow-header .header .brand img,
  .site-follow-header .header .brand>span,
  .site-follow-header .header .menu-toggle,
  .site-follow-header .header .menu-toggle>span {transition:none}
  .site-follow-header .header.is-revealing>nav,
  .site-follow-header .header.is-revealing .header-actions>.search-toggle,
  .site-follow-header .header.is-revealing .header-cta,
  .site-follow-header .header.is-revealing .brand-sub {animation:none}
}
