/* Regular pill actions share a minimum width; narrow screens cap it at their container. */
:root { --argus-button-min-width: 240px; --argus-action-min-width: 168px; }
/* The park map action sets the floor for text pills. Primary CTAs keep their wider 240px rule below. */
body #main :where(
    .elementor-button, .gem-button,
    button[type="submit"], input[type="submit"], input[type="button"],
    .ace-button, .ace-more, .ace-categories > a,
    .argus-youtube-expand, .argus-park-map-link, .argus-media-load,
    .argus-reading-action, .argus-article-source, .argus-reading-contact__button,
    .argus-profile-navigation a, .argus-collab-navigation a,
    .argus-profile-photo-contact a, .argus-collab-photo-contact a,
    .argus-legal-jump a,
    .argus-search-intro button,
    .argus-search-pagination a.prev, .argus-search-pagination a.next,
    .argus-filter-media-options label > span,
    .az-filters button, .az-more, .afo-button,
    .argus-home-blog-editorial-feature .argus-home-blog-editorial-link
):not(:where(.argus-profile-all .elementor-button, .argus-collab-all .elementor-button)) {
    box-sizing: border-box;
    min-width: min(var(--argus-action-min-width), calc(100vw - 64px)) !important;
    max-width: 100%;
    text-align: center;
    justify-content: center;
}
body :is(.argus-scan-dialog > button, .argus-scan-dialog > a, .argus-youtube-close),
body #cookie-law-info-bar :is(.cli_action_button, .cli_settings_button) {
    box-sizing: border-box;
    min-width: min(var(--argus-action-min-width), calc(100vw - 36px)) !important;
}
body #main .argus-filter-media-options { display:flex;flex-wrap:wrap;gap:8px; }
body #main .argus-filter-media-options label { flex:0 0 auto;min-width:min(var(--argus-action-min-width),calc(100vw - 64px));max-width:100%; }
body #main .argus-filter-media-options label > span { width:100%;min-height:44px; }
@media(max-width:640px) {
    body #page #main .argus-reading-navigation .argus-reading-neighbour { min-width:0!important; }
}
body #main :is(
    .argus-home-btn .elementor-button,
    .argus-cta .elementor-button,
    .ace-button,
    .ace-more,
    .ace-contact .elementor-button,
    .argus-profile-contact .elementor-button,
    .argus-collab-contact .elementor-button,
    .argus-teacher-v3-primary-action .elementor-button,
    .argus-teacher-v3-light-action .elementor-button,
    .argus-press-all .elementor-button,
    .argus-teacher-next-step .elementor-button,
    .az-contact .elementor-button,
    .argus-collab-photo-contact a,
    .argus-profile-photo-contact a
) {
    box-sizing: border-box;
    min-width: min(var(--argus-button-min-width), calc(100vw - 64px)) !important;
    max-width: 100%;
    border-radius: 999px !important;
    justify-content: center;
    white-space: nowrap;
}
/* Legacy Elementor adds a row between the container and the action columns. */
body .argus-home-actions > .elementor-container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
}
body .argus-home-actions > .elementor-container > .elementor-column {
    width: auto !important;
    max-width: 100%;
    flex: 0 0 auto;
}

/* Contact CTAs use the approved homepage label typography in every template. */
body #page #main :is(
    a.elementor-button[href*="/contact"],
    a.gem-button[href*="/contact"],
    a.ace-button[href*="/contact"],
    a.elementor-button[href="#epikoinonia"],
    .argus-home-btn--orange a.elementor-button[href^="tel:"],
    .argus-reading-contact__button,
    .argus-profile-photo-contact a,
    .argus-collab-photo-contact a
) {
    font-family: "Source Sans Pro", sans-serif !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    line-height: 1 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}
body #page #main :is(
    a.elementor-button[href*="/contact"],
    a.gem-button[href*="/contact"],
    a.ace-button[href*="/contact"],
    a.elementor-button[href="#epikoinonia"],
    .argus-home-btn--orange a.elementor-button[href^="tel:"],
    .argus-reading-contact__button,
    .argus-profile-photo-contact a,
    .argus-collab-photo-contact a
) :is(.elementor-button-text, .elementor-button-content-wrapper) {
    font-family: inherit !important;
    font-weight: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
    letter-spacing: inherit !important;
    text-transform: inherit !important;
}

/* The dark service-card action is a contact pill, not an argus-card-more link.
   Constrain its longer phone label to the card's inner width on small screens. */
body #main .argus-home-service-card--cta .argus-home-btn {
    margin-top: auto;
    padding-top: 24px;
}
body #main .argus-home-service-card--cta .argus-home-btn .elementor-button {
    min-width: min(var(--argus-button-min-width), 100%) !important;
    min-height: 52px;
    white-space: normal;
}
body #main .argus-home-service-card--cta .argus-home-btn .elementor-button:focus-visible {
    outline: 3px solid #fff;
    outline-offset: 4px;
}
