.skip-link {
  position: fixed;
  top: -100px;
  left: 16px;
  z-index: 100000;
  padding: 12px 20px;
  background: #fff;
  color: #0d1b3a;
}
.skip-link:focus {
  top: 12px;
}

.admin-bar .header {
  top: 46px;
}
@media (min-width: 783px) {
  .admin-bar .header {
    top: 32px;
  }
}

@media (max-width: 600px) {
  #wpadminbar {
    position: fixed;
  }
}
.work-card__detail {
  display: block;
  color: inherit;
}
.work-card__detail:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 5px;
}

.work-card__placeholder {
  display: grid;
  place-items: center;
  height: 100%;
  background: #eaf0f6;
  color: #0d1b3a;
}

.stn-pagination {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin-top: 40px;
  flex-wrap: wrap;
}
.stn-pagination .page-numbers {
  padding: 10px 16px;
  border: 1px solid #d8dee8;
}
.stn-pagination .current {
  background: #0d1b3a;
  color: #fff;
}

.stn-article {
  max-width: 960px;
}

.stn-article__meta {
  display: block;
  margin-bottom: 24px;
  color: #66717f;
}

.stn-article__image {
  display: block;
  width: 100%;
  height: auto;
  margin-bottom: 32px;
}

.stn-article__back {
  margin-top: 40px;
}

.entry-content {
  overflow-wrap: anywhere;
  line-height: 1.9;
}
.entry-content > * + * {
  margin-top: 1.4em;
}
.entry-content h2 {
  font-size: 28px;
  font-weight: 700;
}
.entry-content h3 {
  font-size: 22px;
  font-weight: 700;
}
.entry-content ul {
  list-style: disc;
  padding-left: 1.5em;
}
.entry-content ol {
  list-style: decimal;
  padding-left: 1.5em;
}
.entry-content a {
  color: #12508f;
  text-decoration: underline;
}
.entry-content img {
  max-width: 100%;
  height: auto;
}
.entry-content table {
  border-collapse: collapse;
  width: 100%;
}
.entry-content th, .entry-content td {
  padding: 12px;
  border: 1px solid #d8dee8;
}

.contact-form .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}

.contact-form .wpcf7-not-valid-tip {
  font-size: 14px;
  margin-top: 8px;
}

.contact-form .wpcf7-list-item {
  margin: 0;
}

.contact-form .wpcf7-response-output {
  margin: 24px 0 0;
  padding: 16px;
}

.contact-form .wpcf7-acceptance input {
  margin-right: 10px;
}

.contact-form .wpcf7-submit {
  cursor: pointer;
}

.page-head__title {
  overflow-wrap: anywhere;
}

/* Header telephone: align icon and number without an hours row. */
.header__tel-number { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; }
.header__tel-icon { width: 24px; height: 24px; flex: 0 0 24px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.cta__tel-hours:empty { display: none; }

.header__tel-icon { transform: translateY(2px); }

/* Rebalance the hero after removing its English eyebrow. */
.mv__inner { padding-top: 32px; }
.mv__title { margin-top: 0; }
@media screen and (min-width: 768px) { .mv__inner { padding-top: 40px; } }

/* President greeting without photography. */
.message--text-only { display: block; max-width: 880px; margin-inline: auto; }
.message--text-only .message__body { width: 100%; max-width: none; }
.message--text-only .message__text { line-height: 2.2; }
.message--text-only .message__sign { text-align: right; margin-top: 40px; }

/* Keep the mobile fixed drawer relative to the viewport. */
@media screen and (max-width: 767px) {
  .header { -webkit-backdrop-filter: none; backdrop-filter: none; }
  .header:has(.drawer-content.is-checked) { transform: none; }
}

/* Fit hero labels and align Contact Form 7 generated controls. */
@media screen and (max-width: 767px) { .mv__button { min-width: 0; gap: 8px; padding-inline: 14px; font-size: 14px; } .mv__button .button__label { white-space: nowrap; letter-spacing: 0; } }
@media screen and (max-width: 359px) { .mv__actions { flex-direction: column; } .mv__button { flex: auto; width: 100%; } }
.contact-form .wpcf7-acceptance label { display: flex; align-items: center; gap: 10px; cursor: pointer; }
.contact-form .wpcf7-acceptance input[type="checkbox"] { flex: 0 0 18px; width: 18px; height: 18px; margin: 0; accent-color: #0d1b3a; }
.contact-form .wpcf7-list-item-label { font-size: 14px; line-height: 1.6; }
.contact-form .form-submit > p:first-child { position: relative; width: min(280px, 100%); margin-inline: auto; }
.contact-form .form-submit__button { display: block; width: 100%; min-width: 0; text-align: center; padding-inline: 20px; }
.contact-form .form-submit .wpcf7-spinner { position: absolute; top: 50%; right: 12px; margin: -12px 0 0; }
