/* Shared contact strip: changing copy and a fixed, icon-free phone action. */
body .announcement-bar {
  min-height:60px;
  padding:8px 5%;
  color:#fff;
  background:var(--site-blue,#146fb8);
  text-align:left;
}
body .announcement-bar .banner-wrapper {
  display:block;
  width:100%;
  max-width:1200px;
  margin:0 auto;
}
body .announcement-copy {
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) max-content;
  align-items:center;
  gap:24px;
  width:100%;
  min-width:0;
  margin:0;
  font-family:'Barlow',Arial,sans-serif;
  font-size:18px;
  font-weight:500;
  line-height:1.4;
  letter-spacing:0;
}
.announcement-messages {display:grid;min-width:0;text-align:left;}
.announcement-message {
  grid-area:1/1;
  white-space:normal;
  opacity:0;
  pointer-events:none;
  transition:opacity 450ms ease;
}
.announcement-message.is-active {opacity:1;}
.announcement-copy:not([data-announcement-ready]) .announcement-message:not(.is-active) {display:none;}
.announcement-copy[data-announcement-ready] .announcement-message {white-space:nowrap;}
.announcement-message[hidden] {display:none;}
.announcement-measure {
  position:absolute;
  top:0;
  left:0;
  width:0;
  height:0;
  overflow:hidden;
  visibility:hidden;
  pointer-events:none;
  white-space:nowrap;
  font:inherit;
  letter-spacing:inherit;
}
.announcement-contact {
  display:flex;
  align-items:center;
  gap:12px;
  min-height:44px;
  padding-left:24px;
  border-left:1px solid #ffffff5c;
}
.announcement-call-label {
  color:#fff;
  font-size:11px;
  font-weight:600;
  line-height:1.3;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}
body .announcement-bar .announcement-phone {
  display:inline-flex;
  align-items:center;
  min-height:44px;
  flex-shrink:0;
  color:#fff;
  font-family:'Teko','Arial Narrow',Arial,sans-serif;
  font-size:28px;
  font-weight:600;
  font-variant-numeric:tabular-nums;
  line-height:1;
  letter-spacing:.015em;
  white-space:nowrap;
  text-decoration:underline;
  text-decoration-color:transparent;
  text-underline-offset:5px;
  transition:text-decoration-color var(--site-hover-duration) var(--site-hover-easing);
}
body .announcement-bar .announcement-phone .span-yellow {color:inherit;text-decoration:inherit;}
body .announcement-bar .announcement-phone:hover {text-decoration-color:currentColor;}
body .announcement-bar .announcement-phone:focus-visible {outline:3px solid #fff;outline-offset:3px;border-radius:2px;}
.announcement-assistive {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip-path:inset(50%);
  white-space:nowrap;
  border:0;
}
body .announcement-copy.announcement-contact-only {grid-template-columns:minmax(0,1fr);gap:0;}
.announcement-contact-only .announcement-messages,
.announcement-contact-only .announcement-assistive {display:none;}
.announcement-contact-only .announcement-contact {justify-self:center;padding-left:0;border-left:0;}
@media (max-width:599px) {
  body .announcement-copy {gap:12px;font-size:16px;}
  .announcement-contact {gap:10px;padding-left:12px;}
  body .announcement-bar .announcement-phone {font-size:26px;}
  /* With scripting unavailable, keep the phone on one compact row. */
  body .announcement-copy:not([data-announcement-ready]) {grid-template-columns:minmax(0,1fr);gap:0;}
  .announcement-copy:not([data-announcement-ready]) .announcement-messages,
  .announcement-copy:not([data-announcement-ready]) .announcement-assistive {display:none;}
  .announcement-copy:not([data-announcement-ready]) .announcement-contact {justify-self:center;padding-left:0;border-left:0;}
}
@media (prefers-reduced-motion:reduce) {
  .announcement-message {transition:none;}
}
