/* Reusable controls and text. WordPress block selectors adapt existing content
   without rewriting saved blocks or changing the native admin interface. */
.button, .club-actions .wp-block-button__link {
    background: var(--gold);
    color: var(--bg);
    border: 1px solid var(--gold);
    font-size: var(--text-sm);
    text-decoration: none;
}
.button {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 38px;
    padding: 15px 22px;
    font-weight: var(--weight-semibold);
    max-width: 100%;
    overflow-wrap: anywhere;
    line-height: var(--leading-control);
}
.button:hover, .club-actions .wp-block-button__link:hover {
    background: var(--button-hover);
    color: var(--bg);
}
.button span { font-size: 1.3125rem; line-height: 1; }
.button--compact {
    border-radius: var(--radius-sm);
    min-height: var(--control-height);
    padding: var(--space-2) var(--space-4);
    justify-content: center;
}
.button--quiet, .club-actions .club-button-quiet .wp-block-button__link {
    padding: var(--space-3) 0;
    border-color: transparent;
    background: transparent;
    color: var(--text);
    text-decoration: none;
}
.button--quiet:hover { background: transparent; color: var(--text); }
.form-control, .control-button {
    font: inherit;
    background: var(--panel);
    color: var(--text);
    border: 1px solid var(--control-border);
    border-radius: var(--control-radius, var(--radius-sm));
    min-height: var(--control-height);
    padding: var(--control-padding, var(--space-2) var(--space-3));
}
.control-button { cursor: pointer; text-decoration: none; }
select.form-control {
    appearance: none;
    line-height: var(--leading-control);
    padding-inline-end: 2.5rem;
    background-image: linear-gradient(45deg, transparent 50%, currentColor 50%),
                      linear-gradient(135deg, currentColor 50%, transparent 50%);
    background-position: calc(100% - 17px) 50%, calc(100% - 12px) 50%;
    background-size: 5px 5px;
    background-repeat: no-repeat;
}
@media (forced-colors: active) {
    select.form-control { appearance: auto; background-image: none; }
}

.prose, .club-copy {
    font-size: var(--text-prose);
    line-height: var(--leading-prose);
    color: var(--prose-ink);
}
.prose {
    max-width: var(--measure-prose);
    min-width: 0;
    overflow-wrap: anywhere;
}
.prose h2 { font-size: 1.75rem; color: var(--text); margin: 1.8em 0 .7em; }
.prose h3 { font-size: 1.375rem; color: var(--text); margin: 1.5em 0 .7em; }
.prose a { color: var(--gold); }
.prose p { margin-bottom: 1.5em; }
.prose img { height: auto; }
@media (max-width: 700px) { .prose { font-size: var(--text-prose); } }

/* Compact reading layout, shared by legal information and FAQ. */
.content-page.content-page--compact { max-width: var(--measure-compact); padding-block: 3.5rem 5rem; }
.content-page.content-page--compact > h1 {
    max-width: none;
    margin: 0 0 1.5rem;
    font: 600 var(--heading-md)/1.3 var(--sans);
    letter-spacing: -.02em;
    overflow-wrap: anywhere;
}
.content-page--compact > .prose--compact { max-width: none; font-size: var(--text-compact); line-height: var(--leading-compact); }
.prose--compact > :is(.content-status, .legal-status) { color: var(--muted); font-size: var(--text-sm); margin-bottom: 2rem; }
.prose--compact h2 {
    border-top: 1px solid var(--line);
    padding-top: 1.25rem;
    margin: 2rem 0 .75rem;
    font: 600 var(--text-prose)/var(--leading-control) var(--sans);
    letter-spacing: 0;
}
.prose--compact p { margin: 0 0 1em; }
.prose--compact a { text-decoration: underline; }
@media (max-width: 600px) {
    .content-page.content-page--compact { padding-block: 2.5rem 3.5rem; }
    .content-page.content-page--compact > h1 { font-size: 1.625rem; }
    .content-page--compact > .prose--compact { font-size: var(--text-control); }
}

/* Link controls keep button styling in every interaction state. */
a:is(.button,.control-button,.wp-block-button__link,[role="button"]):is(:link,:visited,:hover,:focus,:active) { text-decoration:none; }
