:is(.route-page, .legal-page) .site-nav {
  display: flex;
  flex-wrap: wrap;
  padding-block: 16px;
}

.site-nav .primary-nav { margin-left: auto; min-width: 0; max-width: 100%; }
.site-nav .desktop-nav { flex-wrap: wrap; }

.header-trial {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 8px;
}

.trial-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  min-height: 44px;
  padding: 12px 18px;
  border: 1px solid var(--arc-teal);
  background: var(--arc-teal);
  color: var(--ink);
  font-size: .875rem;
  font-weight: 700;
  line-height: 1.4;
  white-space: nowrap;
}

.trial-cta:hover { background: var(--paper); border-color: var(--paper); }

.referral-status {
  max-width: 30ch;
  margin: 0;
  color: var(--satin-silver);
  font-size: .8rem;
  line-height: 1.5;
}

.referral-status[role="alert"] { color: var(--paper); }

.legal-page .page-foot { flex-wrap: wrap; }

.referral-disclosure {
  flex-basis: 100%;
  font-size: .9rem;
  line-height: 1.6;
  letter-spacing: 0;
  text-transform: none;
  padding-top: 16px;
  border-top: 1px solid var(--line-dark);
  color: var(--satin-silver);
}

.referral-disclosure p { max-width: 85ch; margin: 0 0 12px; }
.referral-disclosure a { text-decoration: underline; text-underline-offset: .2em; }

@media (max-width: 1100px) {
  :is(.route-page, .legal-page) .desktop-nav { display: none; }
  :is(.route-page, .legal-page) .mobile-nav { display: block; position: relative; }
  :is(.route-page, .legal-page) .mobile-nav-panel { top: 56px; right: 0; width: min(270px, calc(100vw - 40px)); }
}

.trial-label-short { display: none; }
.site-nav .trial-cta:hover { color: var(--ink); }

@media (max-width: 600px) {
  :is(.route-page, .legal-page) .site-nav { position: relative; gap: 8px 12px; padding: 10px 16px; min-height: 72px; }
  .site-nav .brand { gap: 7px; font-size: 18px; }
  .site-nav .brand img { width: 60px; height: auto; }
  .site-nav .primary-nav { margin-left: auto; }
  .site-nav .mobile-nav summary { min-width: 44px; gap: 5px; font-size: 10px; letter-spacing: .05em; min-height: 44px; }
  .site-nav .mobile-nav summary b { display: none; }
  .site-nav .header-trial { flex-basis: auto; align-items: flex-end; }
  .site-nav .trial-cta { padding: 10px 12px; gap: 0; font-size: .8125rem; white-space: normal; }
  .trial-label-long, .site-nav .trial-cta > [aria-hidden] { display: none; }
  .trial-label-short { display: inline; }
  .site-nav .referral-status { max-width: 24ch; text-align: right; }
  :is(.route-page, .legal-page) .mobile-nav { position: static; }
  :is(.route-page, .legal-page) .mobile-nav-panel { top: 100%; right: 16px; width: min(270px, calc(100% - 32px)); min-width: 0; box-shadow: none; }
}
@media print {
  .site-nav { display: none !important; }
}
