/* One header and one footer for every page. Loaded by index, toolkit, legal, blog and place pages. */
.site-head { position: sticky; top: 0; z-index: 50; background: #fff; border-bottom: 1px solid #E2E3E7; font-family: Inter, Helvetica, Arial, sans-serif; }
.site-head-in { position: relative; max-width: 1240px; margin: 0 auto; padding: 10px 16px; display: flex; align-items: center; gap: 12px; min-height: 60px; }
.site-brand { display: flex; align-items: center; gap: 10px; flex: none; text-decoration: none; color: #111214; font: 800 18px/1 Inter, Helvetica, Arial, sans-serif; letter-spacing: -.01em; }
.site-brand img { width: 36px; height: 36px; display: block; }
.site-brand em { font-style: normal; color: #A30D22; }
.site-nav { flex: 1; display: flex; justify-content: center; gap: 2px; }
.site-nav a { color: #24272C; text-decoration: none; font: 600 15px/1 Inter, Helvetica, Arial, sans-serif; padding: 10px 11px; border-radius: 8px; white-space: nowrap; }
.site-nav a:hover { background: #F2F2EF; color: #111214; }
.site-nav a[aria-current="page"] { color: #8A0B1D; box-shadow: inset 0 -2px 0 #A30D22; border-radius: 0; }
.site-nav .nav-extra { display: none; }
.site-actions { display: flex; align-items: center; gap: 8px; flex: none; }
.site-call, .site-ask, .site-menu { display: inline-flex; align-items: center; gap: 7px; padding: 10px 14px; border-radius: 8px; font: 700 14.5px/1 Inter, Helvetica, Arial, sans-serif; text-decoration: none; white-space: nowrap; cursor: pointer; }
.site-call { background: #A30D22; color: #fff; border: 1px solid #8A0B1D; }
.site-call:hover { background: #8A0B1D; color: #fff; }
.site-call svg { flex: none; }
.site-ask { background: #111214; color: #fff; border: 1px solid #111214; }
.site-ask:hover { background: #2A2D33; color: #fff; }
.site-menu { display: none; background: #fff; color: #111214; border: 1px solid #C9CCD2; }
.site-head a:focus-visible, .site-head button:focus-visible { outline: 2px solid #1F3A66; outline-offset: 2px; }
.site-call .short { display: none; }

@media (max-width: 999px) {
  .site-head-in { min-height: 56px; padding: 8px 16px; gap: 8px; }
  .site-brand { font-size: 17px; }
  .site-brand img { width: 34px; height: 34px; }
  .site-actions { margin-left: auto; }
  .site-ask { display: none; }
  .site-call .full { display: none; }
  .site-call .short { display: inline; }
  .site-call, .site-menu { padding: 9px 12px; }
  .site-head.js .site-menu { display: inline-flex; }
  /* Without JS the links simply wrap under the bar. With JS they fold into the menu. */
  .site-head:not(.js) .site-head-in { flex-wrap: wrap; }
  .site-head:not(.js) .site-nav { order: 3; flex-basis: 100%; flex-wrap: wrap; justify-content: flex-start; }
  .site-head.js .site-nav { display: none; position: absolute; top: 100%; left: 0; right: 0; flex-direction: column; gap: 0; padding: 6px 16px 14px; background: #fff; border-bottom: 1px solid #E2E3E7; box-shadow: 0 18px 30px -18px rgba(17,18,20,.35); }
  .site-head.js.open .site-nav { display: flex; }
  .site-head.js .site-nav a { padding: 14px 4px; font-size: 16.5px; border-bottom: 1px solid #EEEEEC; border-radius: 0; }
  .site-head.js .site-nav a[aria-current="page"] { box-shadow: inset 3px 0 0 #A30D22; padding-left: 12px; }
  .site-head.js .site-nav .nav-extra { display: block; }
  .site-head.js .site-nav a:last-child { border-bottom: 0; }
}
@media (max-width: 359px) { .site-brand em { display: none; } }

.site-foot { max-width: 1000px; margin: 28px auto 0; padding: 22px 16px 34px; border-top: 1px solid #DCDDE1; text-align: center; font: 14px/1.6 Inter, Helvetica, Arial, sans-serif; color: #33373D; }
.site-foot p { margin: 6px auto; max-width: 82ch; color: #33373D; font-size: 14px; }
.site-foot .site-foot-org { color: #111214; font-weight: 600; }
.site-foot img { width: 20px; height: 20px; vertical-align: -4px; margin-right: 4px; }
.site-foot a { color: #8A0B1D; font-weight: 600; }
@media print { .site-head { position: static; } .site-actions, .site-menu { display: none; } }
