/* Loaded only for stores that keep LINE and email available together. */
.contact-channel-links {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 10px;
  min-width: 0;
}
.contact-channel-links > a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.contact-channel-links .contact-channel-email,
.contact-channel-links .contact-channel-anonymous {
  border: 1px solid #dfb9c8;
  background: #fffafb;
  color: #782d4a;
  box-shadow: none;
}
.contact-channel-links .contact-channel-email:hover,
.contact-channel-links .contact-channel-anonymous:hover { background: #f9e9ef; }
/* SEG header only: anonymous questions are the primary contact route. */
.contact-channel-links--anonymous-first > [data-contact-link="line"] {
  border: 1px solid #dfb9c8;
  background: #fffafb;
  color: #782d4a;
  box-shadow: none;
}
.contact-channel-links--anonymous-first > [data-contact-link="line"]:hover { background: #f9e9ef; }
.contact-channel-links--anonymous-first > .contact-channel-anonymous {
  border-color: #b83262;
  background: #b83262;
  color: #fff;
  box-shadow: 0 4px 12px rgb(184 50 98 / 14%);
}
.contact-channel-links--anonymous-first > .contact-channel-anonymous:hover { background: #9f2853; }
.header-contact-links {
  position: relative;
  z-index: 1;
  justify-self: end;
  flex-wrap: nowrap;
  gap: 8px;
  pointer-events: auto;
}
.header-contact-links .header-cta { padding: 10px 14px; font-size: 12px; }
.menu-contact-links { display: grid; grid-template-columns: 1fr 1fr; margin-top: 16px; }
.mobile-menu-panel .menu-contact-links > a { min-height: 48px; margin: 0; padding: 10px 6px; font-size: 12px; }
.menu-contact-links .contact-channel-anonymous,
.menu-contact-links .contact-channel-apply { grid-column: auto; }
.contact-actions > .section-contact-links { flex: 1 1 auto; }
.section-contact-links > a { flex: 1 1 auto; }
.video-contact > .section-contact-links { flex: 0 0 auto; }
.guide-chat-escalation > .contact-channel-links { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; }
.guide-chat-answer .contact-channel-links { margin-top: 12px; }
.guide-chat-answer .contact-channel-links > a { flex: 1 1 120px; margin-top: 0; }
.diagnosis-result-actions > [data-diagnosis-videos-cta] { grid-column: 1 / -1; }

@media (min-width: 901px) and (max-width: 1200px) {
  .site-header { column-gap: 16px; }
  .site-header .desktop-nav { gap: 14px; font-size: 12px; }
  .header-contact-links .header-cta { padding-inline: 10px; font-size: 11px; }
}

@media (max-width: 900px) {
  .site-header .header-contact-links { display: none; }
  .site-header { grid-template-columns: 1fr auto; }
}

@media (min-width: 901px) and (max-width: 1100px) {
  .site-header:has(.contact-channel-anonymous) { grid-template-columns: auto 1fr auto; column-gap: 12px; }
  .site-header:has(.contact-channel-anonymous) .site-brand span { font-size: 22px; }
  .site-header:has(.contact-channel-anonymous) .site-brand small { display: none; }
  .site-header:has(.contact-channel-anonymous) .desktop-nav { justify-content: center; gap: 10px; }
}

@media (max-width: 767px) {
  .section-contact-links { width: 100%; display: grid; grid-template-columns: 1fr 1fr; }
  .section-contact-links > a { min-width: 0; padding: 12px 8px; font-size: 13px; }
  .mobile-contact-bar--all { grid-template-columns: minmax(0, 1.25fr) repeat(3, minmax(0, 1fr)); }
  .mobile-contact-bar--all > a {
    display: flex;
    justify-content: center;
    min-height: 52px;
    padding: 8px 4px;
    text-align: center;
  }
  .mobile-contact-bar--all strong { overflow: visible; font-size: 13px; line-height: 1.4; text-overflow: clip; }
  .mobile-contact-bar--all .mobile-contact-email { border: 1px solid #d9aebe; background: #fff; color: #732d48; }
  .mobile-contact-bar--all [data-application-entry] { border-color: #bb416d; background: #fff2f7; color: #8f2953; }
  .mobile-contact-bar--icons > a {
    flex-direction: column;
    gap: 3px;
    padding-block: 6px;
  }
  .mobile-contact-bar--icons .mobile-contact-glyph {
    display: block;
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    pointer-events: none;
  }
  .guide-chat-escalation > .contact-channel-links { grid-template-columns: 1fr; }
}

/* SEG: keep all five mobile entry points in one row, without covering content. */
@media (max-width: 767px) {
  html[data-public-theme="light"] body:has(.mobile-contact-bar--all) .mobile-contact-bar--all {
    padding-right: 77px;
  }
  html[data-public-theme="light"] body:has(.mobile-contact-bar--all) .guide-chat {
    right: 8px;
    bottom: calc(7px + env(safe-area-inset-bottom, 0px));
  }
  html[data-public-theme="light"] body:has(.mobile-contact-bar--all) .guide-chat-launcher {
    width: 64px;
    min-width: 0;
    height: 60px;
    min-height: 60px;
    grid-template-columns: 1fr;
    grid-template-rows: 18px 30px;
    justify-items: center;
    gap: 2px;
    padding: 4px 2px;
    border-radius: 10px;
    box-shadow: none;
    text-align: center;
  }
  html[data-public-theme="light"] body:has(.mobile-contact-bar--all) .guide-chat-mark {
    width: 18px;
    height: 18px;
    font-size: 16px;
    background: none;
    box-shadow: none;
  }
  html[data-public-theme="light"] body:has(.mobile-contact-bar--all) .guide-chat-launcher strong {
    display: block;
    inline-size: 4em;
    margin-inline: auto;
    font-family: inherit;
    font-size: 12px;
    line-height: 15px;
    letter-spacing: 0;
    white-space: normal;
  }
  /* iOS must not need to zoom the page just to focus the question field. */
  html[data-public-theme="light"] .guide-chat-search input { font-size: 16px; }
}
