/* Scoped public listing; no competition form styles are changed. */
.competitions-page,
.competitions-page *,
.competitions-page *::before,
.competitions-page *::after {
    box-sizing: border-box;
    min-width: 0;
    max-width: 100%;
    overflow-wrap: anywhere;
}

.competitions-page {
    font-family: 'Inter', sans-serif;
}
.competitions-page.section {
    padding-top: calc(72px + clamp(24px, 5vw, 64px));
}
.competitions-page .entry-content { margin-bottom: 2rem; }
.comp-list {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1.5rem;
}
.comp-list .comp-card {
    padding: clamp(16px, 3vw, 28px);
    background: #fff;
    border: 1px solid #E2E8F0;
    border-top: 4px solid #D4A843;
    border-radius: 10px;
}
.comp-card h2 { font-size: 1.5rem; }
.comp-card h2 a { color: #0A1628; }
.comp-card h2 a:hover { text-decoration: underline; }
.comp-card-free {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 999px;
    background: #D4A843;
    color: #0A1628;
    font-size: 0.8125rem;
    font-weight: 600;
}
.comp-card-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.comp-list-button {
    display: inline-flex;
    justify-content: center;
    padding: 12px 20px;
    border: 2px solid #0A1628;
    border-radius: 6px;
    font-weight: 600;
    text-align: center;
    white-space: normal;
}
.comp-list-button-primary { background: #0A1628; color: #fff; }
.comp-list-button-primary:hover { background: #162035; color: #fff; }
.comp-list-button-secondary { background: #fff; color: #0A1628; }
.comp-list-button-secondary:hover { background: #D4A843; color: #0A1628; }
@media (min-width: 900px) {
    .comp-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 480px) {
    .comp-card-actions .comp-list-button { width: 100%; }
}
