.exch-job-offers { --exch-accent: #c8102e; max-width: 960px; margin: 0 auto; padding-top: 2.5rem; padding-bottom: 3rem; }

/* Title lives in the content (below), not the masthead. Keep the masthead h1
   in place but invisible so the logo stays vertically centered as before
   (visibility:hidden reserves its space; display:none would drop the logo). */
body.allasajanlatok .masthead h1 { visibility: hidden !important; }

/* Hero image (page Featured Image), rounded like the cards */
.exch-job-hero { margin: 0 0 1.75rem; }
.exch-job-hero__img { display: block; width: 100%; height: auto; border-radius: 14px; }

/* Content page title — matches the currency page's thin "Euró(EUR)" heading */
.exch-job-title {
    margin: 0 0 1.5rem;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    font-size: 2.75rem;
    line-height: 1.2;
    color: #333;
    text-align: left;
}

/* Filter — searchable Select2 dropdown (overrides the theme's global select2
   rules: 49px/square/bold/float:right — scoped to this widget only). */
.exch-job-filter { margin: 0 0 1.75rem; display: flex; align-items: center; gap: .75rem; flex-wrap: wrap; }
.exch-job-filter__label { font-weight: 700; font-size: 1.05rem; color: #222; }

/* Closed box */
.exch-job-filter .select2.select2-container { width: 340px !important; float: none !important; max-width: 100%; }
.exch-job-filter .select2-container--default .select2-selection--single {
    height: 56px !important;
    background: #fff;
    border: 1px solid #d5d5d5 !important;
    border-radius: 12px !important;
    padding: 0 .5rem;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
    transition: border-color .15s, box-shadow .15s;
}
.exch-job-filter .select2-container--default .select2-selection--single:hover,
.exch-job-filter .select2-container--default.select2-container--focus .select2-selection--single,
.exch-job-filter .select2-container--default.select2-container--open .select2-selection--single {
    border-color: var(--exch-accent) !important;
    box-shadow: 0 0 0 3px rgba(200, 16, 46, .12);
}
.exch-job-filter .select2-selection__rendered {
    line-height: 56px !important;
    font-size: 1.1rem;
    font-weight: 600;
    color: #222;
    padding-left: .75rem;
    padding-right: 2.75rem;
}
.exch-job-filter .select2-selection__arrow { height: 56px !important; right: 22px !important; width: 16px; }
/* Custom chevron (theme hides Select2's default arrow) */
.exch-job-filter .select2-selection__arrow b { display: none !important; }
.exch-job-filter .select2-selection__arrow::after {
    content: ""; position: absolute; top: 50%; left: 2px; margin-top: -6px;
    width: 9px; height: 9px; border-right: 2px solid #555; border-bottom: 2px solid #555;
    transform: rotate(45deg); transition: transform .15s, margin-top .15s;
}
.exch-job-filter .select2-container--open .select2-selection__arrow::after {
    margin-top: -2px; transform: rotate(-135deg);
}

/* Native fallback before Select2 upgrades it (or if JS is off) */
.exch-job-filter select { padding: .75rem 1rem; font-size: 1.05rem; border: 1px solid #d5d5d5; border-radius: 12px; font-family: inherit; min-width: 240px; }

/* Cards */
.exch-job-cards { display: grid; gap: 1rem; }
.exch-job-card {
    border: 1px solid #e6e6e6; border-radius: 14px; background: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .04); overflow: hidden;
    transition: box-shadow .18s, border-color .18s;
}
.exch-job-card[open] { box-shadow: 0 8px 28px rgba(0, 0, 0, .08); border-color: #dcdcdc; }

.exch-job-card__summary {
    display: flex; align-items: center; gap: 1rem; flex-wrap: wrap;
    padding: 1.25rem 1.5rem; cursor: pointer; list-style: none; user-select: none;
}
.exch-job-card__summary::-webkit-details-marker { display: none; }
.exch-job-card__summary:hover .exch-job-card__title { color: var(--exch-accent); }

.exch-job-card__title { font-size: 1.3rem; font-weight: 700; line-height: 1.2; transition: color .15s; }
.exch-job-card__badges { display: flex; gap: .4rem; flex-wrap: wrap; }
.exch-job-badge {
    display: inline-block; padding: .2rem .7rem; font-size: .8rem; font-weight: 600;
    color: var(--exch-accent); background: rgba(200, 16, 46, .08);
    border-radius: 999px; white-space: nowrap;
}
.exch-job-card__toggle { margin-left: auto; width: 1.5rem; height: 1.5rem; position: relative; flex: 0 0 auto; }
.exch-job-card__toggle::after {
    content: ""; position: absolute; top: 50%; left: 50%;
    width: 11px; height: 11px;
    border-right: 2px solid var(--exch-accent); border-bottom: 2px solid var(--exch-accent);
    transform: translate(-50%, -70%) rotate(45deg); transition: transform .18s;
}
.exch-job-card[open] .exch-job-card__toggle::after { transform: translate(-50%, -30%) rotate(-135deg); }

/* Body */
.exch-job-card__body { padding: 0 1.5rem 1.5rem; border-top: 1px solid #f0f0f0; }
.exch-job-lead { margin: 1.25rem 0 0; color: #444; font-size: 1rem; line-height: 1.6; }

.exch-job-grid {
    display: grid; grid-template-columns: repeat(2, 1fr);
    gap: 1rem; margin: 1.25rem 0 0;
}
.exch-job-block { background: #fafafa; border: 1px solid #eee; border-radius: 12px; padding: 1.1rem 1.25rem; }
.exch-job-block__title { margin: 0 0 .6rem; font-size: 1.02rem; font-weight: 700; }

.exch-job-list { margin: 0; padding: 0; list-style: none; }
.exch-job-list li { position: relative; padding: .3rem 0 .3rem 1.35rem; line-height: 1.5; }
.exch-job-list li::before {
    content: ""; position: absolute; left: .1rem; top: .75em;
    width: 6px; height: 6px; border-radius: 50%; background: var(--exch-accent);
}

/* Apply footer */
.exch-job-footer { margin: 1.5rem 0 0; padding: 1.25rem 1.35rem; background: #fff; border: 1px solid #eee; border-radius: 12px; }
.exch-job-footer__text { color: #444; line-height: 1.6; }
.exch-job-footer__cta { margin: 1rem 0 0; }
/* Recolor the theme primary button teal, keeping its shape/shadow. */
.exch-job-footer .btn-primary { background-color: #0B667C; border-color: #0B667C; color: #fff !important; }
.exch-job-footer .btn-primary:hover { background-color: #095260; border-color: #095260; color: #fff !important; }

.exch-job-empty { color: #666; }

@media (max-width: 560px) {
    .exch-job-offers { padding-left: 15px; padding-right: 15px; }
    .exch-job-title { font-size: 2rem; }
    .exch-job-grid { grid-template-columns: 1fr; }
    .exch-job-card__summary { padding: 1rem 1.15rem; }
    .exch-job-card__body { padding: 0 1.15rem 1.15rem; }
    .exch-job-filter .select2-container { min-width: 0; flex: 1 1 auto; }
}
