.catalog-hero{background:var(--color-primary-light, #DCEDC8);padding:var(--spacing-xxl, 4rem) 0 var(--spacing-xl, 2.5rem)}.catalog-hero__eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:var(--font-size-sm, .875rem);color:var(--color-text-secondary, #205729);margin:0 0 var(--spacing-sm, .5rem);font-weight:700}.catalog-hero__title{font-size:var(--font-size-xxl, 2.5rem);line-height:1.15;margin:0 0 var(--spacing-md, 1rem)}.catalog-hero__description{max-width:60ch;color:var(--color-text-secondary, #205729);font-size:var(--font-size-lg, 1.125rem);margin:0 0 var(--spacing-md, 1rem)}.catalog-hero__back a{display:inline-flex;align-items:center;gap:.4ch;color:var(--color-text-secondary, #205729);font-weight:600}.catalog-hero__back a:before{content:"←"}.catalog{padding:var(--spacing-xl, 2.5rem) 0 var(--spacing-xxl, 4rem)}.catalog__layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--spacing-xl, 2.5rem)}@media(min-width:960px){.catalog__layout{grid-template-columns:280px minmax(0,1fr)}}.catalog-filters{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.25rem;align-self:start}@media(min-width:960px){.catalog-filters{position:sticky;top:1rem}}.catalog-filters__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.catalog-filters__title{font-size:1.125rem;margin:0;color:var(--color-text-secondary, #205729)}.catalog-filters__clear{background:none;border:0;color:var(--color-primary-dark, #689F38);font-weight:600;cursor:pointer;padding:.25rem .5rem;font-size:.875rem}.catalog-filters__clear:hover{text-decoration:underline}.catalog-filters__form{display:flex;flex-direction:column;gap:1.25rem}.catalog-filters__group{border:0;padding:0;margin:0}.catalog-filters__label{display:block;font-weight:600;font-size:.875rem;color:var(--color-text-secondary, #205729);margin-bottom:.5rem}.catalog-filters__input,.catalog-filters__select{width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:8px;font:inherit;background:#fff}.catalog-filters__options{display:flex;flex-direction:column;gap:.4rem}.catalog-filters__checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.95rem;color:var(--color-text-secondary, #205729)}.catalog-filters__checkbox input{accent-color:var(--color-primary-dark, #689F38)}.catalog-filters__count{margin-left:auto;background:var(--color-primary-light, #DCEDC8);color:var(--color-text-secondary, #205729);font-size:.75rem;font-weight:600;padding:.1rem .5rem;border-radius:999px;min-width:1.5rem;text-align:center}.catalog-filters__chips{display:flex;flex-wrap:wrap;gap:.4rem}.catalog-filters__chip{display:inline-flex;align-items:center;padding:.35rem .75rem;border:1px solid #d1d5db;border-radius:999px;background:#fff;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--color-text-secondary, #205729);transition:background .15s,border-color .15s,color .15s}.catalog-filters__chip input{position:absolute;opacity:0;pointer-events:none}.catalog-filters__chip:has(input:checked){background:var(--color-primary-dark, #689F38);border-color:var(--color-primary-dark, #689F38);color:#fff}.catalog-results__header{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:baseline;margin-bottom:1rem}.catalog-results__count{margin:0;font-weight:600;color:var(--color-text-secondary, #205729)}.catalog-results__filters{margin:0;color:#4b5563;font-size:.9rem}.catalog-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1rem}.catalog-row.is-hidden{display:none}.catalog-card{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:1rem 1.25rem;align-items:start;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:1.25rem;transition:box-shadow .15s,border-color .15s}.catalog-card:hover{box-shadow:0 2px 10px #0000000d}.catalog-row.is-open .catalog-card{border-color:var(--color-primary, #8BC34A);box-shadow:0 2px 14px #8bc34a2e}.catalog-card__icon{width:56px;height:56px;display:inline-flex;align-items:center;justify-content:center;background:var(--color-primary-light, #DCEDC8);color:var(--color-primary-dark, #689F38);border-radius:12px}.catalog-card__content{min-width:0}.catalog-card__branch{margin:0 0 .15rem;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-primary-dark, #689F38)}.catalog-card__title{margin:0 0 .35rem;font-size:1.2rem;line-height:1.3;color:var(--color-text-secondary, #205729)}.catalog-card__meta{margin:0;color:#4b5563;font-size:.92rem;line-height:1.5}.catalog-card__aside{display:flex;flex-direction:column;align-items:flex-end;gap:.4rem;min-width:8rem}.catalog-card__date{margin:0;font-size:.85rem;color:#4b5563;text-align:right}.catalog-card__date-label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;font-weight:600}.catalog-card__toggle{width:36px;height:36px;border-radius:999px;background:var(--color-primary-light, #DCEDC8);color:var(--color-primary-dark, #689F38);border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s,transform .2s}.catalog-card__toggle:hover{background:#c5e1a5}.catalog-card__toggle svg{transition:transform .2s}.catalog-row.is-open .catalog-card__toggle svg{transform:rotate(180deg)}.catalog-status{display:inline-block;padding:.25rem .75rem;border-radius:999px;font-size:.78rem;font-weight:600;background:#e5e7eb;color:#374151;white-space:nowrap}.catalog-status--registration_open,.catalog-status--running{background:var(--color-primary, #8BC34A);color:#fff}.catalog-status--upcoming{background:#e0e7ff;color:#3730a3}.catalog-status--waitlist{background:#ffe0b2;color:#b45309}.catalog-status--ended{background:#e5e7eb;color:#6b7280}.catalog-card__details{grid-column:1 / -1;background:var(--color-primary-light, #DCEDC8);border-radius:10px;padding:1.25rem;margin-top:.5rem}.catalog-card__desc{margin:0 0 1rem;color:var(--color-text-secondary, #205729);font-size:.95rem}.catalog-card__cols{display:grid;gap:1.25rem;grid-template-columns:1fr}@media(min-width:720px){.catalog-card__cols{grid-template-columns:1fr 1fr 1fr}}.catalog-col__title{margin:0 0 .5rem;font-size:.95rem;font-weight:700;color:var(--color-text-secondary, #205729)}.catalog-col ul,.catalog-card__runs ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem;font-size:.9rem;color:var(--color-text-secondary, #205729)}.catalog-col li,.catalog-card__runs li{position:relative;padding-left:1.25rem}.catalog-col li:before,.catalog-card__runs li:before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:999px;background:var(--color-primary-dark, #689F38)}.catalog-card__runs{margin-top:1.25rem}.catalog-card__deadline{color:#4b5563;font-size:.85rem}.catalog-contact{margin-top:1.25rem;background:#fff;border-radius:10px;padding:1rem 1.25rem}.catalog-contact__title{margin:0 0 .25rem;font-size:1rem;color:var(--color-text-secondary, #205729)}.catalog-contact__text{margin:0 0 .75rem;color:#4b5563;font-size:.9rem}.catalog-contact__actions{display:flex;flex-wrap:wrap;gap:.5rem}.catalog-contact__btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .9rem;border-radius:8px;background:var(--color-primary-light, #DCEDC8);color:var(--color-primary-dark, #689F38);font-weight:600;font-size:.9rem;text-decoration:none;transition:background .15s}.catalog-contact__btn:hover{background:var(--color-primary, #8BC34A);color:#fff}.catalog-empty{text-align:center;padding:2.5rem 1rem;background:#fff;border-radius:14px;border:1px dashed #d1d5db}.catalog-empty h3{margin:0 0 .5rem}.catalog-empty p{margin:0 0 1rem;color:#4b5563}.catalog-empty__actions{display:inline-flex;gap:.75rem;flex-wrap:wrap;justify-content:center}@media(max-width:600px){.catalog-card{grid-template-columns:48px minmax(0,1fr);grid-template-areas:"icon content" "aside aside" "details details"}.catalog-card__icon{grid-area:icon;width:48px;height:48px}.catalog-card__icon svg{width:24px;height:24px}.catalog-card__content{grid-area:content}.catalog-card__aside{grid-area:aside;flex-direction:row;align-items:center;justify-content:space-between;min-width:0}.catalog-card__date{text-align:left}.catalog-card__details{grid-area:details}}
