/* WHY: the owner replaced the segmented Call/Text/More bar with ONE action.
   Choices remain behind a native disclosure. Keep the forest/cream contrast,
   Host typography, strong focus, easy dismissal and all three contact methods. */
.contact-bar .book-bar-inner { display: block; }
.contact-menu { width: 100%; }
.contact-menu > summary {
  display: flex; align-items: center; justify-content: center; gap: 14px;
  width: 100%; min-height: 54px; padding: 12px 24px; border: 2px solid var(--cream);
  border-radius: 12px; background: var(--cream); color: var(--forest);
  font-size: 1.1875rem; font-weight: 720; line-height: 1.25;
  --glyph-edge: var(--glyph-light); list-style: none; cursor: pointer;
  box-shadow: 0 2px 0 rgba(0, 0, 0, .2);
}
.contact-menu > summary::-webkit-details-marker { display: none; }
.contact-menu > summary::marker { content: ''; }
.contact-menu > summary:hover { background: #fff; color: var(--forest); }
.contact-menu > summary .icon { width: 22px; height: 22px; flex: 0 0 22px; stroke-width: 2.4; }
.contact-menu[open] > summary .icon { transform: rotate(45deg); }
.contact-menu > summary:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
.contact-panel {
  left: 50%; right: auto; transform: translateX(-50%);
  width: min(480px, calc(100% - 24px)); padding: 22px;
  max-height: calc(100dvh - 112px - env(safe-area-inset-bottom, 0px));
  overscroll-behavior: contain;
}
.contact-panel .book-bar-title { text-align: center; margin: 0 0 18px; font-size: 1.25rem; }
.contact-panel .book-option { min-height: 76px; border: 2px solid var(--line); }
.contact-panel .book-option + .book-option { margin-top: 12px; }
.contact-panel .book-option .book-icon { color: var(--cream); }
.contact-panel .book-option strong { color: var(--ink); }
.contact-panel .book-bar-note { margin: 18px 0 10px; line-height: 1.45; }
.contact-detail-link { display: inline-block; padding-block: 8px; color: var(--forest); text-underline-offset: 4px; }
@media (max-width: 374px) {
  .contact-menu > summary { font-size: 1.125rem; padding-inline: 18px; }
  .contact-panel { padding: 18px 14px; }
  .contact-panel .book-option { padding: 12px 10px; gap: 10px; }
  .contact-panel .book-option span { font-size: 1rem; }
}
@media (forced-colors: active) {
  .contact-menu > summary, .contact-panel .book-option { border-color: ButtonText; }
}

/* The opened chooser owns attention without competing with the hero behind it.
   Pointer events pass through so native outside-click dismissal still works. */
.contact-menu[open]::before { content: ''; position: fixed; inset: 0; z-index: -1; background: rgba(13, 34, 26, .38); pointer-events: none; }

/* At 390 x 844 the next local heading peeked 12px above the contact bar.
   Preserve the owner's quiet opening and both choices with a little more exit
   space, without fixed-height sections, snap scrolling or a location-heavy hero. */
.page-home .hero { padding-block-end: clamp(176px, 19vw, 224px); }
