/* Vagus footer: framed brand column, editorial upper row and linked directory. */
footer.site.vagus-footer {
  --vf-bg: #19232d;
  --vf-panel: #222e3a;
  --vf-line: rgba(213, 224, 234, .16);
  --vf-text: #f4f6f8;
  --vf-muted: #b9c3cd;
  background: var(--vf-bg);
  color: var(--vf-text);
  padding: 64px 0 30px;
  font-family: var(--sans, "Onest", Arial, sans-serif);
  font-size: 14px;
  line-height: 1.65;
}
.vagus-footer,
.vagus-footer *,
.vagus-footer *::before,
.vagus-footer *::after {box-sizing: border-box;}
.vagus-footer p {margin: 0;}
.vagus-footer a {color: inherit; text-decoration: none;}
.vagus-footer img {display: block; max-width: 100%;}
.vagus-footer .vf-shell {width: calc(100% - 64px); max-width: 1400px; margin: 0 auto;}
.vagus-footer .vf-panel {
  display: grid;
  grid-template-columns: 1.05fr 1fr 1.45fr;
  grid-template-areas: "brand invitation featured" "brand navigation navigation";
  border: 1px solid var(--vf-line);
  background: var(--vf-panel);
}
.vagus-footer .vf-panel > * {min-width: 0;}
.vagus-footer .vf-brand {
  grid-area: brand;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 58px;
  padding: 54px 42px 46px;
  background: #1b2631;
  border-right: 1px solid var(--vf-line);
}
.vagus-footer .vf-brand-link {display: flex; flex-direction: column; align-items: flex-start; width: fit-content; max-width: 100%;}
.vagus-footer .vf-brand-mark {width: 200px; height: auto; max-width: 100%; object-fit: contain; filter: brightness(0) invert(1); margin-left: -31px;}
.vagus-footer .vf-brand-wordmark {display: block; margin-top: 13px; font-size: 39px; font-weight: 650; line-height: 1.06; letter-spacing: -.04em;}
.vagus-footer .vf-brand-wordmark > span {display: block; margin-top: 13px; font-size: 12px; font-weight: 600; line-height: 1.4; letter-spacing: .16em; text-transform: uppercase;}
.vagus-footer .vf-brand-since {display: block; font-size: 16px; font-weight: 600; letter-spacing: -.015em; color: #e3e8ed;}
.vagus-footer .vf-brand-story > p {margin-top: 12px; max-width: 240px; color: var(--vf-muted); font-size: 14px; line-height: 1.75;}
.vagus-footer .vf-language {display: inline-block; padding: 9px 12px; margin-top: 24px; border: 1px solid var(--vf-line); color: #c9d2db; font-size: 11px; letter-spacing: .06em;}
.vagus-footer .vf-invitation {grid-area: invitation; display: flex; flex-direction: column; justify-content: space-between; gap: 38px; padding: 54px 38px 42px; border-right: 1px solid var(--vf-line);}
.vagus-footer .vf-statement {font-size: clamp(24px, 2.1vw, 30px); font-weight: 550; line-height: 1.28; letter-spacing: -.04em; color: var(--vf-text);}
.vagus-footer .vf-callback-link {display: flex; align-items: center; gap: 14px; width: fit-content; max-width: 100%;}
.vagus-footer .vf-round-arrow {display: grid; place-items: center; width: 43px; height: 43px; flex: 0 0 43px; border-radius: 50%; background: #d8dfe5; color: #243443; font-size: 25px; line-height: 1; transition: background .2s ease, transform .2s ease;}
.vagus-footer .vf-callback-link small {display: block; font-size: 11px; color: var(--vf-muted);}
.vagus-footer .vf-callback-link strong {display: block; font-size: 15px; font-weight: 600; color: var(--vf-text);}
.vagus-footer .vf-callback-link:hover .vf-round-arrow {background: #f5f7f8; transform: translate(2px, -2px);}
.vagus-footer .vf-featured {grid-area: featured; padding: 54px 38px 42px;}
.vagus-footer .vf-eyebrow {display: block; color: #b6c1cc; font-size: 10px; font-weight: 650; letter-spacing: .14em; text-transform: uppercase;}
.vagus-footer .vf-featured-title {margin: 15px 0 24px; max-width: 400px; font-family: inherit; font-size: clamp(21px, 1.8vw, 27px); font-weight: 550; line-height: 1.24; letter-spacing: -.035em; color: var(--vf-text);}
.vagus-footer .vf-featured-links {display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px;}
.vagus-footer .vf-feature-card {display: flex; flex-direction: column; align-items: flex-start; min-width: 0; min-height: 158px; padding: 17px 12px 13px; border: 1px solid var(--vf-line); border-radius: 6px; background: rgba(230, 238, 245, .025); transition: background .2s ease, border-color .2s ease;}
.vagus-footer .vf-feature-card:hover {background: rgba(230, 238, 245, .07); border-color: rgba(213, 224, 234, .35); color: var(--vf-text);}
.vagus-footer .vf-feature-icon {display: block; flex: 0 0 25px; color: #c4ced8; margin-bottom: 17px;}
.vagus-footer .vf-feature-card > strong {font-size: 13px; font-weight: 550; line-height: 1.45; color: var(--vf-text);}
.vagus-footer .vf-feature-more {display: flex; justify-content: space-between; gap: 5px; align-items: center; width: 100%; padding-top: 13px; margin-top: auto; color: var(--vf-muted); font-size: 10px; line-height: 1.4;}
.vagus-footer .vf-feature-more > span {color: #d5dce3; font-size: 14px;}
.vagus-footer .vf-navigation {grid-area: navigation; display: grid; grid-template-columns: .85fr 1.06fr 1.05fr 1.1fr; gap: 24px; border-top: 1px solid var(--vf-line); padding: 39px 38px 40px;}
.vagus-footer .vf-nav-column {min-width: 0;}
.vagus-footer .vf-nav-column > h3 {margin: 0 0 22px; font-family: inherit; font-size: 12px; font-weight: 650; line-height: 1.4; letter-spacing: 0; color: #f0f3f5;}
.vagus-footer .vf-list {list-style: none; padding: 0; margin: 0;}
.vagus-footer .vf-list > li {margin: 0 0 12px; color: var(--vf-muted); font-size: 12px; line-height: 1.65;}
.vagus-footer .vf-list > li:last-child {margin-bottom: 0;}
.vagus-footer .vf-list a {display: inline-block; max-width: 100%; overflow-wrap: break-word; transition: color .15s ease;}
.vagus-footer .vf-list a:hover {color: #fff;}
.vagus-footer .vf-contact-link {display: flex; justify-content: space-between; align-items: center; gap: 10px; border: 1px solid var(--vf-line); border-radius: 24px; padding: 10px 12px; margin-bottom: 17px; font-size: 11px; line-height: 1.4; color: #e5eaf0;}
.vagus-footer .vf-contact-link:hover {color: #fff; border-color: #7b8b9b;}
.vagus-footer .vf-contact address {font-size: 11px; font-style: normal; color: var(--vf-muted); line-height: 1.8;}
.vagus-footer .vf-hours {margin-top: 12px; color: var(--vf-muted); font-size: 10px; line-height: 1.6;}
.vagus-footer .vf-bottom {display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 25px 0 0;}
.vagus-footer .vf-bottom > p {color: #aab7c3; font-size: 11px; line-height: 1.6;}
.vagus-footer .vf-ore-credit {display: flex; align-items: center; gap: 16px; max-width: 100%; color: #aab7c3;}
.vagus-footer .vf-ore-credit > span {font-size: 10px; line-height: 1.5;}
.vagus-footer .vf-ore-credit img {display: block; width: 38px; height: 45px; object-fit: contain; transition: filter .2s ease;}
.vagus-footer .vf-ore-credit:hover {color: #e5eaf0;}
.vagus-footer .vf-ore-credit:hover img {filter: brightness(1.5);}
.vagus-footer a:focus-visible {outline: 2px solid #edf2f6; outline-offset: 5px;}
@media (max-width: 1280px) and (min-width: 1121px) {
  .vagus-footer .vf-brand {padding: 42px 30px;}
  .vagus-footer .vf-invitation {padding: 42px 27px 34px;}
  .vagus-footer .vf-featured {padding: 42px 27px 34px;}
  .vagus-footer .vf-navigation {padding: 34px 27px; gap: 17px;}
}
@media (max-width: 1120px) {
  .vagus-footer .vf-panel {grid-template-columns: .85fr 1.5fr; grid-template-areas: "brand invitation" "brand featured" "navigation navigation";}
  .vagus-footer .vf-brand {padding: 44px 32px;}
  .vagus-footer .vf-invitation {padding: 44px 36px 34px; border-right: 0; flex-direction: row; align-items: flex-end; gap: 25px;}
  .vagus-footer .vf-statement {font-size: 27px;}
  .vagus-footer .vf-featured {padding: 30px 36px 36px; border-top: 1px solid var(--vf-line);}
  .vagus-footer .vf-featured-title {font-size: 25px;}
  .vagus-footer .vf-feature-card {min-height: 155px; padding: 18px 14px 15px;}
  .vagus-footer .vf-feature-card > strong {font-size: 14px;}
  .vagus-footer .vf-feature-more {font-size: 11px;}
  .vagus-footer .vf-navigation {padding: 36px 32px; gap: 26px;}
  .vagus-footer .vf-list > li {font-size: 13px;}
  .vagus-footer .vf-contact address {font-size: 12px;}
}
@media (max-width: 820px) {
  footer.site.vagus-footer {padding-top: 40px;}
  .vagus-footer .vf-shell {width: calc(100% - 40px);}
  .vagus-footer .vf-brand {padding: 34px 26px;}
  .vagus-footer .vf-brand-mark {width: 168px; margin-left: -27px;}
  .vagus-footer .vf-brand-wordmark {font-size: 34px;}
  .vagus-footer .vf-invitation {flex-direction: column; align-items: flex-start; padding: 34px 26px;}
  .vagus-footer .vf-featured {padding: 28px 26px 30px;}
  .vagus-footer .vf-featured-title {font-size: 22px;}
  .vagus-footer .vf-featured-links {gap: 8px;}
  .vagus-footer .vf-feature-card {padding: 14px 10px 13px;}
  .vagus-footer .vf-feature-card > strong {font-size: 12px;}
  .vagus-footer .vf-feature-more {font-size: 10px;}
  .vagus-footer .vf-navigation {grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 34px 30px; padding: 34px 26px;}
}
@media (max-width: 600px) {
  footer.site.vagus-footer {padding: 28px 0 24px;}
  .vagus-footer .vf-shell {width: calc(100% - 32px);}
  .vagus-footer .vf-panel {grid-template-columns: minmax(0, 1fr); grid-template-areas: "brand" "invitation" "featured" "navigation";}
  .vagus-footer .vf-brand {padding: 29px 24px 30px; border-right: 0; gap: 29px;}
  .vagus-footer .vf-brand-link {flex-direction: row; align-items: center; gap: 5px;}
  .vagus-footer .vf-brand-mark {width: 125px; flex: 0 0 125px; margin-left: -25px;}
  .vagus-footer .vf-brand-wordmark {margin-top: 0; font-size: 32px;}
  .vagus-footer .vf-brand-wordmark > span {font-size: 10px; margin-top: 9px; letter-spacing: .12em;}
  .vagus-footer .vf-brand-story > p {max-width: 100%; font-size: 13px; margin-top: 8px;}
  .vagus-footer .vf-brand-since {font-size: 14px;}
  .vagus-footer .vf-language {margin-top: 17px;}
  .vagus-footer .vf-invitation {padding: 29px 24px 30px; border-top: 1px solid var(--vf-line); gap: 28px;}
  .vagus-footer .vf-statement {font-size: 27px;}
  .vagus-footer .vf-featured {padding: 29px 24px 30px;}
  .vagus-footer .vf-featured-title {font-size: 23px; margin: 13px 0 22px;}
  .vagus-footer .vf-featured-links {grid-template-columns: minmax(0, 1fr); gap: 10px;}
  .vagus-footer .vf-feature-card {display: grid; grid-template-columns: 26px minmax(0, 1fr) 20px; align-items: center; column-gap: 14px; min-height: 76px; padding: 17px 15px;}
  .vagus-footer .vf-feature-icon {margin: 0;}
  .vagus-footer .vf-feature-card > strong {font-size: 14px; line-height: 1.5;}
  .vagus-footer .vf-feature-card > strong br {display: none;}
  .vagus-footer .vf-feature-more {width: 20px; font-size: 0; padding: 0; margin: 0; justify-content: flex-end;}
  .vagus-footer .vf-feature-more > span {font-size: 18px;}
  .vagus-footer .vf-navigation {padding: 30px 24px 32px; gap: 30px 20px;}
  .vagus-footer .vf-nav-column > h3 {font-size: 12px; margin-bottom: 17px;}
  .vagus-footer .vf-list > li {font-size: 12px; margin-bottom: 11px;}
  .vagus-footer .vf-contact-link {padding: 9px 10px; font-size: 10px;}
  .vagus-footer .vf-contact address {font-size: 11px;}
  .vagus-footer .vf-bottom {align-items: flex-start; flex-direction: column; gap: 20px; padding-top: 21px;}
  .vagus-footer .vf-bottom > p {font-size: 10px;}
  .vagus-footer .vf-ore-credit {align-self: flex-end;}
}
@media (max-width: 380px) {
  .vagus-footer .vf-navigation {grid-template-columns: minmax(0, 1fr); gap: 28px;}
  .vagus-footer .vf-contact-link {width: fit-content; min-width: 168px;}
}
@media (prefers-reduced-motion: reduce) {
  .vagus-footer .vf-round-arrow,
  .vagus-footer .vf-feature-card,
  .vagus-footer .vf-list a,
  .vagus-footer .vf-ore-credit img {transition: none;}
  .vagus-footer .vf-callback-link:hover .vf-round-arrow {transform: none;}
}
