/* The AST logo is the masthead. Everything else follows a simple editorial grid. */
:root{--ast-admin-offset:0px}
body.admin-bar{--ast-admin-offset:32px}
html{scroll-padding-top:200px}
.skip-link{z-index:110}
.skip-link:focus{position:fixed;top:calc(var(--ast-admin-offset) + 12px)}
.site-header{position:relative;z-index:90;border:0;border-bottom:1px solid #9ca598;background:var(--paper);box-shadow:none}
.js .site-header{position:sticky;top:var(--ast-admin-offset)}
.site-header .header-shell{max-width:1280px}
.masthead-inner{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:32px;min-height:106px;height:auto;padding:16px 0}
.site-header .brand{grid-column:2;grid-row:1;justify-self:center;display:block;flex:none;margin:0;padding:0}
.site-header .brand img{display:block;width:132px;height:auto;object-fit:contain}
.masthead-tagline{grid-column:1;grid-row:1;justify-self:start;max-width:310px;margin:0;padding:0;border:0;font:italic 400 21px/1.45 var(--serif);letter-spacing:-.015em;color:#4d584f;text-wrap:balance}
.header-shop{grid-column:3;grid-row:1;justify-self:end;align-self:center;display:inline-flex;align-items:center;justify-content:flex-end;gap:12px;min-height:44px;max-width:100%;margin:0;padding:8px 0 6px;color:var(--ink);background:transparent;border:0;border-bottom:1px solid #9da699;border-radius:0;font:500 14px/1.5 var(--sans);text-decoration:none;transition:color .18s,border-color .18s}
.header-shop .arrow{display:inline-block;flex:0 0 auto;width:auto;height:auto;border:0;border-radius:0;font:21px/1 var(--sans);color:var(--red)}
.header-shop:hover{transform:none;background:transparent;color:var(--red);border-color:var(--red)}
.header-shop:hover .arrow{transform:none}
.shop-long{display:inline}.shop-short{display:none}
.site-header .main-nav{display:flex;flex:none;flex-direction:row;align-items:stretch;justify-content:center;order:0;width:100%;gap:40px;margin:0;padding:0;border-top:1px solid var(--line)}
.site-header .main-nav a{display:flex;align-items:center;position:relative;min-height:53px;padding:15px 4px;border:0;color:var(--ink);background:transparent;font:400 14px/1.5 var(--sans);white-space:nowrap;text-decoration:none;transition:color .18s}
.site-header .main-nav a:hover{color:var(--red);background:transparent}
.site-header .main-nav a[aria-current=page]{color:var(--red);background:transparent}
.site-header .main-nav a[aria-current=page]:after{content:'';display:block;position:absolute;top:auto;bottom:0;left:4px;right:4px;width:auto;height:2px;background:var(--red)}
.site-header .menu-toggle{display:none;order:0;margin:0;padding:9px 13px;min-height:44px;border:1px solid #b9bdb2;border-radius:0;background:transparent;color:var(--ink);font:400 13px/1.4 var(--sans)}
.site-header a:focus-visible,.site-header .menu-toggle:focus-visible{outline:2px solid var(--red);outline-offset:5px}
@media(max-width:1150px){
  .masthead-inner{gap:26px}
  .masthead-tagline{font-size:20px;max-width:250px}
  .site-header .main-nav{gap:33px}
}
@media(max-width:900px){
  html{scroll-padding-top:160px}
  .masthead-inner{grid-template-columns:auto minmax(0,1fr) auto auto;gap:24px;min-height:92px;padding:16px 0}
  .site-header .brand{grid-column:1;justify-self:start}
  .site-header .brand img{width:108px}
  .masthead-tagline{grid-column:2;max-width:220px;font-size:18px}
  .header-shop{grid-column:3;margin:0;padding:8px 0 6px;font-size:13px;gap:9px}
  .shop-long{display:none}.shop-short{display:inline}
  .js .site-header .menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:13px;grid-column:4;grid-row:1;min-width:81px}
  .site-header .menu-toggle:after{content:'+';font:20px/1 var(--sans)}
  .site-header .menu-toggle[aria-expanded=true]:after{content:'×'}
  .site-header .main-nav{flex-direction:column;align-items:stretch;gap:0;max-height:calc(100dvh - 150px);overflow-y:auto;overscroll-behavior:contain;padding:10px 0 21px;border-top:1px solid var(--line)}
  .js .site-header .main-nav{display:none}
  .js .site-header .main-nav.is-open{display:flex}
  .site-header .main-nav a{min-height:53px;padding:12px 2px;border-bottom:1px solid var(--line);font:400 20px/1.4 var(--serif);white-space:normal}
  .site-header .main-nav a[aria-current=page]:after{left:2px;right:2px;bottom:-1px;height:1px}
}
@media(min-width:601px) and (max-width:782px){body.admin-bar{--ast-admin-offset:46px}}
@media(max-width:600px){
  html{scroll-padding-top:115px}
  body.admin-bar{--ast-admin-offset:0px}
  body.admin-bar .skip-link:focus{top:58px}
  .masthead-inner{grid-template-columns:minmax(0,1fr) auto auto;min-height:85px;padding:15px 0;gap:21px}
  .site-header .brand img{width:94px}
  .masthead-tagline{display:none}
  .header-shop{grid-column:2;font-size:13px;gap:7px;min-height:44px;padding:10px 0 7px}
  .header-shop .arrow{font-size:18px}
  .js .site-header .menu-toggle{grid-column:3;min-width:78px;gap:11px;padding:9px 11px}
  .site-header .main-nav{max-height:calc(100dvh - 115px);padding-bottom:18px}
}
@media(max-width:370px){
  .masthead-inner{gap:16px}
  .site-header .brand img{width:83px}
  .js .site-header .menu-toggle{min-width:73px;padding-inline:10px;gap:9px}
}
@media(prefers-reduced-motion:reduce){.site-header *{transition:none}}
@media print{.site-header{display:none}}
