/*
 * EventHive Classic Layout Styles
 *
 * Classic layout-specific styles for EventHive output.
 * Keep all future selectors scoped to EventHive output.
 */

/* --------------------------------------------------------------------------
   Classic: Tokens
-------------------------------------------------------------------------- */

.eventhive-layout--classic {
    --eh-classic-color-text-default: #000000;
    --eh-classic-color-text: var(--eh-classic-color-text-default);
    --eh-classic-color-link-default: #0D0B61;
    --eh-classic-color-link: var(--eh-color-link, var(--eh-classic-color-link-default));
    --eh-classic-color-link-hover-default: #607B8F;
    --eh-classic-color-link-hover: var(--eh-color-link-hover, var(--eh-classic-color-link-hover-default));
    --eh-classic-color-accent-default: #0d0b61;
    --eh-classic-color-accent: var(--eh-color-accent, var(--eh-classic-color-accent-default));
    --eh-classic-color-accent-contrast: var(--eh-color-accent-contrast, #ffffff);
    --eh-classic-color-surface: #ffffff;
    --eh-classic-color-accent-soft: color-mix(in srgb, var(--eh-classic-color-accent) 10%, var(--eh-classic-color-surface));
    --eh-classic-single-action-hover-background: color-mix(in srgb, var(--eh-classic-color-accent) 80%, var(--eh-classic-color-surface));
    --eh-classic-color-soft-background: #f7f7f7;
    --eh-classic-color-separator: #d7d7d7;
    --eh-classic-color-border: color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
    --eh-text-link-color: var(--eh-classic-color-link);
    --eh-text-link-hover-color: var(--eh-classic-color-link-hover);
    --eh-classic-control-color: var(--eh-classic-color-text);
    --eh-classic-muted-color: color-mix(in srgb, var(--eh-classic-color-text) 66%, var(--eh-classic-color-surface));
    --eh-classic-disabled-color: color-mix(in srgb, var(--eh-classic-color-text) 42%, var(--eh-classic-color-surface));
    --eh-classic-neutral-focus-ring: color-mix(in srgb, var(--eh-classic-color-text-default) 45%, var(--eh-classic-color-surface));
    --eh-classic-size-unit: 16px;
    --eh-classic-control-height: calc(var(--eh-classic-size-unit) * 2.5);
    --eh-classic-control-size: var(--eh-classic-control-height);
    --eh-classic-control-font-size: calc(var(--eh-classic-size-unit) * 0.875);
    --eh-classic-control-icon-size: calc(var(--eh-classic-size-unit) * 1.25);
    --eh-classic-button-icon-size: var(--eh-classic-control-icon-size);
    --eh-classic-icon-size: 1.08em;
    --eh-classic-badge-font-size: var(--eh-text-badge);
    --eh-classic-badge-line-height: var(--eh-leading-tight);
    --eh-classic-action-font-size: var(--eh-text-button);
    --eh-classic-badge-padding-block: calc(var(--eh-classic-size-unit) * 0.25);
    --eh-classic-featured-badge-padding-inline: calc(var(--eh-classic-size-unit) * 0.55);
    --eh-classic-badge-padding-inline: calc(var(--eh-classic-size-unit) * 0.67);
    --eh-classic-list-media-min: calc(var(--eh-classic-size-unit) * 14);
    --eh-classic-list-media-max: calc(var(--eh-classic-size-unit) * 17.5);
    --eh-classic-list-media-width: clamp(var(--eh-classic-list-media-min), 26%, var(--eh-classic-list-media-max));
    --eh-classic-list-min-height: calc(var(--eh-classic-size-unit) * 16);
    --eh-classic-list-stacked-media-ratio: 16 / 9;
    --eh-gap-xs: clamp(calc(var(--eh-classic-size-unit) * 0.4), 0.3vw, calc(var(--eh-classic-size-unit) * 0.6));
    --eh-gap-s: clamp(calc(var(--eh-classic-size-unit) * 0.6), 0.5vw, calc(var(--eh-classic-size-unit) * 0.9));
    --eh-gap-m: clamp(var(--eh-classic-size-unit), 1vw, calc(var(--eh-classic-size-unit) * 1.4));
    --eh-gap-l: clamp(calc(var(--eh-classic-size-unit) * 1.4), 1.5vw, calc(var(--eh-classic-size-unit) * 2));
    --eh-gap-xl: clamp(calc(var(--eh-classic-size-unit) * 2), 2.5vw, calc(var(--eh-classic-size-unit) * 3));
    --eh-gap-xxl: clamp(calc(var(--eh-classic-size-unit) * 3), 4vw, calc(var(--eh-classic-size-unit) * 5));
    --eh-classic-section-gap: var(--eh-gap-l);
    --eh-classic-component-gap: var(--eh-gap-m);
    --eh-classic-control-gap: var(--eh-gap-s);
    --eh-classic-meta-gap: var(--eh-gap-xs);
    --eh-classic-panel-padding: var(--eh-gap-m);
    --eh-classic-panel-padding-large: var(--eh-gap-l);
    --eh-classic-card-footer-gap: var(--eh-gap-m);
    --eh-classic-card-footer-offset: var(--eh-gap-l);
    --eh-classic-compact-row-gap: calc(var(--eh-gap-xs) * 0.5);
    --eh-classic-card-padding: var(--eh-classic-panel-padding);
    --eh-classic-card-padding-block: var(--eh-classic-panel-padding-large);
    --eh-classic-card-gap: var(--eh-classic-section-gap);
    --eh-classic-grid-card-min: calc(var(--eh-classic-size-unit) * 18.75);
    --eh-classic-grid-column-gap: clamp(var(--eh-classic-size-unit), 1vw, calc(var(--eh-classic-size-unit) * 1.2));
    --eh-classic-list-title-size: max(1.25em, var(--eh-heading-h4));
    --eh-classic-pagination-size: calc(var(--eh-classic-size-unit) * 2.5);
    --eh-classic-single-rail-min: calc(var(--eh-classic-size-unit) * 17.5);
    --eh-classic-single-rail-max: calc(var(--eh-classic-size-unit) * 21);
    --eh-classic-single-primary-max: calc(var(--eh-classic-size-unit) * 46);
    --eh-classic-single-highlight-icon-size: var(--eh-heading-h4);
    --eh-classic-event-datetime-gap: calc(var(--eh-classic-size-unit) * 0.125);
    --eh-classic-single-highlight-copy-gap: var(--eh-classic-event-datetime-gap);
    --eh-classic-detail-compact-line-height: 1.1;
    --eh-classic-detail-address-line-height: 1.35;
    --eh-classic-single-action-height: var(--eh-classic-control-height);
    --eh-page-title-font-family: var(--eh-font-family-heading, var(--eh-font-family-content, var(--eh-content-font-family, inherit)));
    --eh-page-title-font-size: var(--eh-heading-page, var(--eh-heading-h1));
    --eh-page-title-line-height: var(--eh-leading-tight);
    --eh-page-header-description-font-family: var(--eh-font-family-content, var(--eh-content-font-family, inherit));
    --eh-page-header-description-font-size: var(--eh-text-content, var(--eh-text-base));
    --eh-page-header-description-font-weight: var(--eh-weight-normal);
    --eh-page-header-description-line-height: var(--eh-leading-body);
    --eh-badge-font-size: var(--eh-classic-badge-font-size);
    --eh-badge-line-height: var(--eh-classic-badge-line-height);
    --eh-badge-padding-block: var(--eh-classic-badge-padding-block);
    --eh-badge-radius: 0;
    --eh-button-primary-background: var(--eh-classic-color-accent);
    --eh-button-primary-border-color: var(--eh-classic-color-accent);
    --eh-button-primary-color: var(--eh-classic-color-accent-contrast);
    --eh-button-primary-hover-background: var(--eh-color-accent, var(--eh-classic-color-link-default));
    --eh-button-primary-hover-border-color: var(--eh-color-accent, var(--eh-classic-color-link-default));
    --eh-button-primary-hover-color: var(--eh-classic-color-accent-contrast);
    --eh-button-primary-focus-color: var(--eh-color-accent, var(--eh-classic-color-link-default));
    --eh-card-meta-font-family: var(--eh-font-family-ui, var(--eh-font-family-content, var(--eh-content-font-family)));
    --eh-pagination-font-family: var(--eh-font-family-ui, var(--eh-content-font-family, inherit));
    --eh-pagination-font-size: var(--eh-text-pagination, var(--eh-text-m));
    --eh-pagination-font-weight: var(--eh-weight-normal, 400);
    --eh-pagination-current-font-weight: var(--eh-pagination-font-weight);
    --eh-pagination-line-height: var(--eh-leading-control);
    --eh-result-bar-font-family: var(--eh-font-family-ui, var(--eh-content-font-family));
    --eh-result-bar-font-size: var(--eh-classic-control-font-size, var(--eh-text-control));
    --eh-result-bar-font-weight: var(--eh-weight-normal);
    --eh-result-bar-line-height: var(--eh-leading-control);
    --eh-result-bar-summary-line-height: var(--eh-leading-body);
    --eh-button-gap: var(--eh-classic-control-gap);
    --eh-button-min-height: var(--eh-classic-single-action-height);
    --eh-button-icon-size: var(--eh-classic-control-icon-size);
    --eh-classic-page-spacing-block-start: clamp(calc(var(--eh-classic-size-unit) * 2), 4vw, calc(var(--eh-classic-size-unit) * 3));
    --eh-classic-page-spacing-block-end: clamp(calc(var(--eh-classic-size-unit) * 3), 6vw, calc(var(--eh-classic-size-unit) * 4.5));
}

/* --------------------------------------------------------------------------
   Classic: Shared Layout
-------------------------------------------------------------------------- */

.eventhive-layout--classic.eventhive-font-color--custom {
    --eh-classic-color-text: var(--eh-color-text, var(--eh-classic-color-text-default));
}

.eventhive-layout--classic.eventhive-font-color--layout-default,
.eventhive-layout--classic.eventhive-font-color--custom {
    color: var(--eh-classic-color-text);
}

.eventhive-template.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar),
.eventhive-template.eventhive-layout--classic.eventhive-template--single {
    padding-block-start: var(--eh-classic-page-spacing-block-start);
    padding-block-end: var(--eh-classic-page-spacing-block-end);
}

.eventhive-layout--classic .eventhive-event-datetime--stacked {
    gap: var(--eh-classic-event-datetime-gap);
}

/* --------------------------------------------------------------------------
   Classic: Theme Compatibility
-------------------------------------------------------------------------- */

.eventhive-layout--classic :where(
    .eventhive-container,
    .eventhive-shortcode__inner,
    .eventhive-shortcode__content,
    .eventhive-events,
    .eventhive-result-bar,
    .eventhive-result-bar__tools,
    .eventhive-result-bar__display,
    .eventhive-sort-order-form,
    .eventhive-search-summary,
    .eventhive-category-list,
    [class*="eventhive-classic-"],
    [class*="eventhive-calendar"]
)::before,
.eventhive-layout--classic :where(
    .eventhive-container,
    .eventhive-shortcode__inner,
    .eventhive-shortcode__content,
    .eventhive-events,
    .eventhive-result-bar,
    .eventhive-result-bar__tools,
    .eventhive-result-bar__display,
    .eventhive-sort-order-form,
    .eventhive-search-summary,
    .eventhive-category-list,
    [class*="eventhive-classic-"],
    [class*="eventhive-calendar"]
)::after {
    content: none;
    display: none;
    float: none;
    clear: none;
}

.eventhive-layout--classic :where(
    .eventhive-events,
    .eventhive-result-bar,
    .eventhive-search-summary,
    .eventhive-classic-action-bar,
    .eventhive-classic-period-bar,
    .eventhive-classic-grid,
    .eventhive-calendar,
    .eventhive-calendar__weekdays,
    .eventhive-calendar__weeks,
    .eventhive-calendar__week,
    .eventhive-calendar__week-spans,
    .eventhive-calendar__week-days,
    .eventhive-calendar__events
) {
    float: none;
    clear: none;
    inline-size: 100%;
    max-inline-size: 100%;
    min-inline-size: 0;
}

/* --------------------------------------------------------------------------
   Classic: Grid Display
-------------------------------------------------------------------------- */

.eventhive-layout--classic .eventhive-classic-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(100%, var(--eh-classic-grid-card-min)), 1fr));
    gap: var(--eh-classic-section-gap) var(--eh-classic-grid-column-gap);
}

@media (max-width: 700px) {
    .eventhive-layout--classic .eventhive-classic-grid {
        grid-template-columns: 1fr;
    }
}

.eventhive-layout--classic .eventhive-classic-grid-card {
    display: grid;
    grid-template-rows: auto 1fr;
    min-width: 0;
    margin: 0;
    border: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
    box-shadow: none;
    outline: 0;
    background: var(--eh-classic-color-surface);
    padding: var(--eh-classic-card-padding);
}

.eventhive-layout--classic .eventhive-classic-grid-card--no-media {
    grid-template-rows: 1fr;
}

.eventhive-layout--classic .eventhive-classic-grid-card .eventhive-classic-grid-card__media {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 0 0 var(--eh-gap-m);
}

.eventhive-layout--classic .eventhive-classic-grid-card .eventhive-classic-grid-card__media-link {
    display: block;
    width: 100%;
    max-width: 100%;
    color: inherit;
    text-decoration: none;
}

.eventhive-layout--classic .eventhive-classic-grid-card__media--empty {
    aspect-ratio: 16 / 9;
    background: color-mix(in srgb, var(--eh-classic-color-text-default) 5%, var(--eh-classic-color-surface));
    border: 0;
    box-shadow: none;
    outline: 0;
    padding: 0;
}

.eventhive-layout--classic .eventhive-classic-grid-card .eventhive-classic-grid-card__image {
    box-sizing: border-box;
    display: block;
    aspect-ratio: 16 / 9;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    outline: 0;
    padding: 0;
    object-fit: cover;
    object-position: center center;
    vertical-align: middle;
}

.eventhive-layout--classic .eventhive-classic-grid-card__content {
    display: flex;
    flex-direction: column;
    min-width: 0;
    text-align: start;
}

.eventhive-layout--classic .eventhive-classic-grid-card__body {
    min-width: 0;
}

.eventhive-layout--classic .eventhive-classic-grid-card__body > :last-child {
    margin-block-end: 0;
}

.eventhive-layout--classic .eventhive-classic-grid-card__header {
    margin: 0;
}

.eventhive-layout--classic .eventhive-classic-grid-card__title {
    display: -webkit-box;
    min-block-size: 2.4em;
    margin-block: 0 var(--eh-gap-s);
    overflow: hidden;
    font-size: var(--eh-heading-card, var(--eh-heading-h5));
    font-weight: var(--eh-component-title-weight, var(--eh-weight-semibold));
    line-height: var(--eh-leading-tight);
    letter-spacing: normal;
    text-align: start;
    text-transform: none;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

@media (max-width: 700px) {
    .eventhive-layout--classic .eventhive-classic-grid-card__title {
        display: block;
        min-block-size: 0;
        overflow: visible;
        -webkit-line-clamp: unset;
    }
}

.eventhive-layout--classic .eventhive-classic-grid-card .eventhive-classic-grid-card__title a,
.eventhive-layout--classic .eventhive-classic-grid-card .eventhive-classic-grid-card__title a:visited {
    color: var(--eh-classic-color-link);
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    text-decoration: none;
    text-transform: inherit;
}

.eventhive-layout--classic .eventhive-classic-grid-card .eventhive-classic-grid-card__title a:is(:hover, :active, :focus, :focus-visible) {
    color: var(--eh-classic-color-link-hover);
}

.eventhive-layout--classic .eventhive-classic-grid-card__meta {
    display: grid;
    gap: var(--eh-classic-meta-gap);
    list-style: none;
    margin: 0 0 var(--eh-gap-m);
    padding: 0;
    font-family: var(--eh-card-meta-font-family, var(--eh-font-family-content, var(--eh-content-font-family, inherit)));
    font-size: var(--eh-text-meta, var(--eh-text-base));
    font-weight: var(--eh-weight-normal);
    line-height: var(--eh-leading-tight);
    letter-spacing: normal;
    text-align: start;
    text-transform: none;
}

.eventhive-layout--classic .eventhive-classic-grid-card__meta:has(+ .eventhive-featured-badge) {
    margin-block-end: var(--eh-classic-meta-gap);
}

.eventhive-layout--classic .eventhive-classic-grid-card__meta-item {
    display: inline-flex;
    align-items: flex-start;
    gap: var(--eh-classic-meta-gap);
    margin: 0;
    line-height: inherit;
}

.eventhive-layout--classic .eventhive-classic-grid-card__meta-text {
    display: inline;
    margin: 0;
    padding: 0;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
}

.eventhive-layout--classic .eventhive-classic-grid-card .eventhive-classic-grid-card__icon {
    box-sizing: border-box;
    display: inline-flex;
    flex: 0 0 auto;
    width: var(--eh-classic-icon-size);
    max-width: none;
    height: var(--eh-classic-icon-size);
    max-height: none;
    margin-inline: 0;
    margin-block-start: 0.06em;
    padding: 0;
    line-height: 1;
    transform: none;
    vertical-align: middle;
}

.eventhive-layout--classic .eventhive-classic-grid-card .eventhive-classic-grid-card__icon > svg {
    display: block;
    width: 100%;
    max-width: none;
    height: 100%;
    max-height: none;
    margin: 0;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.5;
    transform: none;
    vertical-align: middle;
}

.eventhive-layout--classic :is(.eventhive-classic-grid-card__description, .eventhive-classic-list-item__description) {
    margin-block: 0;
    font-family: var(--eh-font-family-content, var(--eh-content-font-family, inherit));
    font-size: var(--eh-text-content, var(--eh-text-base));
    font-weight: var(--eh-weight-normal);
    line-height: var(--eh-leading-body);
    letter-spacing: normal;
    text-align: start;
    text-transform: none;
}

.eventhive-layout--classic :is(.eventhive-classic-grid-card__description, .eventhive-classic-list-item__description).eventhive-theme-content.entry-content.entry-content {
    width: auto;
    max-width: none;
    margin: 0;
    padding: 0;
}

.eventhive-layout--classic :is(.eventhive-classic-grid-card__description, .eventhive-classic-list-item__description).eventhive-theme-content.entry-content.entry-content .eventhive-theme-content__inner :where(p, li) {
    font-size: inherit;
    line-height: inherit;
}

.eventhive-template.eventhive-layout--classic .eventhive-theme-content.entry-content.entry-content > .eventhive-theme-content__inner.eventhive-theme-content__inner,
.eventhive-shortcode.eventhive-layout--classic .eventhive-theme-content.entry-content.entry-content > .eventhive-theme-content__inner.eventhive-theme-content__inner {
    width: auto;
    max-width: none;
    margin: 0;
}

.eventhive-template.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-typography.entry-content.entry-content {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
    min-width: 0;
    text-align: inherit;
}

.eventhive-template.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-typography.entry-content.entry-content:where(ul, ol, dl) {
    margin: 0;
    padding: 0;
    list-style: none;
}

.eventhive.eventhive-template.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-typography.entry-content.entry-content > * {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-inline: 0;
    margin-block-start: 0;
    margin-block-end: 0;
    justify-self: stretch;
}

.eventhive-template.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-typography.entry-content.entry-content > .eventhive-classic-single__highlight-item,
.eventhive-template.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-typography.entry-content.entry-content > .eventhive-classic-single__schedule-item,
.eventhive-template.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-typography.entry-content.entry-content > .eventhive-classic-single__contact-item {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
    justify-self: stretch;
}

.eventhive-template.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-typography.entry-content.entry-content :where(ul, ol, dl) {
    margin: 0;
    padding: 0;
}

.eventhive-template.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-typography.entry-content.entry-content :where(li, dt, dd, p, address) {
    width: auto;
    max-width: none;
    margin-inline: 0;
    padding-inline-start: 0;
}

.eventhive-template.eventhive-layout--classic .eventhive-badge__text--content.eventhive-theme-content--badge.entry-content.entry-content,
.eventhive-shortcode.eventhive-layout--classic .eventhive-badge__text--content.eventhive-theme-content--badge.entry-content.entry-content {
    display: inline;
    width: auto;
    max-width: none;
    margin: 0;
    padding: 0;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    text-decoration: inherit;
    text-transform: inherit;
}

.eventhive-layout--classic .eventhive-theme-content__inner > * {
    margin-block: 0;
}

.eventhive-layout--classic .eventhive-theme-content__inner > * + * {
    margin-block-start: var(--eh-gap-m);
}

.eventhive-layout--classic .eventhive-classic-grid-card__footer {
    display: flex;
    flex-direction: column;
    gap: var(--eh-classic-card-footer-gap);
    margin-block-start: auto;
    padding-block-start: var(--eh-classic-card-footer-offset);
}

/* --------------------------------------------------------------------------
   Classic: Archive Header
-------------------------------------------------------------------------- */

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-archive__header,
.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-archive-header {
    display: grid;
    gap: 0;
    margin-block-end: var(--eh-gap-l);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-archive__intro {
    display: grid;
    flex: 1 1 auto;
    gap: var(--eh-gap-s);
    min-width: 0;
    margin-block-end: var(--eh-gap-l);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-archive__description {
    margin: 0;
    max-width: 72ch;
    font-family: var(--eh-page-header-description-font-family);
    font-size: var(--eh-page-header-description-font-size);
    font-weight: var(--eh-page-header-description-font-weight);
    letter-spacing: normal;
    line-height: var(--eh-page-header-description-line-height);
    text-decoration: none;
    text-transform: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-template__title {
    margin: 0;
    color: var(--eh-classic-color-text);
    font-size: var(--eh-page-title-font-size);
    font-weight: var(--eh-component-title-weight, var(--eh-weight-semibold));
    line-height: var(--eh-page-title-line-height);
    letter-spacing: normal;
    text-align: start;
    text-transform: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar).eventhive-has-custom-font-family .eventhive-template__title {
    font-family: var(--eh-page-title-font-family);
}

/* --------------------------------------------------------------------------
   Classic: Action Bar
-------------------------------------------------------------------------- */

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--eh-classic-component-gap);
    align-items: center;
    min-block-size: calc(var(--eh-classic-control-height) + (var(--eh-gap-xs) * 2) + 2px);
    min-width: 0;
    margin-block: 0;
    border: 0;
    border-block: 1px solid var(--eh-classic-color-separator);
    background: transparent;
    padding-block: var(--eh-classic-meta-gap);
    padding-inline: 0;
    font-family: var(--eh-result-bar-font-family, var(--eh-font-family-ui, var(--eh-content-font-family, inherit)));
    font-size: var(--eh-result-bar-font-size, var(--eh-classic-control-font-size));
    font-weight: var(--eh-result-bar-font-weight, var(--eh-weight-normal));
    line-height: var(--eh-result-bar-line-height, var(--eh-leading-control));
    color: var(--eh-classic-control-color);
    text-align: start;
    text-decoration: none;
    text-transform: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar + .eventhive-classic-action-bar {
    border-block-start: 0;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar + .eventhive-classic-period-bar {
    margin-block-start: var(--eh-gap-l);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar + .eventhive-search-summary {
    margin-block-start: var(--eh-gap-l);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-search-placeholder {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: var(--eh-classic-meta-gap);
    align-items: center;
    justify-content: flex-start;
    justify-self: start;
    align-self: center;
    min-width: 0;
    width: auto;
    max-width: 100%;
    margin: 0;
    padding: 0;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-search-placeholder__control {
    box-sizing: border-box;
    position: relative;
    display: inline-flex;
    flex: 0 0 calc(var(--eh-classic-size-unit) * 10);
    width: calc(var(--eh-classic-size-unit) * 10);
    inline-size: calc(var(--eh-classic-size-unit) * 10);
    min-width: 0;
    max-width: 100%;
    margin: 0;
    padding: 0;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) input.eventhive-classic-search-placeholder__input {
    box-sizing: border-box;
    display: inline-block;
    flex: 1 1 auto;
    width: 100%;
    inline-size: 100%;
    min-width: 0;
    max-width: 100%;
    height: var(--eh-classic-control-height);
    block-size: var(--eh-classic-control-height);
    min-height: var(--eh-classic-control-height);
    min-block-size: var(--eh-classic-control-height);
    max-height: var(--eh-classic-control-height);
    max-block-size: var(--eh-classic-control-height);
    margin: 0;
    border: 1px solid var(--eh-classic-color-border);
    border-radius: 0;
    background: var(--eh-classic-color-surface);
    padding-block: 0;
    padding-inline: var(--eh-classic-control-gap) calc(var(--eh-classic-control-gap) + (var(--eh-classic-control-icon-size) * 2));
    font-family: inherit;
    font-size: inherit;
    font-style: inherit;
    font-weight: inherit;
    line-height: inherit;
    color: var(--eh-classic-control-color);
    letter-spacing: normal;
    text-align: start;
    text-decoration: none;
    text-transform: none;
    box-shadow: none;
    vertical-align: middle;
    -webkit-appearance: none;
    appearance: none;
    transition: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) input.eventhive-classic-search-placeholder__input::placeholder {
    color: var(--eh-classic-muted-color);
    opacity: 1;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) input.eventhive-classic-search-placeholder__input:focus-visible {
    outline: 2px solid var(--eh-classic-color-link);
    outline-offset: 2px;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) button.eventhive-classic-search-placeholder__clear {
    box-sizing: border-box;
    position: absolute;
    inset-block-start: 50%;
    inset-inline-end: calc(var(--eh-classic-meta-gap) + var(--eh-classic-control-icon-size));
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--eh-classic-control-icon-size);
    inline-size: var(--eh-classic-control-icon-size);
    height: var(--eh-classic-control-icon-size);
    block-size: var(--eh-classic-control-icon-size);
    margin: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    padding: 0;
    color: var(--eh-classic-control-color);
    font-family: inherit;
    font-size: var(--eh-text-l);
    font-weight: var(--eh-weight-normal);
    line-height: 1;
    text-align: center;
    text-decoration: none;
    text-transform: none;
    box-shadow: none;
    cursor: pointer;
    transform: translateY(-50%);
    -webkit-appearance: none;
    appearance: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) button.eventhive-classic-search-placeholder__clear[hidden] {
    display: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-search-placeholder__icon {
    position: absolute;
    inset-block-start: 50%;
    inset-inline-end: calc(var(--eh-classic-meta-gap) * 0.5);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--eh-classic-control-icon-size);
    inline-size: var(--eh-classic-control-icon-size);
    height: var(--eh-classic-control-icon-size);
    block-size: var(--eh-classic-control-icon-size);
    color: var(--eh-classic-control-color);
    pointer-events: none;
    transform: translateY(-50%);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) button.eventhive-classic-search-placeholder__clear:hover,
.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) button.eventhive-classic-search-placeholder__clear:active {
    color: var(--eh-classic-color-text);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) button.eventhive-classic-search-placeholder__clear:focus-visible {
    color: var(--eh-classic-color-text);
    outline: 2px solid var(--eh-classic-color-link);
    outline-offset: 2px;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__search-icon {
    display: block;
    flex: 0 0 auto;
    width: var(--eh-classic-control-icon-size);
    height: var(--eh-classic-control-icon-size);
    margin-inline: 0;
    color: currentColor;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.5;
    transform: none;
    vertical-align: middle;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__calendar-title {
    min-width: 0;
    margin: 0;
    padding: 0;
    color: inherit;
    font-family: inherit;
    font-size: var(--eh-text-l);
    font-weight: var(--eh-weight-bold);
    line-height: var(--eh-leading-body);
    letter-spacing: normal;
    text-align: start;
    text-decoration: none;
    text-transform: none;
    overflow-wrap: anywhere;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__calendar-navigation {
    grid-column: 2;
    justify-self: end;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__links {
    display: inline-flex;
    justify-self: end;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__link-list,
.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-links {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    list-style: none;
    margin: 0;
    padding: 0;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__link-list > li {
    display: flex;
    margin: 0;
    padding: 0;
    line-height: inherit;
    text-align: inherit;
    text-transform: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__link-list > .eventhive-classic-action-bar__link-item--calendar {
    border: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__link-list > .eventhive-classic-action-bar__link-separator {
    align-items: stretch;
    inline-size: calc(var(--eh-classic-control-gap) * 1.5);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__link-list > .eventhive-classic-action-bar__link-separator::before {
    content: "";
    display: block;
    align-self: stretch;
    margin-inline: auto;
    border-inline-start: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__link-list > .eventhive-classic-action-bar__link-item--date-view {
    border-block: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__link-list > .eventhive-classic-action-bar__link-item--date-view-first {
    border-inline-start: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__link-list > .eventhive-classic-action-bar__link-item--date-view-last {
    border-inline-end: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-links > li {
    display: block;
    margin: 0;
    padding: 0;
    line-height: inherit;
    text-align: inherit;
    text-transform: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-links > .eventhive-classic-action-bar__date-item--calendar {
    margin-block-start: calc(var(--eh-classic-meta-gap) * 0.5);
    border-block-start: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
    padding-block-start: calc(var(--eh-classic-meta-gap) * 0.5);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__link-item--date-view + .eventhive-classic-action-bar__link-item--date-view {
    border-inline-start: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    block-size: var(--eh-classic-control-height);
    min-block-size: var(--eh-classic-control-height);
    margin: 0;
    background: var(--eh-classic-color-surface);
    padding-block: 0;
    padding-inline: var(--eh-classic-control-gap);
    color: var(--eh-classic-control-color);
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: normal;
    text-decoration: none;
    text-transform: none;
    white-space: nowrap;
    box-shadow: none;
    transition: none;
}

.eventhive.eventhive-layout--classic:is(.eventhive-template.eventhive-template--archive, .eventhive-shortcode.eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar .eventhive-classic-action-bar__links .eventhive-classic-action-bar__link-list .eventhive-classic-action-bar__link-item > a.eventhive-classic-action-bar__link,
.eventhive.eventhive-layout--classic:is(.eventhive-template.eventhive-template--archive, .eventhive-shortcode.eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar .eventhive-classic-action-bar__links .eventhive-classic-action-bar__link-list .eventhive-classic-action-bar__link-item > a.eventhive-classic-action-bar__link:is(:visited, :hover, :focus, :focus-visible, :active, .is-current, [aria-current="page"]),
.eventhive.eventhive-layout--classic:is(.eventhive-template.eventhive-template--archive, .eventhive-shortcode.eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar .eventhive-classic-action-bar__date-view .eventhive-classic-action-bar__date-menu .eventhive-classic-action-bar__date-links > li > a.eventhive-classic-action-bar__date-link,
.eventhive.eventhive-layout--classic:is(.eventhive-template.eventhive-template--archive, .eventhive-shortcode.eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar .eventhive-classic-action-bar__date-view .eventhive-classic-action-bar__date-menu .eventhive-classic-action-bar__date-links > li > a.eventhive-classic-action-bar__date-link:is(:visited, :hover, :focus, :focus-visible, :active, .is-current, [aria-current="page"]) {
    text-decoration: none;
    text-decoration-line: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__link--calendar {
    gap: var(--eh-classic-meta-gap);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__link-icon {
    display: block;
    flex: 0 0 auto;
    width: var(--eh-classic-control-icon-size);
    height: var(--eh-classic-control-icon-size);
    margin-inline: 0;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.5;
    transform: none;
    vertical-align: middle;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__link:hover,
.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__link:active {
    background: var(--eh-classic-color-accent-soft);
    color: var(--eh-classic-control-color);
    text-decoration: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__link:focus-visible {
    background: var(--eh-classic-color-accent-soft);
    color: var(--eh-classic-control-color);
    outline: 2px solid var(--eh-classic-neutral-focus-ring);
    outline-offset: 2px;
    text-decoration: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__link.is-current,
.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__link.is-current:hover,
.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__link.is-current:active,
.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__link.is-current:focus-visible {
    background: var(--eh-classic-color-accent-soft);
    color: var(--eh-classic-control-color);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-view {
    display: none;
    justify-self: end;
    position: relative;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-summary {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--eh-classic-meta-gap);
    min-inline-size: var(--eh-classic-control-size);
    min-block-size: var(--eh-classic-control-size);
    margin: 0;
    border: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
    background: var(--eh-classic-color-surface);
    padding-inline: var(--eh-classic-control-gap);
    color: var(--eh-classic-control-color);
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: normal;
    text-transform: none;
    box-shadow: none;
    cursor: pointer;
    transition: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-view[open] > .eventhive-classic-action-bar__date-summary {
    background: var(--eh-classic-color-accent-soft);
    color: var(--eh-classic-control-color);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-summary:hover,
.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-summary:active {
    background: var(--eh-classic-color-accent-soft);
    color: var(--eh-classic-control-color);
    text-decoration: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-summary:focus-visible {
    background: var(--eh-classic-color-accent-soft);
    color: var(--eh-classic-control-color);
    outline: 2px solid var(--eh-classic-neutral-focus-ring);
    outline-offset: 2px;
    text-decoration: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-summary::marker,
.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-summary::-webkit-details-marker {
    display: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-icon {
    display: block;
    flex: 0 0 auto;
    width: var(--eh-classic-control-icon-size);
    height: var(--eh-classic-control-icon-size);
    margin-inline: 0;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.5;
    transform: none;
    vertical-align: middle;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-text {
    color: inherit;
    font: inherit;
    line-height: 1;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-menu {
    box-sizing: border-box;
    position: absolute;
    z-index: 2;
    inset-block-start: calc(100% + var(--eh-classic-meta-gap));
    inset-inline-end: 0;
    min-inline-size: calc(var(--eh-classic-size-unit) * 9);
    border: 1px solid var(--eh-classic-color-border);
    background: var(--eh-classic-color-surface);
    padding: var(--eh-classic-meta-gap);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-links {
    display: grid;
    gap: calc(var(--eh-classic-meta-gap) * 0.5);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-link {
    display: flex;
    align-items: center;
    gap: var(--eh-classic-meta-gap);
    margin: 0;
    padding-block: calc(var(--eh-classic-meta-gap) * 0.5);
    padding-inline: var(--eh-classic-meta-gap);
    color: var(--eh-classic-control-color);
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: normal;
    text-decoration: none;
    text-transform: none;
    white-space: nowrap;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-link-icon {
    display: block;
    flex: 0 0 auto;
    width: var(--eh-classic-control-icon-size);
    height: var(--eh-classic-control-icon-size);
    margin-inline: 0;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.5;
    transform: none;
    vertical-align: middle;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-link-text {
    color: inherit;
    font: inherit;
    letter-spacing: inherit;
    text-decoration: inherit;
    text-transform: inherit;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-link:hover,
.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-link:active {
    background: var(--eh-classic-color-accent-soft);
    color: var(--eh-classic-control-color);
    text-decoration: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-link:focus-visible {
    background: var(--eh-classic-color-accent-soft);
    color: var(--eh-classic-control-color);
    outline: 2px solid var(--eh-classic-neutral-focus-ring);
    outline-offset: 2px;
    text-decoration: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-link.is-current,
.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-link.is-current:hover,
.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-link.is-current:active,
.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-link.is-current:focus-visible {
    background: var(--eh-classic-color-accent-soft);
    color: var(--eh-classic-control-color);
}

/* --------------------------------------------------------------------------
   Classic: Result Bar
-------------------------------------------------------------------------- */

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-sort-order-form {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: var(--eh-classic-meta-gap) var(--eh-classic-control-gap);
    align-items: center;
    margin: 0;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-sort-order {
    display: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-sort-order-form--mobile {
    display: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-sort-order-form--desktop {
    flex: 0 0 auto;
    flex-wrap: nowrap;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-sort-order__summary {
    display: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar :where(input, select) {
    box-sizing: border-box;
    display: inline-block;
    width: auto;
    height: var(--eh-classic-control-height);
    min-height: var(--eh-classic-control-height);
    max-width: 100%;
    border: 1px solid var(--eh-classic-color-border);
    border-radius: 0;
    background: var(--eh-classic-color-surface);
    padding-block: 0;
    padding-inline: var(--eh-classic-control-gap);
    font-family: var(--eh-result-bar-font-family, var(--eh-font-family-ui, var(--eh-content-font-family, inherit)));
    font-size: var(--eh-result-bar-font-size, var(--eh-classic-control-font-size));
    font-style: inherit;
    font-weight: var(--eh-result-bar-font-weight, var(--eh-weight-normal));
    line-height: var(--eh-result-bar-line-height, var(--eh-leading-control));
    color: var(--eh-classic-control-color);
    letter-spacing: normal;
    text-align: start;
    text-decoration: none;
    text-transform: none;
    box-shadow: none;
    transition: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar select {
    -webkit-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    background-position: right var(--eh-classic-control-gap) center;
    background-repeat: no-repeat;
    background-size: calc(var(--eh-classic-control-icon-size) * 0.8) calc(var(--eh-classic-control-icon-size) * 0.8);
    padding-inline-end: calc((var(--eh-classic-control-gap) * 2) + var(--eh-classic-control-icon-size));
    cursor: pointer;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-sort-order-form--desktop .eventhive-sort-order-form__field:first-of-type .eventhive-result-bar__select {
    min-inline-size: calc(var(--eh-classic-size-unit) * 8.75);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-sort-order-form--desktop .eventhive-sort-order-form__field + .eventhive-sort-order-form__field .eventhive-result-bar__select {
    min-inline-size: calc(var(--eh-classic-size-unit) * 6.25);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar :where(input, select):focus-visible {
    outline: 2px solid var(--eh-classic-color-link);
    outline-offset: 2px;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-sort-order-form__field {
    display: inline-flex;
    align-items: center;
    gap: var(--eh-classic-meta-gap);
    margin: 0;
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    font-style: inherit;
    font-weight: inherit;
    line-height: var(--eh-result-bar-line-height, var(--eh-leading-control));
    letter-spacing: normal;
    text-decoration: none;
    text-transform: none;
    white-space: nowrap;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__control-text,
.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__button-text {
    display: inline;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    text-decoration: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-sort-order-form__field + .eventhive-sort-order-form__field {
    border-inline-start: 1px solid var(--eh-classic-color-separator);
    padding-inline-start: var(--eh-gap-xs);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-sort-order-form--auto-submit-ready .eventhive-result-bar__button {
    display: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__button {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    height: var(--eh-classic-control-height);
    min-height: var(--eh-classic-control-height);
    border: 1px solid var(--eh-button-primary-border-color);
    border-radius: 0;
    background: var(--eh-button-primary-background);
    padding-block: 0;
    padding-inline: var(--eh-classic-control-gap);
    font-family: var(--eh-result-bar-font-family, var(--eh-font-family-ui, var(--eh-content-font-family, inherit)));
    font-size: var(--eh-result-bar-font-size, var(--eh-classic-control-font-size));
    font-style: inherit;
    font-weight: var(--eh-result-bar-font-weight, var(--eh-weight-normal));
    line-height: var(--eh-result-bar-line-height, var(--eh-leading-control));
    color: var(--eh-button-primary-color);
    letter-spacing: normal;
    text-decoration: none;
    text-transform: none;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
    cursor: pointer;
    transition: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__button:hover {
    border-color: var(--eh-button-primary-hover-border-color);
    background: var(--eh-button-primary-hover-background);
    color: var(--eh-button-primary-hover-color);
    text-decoration: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__button:focus-visible {
    border-color: var(--eh-button-primary-hover-border-color);
    background: var(--eh-button-primary-hover-background);
    color: var(--eh-button-primary-hover-color);
    outline: 2px solid var(--eh-button-primary-focus-color);
    outline-offset: 2px;
    text-decoration: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar {
    --eh-result-summary-font-size: var(--eh-result-bar-font-size);
    --eh-result-summary-line-height: var(--eh-result-bar-summary-line-height);

    box-sizing: border-box;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--eh-classic-component-gap);
    align-items: center;
    min-block-size: calc(var(--eh-classic-control-height) + (var(--eh-gap-xs) * 2) + 2px);
    margin-block: 0;
    border: 0;
    border-block: 1px solid var(--eh-classic-color-separator);
    box-shadow: none;
    outline: 0;
    padding-block: var(--eh-classic-meta-gap);
    padding-inline: 0;
    font-family: var(--eh-result-bar-font-family, var(--eh-font-family-ui, var(--eh-content-font-family, inherit)));
    font-size: var(--eh-result-bar-font-size, var(--eh-classic-control-font-size));
    font-weight: var(--eh-result-bar-font-weight, var(--eh-weight-normal));
    line-height: var(--eh-result-bar-summary-line-height, var(--eh-leading-body));
    color: var(--eh-classic-control-color);
    text-decoration: none;
    text-transform: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__count {
    align-self: center;
    margin: 0;
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    text-decoration: inherit;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-result-summary {
    margin-block-end: var(--eh-gap-m);
    color: inherit;
    font-family: var(--eh-result-summary-font-family, var(--eh-font-family-ui, var(--eh-content-font-family, inherit)));
    font-size: var(--eh-result-bar-font-size, var(--eh-classic-control-font-size));
    font-weight: var(--eh-result-bar-font-weight, var(--eh-weight-normal));
    line-height: var(--eh-result-bar-summary-line-height, var(--eh-leading-body));
    text-decoration: none;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-result-summary__text {
    width: auto;
    max-width: none;
    margin: 0;
    padding: 0;
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    font-style: inherit;
    font-weight: inherit;
    letter-spacing: normal;
    line-height: inherit;
    text-decoration: inherit;
    text-transform: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar--controls-only {
    grid-template-columns: minmax(0, 1fr);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar--controls-only .eventhive-result-bar__tools {
    grid-column: 1 / -1;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar--summary-only {
    grid-template-columns: minmax(0, 1fr);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__tools {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-end;
    justify-self: end;
    gap: var(--eh-classic-meta-gap) var(--eh-classic-control-gap);
    min-width: max-content;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__tools--has-display-toggle > .eventhive-sort-order-form,
.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__tools--has-display-toggle > .eventhive-sort-order {
    border-inline-start: 1px solid var(--eh-classic-color-separator);
    margin-inline-start: var(--eh-classic-meta-gap);
    padding-inline-start: var(--eh-classic-control-gap);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__display {
    display: inline-flex;
    flex: 0 0 auto;
    border: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__display-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-inline-size: var(--eh-classic-control-size);
    min-block-size: var(--eh-classic-control-size);
    margin: 0;
    background: var(--eh-classic-color-surface);
    padding: calc(var(--eh-classic-meta-gap) / 2);
    color: var(--eh-classic-control-color);
    font-family: var(--eh-result-bar-font-family, var(--eh-font-family-ui, var(--eh-content-font-family, inherit)));
    font-size: var(--eh-result-bar-font-size, var(--eh-classic-control-font-size));
    font-weight: var(--eh-result-bar-font-weight, var(--eh-weight-normal));
    line-height: var(--eh-result-bar-line-height, var(--eh-leading-control));
    text-decoration: none;
    letter-spacing: normal;
    text-transform: none;
    box-shadow: none;
    transition: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__display-link + .eventhive-result-bar__display-link {
    border-inline-start: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__display-link.is-current {
    background: var(--eh-classic-color-accent-soft);
    color: var(--eh-classic-control-color);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__display-link:hover,
.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__display-link:active {
    background: var(--eh-classic-color-accent-soft);
    color: var(--eh-classic-control-color);
    text-decoration: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__display-link:focus-visible {
    background: var(--eh-classic-color-accent-soft);
    color: var(--eh-classic-control-color);
    outline: 2px solid var(--eh-classic-neutral-focus-ring);
    outline-offset: 2px;
    text-decoration: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__display-link.is-current:hover,
.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__display-link.is-current:active,
.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__display-link.is-current:focus-visible {
    background: var(--eh-classic-color-accent-soft);
    color: var(--eh-classic-control-color);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__display-icon {
    display: block;
    width: var(--eh-classic-control-icon-size);
    height: var(--eh-classic-control-icon-size);
    margin-inline: 0;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.5;
    transform: none;
    vertical-align: middle;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__display-text {
    display: none;
}

/* --------------------------------------------------------------------------
   Classic: Search Summary
-------------------------------------------------------------------------- */

.eventhive-layout--classic .eventhive-search-summary {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--eh-classic-control-gap) var(--eh-classic-component-gap);
    align-items: center;
    justify-self: stretch;
    width: 100%;
    max-width: 100%;
    background: transparent;
    font-family: var(--eh-result-bar-font-family, var(--eh-font-family-ui, var(--eh-content-font-family, inherit)));
    font-size: var(--eh-result-bar-font-size, var(--eh-classic-control-font-size));
    font-weight: var(--eh-result-bar-font-weight, var(--eh-weight-normal));
    line-height: var(--eh-result-bar-line-height, var(--eh-leading-control));
    text-align: start;
    text-decoration: none;
    text-transform: none;
}

.eventhive-layout--classic .eventhive-search-summary__title {
    grid-column: 1;
    min-width: 0;
    margin: 0;
    padding: 0;
    color: inherit;
    font-family: inherit;
    font-size: var(--eh-text-l);
    font-weight: var(--eh-weight-bold);
    line-height: var(--eh-leading-body);
    letter-spacing: normal;
    text-align: start;
    text-decoration: none;
    text-transform: none;
    overflow-wrap: anywhere;
}

.eventhive-layout--classic .eventhive-search-summary__count,
.eventhive-layout--classic .eventhive-search-summary__action {
    margin: 0;
    padding: 0;
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: normal;
    text-align: start;
    text-decoration: none;
    text-transform: none;
}

.eventhive-layout--classic .eventhive-search-summary__count {
    grid-column: 1;
}

.eventhive-layout--classic .eventhive-search-summary__action {
    grid-column: 2;
    grid-row: 1 / span 2;
    justify-self: end;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-search-summary {
    margin-block-end: var(--eh-gap-m);
}

.eventhive-shortcode.eventhive-shortcode--calendar.eventhive-layout--classic .eventhive-classic-action-bar--calendar {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--eh-classic-component-gap);
    align-items: center;
    min-block-size: calc(var(--eh-classic-control-height) + (var(--eh-gap-xs) * 2) + 2px);
    min-width: 0;
    margin-block: 0;
    border: 0;
    border-block: 1px solid var(--eh-classic-color-separator);
    background: transparent;
    padding-block: var(--eh-classic-meta-gap);
    padding-inline: 0;
    font-family: var(--eh-result-bar-font-family, var(--eh-font-family-ui, var(--eh-content-font-family, inherit)));
    font-size: var(--eh-result-bar-font-size, var(--eh-classic-control-font-size));
    font-weight: var(--eh-result-bar-font-weight, var(--eh-weight-normal));
    line-height: var(--eh-result-bar-line-height, var(--eh-leading-control));
    color: var(--eh-classic-control-color);
    text-align: start;
    text-decoration: none;
    text-transform: none;
}

.eventhive-shortcode.eventhive-shortcode--calendar.eventhive-layout--classic .eventhive-classic-action-bar + .eventhive-classic-period-bar {
    margin-block-start: var(--eh-gap-l);
}

.eventhive-shortcode.eventhive-shortcode--calendar.eventhive-layout--classic .eventhive-classic-action-bar__calendar-title {
    min-width: 0;
    margin: 0;
    padding: 0;
    color: inherit;
    font-family: inherit;
    font-size: var(--eh-text-l);
    font-weight: var(--eh-weight-bold);
    line-height: var(--eh-leading-body);
    letter-spacing: normal;
    text-align: start;
    text-decoration: none;
    text-transform: none;
    overflow-wrap: anywhere;
}

.eventhive-shortcode.eventhive-shortcode--calendar.eventhive-layout--classic .eventhive-classic-action-bar__calendar-navigation {
    grid-column: 2;
    justify-self: end;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-classic-period-bar {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--eh-classic-control-gap) var(--eh-classic-component-gap);
    align-items: center;
    width: 100%;
    max-width: 100%;
    margin-block-end: var(--eh-gap-m);
    background: transparent;
    font-family: var(--eh-result-bar-font-family, var(--eh-font-family-ui, var(--eh-content-font-family, inherit)));
    font-size: var(--eh-result-bar-font-size, var(--eh-classic-control-font-size));
    font-weight: var(--eh-result-bar-font-weight, var(--eh-weight-normal));
    line-height: var(--eh-result-bar-line-height, var(--eh-leading-control));
    color: var(--eh-classic-control-color);
    text-align: start;
    text-decoration: none;
    text-transform: none;
}

.eventhive-shortcode.eventhive-shortcode--view-day.eventhive-layout--classic .eventhive-classic-period-bar {
    margin-block-end: var(--eh-gap-xs);
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-classic-period-bar__summary {
    min-width: 0;
    margin: 0;
    padding: 0;
    color: inherit;
    font-family: inherit;
    font-size: var(--eh-text-l);
    font-weight: var(--eh-weight-bold);
    line-height: var(--eh-leading-body);
    letter-spacing: normal;
    text-align: start;
    text-decoration: none;
    text-transform: none;
    overflow-wrap: anywhere;
}

.eventhive-shortcode.eventhive-shortcode--calendar.eventhive-layout--classic .eventhive-classic-period-bar__count {
    grid-column: 1;
    min-width: 0;
    margin: 0;
    padding: 0;
    color: var(--eh-classic-muted-color);
    font-family: inherit;
    font-size: var(--eh-text-s);
    font-weight: var(--eh-weight-normal);
    line-height: var(--eh-leading-body);
    letter-spacing: normal;
    text-align: start;
    text-decoration: none;
    text-transform: none;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-classic-period-bar__navigation {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-self: end;
    gap: var(--eh-classic-control-gap);
    max-width: 100%;
    min-width: 0;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-view-period-nav__current-link {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: normal;
    text-transform: none;
    white-space: nowrap;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-classic-period-bar__controls {
    box-sizing: border-box;
    display: inline-flex;
    align-items: stretch;
    justify-self: end;
    max-width: 100%;
    min-width: 0;
    border: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
    background: var(--eh-classic-color-surface);
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-classic-period-bar__link,
.eventhive-shortcode.eventhive-layout--classic .eventhive-classic-period-bar__label {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-block-size: var(--eh-classic-control-size);
    margin: 0;
    padding-block: 0;
    padding-inline: var(--eh-classic-control-gap);
    color: var(--eh-classic-control-color);
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: normal;
    text-decoration: none;
    text-transform: none;
    box-shadow: none;
    transition: none;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-classic-period-bar__link {
    min-inline-size: var(--eh-classic-control-size);
    background: var(--eh-classic-color-surface);
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-classic-period-bar__label {
    min-width: 0;
    overflow-wrap: anywhere;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-classic-period-bar__controls > * + * {
    border-inline-start: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-classic-period-bar__link:hover,
.eventhive-shortcode.eventhive-layout--classic .eventhive-classic-period-bar__link:active {
    background: var(--eh-classic-color-accent-soft);
    color: var(--eh-classic-control-color);
    text-decoration: none;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-classic-period-bar__link:focus-visible,
.eventhive-shortcode.eventhive-layout--classic .eventhive-view-period-nav__current-link:focus-visible {
    outline: 2px solid var(--eh-classic-neutral-focus-ring);
    outline-offset: 2px;
    text-decoration: none;
}

/* --------------------------------------------------------------------------
   Classic: Period Navigation
-------------------------------------------------------------------------- */

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--eh-classic-control-gap) var(--eh-classic-component-gap);
    align-items: center;
    justify-self: stretch;
    width: 100%;
    max-width: 100%;
    background: transparent;
    font-family: var(--eh-result-bar-font-family, var(--eh-font-family-ui, var(--eh-content-font-family, inherit)));
    font-size: var(--eh-result-bar-font-size, var(--eh-classic-control-font-size));
    font-weight: var(--eh-result-bar-font-weight, var(--eh-weight-normal));
    line-height: var(--eh-result-bar-line-height, var(--eh-leading-control));
    color: var(--eh-classic-control-color);
    text-align: start;
    text-decoration: none;
    text-transform: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar__summary {
    min-width: 0;
    margin: 0;
    padding: 0;
    color: inherit;
    font-family: inherit;
    font-size: var(--eh-text-l);
    font-weight: var(--eh-weight-bold);
    line-height: var(--eh-leading-body);
    letter-spacing: normal;
    text-align: start;
    text-decoration: none;
    text-transform: none;
    overflow-wrap: anywhere;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar--has-count .eventhive-classic-period-bar__summary {
    grid-column: 1;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar__count {
    grid-column: 1;
    min-width: 0;
    margin: calc(var(--eh-classic-meta-gap) * 0.35) 0 0;
    padding: 0;
    color: var(--eh-classic-muted-color);
    font-family: inherit;
    font-size: var(--eh-text-s);
    font-weight: var(--eh-weight-normal);
    line-height: var(--eh-leading-body);
    letter-spacing: normal;
    text-align: start;
    text-decoration: none;
    text-transform: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar--has-count .eventhive-classic-period-bar__navigation {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: center;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar__controls {
    box-sizing: border-box;
    display: inline-flex;
    align-items: stretch;
    justify-self: end;
    max-width: 100%;
    min-width: 0;
    border: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
    background: var(--eh-classic-color-surface);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar__navigation {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-self: end;
    gap: var(--eh-classic-control-gap);
    max-width: 100%;
    min-width: 0;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-view-period-nav__current-link {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: normal;
    text-transform: none;
    white-space: nowrap;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar__link,
.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar__label {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-block-size: var(--eh-classic-control-size);
    margin: 0;
    padding-block: 0;
    padding-inline: var(--eh-classic-control-gap);
    color: var(--eh-classic-control-color);
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: normal;
    text-decoration: none;
    text-transform: none;
    box-shadow: none;
    transition: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar__link {
    min-inline-size: var(--eh-classic-control-size);
    background: var(--eh-classic-color-surface);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar__label {
    min-width: 0;
    overflow-wrap: anywhere;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar__controls > * + * {
    border-inline-start: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar__link:hover,
.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar__link:active {
    background: var(--eh-classic-color-accent-soft);
    color: var(--eh-classic-control-color);
    text-decoration: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar__link:focus-visible {
    background: var(--eh-classic-color-accent-soft);
    color: var(--eh-classic-control-color);
    outline: 2px solid var(--eh-classic-neutral-focus-ring);
    outline-offset: 2px;
    text-decoration: none;
}

.eventhive-template.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) a.eventhive-classic-period-bar__link:is(:hover, :active, :focus-visible),
.eventhive-template.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) a.eventhive-classic-period-bar__link:visited:is(:hover, :active, :focus-visible) {
    background: var(--eh-classic-color-accent-soft);
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar--calendar .eventhive-classic-period-bar__count {
    margin-block-start: 0;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar__exit-link {
    grid-column: 2;
    justify-self: end;
    min-width: 0;
    margin: 0;
    border: 0;
    background: transparent;
    padding: 0;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: normal;
    text-align: end;
    text-transform: none;
    white-space: nowrap;
    box-shadow: none;
}

.eventhive-template.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-calendar a.eventhive-calendar__day-link,
.eventhive-template.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-calendar a.eventhive-calendar__day-link:visited {
    border: 0;
    background: transparent;
    color: var(--eh-classic-color-link);
    text-decoration: none;
    text-decoration-line: none;
}

.eventhive-template.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-calendar a.eventhive-calendar__day-link:is(:hover, :active, :focus-visible),
.eventhive-template.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-calendar a.eventhive-calendar__day-link:visited:is(:hover, :active, :focus-visible) {
    background: transparent;
    color: var(--eh-classic-color-link-hover);
    text-decoration: none;
    text-decoration-line: none;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__day-link,
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__day-link:visited {
    border: 0;
    background: transparent;
    color: var(--eh-classic-color-link);
    text-decoration: none;
    text-decoration-line: none;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__day-link:is(:hover, :active, :focus-visible),
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__day-link:visited:is(:hover, :active, :focus-visible) {
    background: transparent;
    color: var(--eh-classic-color-link-hover);
    text-decoration: none;
    text-decoration-line: none;
}

.eventhive-template.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) a.eventhive-classic-period-bar__exit-link.eventhive-text-link,
.eventhive-template.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) a.eventhive-classic-period-bar__exit-link.eventhive-text-link:visited {
    border: 0;
    border-bottom: 1px dotted currentColor;
    background: transparent;
    color: var(--eh-text-link-color, var(--eh-classic-color-link));
    text-decoration: none;
    text-decoration-line: none;
}

.eventhive-template.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) a.eventhive-classic-period-bar__exit-link.eventhive-text-link:is(:hover, :active, :focus-visible),
.eventhive-template.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) a.eventhive-classic-period-bar__exit-link.eventhive-text-link:visited:is(:hover, :active, :focus-visible) {
    border-bottom-color: currentColor;
    background: transparent;
    color: var(--eh-text-link-hover-color, var(--eh-classic-color-link-hover));
    text-decoration: none;
    text-decoration-line: none;
}

.eventhive-shortcode.eventhive-layout--classic a.eventhive-classic-period-bar__exit-link.eventhive-text-link,
.eventhive-shortcode.eventhive-layout--classic a.eventhive-classic-period-bar__exit-link.eventhive-text-link:visited {
    border: 0;
    border-bottom: 1px dotted currentColor;
    background: transparent;
    color: var(--eh-text-link-color, var(--eh-classic-color-link));
    text-decoration: none;
    text-decoration-line: none;
}

.eventhive-shortcode.eventhive-layout--classic a.eventhive-classic-period-bar__exit-link.eventhive-text-link:is(:hover, :active, :focus-visible),
.eventhive-shortcode.eventhive-layout--classic a.eventhive-classic-period-bar__exit-link.eventhive-text-link:visited:is(:hover, :active, :focus-visible) {
    border-bottom-color: currentColor;
    background: transparent;
    color: var(--eh-text-link-hover-color, var(--eh-classic-color-link-hover));
    text-decoration: none;
    text-decoration-line: none;
}

.eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-view-period-nav__current-link:focus-visible {
    outline: 2px solid var(--eh-classic-neutral-focus-ring);
    outline-offset: 2px;
}

/* --------------------------------------------------------------------------
   Classic: Calendar Display
-------------------------------------------------------------------------- */

.eventhive-layout--classic .eventhive-calendar {
    --eh-calendar-regular-marker: #2563eb;
    --eh-calendar-featured-marker: #d97706;
    --eh-calendar-multi-day-accent: #15803d;
    --eh-calendar-multi-day-marker: var(--eh-calendar-multi-day-accent);
    --eh-calendar-past-marker: color-mix(in srgb, var(--eh-classic-color-text-default) 42%, var(--eh-classic-color-surface));
    --eh-calendar-multi-day-span-background: color-mix(in srgb, var(--eh-calendar-multi-day-accent) 7%, var(--eh-classic-color-surface));
    --eh-calendar-multi-day-span-border: color-mix(in srgb, var(--eh-calendar-multi-day-accent) 24%, var(--eh-classic-color-surface));
    --eh-calendar-past-span-background: color-mix(in srgb, var(--eh-calendar-past-marker) 14%, var(--eh-classic-color-surface));
    --eh-calendar-past-span-border: color-mix(in srgb, var(--eh-calendar-past-marker) 28%, var(--eh-classic-color-surface));
    --eh-calendar-multi-day-span-block-size: calc((var(--eh-text-xs) * var(--eh-leading-tight) * 2) + (var(--eh-classic-meta-gap) * 1.35));
    --eh-calendar-multi-day-span-gap: calc(var(--eh-classic-meta-gap) * 0.75);
    --eh-calendar-multi-day-span-offset: calc((var(--eh-text-base) * var(--eh-leading-tight)) + (var(--eh-classic-meta-gap) * 3));
    --eh-calendar-month-cell-min-block-size: calc(var(--eh-classic-size-unit) * 10);
    --eh-calendar-focus-outline: 2px solid var(--eh-classic-neutral-focus-ring);
    --eh-calendar-focus-outline-offset: 2px;

    box-sizing: border-box;
    container: eventhive-classic-calendar / inline-size;
    display: grid;
    gap: 0;
    width: 100%;
    min-width: 0;
    margin: 0;
    border: 0;
    background: transparent;
    padding: 0;
    color: inherit;
    font-family: var(--eh-font-family-content, var(--eh-content-font-family, inherit));
    font-size: var(--eh-text-content, var(--eh-text-base));
    font-weight: var(--eh-weight-normal);
    line-height: var(--eh-leading-body);
    letter-spacing: normal;
    text-align: start;
    text-transform: none;
}

.eventhive-layout--classic .eventhive-calendar--month-cell-time-context-hidden {
    --eh-calendar-multi-day-span-block-size: calc((var(--eh-text-xs) * var(--eh-leading-tight)) + var(--eh-classic-meta-gap));
}

.eventhive-layout--classic .eventhive-calendar__empty {
    margin: 0 0 var(--eh-classic-control-gap);
    border: 1px solid var(--eh-classic-color-border);
    background: var(--eh-classic-color-soft-background);
    padding: var(--eh-classic-control-gap);
    color: inherit;
    font-family: inherit;
    font-size: var(--eh-text-s);
    font-weight: inherit;
    line-height: var(--eh-leading-body);
    letter-spacing: normal;
    text-align: start;
    text-transform: none;
}

.eventhive-layout--classic .eventhive-calendar__weekdays {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    border-block-start: 1px solid var(--eh-classic-color-separator);
    border-inline-start: 1px solid var(--eh-classic-color-separator);
    background: var(--eh-classic-color-soft-background);
    font-family: var(--eh-font-family-ui, var(--eh-content-font-family, inherit));
    font-size: var(--eh-text-xs);
    font-weight: var(--eh-weight-bold);
    line-height: var(--eh-leading-control);
    letter-spacing: normal;
    text-transform: none;
}

.eventhive-layout--classic .eventhive-calendar__weekday {
    box-sizing: border-box;
    display: block;
    min-width: 0;
    border-block-end: 1px solid var(--eh-classic-color-separator);
    border-inline-end: 1px solid var(--eh-classic-color-separator);
    padding-block: var(--eh-classic-meta-gap);
    padding-inline: var(--eh-classic-control-gap);
    color: var(--eh-classic-control-color);
    font: inherit;
    text-align: center;
}

.eventhive-layout--classic .eventhive-calendar__weeks {
    display: grid;
    list-style: none;
    margin: 0;
    border-block-start: 1px solid var(--eh-classic-color-separator);
    border-inline-start: 1px solid var(--eh-classic-color-separator);
    padding: 0;
}

.eventhive-layout--classic .eventhive-calendar__weekdays + .eventhive-calendar__weeks {
    border-block-start: 0;
}

.eventhive-layout--classic .eventhive-calendar__week {
    display: block;
    position: relative;
    list-style: none;
    min-width: 0;
    margin: 0;
    padding: 0;
}

.eventhive-layout--classic .eventhive-calendar__week--has-multi-day-spans {
    display: grid;
}

.eventhive-layout--classic .eventhive-calendar__week-spans {
    position: relative;
    z-index: 1;
    grid-area: 1 / 1;
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    grid-auto-rows: var(--eh-calendar-multi-day-span-block-size);
    gap: var(--eh-calendar-multi-day-span-gap) 0;
    align-content: start;
    min-width: 0;
    padding-block-start: var(--eh-calendar-multi-day-span-offset);
    pointer-events: none;
}

.eventhive-layout--classic .eventhive-calendar__week-days {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    grid-area: 1 / 1;
    list-style: none;
    margin: 0;
    padding: 0;
}

.eventhive-layout--classic .eventhive-calendar__multi-day-span {
    box-sizing: border-box;
    display: block;
    grid-column: var(--eh-calendar-span-column-start) / var(--eh-calendar-span-column-end);
    grid-row: var(--eh-calendar-span-grid-row);
    min-width: 0;
    block-size: 100%;
    min-block-size: 0;
    margin-inline: calc(var(--eh-classic-control-gap) * 0.65);
    border: 1px solid var(--eh-calendar-multi-day-span-border);
    border-radius: 0;
    background: var(--eh-calendar-multi-day-span-background);
}

.eventhive-layout--classic .eventhive-calendar__multi-day-span--past {
    border-color: var(--eh-calendar-past-span-border);
    background: var(--eh-calendar-past-span-background);
}

.eventhive-layout--classic .eventhive-calendar__multi-day-span--starts-visible:not(.eventhive-calendar__multi-day-span--continues-before) {
    border-start-start-radius: calc(var(--eh-classic-size-unit) * 0.28);
    border-end-start-radius: calc(var(--eh-classic-size-unit) * 0.28);
}

.eventhive-layout--classic .eventhive-calendar__multi-day-span--ends-visible:not(.eventhive-calendar__multi-day-span--continues-after) {
    border-start-end-radius: calc(var(--eh-classic-size-unit) * 0.28);
    border-end-end-radius: calc(var(--eh-classic-size-unit) * 0.28);
}

.eventhive-layout--classic .eventhive-calendar__day {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 0;
    min-width: 0;
    min-block-size: var(--eh-calendar-month-cell-min-block-size);
    margin: 0;
    border-block-end: 1px solid var(--eh-classic-color-separator);
    border-inline-end: 1px solid var(--eh-classic-color-separator);
    background: var(--eh-classic-color-surface);
    padding: 0;
    color: var(--eh-classic-control-color);
    box-shadow: none;
}

.eventhive-layout--classic .eventhive-calendar__day--has-events {
    background: var(--eh-classic-color-surface);
}

.eventhive-layout--classic .eventhive-calendar__day--outside-month {
    background: color-mix(in srgb, var(--eh-classic-color-text-default) 3%, var(--eh-classic-color-surface));
    color: var(--eh-classic-disabled-color);
}

.eventhive-layout--classic .eventhive-calendar__day--today {
    outline: 0;
}

.eventhive-layout--classic .eventhive-calendar__day-heading {
    margin: 0;
    color: inherit;
    font-family: var(--eh-font-family-ui, var(--eh-content-font-family, inherit));
    font-size: var(--eh-text-base);
    font-weight: var(--eh-weight-bold);
    line-height: var(--eh-leading-tight);
    letter-spacing: normal;
    padding-block: var(--eh-classic-meta-gap);
    padding-inline: var(--eh-classic-control-gap);
    text-align: start;
    text-transform: none;
}

.eventhive-layout--classic .eventhive-calendar__day--today .eventhive-calendar__day-heading,
.eventhive-layout--classic .eventhive-calendar__day[aria-current="date"] .eventhive-calendar__day-heading {
    background: var(--eh-classic-color-accent-soft);
}

.eventhive-layout--classic .eventhive-calendar__day-button {
    --eh-calendar-button-background: transparent;
    --eh-calendar-button-border-color: transparent;
    --eh-calendar-button-color: inherit;
    --eh-calendar-button-hover-background: transparent;
    --eh-calendar-button-hover-border-color: transparent;
    --eh-calendar-button-hover-color: inherit;

    display: inline-flex;
    align-items: baseline;
    gap: var(--eh-classic-meta-gap);
    width: auto;
    min-width: 0;
    min-block-size: 0;
    min-height: 0;
    margin: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    padding: 0;
    color: inherit;
    font: inherit;
    letter-spacing: inherit;
    text-align: inherit;
    text-decoration: none;
    text-transform: inherit;
    box-shadow: none;
    appearance: none;
    cursor: pointer;
}

.eventhive-layout--classic .eventhive-calendar__day-button:hover,
.eventhive-layout--classic .eventhive-calendar__day-button:active {
    background: transparent;
    color: inherit;
    text-decoration: none;
}

.eventhive-layout--classic .eventhive-calendar__day-button:focus-visible {
    outline: 2px solid var(--eh-classic-neutral-focus-ring);
    outline-offset: 2px;
}

.eventhive-layout--classic .eventhive-calendar .eventhive-calendar__day-heading > button.eventhive-calendar__day-button {
    background: transparent;
    background-color: transparent;
    color: inherit;
}

.eventhive-layout--classic .eventhive-calendar__day-button--mobile {
    display: none;
}

.eventhive-layout--classic .eventhive-calendar__day-date {
    display: inline-flex;
    align-items: baseline;
    gap: var(--eh-classic-meta-gap);
    margin: 0;
    border: 0;
    background: transparent;
    padding: 0;
    color: inherit;
    font: inherit;
    letter-spacing: inherit;
    text-decoration: none;
    text-transform: inherit;
}

.eventhive-layout--classic .eventhive-calendar__day-weekday {
    display: none;
}

.eventhive-layout--classic .eventhive-calendar__day-dots {
    display: none;
}

.eventhive-layout--classic .eventhive-calendar__desktop-day-content {
    position: relative;
    z-index: 2;
    display: grid;
    gap: var(--eh-classic-meta-gap);
    min-width: 0;
    padding-block: var(--eh-classic-meta-gap) var(--eh-classic-control-gap);
    padding-inline: var(--eh-classic-control-gap);
}

.eventhive-layout--classic .eventhive-calendar__desktop-day-content:not(.eventhive-calendar__desktop-day-content--span-mode) {
    padding-block: calc(var(--eh-classic-meta-gap) * 1.35) calc(var(--eh-classic-control-gap) * 1.15);
}

.eventhive-layout--classic .eventhive-calendar__events {
    display: grid;
    gap: var(--eh-classic-meta-gap);
    list-style: none;
    margin: 0;
    padding: 0;
}

.eventhive-layout--classic .eventhive-calendar__events--span-mode {
    grid-template-rows: repeat(var(--eh-calendar-preview-row-count), var(--eh-calendar-multi-day-span-block-size));
    gap: var(--eh-calendar-multi-day-span-gap);
    min-block-size: calc((var(--eh-calendar-preview-row-count) * var(--eh-calendar-multi-day-span-block-size)) + ((var(--eh-calendar-preview-row-count) - 1) * var(--eh-calendar-multi-day-span-gap)));
}

.eventhive-layout--classic .eventhive-calendar__event {
    min-width: 0;
    margin: 0;
    padding: 0;
}

.eventhive-layout--classic .eventhive-calendar__desktop-day-content .eventhive-calendar__event {
    display: block;
    list-style: none;
    font-size: var(--eh-text-xs);
    line-height: var(--eh-leading-tight);
    text-align: start;
    text-transform: none;
}

.eventhive-layout--classic .eventhive-calendar__events--span-mode .eventhive-calendar__event {
    grid-row: var(--eh-calendar-preview-row);
}

.eventhive.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__event-link,
.eventhive.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__event-link:visited {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: var(--eh-calendar-event-marker-track-inline-size, calc(var(--eh-classic-size-unit) * 0.22)) minmax(0, 1fr);
    gap: calc(var(--eh-classic-meta-gap) * 0.75);
    align-items: stretch;
    min-width: 0;
    border: 0;
    background: transparent;
    padding-block: calc(var(--eh-classic-meta-gap) * 0.35);
    padding-inline: 0;
    color: var(--eh-color-link, var(--eh-classic-control-color));
    font-family: var(--eh-font-family-ui, var(--eh-content-font-family, inherit));
    font-size: var(--eh-text-xs);
    font-weight: var(--eh-weight-normal);
    line-height: var(--eh-leading-tight);
    letter-spacing: normal;
    text-align: start;
    text-decoration: none;
    text-transform: none;
    box-shadow: none;
}

.eventhive-layout--classic .eventhive-calendar__desktop-day-content .eventhive-calendar__event-link {
    --eh-calendar-event-marker-inline-size: calc(var(--eh-classic-size-unit) * 0.18);
    --eh-calendar-event-marker-min-track-inline-size: calc(var(--eh-classic-size-unit) * 0.22);
    --eh-calendar-event-marker-gap: calc(var(--eh-classic-meta-gap) * 0.75);
    --eh-calendar-event-marker-edge-offset: calc(var(--eh-classic-size-unit) * 0.12);

    grid-template-columns: var(--eh-calendar-event-marker-track-inline-size) minmax(0, 1fr);
    gap: var(--eh-calendar-event-marker-gap);
    overflow: hidden;
}

.eventhive-layout--classic .eventhive-calendar__events--span-mode .eventhive-calendar__event-link {
    block-size: 100%;
    padding-block: calc(var(--eh-classic-meta-gap) * 0.5);
}

.eventhive-layout--classic .eventhive-calendar__desktop-day-content .eventhive-calendar__event--featured .eventhive-calendar__event-link {
    --eh-calendar-event-marker-inline-size: calc(var(--eh-classic-size-unit) * 0.45);
}

.eventhive-layout--classic .eventhive-calendar--month-cell-time-context-hidden .eventhive-calendar__desktop-day-content .eventhive-calendar__event-link {
    align-items: start;
}

.eventhive.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__event-link:is(:hover, :focus, :active),
.eventhive.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__event-link:visited:is(:hover, :focus, :active) {
    background: transparent;
    color: var(--eh-color-link-hover, var(--eh-classic-color-link-default));
    outline: 0;
    text-decoration: none;
    text-decoration-line: none;
    text-decoration-style: solid;
    box-shadow: none;
}

.eventhive.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__event-link:focus-visible,
.eventhive.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__event-link:visited:focus-visible {
    background: transparent;
    color: var(--eh-color-link-hover, var(--eh-classic-color-link-default));
    outline: 2px solid var(--eh-classic-neutral-focus-ring);
    outline-offset: 2px;
    text-decoration: none;
    text-decoration-line: none;
    text-decoration-style: solid;
    box-shadow: none;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__event-link,
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__event-link:visited {
    border: 0;
    background: transparent;
    color: var(--eh-color-link, var(--eh-classic-control-color));
    text-decoration: none;
    text-decoration-line: none;
    box-shadow: none;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__event-link:is(:hover, :active),
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__event-link:visited:is(:hover, :active) {
    background: transparent;
    color: var(--eh-color-link-hover, var(--eh-classic-color-link-default));
    text-decoration: none;
    text-decoration-line: none;
    box-shadow: none;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__event-link:focus-visible,
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__event-link:visited:focus-visible {
    background: transparent;
    color: var(--eh-color-link-hover, var(--eh-classic-color-link-default));
    outline: 2px solid var(--eh-classic-neutral-focus-ring);
    outline-offset: 2px;
    text-decoration: none;
    text-decoration-line: none;
    box-shadow: none;
}

.eventhive-layout--classic .eventhive-calendar__event-marker {
    display: block;
    position: absolute;
    inset-block: 0;
    inset-inline-start: calc(-1 * (calc(var(--eh-classic-meta-gap) * 0.75) + calc(var(--eh-classic-size-unit) * 0.18)));
    inline-size: calc(var(--eh-classic-size-unit) * 0.18);
    min-block-size: 100%;
    border-radius: calc(var(--eh-classic-size-unit) * 0.12);
    background: var(--eh-calendar-regular-marker);
}

.eventhive-layout--classic .eventhive-calendar__event--multi-day .eventhive-calendar__event-marker {
    background: var(--eh-calendar-multi-day-marker);
}

.eventhive-layout--classic .eventhive-calendar__event--featured .eventhive-calendar__event-marker {
    inset-block: auto;
    inset-block-start: 50%;
    inset-inline-start: calc(-1 * (calc(var(--eh-classic-meta-gap) * 0.75) + calc(var(--eh-classic-size-unit) * 0.45)));
    inline-size: calc(var(--eh-classic-size-unit) * 0.45);
    block-size: calc(var(--eh-classic-size-unit) * 0.45);
    min-block-size: 0;
    margin-block-start: 0;
    border-radius: 999px;
    background: var(--eh-calendar-featured-marker);
    transform: translateY(-50%);
}

.eventhive-layout--classic .eventhive-calendar__events--span-mode .eventhive-calendar__event--featured .eventhive-calendar__event-marker {
    inset-inline-start: calc(-1 * (calc(var(--eh-classic-meta-gap) * 0.35) + calc(var(--eh-classic-size-unit) * 0.45)));
}

.eventhive-layout--classic .eventhive-calendar__desktop-day-content .eventhive-calendar__event-marker,
.eventhive-layout--classic .eventhive-calendar__desktop-day-content .eventhive-calendar__events--span-mode .eventhive-calendar__event--featured .eventhive-calendar__event-marker {
    inset-inline-start: calc(-1 * ((var(--eh-calendar-event-marker-inline-size) + var(--eh-calendar-event-marker-gap)) - var(--eh-calendar-event-marker-edge-offset)));
    inline-size: var(--eh-calendar-event-marker-inline-size);
}

.eventhive-layout--classic .eventhive-calendar__event--past .eventhive-calendar__event-marker {
    background: var(--eh-calendar-past-marker);
}

.eventhive-layout--classic .eventhive-calendar__event-content {
    display: grid;
    grid-column: 2;
    gap: calc(var(--eh-classic-meta-gap) * 0.35);
    min-width: 0;
}

.eventhive-layout--classic .eventhive-calendar--month-cell-time-context-hidden .eventhive-calendar__desktop-day-content .eventhive-calendar__event-content {
    align-self: start;
    gap: 0;
}

.eventhive-layout--classic .eventhive-calendar__event-label {
    display: block;
    min-width: 0;
    color: var(--eh-classic-muted-color);
    font: inherit;
    font-weight: var(--eh-weight-normal);
    letter-spacing: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    text-transform: none;
    white-space: nowrap;
}

.eventhive-layout--classic .eventhive-calendar__event-title-row {
    position: relative;
    display: block;
    min-width: 0;
}

.eventhive-layout--classic .eventhive-calendar__event-title {
    display: block;
    min-width: 0;
    color: inherit;
    font: inherit;
    font-weight: var(--eh-weight-normal);
    letter-spacing: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    text-decoration: inherit;
    text-transform: none;
    white-space: nowrap;
}

.eventhive-layout--classic .eventhive-calendar__more {
    margin: 0;
    color: var(--eh-classic-muted-color);
    font-family: var(--eh-font-family-ui, var(--eh-content-font-family, inherit));
    font-size: var(--eh-text-xs);
    font-weight: var(--eh-weight-bold);
    line-height: var(--eh-leading-tight);
    letter-spacing: normal;
    text-align: start;
    text-transform: none;
}

.eventhive-layout--classic .eventhive-calendar__desktop-day-content .eventhive-calendar__more {
    min-width: 0;
    max-width: 100%;
}

.eventhive-layout--classic .eventhive-calendar__more-link,
.eventhive-layout--classic .eventhive-calendar__more-link:visited {
    color: var(--eh-classic-color-link);
    font: inherit;
    letter-spacing: inherit;
    text-decoration: none;
    text-transform: inherit;
}

.eventhive-layout--classic .eventhive-calendar__more-button {
    --eh-calendar-button-background: transparent;
    --eh-calendar-button-border-color: transparent;
    --eh-calendar-button-color: var(--eh-classic-color-link);
    --eh-calendar-button-hover-background: transparent;
    --eh-calendar-button-hover-border-color: transparent;
    --eh-calendar-button-hover-color: var(--eh-classic-color-link-hover);

    display: inline;
    width: auto;
    min-width: 0;
    min-height: 0;
    margin: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    padding: 0;
    box-shadow: none;
    appearance: none;
    cursor: pointer;
}

.eventhive-layout--classic .eventhive-calendar .eventhive-calendar__more-button.eventhive-calendar__more-link {
    background: transparent;
    background-color: transparent;
    color: var(--eh-classic-color-link);
}

.eventhive-layout--classic .eventhive-calendar__desktop-day-content .eventhive-calendar__more-button {
    min-block-size: 0;
    line-height: inherit;
    text-align: inherit;
}

.eventhive-layout--classic .eventhive-calendar__more-link:hover,
.eventhive-layout--classic .eventhive-calendar__more-link:active {
    color: var(--eh-classic-color-link-hover);
    text-decoration: underline;
    text-decoration-style: solid;
    text-decoration-thickness: 1px;
}

.eventhive-layout--classic .eventhive-calendar .eventhive-calendar__more-button.eventhive-calendar__more-link:hover,
.eventhive-layout--classic .eventhive-calendar .eventhive-calendar__more-button.eventhive-calendar__more-link:active {
    background: transparent;
    background-color: transparent;
    color: var(--eh-classic-color-link-hover);
    text-decoration: none;
    text-decoration-line: none;
    text-decoration-style: solid;
    box-shadow: none;
}

.eventhive-layout--classic .eventhive-calendar .eventhive-calendar__more-button.eventhive-calendar__more-link:focus {
    border: 0;
    background: transparent;
    background-color: transparent;
    color: var(--eh-classic-color-link-hover);
    outline: 0;
    text-decoration: none;
    text-decoration-line: none;
    text-decoration-style: solid;
    box-shadow: none;
}

.eventhive-layout--classic .eventhive-calendar .eventhive-calendar__more-button.eventhive-calendar__more-link:focus-visible {
    outline: 2px solid var(--eh-classic-neutral-focus-ring);
    outline-offset: 2px;
}

.eventhive-layout--classic .eventhive-calendar__more-link:focus-visible {
    color: var(--eh-classic-color-link-hover);
    outline: 2px solid var(--eh-classic-neutral-focus-ring);
    outline-offset: 2px;
    text-decoration: underline;
    text-decoration-style: solid;
    text-decoration-thickness: 1px;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__more-link,
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__more-link:visited {
    color: var(--eh-classic-color-link);
    text-decoration: none;
    text-decoration-line: none;
    box-shadow: none;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__more-link:is(:hover, :active),
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__more-link:visited:is(:hover, :active) {
    color: var(--eh-classic-color-link-hover);
    text-decoration: underline;
    text-decoration-style: solid;
    text-decoration-thickness: 1px;
    box-shadow: none;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__more-link:focus-visible,
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar__more-link:visited:focus-visible {
    color: var(--eh-classic-color-link-hover);
    outline: 2px solid var(--eh-classic-neutral-focus-ring);
    outline-offset: 2px;
    text-decoration: underline;
    text-decoration-style: solid;
    text-decoration-thickness: 1px;
    box-shadow: none;
}

.eventhive-layout--classic .eventhive-calendar__popover {
    --eh-calendar-popover-padding: calc(var(--eh-classic-control-gap) * 1.5);
    --eh-calendar-popover-day-marker-inline-size: calc(var(--eh-classic-size-unit) * 0.22);
    --eh-calendar-popover-day-marker-gap: calc(var(--eh-classic-meta-gap) * 0.75);
    box-sizing: border-box;
    position: fixed;
    z-index: 1000;
    inset-block-start: 0;
    inset-inline-start: 0;
    max-inline-size: calc(100vw - (var(--eh-classic-control-gap) * 2));
    max-block-size: calc(100vh - (var(--eh-classic-control-gap) * 2));
    border: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 18%, var(--eh-classic-color-surface));
    background: var(--eh-classic-color-surface);
    box-shadow: 0 calc(var(--eh-classic-size-unit) * 0.75) calc(var(--eh-classic-size-unit) * 1.5) color-mix(in srgb, var(--eh-classic-color-text-default) 18%, transparent);
    color: var(--eh-classic-control-color);
    font-family: var(--eh-font-family-content, var(--eh-content-font-family, inherit));
    font-size: var(--eh-text-s);
    font-weight: var(--eh-weight-normal);
    line-height: var(--eh-leading-body);
    text-align: start;
}

.eventhive-layout--classic .eventhive-calendar__popover--event {
    z-index: 1001;
    inline-size: 240px;
    overflow: auto;
}

.eventhive-layout--classic .eventhive-calendar__popover[hidden] {
    display: none;
}

.eventhive-layout--classic .eventhive-calendar__popover--day {
    inline-size: 280px;
    block-size: min(320px, calc(100vh - (var(--eh-classic-control-gap) * 2)));
    overflow: hidden;
}

.eventhive-layout--classic .eventhive-calendar-popover {
    box-sizing: border-box;
    display: grid;
    gap: var(--eh-classic-control-gap);
    min-width: 0;
    max-block-size: inherit;
    padding: var(--eh-calendar-popover-padding);
}

.eventhive-layout--classic .eventhive-calendar-popover--event {
    margin: 0;
    border: 0;
    background: transparent;
    gap: var(--eh-classic-meta-gap);
}

.eventhive-layout--classic .eventhive-calendar-popover--event .eventhive-calendar-popover__media {
    display: block;
    inline-size: 100%;
    max-inline-size: 100%;
    border: 0;
    padding: 0;
}

.eventhive-layout--classic .eventhive-calendar-popover--event .eventhive-calendar-popover__image {
    max-inline-size: 100%;
    border: 0;
}

.eventhive-layout--classic .eventhive-calendar-popover--day {
    grid-template-rows: auto minmax(0, 1fr) auto;
    gap: var(--eh-classic-meta-gap);
    block-size: 100%;
    min-block-size: 0;
    margin: 0;
    border: 0;
    background: transparent;
}

.eventhive-layout--classic .eventhive-calendar-popover__media {
    margin: 0;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: color-mix(in srgb, var(--eh-classic-color-text-default) 5%, var(--eh-classic-color-surface));
}

.eventhive-layout--classic .eventhive-calendar-popover__media-link,
.eventhive-layout--classic .eventhive-calendar-popover__media-link:visited {
    display: block;
    inline-size: 100%;
    block-size: 100%;
    color: inherit;
    text-decoration: none;
}

.eventhive-layout--classic .eventhive-calendar-popover__media-link:hover,
.eventhive-layout--classic .eventhive-calendar-popover__media-link:active,
.eventhive-layout--classic .eventhive-calendar-popover__media-link:focus-visible {
    color: inherit;
    text-decoration: none;
    text-decoration-line: none;
}

.eventhive-layout--classic .eventhive-calendar-popover__image {
    display: block;
    inline-size: 100%;
    block-size: 100%;
    min-block-size: 100%;
    min-height: 100%;
    margin: 0;
    object-fit: cover;
    object-position: center center;
}

.eventhive-layout--classic .eventhive-calendar-popover__body {
    display: grid;
    gap: var(--eh-classic-meta-gap);
    min-width: 0;
}

.eventhive-layout--classic .eventhive-calendar-popover__meta,
.eventhive-layout--classic .eventhive-calendar-popover__day-event-time {
    color: var(--eh-classic-muted-color);
    font-family: var(--eh-font-family-ui, var(--eh-content-font-family, inherit));
    font-size: var(--eh-text-xs);
    font-weight: var(--eh-weight-normal);
    line-height: var(--eh-leading-tight);
    letter-spacing: normal;
    text-transform: none;
}

.eventhive-layout--classic .eventhive-calendar-popover__title {
    min-width: 0;
    margin: 0;
    color: var(--eh-classic-control-color);
    font-size: var(--eh-text-s);
    font-weight: var(--eh-weight-bold);
    line-height: var(--eh-leading-tight);
    letter-spacing: normal;
    text-align: start;
    text-transform: none;
}

.eventhive-layout--classic .eventhive-calendar-popover__title--day {
    font-size: var(--eh-text-s);
}

.eventhive-layout--classic .eventhive-calendar-popover__status {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin: 0;
    text-align: start;
}

.eventhive-layout--classic .eventhive-calendar-popover__status .eventhive-badge--status {
    --eh-badge-gap: calc(var(--eh-classic-size-unit) * 0.25);
    --eh-badge-font-size: calc(var(--eh-classic-size-unit) * 0.6875);
    --eh-badge-line-height: 1.15;
    --eh-badge-padding-block: calc(var(--eh-classic-size-unit) * 0.125);
    --eh-badge-padding-inline: calc(var(--eh-classic-size-unit) * 0.45);

    justify-self: start;
    align-self: start;
}

.eventhive-layout--classic .eventhive-calendar-popover__day-header {
    display: grid;
    gap: calc(var(--eh-classic-meta-gap) * 0.45);
    border-block-end: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 12%, var(--eh-classic-color-surface));
    padding-block-end: var(--eh-classic-meta-gap);
}

.eventhive-layout--classic .eventhive-calendar-popover__day-count {
    margin: 0;
    color: color-mix(in srgb, var(--eh-classic-color-text) 58%, var(--eh-classic-color-surface));
    font-family: var(--eh-font-family-ui, var(--eh-content-font-family, inherit));
    font-size: var(--eh-text-xs);
    font-weight: var(--eh-weight-normal);
    line-height: var(--eh-leading-tight);
    letter-spacing: normal;
    text-transform: none;
}

.eventhive-layout--classic .eventhive-calendar-popover__title a,
.eventhive-layout--classic .eventhive-calendar-popover__title a:visited,
.eventhive-layout--classic .eventhive-calendar-popover__day-event-title,
.eventhive-layout--classic .eventhive-calendar-popover__day-event-title:visited {
    color: var(--eh-color-link, inherit);
    font: inherit;
    letter-spacing: inherit;
    text-decoration: none;
    text-decoration-line: none;
    text-decoration-style: solid;
    text-transform: inherit;
}

.eventhive-layout--classic .eventhive-calendar-popover__title a:hover,
.eventhive-layout--classic .eventhive-calendar-popover__title a:active,
.eventhive-layout--classic .eventhive-calendar-popover__day-event-title:hover,
.eventhive-layout--classic .eventhive-calendar-popover__day-event-title:active {
    color: var(--eh-color-link-hover, var(--eh-classic-color-link-default));
    text-decoration: underline;
    text-decoration-style: solid;
    text-decoration-thickness: 1px;
}

.eventhive-layout--classic .eventhive-calendar-popover__title a:focus-visible,
.eventhive-layout--classic .eventhive-calendar-popover__media-link:focus-visible,
.eventhive-layout--classic .eventhive-calendar-popover__day-event-title:focus-visible,
.eventhive-layout--classic .eventhive-calendar-popover__view-all:focus-visible {
    outline: 2px solid var(--eh-classic-neutral-focus-ring);
    outline-offset: 2px;
}

.eventhive-layout--classic .eventhive-calendar-popover__title a:focus,
.eventhive-layout--classic .eventhive-calendar-popover__title a:focus-visible {
    color: var(--eh-color-link-hover, var(--eh-color-link, inherit));
    text-decoration: none;
    text-decoration-line: none;
    text-decoration-style: solid;
}

.eventhive-layout--classic .eventhive-calendar-popover__excerpt {
    margin: 0;
    color: inherit;
    font-family: var(--eh-font-family-content, var(--eh-content-font-family, inherit));
    font-size: var(--eh-text-xs);
    font-weight: var(--eh-weight-normal);
    line-height: var(--eh-leading-body);
    letter-spacing: normal;
    text-align: start;
    text-transform: none;
}

.eventhive-layout--classic .eventhive-calendar-popover__day-list {
    display: grid;
    gap: var(--eh-classic-control-gap);
    align-content: start;
    align-items: start;
    grid-auto-rows: max-content;
    min-block-size: 0;
    margin: 0;
    border: 0;
    padding-block: 0;
    padding-inline: 0 calc(var(--eh-classic-meta-gap) * 0.5);
    box-shadow: none;
    outline: 0;
    overflow-y: auto;
    list-style: none;
    scrollbar-width: thin;
    scrollbar-color: color-mix(in srgb, var(--eh-classic-color-text-default) 26%, transparent) transparent;
}

.eventhive-layout--classic .eventhive-calendar-popover__day-list::-webkit-scrollbar {
    inline-size: calc(var(--eh-classic-size-unit) * 0.32);
}

.eventhive-layout--classic .eventhive-calendar-popover__day-list::-webkit-scrollbar-track {
    background: transparent;
}

.eventhive-layout--classic .eventhive-calendar-popover__day-list::-webkit-scrollbar-thumb {
    border: 0;
    border-radius: 999px;
    background: color-mix(in srgb, var(--eh-classic-color-text-default) 26%, transparent);
}

.eventhive-layout--classic .eventhive-calendar-popover__day-event {
    display: block;
    min-width: 0;
    margin: 0;
    padding-block: calc(var(--eh-classic-meta-gap) * 0.45);
    padding-inline: 0;
}

.eventhive-layout--classic .eventhive-calendar-popover__day-event-title-row {
    display: grid;
    grid-template-columns: var(--eh-calendar-popover-day-marker-inline-size) minmax(0, 1fr);
    align-items: center;
    gap: var(--eh-calendar-popover-day-marker-gap);
    min-width: 0;
}

.eventhive-layout--classic .eventhive-calendar-popover__day-event-marker {
    display: block;
    align-self: center;
    inline-size: calc(var(--eh-classic-size-unit) * 0.18);
    block-size: calc(var(--eh-text-s) * var(--eh-leading-tight));
    min-block-size: 0;
    border-radius: calc(var(--eh-classic-size-unit) * 0.12);
    background: var(--eh-calendar-regular-marker);
}

.eventhive-layout--classic .eventhive-calendar-popover__day-event.eventhive-calendar__event--multi-day .eventhive-calendar-popover__day-event-marker {
    background: var(--eh-calendar-multi-day-marker);
}

.eventhive-layout--classic .eventhive-calendar-popover__day-event.eventhive-calendar__event--featured .eventhive-calendar-popover__day-event-marker {
    align-self: center;
    inline-size: calc(var(--eh-classic-size-unit) * 0.45);
    block-size: calc(var(--eh-classic-size-unit) * 0.45);
    min-block-size: 0;
    border-radius: 999px;
    background: var(--eh-calendar-featured-marker);
}

.eventhive-layout--classic .eventhive-calendar-popover__day-event.eventhive-calendar__event--past .eventhive-calendar-popover__day-event-marker {
    background: var(--eh-calendar-past-marker);
}

.eventhive-layout--classic .eventhive-calendar-popover__day-event-content {
    display: grid;
    gap: calc(var(--eh-classic-meta-gap) * 0.35);
    min-width: 0;
}

.eventhive-layout--classic .eventhive-calendar-popover__day-event-title {
    display: block;
    min-width: 0;
    color: var(--eh-color-link, var(--eh-classic-control-color));
    font-family: var(--eh-font-family-ui, var(--eh-content-font-family, inherit));
    font-size: var(--eh-text-s);
    font-weight: var(--eh-weight-normal);
    line-height: var(--eh-leading-tight);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.eventhive-layout--classic .eventhive-calendar-popover__day-event-title:focus,
.eventhive-layout--classic .eventhive-calendar-popover__day-event-title:focus-visible {
    color: var(--eh-color-link-hover, var(--eh-color-link, var(--eh-classic-control-color)));
    text-decoration: none;
    text-decoration-line: none;
    text-decoration-style: solid;
}

.eventhive-layout--classic .eventhive-calendar-popover__day-event-time {
    display: block;
    padding-inline-start: calc(var(--eh-calendar-popover-day-marker-inline-size) + var(--eh-calendar-popover-day-marker-gap));
}

.eventhive-layout--classic .eventhive-calendar-popover__footer {
    display: flex;
    justify-content: center;
    margin: 0;
    border-block-start: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 12%, var(--eh-classic-color-surface));
    padding-block-start: var(--eh-classic-meta-gap);
}

.eventhive-layout--classic .eventhive-calendar-popover__view-all,
.eventhive-layout--classic .eventhive-calendar-popover__view-all:visited {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-block-size: calc(var(--eh-classic-size-unit) * 1.85);
    border: 1px solid var(--eh-color-link, var(--eh-classic-color-link));
    background: transparent;
    padding-block: 0;
    padding-inline: var(--eh-classic-meta-gap);
    color: var(--eh-color-link, var(--eh-classic-color-link));
    font-family: var(--eh-font-family-ui, var(--eh-content-font-family, inherit));
    font-size: var(--eh-text-xs);
    font-weight: var(--eh-weight-bold);
    line-height: var(--eh-leading-control);
    letter-spacing: normal;
    text-decoration: none;
    text-decoration-line: none;
    text-decoration-style: solid;
    text-transform: none;
}

.eventhive-layout--classic .eventhive-calendar-popover__view-all:hover,
.eventhive-layout--classic .eventhive-calendar-popover__view-all:active {
    background: color-mix(in srgb, var(--eh-classic-color-link) 8%, var(--eh-classic-color-surface));
    color: var(--eh-color-link-hover, var(--eh-classic-color-link));
    text-decoration: none;
    text-decoration-line: none;
}

.eventhive-layout--classic .eventhive-calendar-popover__view-all:focus,
.eventhive-layout--classic .eventhive-calendar-popover__view-all:focus-visible {
    color: var(--eh-color-link-hover, var(--eh-classic-color-link));
    text-decoration: none;
    text-decoration-line: none;
    text-decoration-style: solid;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar .eventhive-calendar-popover__title a,
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar .eventhive-calendar-popover__title a:visited,
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar-popover__day-event-title,
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar-popover__day-event-title:visited {
    color: var(--eh-color-link, inherit);
    text-decoration: none;
    text-decoration-line: none;
    text-decoration-style: solid;
    box-shadow: none;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar .eventhive-calendar-popover__title a:is(:hover, :active),
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar .eventhive-calendar-popover__title a:visited:is(:hover, :active),
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar-popover__day-event-title:is(:hover, :active),
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar-popover__day-event-title:visited:is(:hover, :active) {
    color: var(--eh-color-link-hover, var(--eh-classic-color-link-default));
    text-decoration: underline;
    text-decoration-style: solid;
    text-decoration-thickness: 1px;
    box-shadow: none;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar .eventhive-calendar-popover__title a:is(:focus, :focus-visible),
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar .eventhive-calendar-popover__title a:visited:is(:focus, :focus-visible),
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar-popover__day-event-title:is(:focus, :focus-visible),
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar-popover__day-event-title:visited:is(:focus, :focus-visible) {
    color: var(--eh-color-link-hover, var(--eh-color-link, inherit));
    text-decoration: none;
    text-decoration-line: none;
    text-decoration-style: solid;
    box-shadow: none;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar .eventhive-calendar-popover__title a:focus-visible,
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar .eventhive-calendar-popover__title a:visited:focus-visible,
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar-popover__day-event-title:focus-visible,
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar-popover__day-event-title:visited:focus-visible {
    outline: 2px solid var(--eh-classic-neutral-focus-ring);
    outline-offset: 2px;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar-popover__view-all,
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar-popover__view-all:visited {
    border-color: var(--eh-color-link, var(--eh-classic-color-link));
    background: transparent;
    color: var(--eh-color-link, var(--eh-classic-color-link));
    text-decoration: none;
    text-decoration-line: none;
    text-decoration-style: solid;
    box-shadow: none;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar-popover__view-all:is(:hover, :active),
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar-popover__view-all:visited:is(:hover, :active) {
    background: color-mix(in srgb, var(--eh-classic-color-link) 8%, var(--eh-classic-color-surface));
    color: var(--eh-color-link-hover, var(--eh-classic-color-link));
    text-decoration: none;
    text-decoration-line: none;
    box-shadow: none;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar-popover__view-all:is(:focus, :focus-visible),
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar-popover__view-all:visited:is(:focus, :focus-visible) {
    color: var(--eh-color-link-hover, var(--eh-classic-color-link));
    text-decoration: none;
    text-decoration-line: none;
    text-decoration-style: solid;
    box-shadow: none;
}

.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar-popover__view-all:focus-visible,
.eventhive-shortcode.eventhive-layout--classic .eventhive-calendar a.eventhive-calendar-popover__view-all:visited:focus-visible {
    outline: 2px solid var(--eh-classic-neutral-focus-ring);
    outline-offset: 2px;
}

.eventhive-layout--classic .eventhive-calendar__mobile-preview {
    display: none;
}

@container eventhive-classic-calendar (max-width: 759.98px) {
    .eventhive-layout--classic .eventhive-calendar__week-spans {
        display: none;
    }

    .eventhive-layout--classic .eventhive-calendar__weeks {
        box-sizing: border-box;
        width: 100%;
        min-width: 0;
        margin: 0;
        padding: 0;
        list-style: none;
        text-align: start;
        text-transform: none;
    }

    .eventhive-layout--classic .eventhive-calendar__week {
        box-sizing: border-box;
        min-width: 0;
        margin: 0;
        padding: 0;
        list-style: none;
        text-align: start;
        text-transform: none;
    }

    .eventhive-layout--classic .eventhive-calendar__week-days {
        box-sizing: border-box;
        grid-template-columns: repeat(7, minmax(0, 1fr));
        width: 100%;
        min-width: 0;
        margin: 0;
        padding: 0;
        list-style: none;
        text-align: start;
    }

    .eventhive-layout--classic .eventhive-calendar__weekdays {
        box-sizing: border-box;
        width: 100%;
        margin: 0;
        padding: 0;
        font-weight: var(--eh-weight-normal);
        text-align: start;
        text-transform: none;
    }

    .eventhive-layout--classic .eventhive-calendar__weekday {
        margin: 0;
        padding-inline: calc(var(--eh-classic-meta-gap) * 0.25);
        overflow-wrap: normal;
        white-space: nowrap;
        word-break: normal;
    }

    .eventhive-layout--classic .eventhive-calendar__day {
        align-items: stretch;
        gap: 0;
        min-block-size: calc(var(--eh-classic-size-unit) * 2.75);
        padding: 0;
    }

    .eventhive-layout--classic .eventhive-calendar__day-heading {
        box-sizing: border-box;
        display: flex;
        align-items: stretch;
        justify-content: center;
        width: 100%;
        min-width: 0;
        min-block-size: calc(var(--eh-classic-size-unit) * 2.75);
        margin: 0;
        border: 0;
        font-size: var(--eh-text-xs);
        padding: 0;
        text-align: center;
    }

    .eventhive-layout--classic .eventhive-calendar__day-button {
        box-sizing: border-box;
        display: grid;
        grid-template-rows: auto minmax(calc(var(--eh-classic-size-unit) * 0.3), auto);
        align-content: center;
        align-items: center;
        justify-items: center;
        gap: calc(var(--eh-classic-meta-gap) * 0.2);
        width: 100%;
        max-width: 100%;
        min-block-size: calc(var(--eh-classic-size-unit) * 2.75);
        border: 0;
        padding: calc(var(--eh-classic-meta-gap) * 0.5);
        text-align: center;
        text-decoration: none;
    }

    .eventhive-layout--classic .eventhive-calendar__day-link {
        display: none;
    }

    .eventhive-layout--classic .eventhive-calendar__day-button--mobile {
        display: grid;
    }

    .eventhive-layout--classic .eventhive-calendar__day-date {
        box-sizing: border-box;
        display: grid;
        grid-template-rows: auto minmax(calc(var(--eh-classic-size-unit) * 0.3), auto);
        align-items: center;
        justify-items: center;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        justify-content: center;
        margin: 0;
        border: 0;
        background: transparent;
        padding: 0;
        text-decoration: none;
    }

    .eventhive-layout--classic .eventhive-calendar__day-button > .eventhive-calendar__day-date {
        grid-row: 1;
        grid-template-rows: auto;
        min-block-size: 0;
    }

    .eventhive-layout--classic .eventhive-calendar__day-heading > .eventhive-calendar__day-date {
        padding: calc(var(--eh-classic-meta-gap) * 0.5);
    }

    .eventhive-layout--classic .eventhive-calendar__day-number {
        display: block;
        min-width: 0;
        margin: 0;
        border: 0;
        background: transparent;
        padding: 0;
        color: inherit;
        font: inherit;
        letter-spacing: inherit;
        line-height: inherit;
        text-align: inherit;
        text-decoration: none;
        text-transform: none;
    }

    .eventhive-layout--classic .eventhive-calendar__day-weekday {
        display: none;
    }

    .eventhive-layout--classic .eventhive-calendar__day-dots {
        box-sizing: border-box;
        grid-row: 2;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: calc(var(--eh-classic-size-unit) * 0.16);
        max-width: 100%;
        min-block-size: calc(var(--eh-classic-size-unit) * 0.3);
        margin: 0;
        border: 0;
        background: transparent;
        padding: 0;
        overflow: hidden;
    }

    .eventhive-layout--classic .eventhive-calendar__day-type-dot {
        box-sizing: border-box;
        flex: 0 0 auto;
        display: block;
        inline-size: calc(var(--eh-classic-size-unit) * 0.24);
        block-size: calc(var(--eh-classic-size-unit) * 0.24);
        margin: 0;
        border: 0;
        border-radius: 999px;
        background: var(--eh-calendar-regular-marker);
        padding: 0;
        box-shadow: none;
    }

    .eventhive-layout--classic .eventhive-calendar__day-type-dot--featured {
        background: var(--eh-calendar-featured-marker);
    }

    .eventhive-layout--classic .eventhive-calendar__day-type-dot--single-day {
        background: var(--eh-calendar-regular-marker);
    }

    .eventhive-layout--classic .eventhive-calendar__day-type-dot--multi-day {
        background: var(--eh-calendar-multi-day-marker);
    }

    .eventhive-layout--classic .eventhive-calendar__day-type-dot--past {
        background: var(--eh-calendar-past-marker);
    }

    .eventhive-layout--classic .eventhive-calendar__day--selected {
        background: var(--eh-classic-color-surface);
        outline: 0;
    }

    .eventhive-layout--classic .eventhive-calendar__day--selected .eventhive-calendar__day-button {
        --eh-calendar-button-background: color-mix(in srgb, var(--eh-classic-color-text-default) 5%, var(--eh-classic-color-surface));
        --eh-calendar-button-color: var(--eh-classic-color-text);
        --eh-calendar-button-hover-background: color-mix(in srgb, var(--eh-classic-color-text-default) 5%, var(--eh-classic-color-surface));
        --eh-calendar-button-hover-color: var(--eh-classic-color-text);

        background: color-mix(in srgb, var(--eh-classic-color-text-default) 5%, var(--eh-classic-color-surface));
        color: var(--eh-classic-color-text);
    }

    .eventhive-layout--classic .eventhive-calendar .eventhive-calendar__day--selected .eventhive-calendar__day-heading > button.eventhive-calendar__day-button {
        background: color-mix(in srgb, var(--eh-classic-color-text-default) 5%, var(--eh-classic-color-surface));
        background-color: color-mix(in srgb, var(--eh-classic-color-text-default) 5%, var(--eh-classic-color-surface));
        color: var(--eh-classic-color-text);
    }

    .eventhive-layout--classic .eventhive-calendar__day--today.eventhive-calendar__day--selected .eventhive-calendar__day-button,
    .eventhive-layout--classic .eventhive-calendar__day[aria-current="date"].eventhive-calendar__day--selected .eventhive-calendar__day-button {
        --eh-calendar-button-background: var(--eh-classic-color-accent-soft);
        --eh-calendar-button-hover-background: var(--eh-classic-color-accent-soft);

        background: var(--eh-classic-color-accent-soft);
    }

    .eventhive-layout--classic .eventhive-calendar .eventhive-calendar__day--today.eventhive-calendar__day--selected .eventhive-calendar__day-heading > button.eventhive-calendar__day-button,
    .eventhive-layout--classic .eventhive-calendar .eventhive-calendar__day[aria-current="date"].eventhive-calendar__day--selected .eventhive-calendar__day-heading > button.eventhive-calendar__day-button {
        background: var(--eh-classic-color-accent-soft);
        background-color: var(--eh-classic-color-accent-soft);
    }

    .eventhive-layout--classic .eventhive-calendar__day--outside-month .eventhive-calendar__day-heading {
        color: color-mix(in srgb, var(--eh-classic-color-text) 32%, var(--eh-classic-color-surface));
    }

    .eventhive-layout--classic .eventhive-calendar__desktop-day-content {
        display: none;
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-preview {
        display: grid;
        gap: var(--eh-classic-control-gap);
        min-width: 0;
        max-width: 100%;
        margin-block-start: var(--eh-classic-control-gap);
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-day-panel {
        box-sizing: border-box;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        margin: 0;
        border: 1px solid var(--eh-classic-color-border);
        background: var(--eh-classic-color-surface);
        padding: var(--eh-classic-control-gap);
        scroll-margin-block-start: calc(var(--eh-classic-control-gap) * 2);
        text-align: start;
        text-transform: none;
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-day-panel:not([hidden]) {
        display: grid;
        gap: var(--eh-classic-control-gap);
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-empty-selection {
        box-sizing: border-box;
        width: 100%;
        max-width: 100%;
        margin: 0;
        border: 1px solid var(--eh-classic-color-border);
        background: var(--eh-classic-color-surface);
        padding: var(--eh-classic-control-gap);
        color: var(--eh-classic-muted-color);
        font-family: var(--eh-font-family-content, var(--eh-content-font-family, inherit));
        font-size: var(--eh-text-s);
        font-weight: inherit;
        line-height: var(--eh-leading-body);
        letter-spacing: normal;
        text-align: start;
        text-transform: none;
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-day-title {
        margin: 0;
        color: var(--eh-classic-control-color);
        font-family: var(--eh-font-family-ui, var(--eh-content-font-family, inherit));
        font-size: var(--eh-text-s);
        font-weight: var(--eh-weight-bold);
        line-height: var(--eh-leading-tight);
        letter-spacing: normal;
        text-align: start;
        text-transform: none;
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-day-header {
        box-sizing: border-box;
        display: grid;
        gap: calc(var(--eh-classic-meta-gap) * 0.45);
        margin: 0;
        border-block-end: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 12%, var(--eh-classic-color-surface));
        background: transparent;
        padding-block-end: var(--eh-classic-meta-gap);
        text-align: start;
        text-transform: none;
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-day-count {
        margin: 0;
        color: color-mix(in srgb, var(--eh-classic-color-text) 58%, var(--eh-classic-color-surface));
        font-family: var(--eh-font-family-ui, var(--eh-content-font-family, inherit));
        font-size: var(--eh-text-xs);
        font-weight: var(--eh-weight-normal);
        line-height: var(--eh-leading-tight);
        letter-spacing: normal;
        text-align: start;
        text-transform: none;
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-day-events {
        --eh-calendar-mobile-selected-marker-overhang: calc((var(--eh-classic-meta-gap) * 0.75) + (var(--eh-classic-size-unit) * 0.45));
        --eh-calendar-mobile-selected-row-block-size: calc((var(--eh-text-xs) * var(--eh-leading-tight) * 2) + (var(--eh-classic-meta-gap) * 1.3));
        box-sizing: border-box;
        position: relative;
        width: 100%;
        max-width: 100%;
        max-block-size: min(calc((var(--eh-calendar-mobile-selected-row-block-size) * 3) + (var(--eh-classic-control-gap) * 3)), 42vh);
        min-block-size: 0;
        margin: 0;
        border: 0;
        background: transparent;
        padding-inline: var(--eh-calendar-mobile-selected-marker-overhang) calc(var(--eh-classic-meta-gap) * 0.5);
        text-align: start;
        text-transform: none;
        overflow-y: auto;
        scrollbar-width: none;
        -ms-overflow-style: none;
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-day-events.is-scrollable {
        padding-inline-end: calc(var(--eh-classic-meta-gap) * 1.4);
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-day-events.is-scrollable::after {
        content: "";
        display: block;
        position: absolute;
        inset-block-start: var(--eh-calendar-mobile-scroll-thumb-offset, calc(var(--eh-classic-meta-gap) * 0.5));
        inset-inline-end: calc(var(--eh-classic-meta-gap) * 0.35);
        z-index: 1;
        inline-size: calc(var(--eh-classic-size-unit) * 0.18);
        block-size: var(--eh-calendar-mobile-scroll-thumb-size, calc(var(--eh-classic-size-unit) * 2.4));
        border-radius: 999px;
        background: color-mix(in srgb, var(--eh-classic-color-text-default) 34%, transparent);
        pointer-events: none;
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-day-events.is-scrollable:not(.is-scrolled-to-end)::before {
        content: "";
        display: block;
        position: absolute;
        inset-inline: 0 calc(var(--eh-classic-meta-gap) * 1.4);
        inset-block-end: 0;
        block-size: calc(var(--eh-classic-control-gap) * 1.4);
        background: linear-gradient(to bottom, transparent, var(--eh-classic-color-surface));
        pointer-events: none;
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-day-events::-webkit-scrollbar {
        display: none;
        inline-size: 0;
        block-size: 0;
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-day-panel .eventhive-calendar__events {
        box-sizing: border-box;
        gap: var(--eh-classic-control-gap);
        align-content: start;
        align-items: start;
        grid-auto-rows: max-content;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        margin: 0;
        border: 0;
        background: transparent;
        padding: 0;
        list-style: none;
        text-align: start;
        text-transform: none;
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-day-panel .eventhive-calendar__event {
        box-sizing: border-box;
        display: block;
        min-width: 0;
        margin: 0;
        border: 0;
        background: transparent;
        padding: 0;
        list-style: none;
        font-size: var(--eh-text-xs);
        line-height: var(--eh-leading-tight);
        text-align: start;
        text-transform: none;
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-day-panel .eventhive-calendar__event-link {
        width: 100%;
        max-width: 100%;
        padding-block: calc(var(--eh-classic-meta-gap) * 0.65);
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-day-panel .eventhive-calendar__more {
        margin-block-start: calc(var(--eh-classic-meta-gap) * 0.35);
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-day-action {
        display: flex;
        justify-content: center;
        margin: 0;
        border-block-start: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 12%, var(--eh-classic-color-surface));
        padding-block-start: var(--eh-classic-meta-gap);
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-day-view-link,
    .eventhive-layout--classic .eventhive-calendar__mobile-day-view-link:visited {
        box-sizing: border-box;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-block-size: calc(var(--eh-classic-size-unit) * 1.85);
        border: 1px solid var(--eh-color-link, var(--eh-classic-color-link));
        background: transparent;
        padding-block: 0;
        padding-inline: var(--eh-classic-meta-gap);
        color: var(--eh-color-link, var(--eh-classic-color-link));
        font-family: var(--eh-font-family-ui, var(--eh-content-font-family, inherit));
        font-size: var(--eh-text-xs);
        font-weight: var(--eh-weight-bold);
        line-height: var(--eh-leading-control);
        letter-spacing: normal;
        text-align: center;
        text-decoration: none;
        text-decoration-line: none;
        text-decoration-style: solid;
        text-transform: none;
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-day-view-link:hover,
    .eventhive-layout--classic .eventhive-calendar__mobile-day-view-link:active {
        background: color-mix(in srgb, var(--eh-classic-color-link) 8%, var(--eh-classic-color-surface));
        color: var(--eh-color-link-hover, var(--eh-classic-color-link));
        text-decoration: none;
        text-decoration-line: none;
        text-decoration-style: solid;
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-day-view-link:focus-visible {
        color: var(--eh-color-link-hover, var(--eh-classic-color-link));
        outline: 2px solid var(--eh-classic-neutral-focus-ring);
        outline-offset: 2px;
        text-decoration: none;
        text-decoration-line: none;
        text-decoration-style: solid;
    }

    .eventhive-layout--classic .eventhive-calendar__mobile-day-empty {
        margin: 0;
        border: 0;
        background: transparent;
        padding: 0;
        color: var(--eh-classic-muted-color);
        font-family: var(--eh-font-family-content, var(--eh-content-font-family, inherit));
        font-size: var(--eh-text-s);
        font-weight: inherit;
        line-height: var(--eh-leading-body);
        letter-spacing: normal;
        text-align: start;
        text-transform: none;
    }
}

/* --------------------------------------------------------------------------
   Classic: Empty State
-------------------------------------------------------------------------- */

.eventhive-layout--classic .eventhive-no-results {
    --eh-heading-section: var(--eh-heading-h3);

    display: block;
    margin: 0;
    border: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
    box-shadow: none;
    outline: 0;
    background: var(--eh-classic-color-surface);
    padding: var(--eh-classic-panel-padding-large);
    text-align: start;
}

.eventhive-layout--classic .eventhive-no-results__title {
    margin-inline: 0;
    margin-block: 0 var(--eh-gap-s);
    color: var(--eh-classic-color-text);
    font-size: var(--eh-heading-section, var(--eh-heading-h3));
    font-weight: var(--eh-heading-weight);
    letter-spacing: normal;
    line-height: var(--eh-leading-tight);
    text-align: start;
    text-transform: none;
}

.eventhive-layout--classic.eventhive-has-custom-font-family .eventhive-no-results__title {
    font-family: var(--eh-font-family-heading, var(--eh-font-family-content, var(--eh-content-font-family, inherit)));
}

.eventhive-layout--classic .eventhive-no-results__message {
    max-width: 65ch;
    margin-inline: 0;
    margin-block: 0 var(--eh-gap-m);
    color: inherit;
    font-family: var(--eh-font-family-content, var(--eh-content-font-family, inherit));
    font-size: var(--eh-text-content, var(--eh-text-base));
    font-weight: var(--eh-weight-normal);
    letter-spacing: normal;
    line-height: var(--eh-leading-body);
    text-align: start;
    text-decoration: none;
    text-transform: none;
}

.eventhive-layout--classic .eventhive-no-results__action {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 0;
    margin-inline: 0;
    margin-block: 0;
    text-align: start;
}

/* --------------------------------------------------------------------------
   Classic: Badges and Actions
-------------------------------------------------------------------------- */

.eventhive-layout--classic .eventhive-badge--featured {
    --eh-badge-border-color: #d69e00;
    --eh-badge-background: #facc15;
    --eh-badge-color: var(--eh-classic-color-text-default);
    --eh-badge-font-weight: 600;
    --eh-badge-padding-inline: var(--eh-classic-featured-badge-padding-inline);

    justify-self: start;
    align-self: start;
}

.eventhive-layout--classic .eventhive-badge--category {
    --eh-badge-border-color: var(--eh-classic-color-accent);
    --eh-badge-background: transparent;
    --eh-badge-color: var(--eh-classic-color-accent);
    --eh-badge-padding-inline: var(--eh-classic-badge-padding-inline);
    --eh-badge-hover-color: color-mix(in srgb, var(--eh-classic-color-accent) 60%, var(--eh-classic-color-surface));
}

.eventhive-layout--classic .eventhive-category-list .eventhive-badge--taxonomy {
    text-decoration: none;
    text-decoration-line: none;
}

.eventhive-layout--classic .eventhive-badge--status {
    --eh-badge-border-color: color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
    --eh-badge-background: color-mix(in srgb, var(--eh-classic-color-text-default) 3%, var(--eh-classic-color-surface));
    --eh-badge-color: var(--eh-classic-color-text-default);
    --eh-badge-padding-inline: var(--eh-classic-badge-padding-inline);
}

.eventhive-layout--classic .eventhive-badge--ongoing,
.eventhive-layout--classic .eventhive-badge--status[data-status="ongoing"] {
    --eh-badge-border-color: #b9ebcf;
    --eh-badge-background: #ecfdf3;
    --eh-badge-color: #15803d;
}

.eventhive-layout--classic .eventhive-badge--status.eventhive-badge--ongoing::before,
.eventhive-layout--classic .eventhive-badge--status[data-status="ongoing"]::before {
    content: "";
    flex: 0 0 auto;
    inline-size: calc(var(--eh-classic-size-unit) * 0.375);
    block-size: calc(var(--eh-classic-size-unit) * 0.375);
    border-radius: 999px;
    background: currentColor;
}

.eventhive-layout--classic .eventhive-badge--upcoming,
.eventhive-layout--classic .eventhive-badge--status[data-status="upcoming"] {
    --eh-badge-border-color: #d5e7ff;
    --eh-badge-background: #e8f2ff;
    --eh-badge-color: #2563eb;
}

.eventhive-layout--classic .eventhive-badge--past,
.eventhive-layout--classic .eventhive-badge--status[data-status="past"] {
    --eh-badge-border-color: #d5dbe6;
    --eh-badge-background: #eef2f7;
    --eh-badge-color: #64748b;
}

.eventhive-layout--classic a.eventhive-button {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: var(--eh-classic-meta-gap);
    width: auto;
    min-height: 0;
    border: 0;
    border-block-end: 2px solid currentColor;
    border-radius: 0;
    background: transparent;
    padding: 0;
    color: var(--eh-classic-color-accent);
    font-family: var(--eh-button-font-family, var(--eh-content-font-family, inherit));
    font-size: var(--eh-classic-action-font-size);
    font-weight: var(--eh-button-font-weight, 400);
    line-height: var(--eh-leading-body);
    text-decoration: none;
    box-shadow: none;
}

.eventhive-layout--classic a.eventhive-button:visited {
    color: var(--eh-classic-color-accent);
}

.eventhive-layout--classic a.eventhive-button:hover,
.eventhive-layout--classic a.eventhive-button:active,
.eventhive-layout--classic a.eventhive-button:visited:hover,
.eventhive-layout--classic a.eventhive-button:visited:active,
.eventhive-layout--classic a.eventhive-button:visited:focus-visible,
.eventhive-layout--classic a.eventhive-button:focus-visible {
    background: transparent;
    color: color-mix(in srgb, var(--eh-classic-color-accent) 60%, var(--eh-classic-color-surface));
    text-decoration: none;
}

.eventhive-layout--classic .eventhive-button__text {
    display: inline-flex;
    align-items: center;
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    text-decoration: inherit;
}

.eventhive-shortcode.eventhive-layout--classic :is(
    .eventhive-events--grid.eventhive-classic-events--grid .eventhive-classic-grid-card .eventhive-classic-grid-card__title a,
    .eventhive-events--list.eventhive-classic-events--list .eventhive-classic-list-item .eventhive-classic-list-item__title a,
    .eventhive-events--grid.eventhive-classic-events--grid .eventhive-classic-grid-card .eventhive-category-list .eventhive-category-pill,
    .eventhive-events--list.eventhive-classic-events--list .eventhive-classic-list-item .eventhive-category-list .eventhive-category-pill,
    .eventhive-events--grid.eventhive-classic-events--grid .eventhive-classic-grid-card a.eventhive-button,
    .eventhive-events--list.eventhive-classic-events--list .eventhive-classic-list-item a.eventhive-button
),
.eventhive-shortcode.eventhive-layout--classic :is(
    .eventhive-events--grid.eventhive-classic-events--grid .eventhive-classic-grid-card .eventhive-classic-grid-card__title a,
    .eventhive-events--list.eventhive-classic-events--list .eventhive-classic-list-item .eventhive-classic-list-item__title a,
    .eventhive-events--grid.eventhive-classic-events--grid .eventhive-classic-grid-card .eventhive-category-list .eventhive-category-pill,
    .eventhive-events--list.eventhive-classic-events--list .eventhive-classic-list-item .eventhive-category-list .eventhive-category-pill,
    .eventhive-events--grid.eventhive-classic-events--grid .eventhive-classic-grid-card a.eventhive-button,
    .eventhive-events--list.eventhive-classic-events--list .eventhive-classic-list-item a.eventhive-button
):is(:hover, :focus-visible) {
    text-decoration: none;
}

.eventhive-layout--classic .eventhive-button__label,
.eventhive-layout--classic .eventhive-button__icon {
    display: inline-flex;
    align-items: center;
    line-height: 1;
}

.eventhive-layout--classic .eventhive-button .eventhive-button__icon {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    width: var(--eh-classic-button-icon-size);
    max-width: none;
    height: var(--eh-classic-button-icon-size);
    max-height: none;
    justify-content: center;
    margin-inline: 0;
    padding: 0;
    line-height: 1;
    transform: none;
    vertical-align: middle;
}

.eventhive-layout--classic .eventhive-pagination__label {
    display: inline-flex;
    align-items: center;
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: 1;
    text-decoration: inherit;
}

.eventhive-layout--classic .eventhive-button svg {
    stroke-width: 2;
}

.eventhive-layout--classic .eventhive-button .eventhive-button__icon > .eventhive-icon {
    display: block;
    width: 100%;
    max-width: none;
    height: 100%;
    max-height: none;
    margin: 0;
    transform: none;
    vertical-align: middle;
}

.eventhive-layout--classic .eventhive-button .eventhive-button__icon > .eventhive-icon--arrow-right {
    transform: translateY(0.0625em);
}

/* --------------------------------------------------------------------------
   Classic: List Display
-------------------------------------------------------------------------- */

.eventhive-layout--classic .eventhive-events--list.eventhive-classic-events--list {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
    max-width: 100%;
    min-width: 0;
    border: 1px solid var(--eh-classic-color-border);
    background: var(--eh-classic-color-surface);
    padding: var(--eh-classic-card-padding);
}

.eventhive-template.eventhive-layout--classic .eventhive-container:has(> .eventhive-events--list.eventhive-classic-events--list),
.eventhive-shortcode.eventhive-layout--classic:has(> .eventhive-events--list.eventhive-classic-events--list),
.eventhive-shortcode.eventhive-layout--classic .eventhive-shortcode__content:has(> .eventhive-events--list.eventhive-classic-events--list) {
    container: eventhive-classic-list / inline-size;
}

.eventhive-layout--classic .eventhive-classic-list-item {
    display: grid;
    grid-template-columns: var(--eh-classic-list-media-width) minmax(0, 1fr);
    align-items: stretch;
    gap: var(--eh-classic-card-gap);
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin: 0;
    border: 0;
    border-block-end: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
    box-shadow: none;
    outline: 0;
    padding-block: var(--eh-classic-card-padding);
    padding-inline: 0;
    overflow-wrap: anywhere;
}

.eventhive-layout--classic .eventhive-classic-list-item:first-child {
    padding-block-start: 0;
}

.eventhive-layout--classic .eventhive-classic-list-item:last-child {
    border-block-end: 0;
    padding-block-end: 0;
}

@media (min-width: 901px) {
    .eventhive-layout--classic .eventhive-events--list.eventhive-classic-events--list {
        padding: var(--eh-classic-card-padding-block);
    }

    .eventhive-layout--classic .eventhive-classic-list-item {
        min-height: var(--eh-classic-list-min-height);
        padding-block: var(--eh-classic-card-padding-block);
    }
}

.eventhive-layout--classic .eventhive-classic-list-item .eventhive-classic-list-item__media {
    position: relative;
    align-self: stretch;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    min-height: var(--eh-classic-list-min-height);
    margin: 0;
}

.eventhive-layout--classic .eventhive-classic-list-item__media--empty {
    background: color-mix(in srgb, var(--eh-classic-color-text-default) 5%, var(--eh-classic-color-surface));
    border: 0;
    box-shadow: none;
    outline: 0;
    padding: 0;
}

.eventhive-layout--classic .eventhive-classic-list-item .eventhive-classic-list-item__media-link {
    display: block;
    position: absolute;
    inset: 0;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    color: inherit;
    text-decoration: none;
}

.eventhive-layout--classic .eventhive-classic-list-item .eventhive-classic-list-item__image {
    box-sizing: border-box;
    display: block;
    width: 100%;
    max-width: 100%;
    height: 100%;
    min-height: 100%;
    margin: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    outline: 0;
    padding: 0;
    object-fit: cover;
    object-position: center center;
    vertical-align: middle;
}

.eventhive-layout--classic .eventhive-classic-list-item__content {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    text-align: start;
}

.eventhive-layout--classic .eventhive-classic-list-item__body {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.eventhive-layout--classic .eventhive-classic-list-item__body > :last-child {
    margin-block-end: 0;
}

.eventhive-layout--classic .eventhive-classic-list-item__header {
    margin: 0;
}

.eventhive-layout--classic .eventhive-classic-list-item__title {
    max-width: 100%;
    margin-block: 0 var(--eh-gap-xs);
    font-size: var(--eh-classic-list-title-size, var(--eh-heading-card));
    font-weight: var(--eh-component-title-weight, var(--eh-weight-semibold));
    line-height: var(--eh-leading-tight);
    letter-spacing: normal;
    text-align: start;
    text-transform: none;
    overflow-wrap: anywhere;
}

.eventhive-layout--classic .eventhive-classic-list-item .eventhive-classic-list-item__title a,
.eventhive-layout--classic .eventhive-classic-list-item .eventhive-classic-list-item__title a:visited {
    color: var(--eh-classic-color-link);
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    text-decoration: none;
    text-transform: inherit;
}

.eventhive-layout--classic .eventhive-classic-list-item .eventhive-classic-list-item__title a:is(:hover, :active, :focus, :focus-visible) {
    color: var(--eh-classic-color-link-hover);
}

.eventhive-layout--classic .eventhive-classic-list-item__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: var(--eh-classic-control-gap) var(--eh-classic-section-gap);
    max-width: 100%;
    min-width: 0;
    list-style: none;
    margin: 0 0 var(--eh-gap-l);
    padding: 0;
    font-family: var(--eh-card-meta-font-family, var(--eh-font-family-content, var(--eh-content-font-family, inherit)));
    font-size: var(--eh-text-meta, var(--eh-text-base));
    font-weight: var(--eh-weight-normal);
    line-height: var(--eh-leading-tight);
    letter-spacing: normal;
    text-align: start;
    text-transform: none;
    overflow-wrap: anywhere;
}

.eventhive-layout--classic .eventhive-classic-list-item__meta:has(+ .eventhive-classic-list-item__badges) {
    margin-block-end: var(--eh-gap-s);
}

.eventhive-layout--classic .eventhive-classic-list-item__meta-item {
    display: inline-flex;
    align-items: flex-start;
    gap: var(--eh-classic-meta-gap);
    max-width: 100%;
    min-width: 0;
    margin: 0;
    line-height: inherit;
}

.eventhive-layout--classic .eventhive-classic-list-item__meta-text {
    display: inline;
    min-width: 0;
    margin: 0;
    padding: 0;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    overflow-wrap: anywhere;
}

.eventhive-layout--classic .eventhive-classic-list-item .eventhive-classic-list-item__icon {
    box-sizing: border-box;
    display: inline-flex;
    flex: 0 0 auto;
    width: var(--eh-classic-icon-size);
    max-width: none;
    height: var(--eh-classic-icon-size);
    max-height: none;
    margin-inline: 0;
    margin-block-start: 0.06em;
    padding: 0;
    line-height: 1;
    transform: none;
    vertical-align: middle;
}

.eventhive-layout--classic .eventhive-classic-list-item .eventhive-classic-list-item__icon > svg {
    display: block;
    width: 100%;
    max-width: none;
    height: 100%;
    max-height: none;
    margin: 0;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.5;
    transform: none;
    vertical-align: middle;
}

.eventhive-layout--classic .eventhive-classic-grid-card .eventhive-featured-badge,
.eventhive-layout--classic .eventhive-classic-list-item .eventhive-featured-badge {
    align-self: start;
    justify-self: start;
    margin-block: 0 var(--eh-gap-l);
}

.eventhive-layout--classic .eventhive-classic-grid-card__body > .eventhive-featured-badge:last-child {
    margin-block-end: 0;
}

.eventhive-layout--classic .eventhive-classic-grid-card .eventhive-category-list,
.eventhive-layout--classic .eventhive-classic-list-item .eventhive-category-list {
    display: flex;
    flex-wrap: wrap;
    gap: var(--eh-classic-meta-gap);
    list-style: none;
    margin: 0;
    padding: 0;
}

.eventhive-layout--classic .eventhive-classic-grid-card .eventhive-category-list > li,
.eventhive-layout--classic .eventhive-classic-list-item .eventhive-category-list > li {
    margin: 0;
}

.eventhive-layout--classic .eventhive-classic-grid-card .eventhive-status,
.eventhive-layout--classic .eventhive-classic-list-item .eventhive-status {
    margin: 0;
}

.eventhive-layout--classic .eventhive-classic-grid-card .eventhive-status {
    justify-self: start;
}

.eventhive-layout--classic .eventhive-classic-grid-card .eventhive-button,
.eventhive-layout--classic .eventhive-classic-list-item .eventhive-button {
    font-family: var(--eh-button-font-family, var(--eh-font-family-ui, var(--eh-content-font-family, inherit)));
    font-size: var(--eh-button-font-size, var(--eh-text-button));
    font-weight: var(--eh-button-font-weight, var(--eh-weight-normal));
    line-height: var(--eh-leading-body);
    letter-spacing: normal;
    text-transform: none;
    justify-self: start;
}

.eventhive-layout--classic .eventhive-classic-grid-card__terms {
    min-width: 0;
}

.eventhive-layout--classic .eventhive-classic-list-item__terms {
    display: flex;
    align-items: center;
    min-width: 0;
}

.eventhive-layout--classic .eventhive-classic-list-item__badges {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--eh-classic-meta-gap);
    max-width: 100%;
    min-width: 0;
    margin-block: 0 var(--eh-gap-l);
}

.eventhive-layout--classic .eventhive-classic-list-item__badges .eventhive-featured-badge,
.eventhive-layout--classic .eventhive-classic-list-item__badges .eventhive-classic-list-item__terms {
    align-self: center;
    margin: 0;
}

.eventhive-layout--classic .eventhive-classic-list-item__badges .eventhive-category-list {
    align-items: center;
    line-height: var(--eh-classic-badge-line-height);
}

.eventhive-layout--classic .eventhive-classic-list-item__badges .eventhive-category-list > li {
    display: flex;
    align-items: center;
    line-height: inherit;
}

.eventhive-layout--classic .eventhive-classic-list-item__badges :is(.eventhive-featured-badge, .eventhive-badge--category) {
    align-items: center;
    min-block-size: calc(var(--eh-classic-size-unit) * 1.625);
    padding-block: var(--eh-classic-badge-padding-block);
    line-height: var(--eh-classic-badge-line-height);
}

.eventhive-layout--classic .eventhive-classic-grid-card__actions {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--eh-classic-control-gap) var(--eh-classic-component-gap);
    width: 100%;
    min-width: 0;
}

.eventhive-layout--classic .eventhive-classic-grid-card__actions:has(> .eventhive-status):has(> .eventhive-button) .eventhive-status {
    margin-inline-start: auto;
}

.eventhive-layout--classic .eventhive-classic-list-item__description {
    width: 100%;
    max-width: none;
    margin-block: 0;
    overflow-wrap: anywhere;
}

.eventhive-layout--classic .eventhive-classic-list-item__footer {
    display: flex;
    flex-direction: column;
    gap: var(--eh-classic-card-footer-gap);
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-block-start: auto;
    padding-block-start: var(--eh-classic-card-footer-offset);
}

.eventhive-layout--classic .eventhive-classic-list-item__actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas: "button status";
    align-items: center;
    gap: var(--eh-classic-control-gap) var(--eh-classic-component-gap);
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.eventhive-layout--classic .eventhive-classic-list-item__actions--no-status {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "button";
    align-items: start;
}

.eventhive-layout--classic .eventhive-classic-list-item .eventhive-button {
    grid-area: button;
    justify-self: start;
}

.eventhive-layout--classic .eventhive-classic-list-item .eventhive-status {
    grid-area: status;
    align-self: center;
    max-width: 100%;
    min-width: 0;
    margin-inline-start: 0;
    justify-self: end;
}

@media (max-width: 700px) {
    .eventhive-layout--classic .eventhive-classic-list-item {
        grid-template-columns: 1fr;
        gap: var(--eh-gap-m);
        max-width: 100%;
        min-width: 0;
    }

    .eventhive-layout--classic .eventhive-classic-list-item__media,
    .eventhive-layout--classic .eventhive-classic-list-item__media-link {
        position: static;
    }

    .eventhive-layout--classic .eventhive-classic-list-item__media {
        aspect-ratio: var(--eh-classic-list-stacked-media-ratio);
        min-height: 0;
    }

    .eventhive-layout--classic .eventhive-classic-list-item__media--empty {
        aspect-ratio: var(--eh-classic-list-stacked-media-ratio);
    }

    .eventhive-layout--classic .eventhive-classic-list-item__image {
        aspect-ratio: var(--eh-classic-list-stacked-media-ratio);
        height: auto;
    }

    .eventhive-layout--classic .eventhive-classic-list-item__description {
        max-width: none;
    }

    .eventhive-layout--classic .eventhive-classic-list-item__footer {
        margin-block-start: var(--eh-classic-card-footer-offset);
        padding-block-start: 0;
    }

}

@container eventhive-classic-list (max-width: 993px) {
    .eventhive-layout--classic .eventhive-events--list.eventhive-classic-events--list {
        padding: var(--eh-classic-card-padding);
    }

    .eventhive-layout--classic .eventhive-classic-list-item {
        grid-template-columns: 1fr;
        gap: var(--eh-gap-m);
        min-height: auto;
        padding-block: var(--eh-classic-card-padding);
    }

    .eventhive-layout--classic .eventhive-classic-list-item__media,
    .eventhive-layout--classic .eventhive-classic-list-item__media-link {
        position: static;
    }

    .eventhive-layout--classic .eventhive-classic-list-item__media {
        aspect-ratio: var(--eh-classic-list-stacked-media-ratio);
        min-height: 0;
    }

    .eventhive-layout--classic .eventhive-classic-list-item__image {
        aspect-ratio: var(--eh-classic-list-stacked-media-ratio);
        height: auto;
    }

    .eventhive-layout--classic .eventhive-classic-list-item__actions {
        grid-template-columns: minmax(0, 1fr) auto;
        grid-template-areas: "button status";
    }

    .eventhive-layout--classic .eventhive-classic-list-item__actions--no-status {
        grid-template-columns: 1fr;
        grid-template-areas: "button";
    }

    .eventhive-layout--classic .eventhive-classic-list-item .eventhive-status {
        margin-inline-start: 0;
        justify-self: end;
    }
}

@media (max-width: 700px) {
    .eventhive-layout--classic .eventhive-classic-list-item__actions {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
        gap: var(--eh-classic-control-gap) var(--eh-classic-component-gap);
        width: 100%;
        max-width: 100%;
        min-width: 0;
    }

    .eventhive-layout--classic .eventhive-classic-list-item .eventhive-button {
        grid-area: auto;
        max-width: 100%;
        min-width: 0;
    }

    .eventhive-layout--classic .eventhive-classic-list-item__actions--no-status {
        justify-content: flex-start;
    }

    .eventhive-layout--classic .eventhive-classic-list-item .eventhive-status {
        grid-area: auto;
        margin-inline-start: auto;
        justify-self: auto;
        flex: 0 1 auto;
        max-width: 100%;
    }
}

/* --------------------------------------------------------------------------
   Classic: Pagination
-------------------------------------------------------------------------- */

.eventhive-layout--classic .eventhive-pagination {
    display: flex;
    justify-content: center;
    gap: var(--eh-gap-m);
    margin-block-start: var(--eh-gap-m);
}

.eventhive-layout--classic .eventhive-pagination__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--eh-gap-xs);
    margin: 0;
    padding: 0;
    list-style: none;
}

.eventhive-layout--classic .eventhive-pagination__item {
    display: flex;
    margin: 0;
    padding: 0;
}

.eventhive-layout--classic .eventhive-pagination__link,
.eventhive-layout--classic .eventhive-pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: var(--eh-classic-pagination-size);
    min-height: var(--eh-classic-pagination-size);
    border: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
    background: var(--eh-classic-color-surface);
    padding-inline: var(--eh-gap-s);
    color: var(--eh-classic-control-color);
    font-family: var(--eh-pagination-font-family, var(--eh-content-font-family, inherit));
    font-size: var(--eh-pagination-font-size, var(--eh-text-pagination, var(--eh-text-m)));
    font-weight: var(--eh-pagination-font-weight, var(--eh-weight-normal, 400));
    letter-spacing: normal;
    line-height: var(--eh-pagination-line-height, var(--eh-leading-control));
    text-decoration: none;
    text-transform: none;
}

.eventhive-template.eventhive-layout--classic .eventhive-pagination.eventhive-pagination__nav .eventhive-pagination__item > .eventhive-pagination__link,
.eventhive-shortcode.eventhive-layout--classic .eventhive-pagination.eventhive-pagination__nav .eventhive-pagination__item > .eventhive-pagination__link,
.eventhive-template.eventhive-layout--classic nav.eventhive-pagination.eventhive-pagination__nav .page-numbers,
.eventhive-shortcode.eventhive-layout--classic nav.eventhive-pagination.eventhive-pagination__nav .page-numbers,
.eventhive-template.eventhive-layout--classic nav.eventhive-pagination.eventhive-pagination__nav > ul.eventhive-pagination__list > li.eventhive-pagination__item > a.eventhive-pagination__link[href]:is(:link, :visited, :hover, :active, :focus, :focus-visible),
.eventhive-shortcode.eventhive-layout--classic nav.eventhive-pagination.eventhive-pagination__nav > ul.eventhive-pagination__list > li.eventhive-pagination__item > a.eventhive-pagination__link[href]:is(:link, :visited, :hover, :active, :focus, :focus-visible),
.eventhive-template.eventhive-layout--classic nav.eventhive-pagination.eventhive-pagination__nav a.page-numbers:is(:link, :visited, :hover, :active, :focus, :focus-visible),
.eventhive-shortcode.eventhive-layout--classic nav.eventhive-pagination.eventhive-pagination__nav a.page-numbers:is(:link, :visited, :hover, :active, :focus, :focus-visible) {
    color: var(--eh-classic-control-color);
    text-decoration: none;
    text-decoration-line: none;
}

.eventhive-layout--classic .eventhive-pagination--eventhive-font .eventhive-pagination__link {
    font-family: var(--eh-pagination-font-family, var(--eh-font-family-ui, var(--eh-content-font-family, inherit)));
}

.eventhive-layout--classic .eventhive-pagination__link:not(.eventhive-pagination__link--disabled):not(.eventhive-pagination__link--dots):hover,
.eventhive-layout--classic .eventhive-pagination__link:not(.eventhive-pagination__link--disabled):not(.eventhive-pagination__link--dots):active,
.eventhive-layout--classic .eventhive-pagination__link:not(.eventhive-pagination__link--disabled):not(.eventhive-pagination__link--dots):focus-visible,
.eventhive-layout--classic .eventhive-pagination a.page-numbers:not(.disabled):not(.dots):hover,
.eventhive-layout--classic .eventhive-pagination a.page-numbers:not(.disabled):not(.dots):active,
.eventhive-layout--classic .eventhive-pagination a.page-numbers:not(.disabled):not(.dots):focus-visible {
    background: var(--eh-classic-color-accent-soft);
    color: var(--eh-classic-control-color);
}

.eventhive-layout--classic .eventhive-pagination__link:focus-visible,
.eventhive-layout--classic .eventhive-pagination a.page-numbers:focus-visible {
    outline: 2px solid var(--eh-classic-color-link);
    outline-offset: 2px;
}

.eventhive-template.eventhive-layout--classic nav.eventhive-pagination.eventhive-pagination__nav > ul.eventhive-pagination__list > li.eventhive-pagination__item > a.eventhive-pagination__link[href]:focus-visible,
.eventhive-shortcode.eventhive-layout--classic nav.eventhive-pagination.eventhive-pagination__nav > ul.eventhive-pagination__list > li.eventhive-pagination__item > a.eventhive-pagination__link[href]:focus-visible {
    outline: 2px solid var(--eh-classic-color-link);
    outline-offset: 2px;
    box-shadow: 0 0 0 2px var(--eh-classic-color-link);
}

.eventhive-layout--classic .eventhive-pagination__link--current,
.eventhive-layout--classic .eventhive-pagination .page-numbers.current {
    background: var(--eh-classic-color-accent-soft);
    color: var(--eh-classic-control-color);
    font-weight: var(--eh-pagination-current-font-weight, var(--eh-pagination-font-weight, var(--eh-weight-normal, 400)));
}

.eventhive-layout--classic .eventhive-pagination__link--dots,
.eventhive-layout--classic .eventhive-pagination .page-numbers.dots {
    border-color: transparent;
    background: transparent;
    color: var(--eh-classic-control-color);
}

.eventhive-layout--classic .eventhive-pagination__link--disabled,
.eventhive-layout--classic .eventhive-pagination .page-numbers.disabled {
    cursor: default;
}

.eventhive-shortcode.eventhive-layout--classic + .eventhive-shortcode.eventhive-layout--classic {
    margin-block-start: var(--eh-gap-m);
}

/* --------------------------------------------------------------------------
   Classic: Responsive Rules
-------------------------------------------------------------------------- */

@media (max-width: 700px) {
    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: var(--eh-classic-control-gap);
        padding-block: var(--eh-classic-meta-gap);
        padding-inline: 0;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar--calendar {
        grid-template-columns: minmax(0, 1fr);
        justify-items: center;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__calendar-title {
        justify-self: center;
        max-inline-size: 100%;
        overflow-wrap: normal;
        text-align: center;
        text-wrap: balance;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__calendar-navigation {
        grid-column: 1;
        justify-self: center;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__links {
        display: none;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-action-bar__date-view {
        display: block;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-search-summary {
        grid-template-columns: minmax(0, 1fr);
        justify-items: center;
        text-align: center;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-search-summary__title,
    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-search-summary__count,
    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-search-summary__action {
        grid-column: 1;
        grid-row: auto;
        justify-self: center;
        text-align: center;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar {
        grid-template-columns: minmax(0, 1fr);
        justify-items: center;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar__summary {
        order: 2;
        grid-column: 1;
        justify-self: center;
        max-inline-size: 100%;
        overflow-wrap: normal;
        text-align: center;
        text-wrap: balance;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar__count {
        order: 3;
        grid-column: 1;
        justify-self: center;
        max-inline-size: 100%;
        overflow-wrap: normal;
        text-align: center;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar--has-count .eventhive-classic-period-bar__navigation {
        grid-column: 1;
        grid-row: auto;
        order: 1;
        align-self: auto;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar__navigation {
        grid-column: 1;
        grid-row: auto;
        flex-direction: column;
        justify-self: center;
        align-items: center;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar__controls {
        order: 1;
        justify-self: center;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar--calendar .eventhive-classic-period-bar__count {
        order: 1;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-classic-period-bar__exit-link {
        grid-column: 1;
        order: 2;
        justify-self: center;
        text-align: center;
        white-space: normal;
    }

    .eventhive-shortcode.eventhive-shortcode--calendar.eventhive-layout--classic .eventhive-classic-action-bar--calendar {
        grid-template-columns: minmax(0, 1fr);
        justify-items: center;
    }

    .eventhive-shortcode.eventhive-shortcode--calendar.eventhive-layout--classic .eventhive-classic-action-bar__calendar-title {
        grid-column: 1;
        justify-self: center;
        max-inline-size: 100%;
        overflow-wrap: normal;
        text-align: center;
        text-wrap: balance;
    }

    .eventhive-shortcode.eventhive-shortcode--calendar.eventhive-layout--classic .eventhive-classic-action-bar__calendar-navigation {
        grid-column: 1;
        justify-self: center;
    }

    .eventhive-shortcode.eventhive-layout--classic .eventhive-classic-period-bar {
        grid-template-columns: minmax(0, 1fr);
        justify-items: center;
    }

    .eventhive-shortcode.eventhive-layout--classic .eventhive-classic-period-bar__summary {
        order: 2;
        grid-column: 1;
        justify-self: center;
        max-inline-size: 100%;
        overflow-wrap: normal;
        text-align: center;
        text-wrap: balance;
    }

    .eventhive-shortcode.eventhive-shortcode--calendar.eventhive-layout--classic .eventhive-classic-period-bar__count {
        order: 1;
        grid-column: 1;
        justify-self: center;
        max-inline-size: 100%;
        overflow-wrap: normal;
        text-align: center;
    }

    .eventhive-shortcode.eventhive-layout--classic .eventhive-classic-period-bar__navigation {
        grid-column: 1;
        grid-row: auto;
        flex-direction: column;
        justify-self: center;
        align-items: center;
    }

    .eventhive-shortcode.eventhive-layout--classic .eventhive-classic-period-bar__controls {
        order: 1;
        justify-self: center;
    }
}

@media (max-width: 640px) {
    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-sort-order {
        display: block;
        flex: 0 0 auto;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-sort-order__summary {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-inline-size: var(--eh-classic-control-size);
        min-block-size: var(--eh-classic-control-size);
        margin: 0;
        border: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
        background: var(--eh-classic-color-surface);
        color: var(--eh-classic-control-color);
        font-family: var(--eh-result-bar-font-family, var(--eh-font-family-ui, var(--eh-content-font-family, inherit)));
        font-size: var(--eh-result-bar-font-size, var(--eh-classic-control-font-size));
        font-weight: var(--eh-result-bar-font-weight, var(--eh-weight-normal));
        line-height: var(--eh-result-bar-line-height, var(--eh-leading-control));
        letter-spacing: normal;
        text-transform: none;
        box-shadow: none;
        cursor: pointer;
        transition: none;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-sort-order[open] > .eventhive-sort-order__summary {
        background: var(--eh-classic-color-soft-background);
        color: var(--eh-classic-control-color);
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-sort-order__summary:hover,
    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-sort-order__summary:focus-visible {
        color: var(--eh-classic-color-text);
        outline: 2px solid var(--eh-classic-color-link);
        outline-offset: 2px;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-sort-order__summary::marker,
    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-sort-order__summary::-webkit-details-marker {
        display: none;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-sort-order__icon {
        display: block;
        flex: 0 0 auto;
        width: var(--eh-classic-control-icon-size);
        height: var(--eh-classic-control-icon-size);
        margin-inline: 0;
        fill: none;
        stroke: currentColor;
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-width: 1.5;
        transform: none;
        vertical-align: middle;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-sort-order-form--desktop {
        display: none;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__tools:has(.eventhive-sort-order[open]) + .eventhive-sort-order-form--mobile {
        display: grid;
        grid-column: 1 / -1;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: var(--eh-classic-control-gap);
        width: 100%;
        min-width: 100%;
        margin-block-start: var(--eh-classic-control-gap);
        margin-inline-start: 0;
        border: 1px solid var(--eh-classic-color-border);
        background: var(--eh-classic-color-soft-background);
        padding: var(--eh-classic-control-gap);
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__tools:has(.eventhive-sort-order[open]) + .eventhive-sort-order-form--mobile .eventhive-sort-order-form__field {
        display: grid;
        gap: var(--eh-classic-meta-gap);
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__tools:has(.eventhive-sort-order[open]) + .eventhive-sort-order-form--mobile .eventhive-sort-order-form__field + .eventhive-sort-order-form__field {
        border-inline-start: 0;
        padding-inline-start: 0;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__tools:has(.eventhive-sort-order[open]) + .eventhive-sort-order-form--mobile select,
    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__tools:has(.eventhive-sort-order[open]) + .eventhive-sort-order-form--mobile .eventhive-result-bar__button {
        width: 100%;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__tools:has(.eventhive-sort-order[open]) + .eventhive-sort-order-form--mobile .eventhive-result-bar__button {
        grid-column: 1 / -1;
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: var(--eh-gap-xs);
    }

    .eventhive-layout--classic:is(.eventhive-template--archive, .eventhive-shortcode--has-toolbar) .eventhive-result-bar__tools {
        flex-wrap: nowrap;
        justify-content: flex-end;
        justify-self: end;
    }
}

/* --------------------------------------------------------------------------
   Classic: Single Event
-------------------------------------------------------------------------- */

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single-page {
    display: grid;
    gap: var(--eh-gap-l);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-archive-header {
    display: grid;
    gap: var(--eh-gap-m);
    margin-block-end: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-archive-header__intro {
    min-width: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__context-title {
    margin: 0;
    color: var(--eh-classic-color-text);
    font-size: var(--eh-page-title-font-size);
    font-weight: var(--eh-component-title-weight, var(--eh-weight-semibold));
    line-height: var(--eh-page-title-line-height);
    letter-spacing: normal;
    text-align: start;
    text-transform: none;
}

.eventhive-layout--classic.eventhive-template--single.eventhive-has-custom-font-family .eventhive-classic-single__context-title {
    font-family: var(--eh-page-title-font-family);
}

.eventhive-layout--classic.eventhive-template--single .eventhive__back-link {
    display: inline-flex;
    width: fit-content;
    margin-block-start: var(--eh-gap-xs);
    color: var(--eh-classic-color-link);
    font-family: var(--eh-font-family-ui, var(--eh-font-family-content, var(--eh-content-font-family, inherit)));
    font-size: var(--eh-text-s);
    font-weight: var(--eh-weight-normal);
    line-height: var(--eh-leading-body);
    letter-spacing: normal;
    text-decoration-color: currentColor;
    text-decoration-line: underline;
    text-decoration-style: dotted;
    text-decoration-thickness: 1px;
    text-transform: none;
    text-underline-offset: 0.18em;
}

.eventhive-layout--classic.eventhive-template--single .eventhive__back-link:hover,
.eventhive-layout--classic.eventhive-template--single .eventhive__back-link:active,
.eventhive-layout--classic.eventhive-template--single .eventhive__back-link:focus-visible {
    color: var(--eh-classic-color-link-hover);
    text-decoration-line: underline;
    text-decoration-style: dotted;
    text-decoration-thickness: 1px;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single {
    min-width: 0;
}

.eventhive-layout--classic.eventhive-template--single :where(
    .eventhive-classic-single-page,
    .eventhive-classic-single,
    .eventhive-classic-single__layout,
    .eventhive-classic-single__title-block,
    .eventhive-classic-single__description,
    .eventhive-classic-single__highlights,
    .eventhive-classic-single__sidebar,
    .eventhive-classic-single__panel,
    .eventhive-classic-single__related
) {
    min-width: 0;
    max-width: 100%;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__media {
    box-sizing: border-box;
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 0 0 var(--eh-gap-l);
    border: 0;
    box-shadow: none;
    outline: 0;
    padding: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__image {
    box-sizing: border-box;
    display: block;
    aspect-ratio: 5 / 3;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    outline: 0;
    padding: 0;
    object-fit: cover;
    object-position: center center;
    vertical-align: middle;
}

@media (max-width: 640px) {
    .eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__image {
        aspect-ratio: 4 / 3;
    }
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__layout {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(var(--eh-classic-single-rail-min), var(--eh-classic-single-rail-max));
    grid-template-areas: "primary rail";
    align-items: start;
    gap: var(--eh-gap-l) var(--eh-gap-m);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single--no-rail .eventhive-classic-single__layout {
    grid-template-columns: minmax(0, var(--eh-classic-single-primary-max));
    grid-template-areas: "primary";
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__primary {
    grid-area: primary;
    min-width: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__rail {
    position: sticky;
    top: var(--eh-gap-m);
    grid-area: rail;
    display: grid;
    gap: var(--eh-gap-m);
    align-self: start;
    min-width: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__title-block,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__description,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__description > :first-child,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__highlights,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__highlight-list,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__highlight-item,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__panel h2,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-list,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-list dd,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__text > :last-child {
    margin: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__title-block,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__description {
    border: 1px solid var(--eh-classic-color-border);
    background: var(--eh-classic-color-surface);
    padding: var(--eh-classic-panel-padding-large);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__title-block {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    column-gap: var(--eh-classic-meta-gap);
    row-gap: var(--eh-gap-s);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__title {
    flex: 0 0 100%;
    margin-block: 0;
    padding-block-end: 0;
    border-block-end: 0;
    color: var(--eh-classic-color-text);
    font-size: var(--eh-page-title-font-size);
    font-weight: var(--eh-component-title-weight, var(--eh-weight-semibold));
    line-height: var(--eh-page-title-line-height);
    letter-spacing: normal;
    text-align: start;
    text-transform: none;
}

.eventhive-layout--classic.eventhive-template--single.eventhive-has-custom-font-family .eventhive-classic-single__title {
    font-family: var(--eh-page-title-font-family);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single .eventhive-featured-badge {
    margin-block: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single .eventhive-category-list {
    display: flex;
    align-items: center;
    flex: 0 1 auto;
    flex-wrap: wrap;
    gap: var(--eh-classic-meta-gap);
    max-width: 100%;
    min-width: 0;
    list-style: none;
    margin: 0;
    padding: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single .eventhive-category-list > li {
    display: flex;
    align-items: center;
    margin: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__title-block > :last-child {
    margin-block-end: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__description {
    display: block;
    margin-block-start: 0;
    font-family: var(--eh-font-family-content, var(--eh-content-font-family, inherit));
    font-size: var(--eh-text-content, var(--eh-text-base));
    font-weight: var(--eh-weight-normal);
    line-height: var(--eh-leading-body);
    letter-spacing: normal;
    text-align: start;
    text-transform: none;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__description > .eventhive-theme-content__inner {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
}

@media (min-width: 901px) {
    .eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__title-block:has(+ .eventhive-classic-single__description) {
        border-block-end: 0;
        padding-block-end: 0;
    }

    .eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__title-block + .eventhive-classic-single__description {
        margin-block-start: 0;
        border-block-start: 0;
    }
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__description > * + * {
    margin-block-start: var(--eh-gap-m);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__description .eventhive-theme-content__inner > * + * {
    margin-block-start: var(--eh-gap-m);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__description :where(p, ul, ol, figure) {
    margin-block: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__description :where(ul, ol) {
    margin-inline-start: 0;
    padding-inline-start: 1.25em;
    text-align: start;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__description :where(li + li) {
    margin-block-start: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__description :is(figure, picture) {
    box-sizing: border-box;
    display: block;
    width: auto;
    max-width: 100%;
    margin: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    outline: 0;
    padding: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__description :is(img) {
    box-sizing: border-box;
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    margin: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    outline: 0;
    padding: 0;
    vertical-align: middle;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__description > :last-child,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__text p:last-child {
    margin-block-end: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__highlights,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__panel {
    margin: 0;
    border: 1px solid color-mix(in srgb, var(--eh-classic-color-text-default) 16%, var(--eh-classic-color-surface));
    box-shadow: none;
    outline: 0;
    background: var(--eh-classic-color-surface);
    padding: var(--eh-classic-panel-padding);
    color: var(--eh-classic-color-text);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__highlights {
    display: grid;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__panel {
    display: block;
    text-align: start;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single .eventhive-status {
    justify-self: start;
    margin-block: 0 var(--eh-gap-s);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__highlight-list {
    display: grid;
    gap: var(--eh-classic-meta-gap);
    list-style: none;
    padding: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__highlight-item {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
    column-gap: var(--eh-classic-control-gap);
    row-gap: var(--eh-classic-single-highlight-copy-gap);
    padding-block: var(--eh-classic-meta-gap);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__highlight-item + .eventhive-classic-single__highlight-item {
    border-block-start: 1px dotted var(--eh-classic-color-separator);
    padding-block-start: var(--eh-gap-s);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__highlight-icon {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    flex-basis: var(--eh-classic-single-highlight-icon-size);
    grid-column: 1;
    grid-row: 1;
    align-self: start;
    width: var(--eh-classic-single-highlight-icon-size);
    inline-size: var(--eh-classic-single-highlight-icon-size);
    min-width: var(--eh-classic-single-highlight-icon-size);
    max-width: var(--eh-classic-single-highlight-icon-size);
    height: var(--eh-classic-single-highlight-icon-size);
    block-size: var(--eh-classic-single-highlight-icon-size);
    min-height: var(--eh-classic-single-highlight-icon-size);
    max-height: var(--eh-classic-single-highlight-icon-size);
    font-size: inherit;
    line-height: var(--eh-leading-heading);
    margin: 0;
    margin-inline: 0;
    transform: none;
    rotate: 0deg;
    vertical-align: middle;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__highlight-icon > svg {
    display: block;
    width: 100%;
    inline-size: 100%;
    max-width: none;
    height: 100%;
    block-size: 100%;
    max-height: none;
    margin: 0;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.5;
    transform: none;
    rotate: 0deg;
    vertical-align: middle;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__highlight-copy {
    display: contents;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__highlight-label {
    grid-column: 2;
    grid-row: 1;
    font-family: inherit;
    font-size: inherit;
    font-weight: var(--eh-weight-bold);
    letter-spacing: normal;
    line-height: var(--eh-leading-tight);
    text-transform: none;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__highlight-value {
    grid-column: 2;
    grid-row: 2;
    font-family: inherit;
    font-size: inherit;
    font-weight: var(--eh-weight-normal);
    letter-spacing: normal;
    line-height: var(--eh-leading-tight);
    text-transform: none;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__highlight-datetime {
    line-height: inherit;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__highlight-datetime time,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__schedule-value time {
    margin: 0;
    background: transparent;
    padding: 0;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    text-transform: none;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-label,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__contact-label {
    font-family: inherit;
    font-size: inherit;
    font-weight: var(--eh-weight-bold);
    letter-spacing: normal;
    line-height: inherit;
    text-transform: none;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__highlights .eventhive-button--full {
    margin-block-start: var(--eh-classic-control-gap);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__highlights a.eventhive-button.eventhive-button--primary {
    --eh-button-primary-hover-background: var(--eh-classic-single-action-hover-background);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__highlights a.eventhive-button.eventhive-button--primary:is(:hover, :active, :focus-visible, :visited:hover, :visited:active, :visited:focus-visible) {
    color: var(--eh-button-primary-hover-color);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__sidebar {
    display: grid;
    gap: var(--eh-gap-m);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__panel h2 {
    border-block-end: 1px solid var(--eh-classic-color-separator);
    margin-block-end: var(--eh-gap-s);
    padding-block-end: var(--eh-gap-s);
    color: var(--eh-classic-color-text);
    font-size: var(--eh-heading-section, var(--eh-heading-h4));
    font-weight: var(--eh-component-title-weight, var(--eh-weight-semibold));
    line-height: var(--eh-leading-tight);
    letter-spacing: normal;
    text-align: start;
    text-transform: none;
}

.eventhive-layout--classic.eventhive-template--single.eventhive-has-custom-font-family .eventhive-classic-single__panel h2 {
    font-family: var(--eh-font-family-heading, var(--eh-font-family-content, var(--eh-content-font-family, inherit)));
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-list dt:not(:first-child) {
    margin-block-start: var(--eh-classic-control-gap);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__highlight-list,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-list,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__text {
    width: 100%;
    max-width: 100%;
    font-family: var(--eh-font-family-content, var(--eh-content-font-family, inherit));
    font-size: var(--eh-text-content, var(--eh-text-base));
    font-weight: var(--eh-weight-normal);
    color: var(--eh-classic-color-text);
    letter-spacing: normal;
    line-height: var(--eh-leading-body);
    text-align: start;
    text-transform: none;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__text {
    display: block;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-list dt,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-list dd,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__text {
    line-height: inherit;
    text-align: start;
    text-transform: none;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-list dd {
    font-family: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    padding: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__schedule-list,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__virtual-list {
    display: block;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__schedule-item,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__virtual-item {
    display: grid;
    row-gap: var(--eh-gap-xs);
    column-gap: 0;
    margin: 0;
    min-width: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__schedule-item dt,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__schedule-item dd,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__virtual-item dt,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__virtual-item dd {
    margin: 0;
    padding: 0;
    min-width: 0;
    color: inherit;
    line-height: var(--eh-classic-detail-compact-line-height);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-typography > .eventhive-classic-single__schedule-item + .eventhive-classic-single__schedule-item,
.eventhive-template.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-typography.entry-content.entry-content > .eventhive-classic-single__schedule-item + .eventhive-classic-single__schedule-item {
    margin-block-start: var(--eh-gap-m);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__schedule-item .eventhive-theme-content,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__schedule-item .eventhive-theme-content__inner {
    line-height: inherit;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__schedule-value {
    display: grid;
    gap: var(--eh-classic-compact-row-gap);
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__schedule-value--datetime {
    display: inline-flex;
    flex-wrap: wrap;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__schedule-time {
    display: inline-flex;
    flex-wrap: wrap;
    gap: var(--eh-classic-compact-row-gap);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__text > * + * {
    margin-block-start: var(--eh-classic-control-gap);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__virtual-details {
    display: grid;
    gap: var(--eh-gap-m);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__virtual-details > * + * {
    margin-block-start: 0;
}

.eventhive-layout--classic.eventhive-template--single a.eventhive-classic-single__virtual-button.eventhive-button {
    justify-content: center;
    width: 100%;
    min-height: var(--eh-classic-control-height);
    border: 1px solid currentColor;
    background: transparent;
    padding-inline: var(--eh-gap-s);
    font-size: var(--eh-text-s);
    line-height: var(--eh-leading-control);
}

.eventhive-layout--classic.eventhive-template--single a.eventhive-classic-single__virtual-button.eventhive-button:is(:hover, :active, :focus-visible, :visited:hover, :visited:active, :visited:focus-visible) {
    background: var(--eh-classic-color-soft-background);
    color: var(--eh-color-accent, var(--eh-classic-color-link));
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__virtual-value {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__virtual-list + :is(.eventhive-classic-single__virtual-note, .eventhive-classic-single__virtual-button) {
    margin-block-start: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__virtual-note {
    background: var(--eh-classic-color-soft-background);
    padding: var(--eh-gap-s);
    font-family: inherit;
    font-size: var(--eh-text-xs);
    font-weight: inherit;
    line-height: var(--eh-leading-body);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__virtual-note :where(p, ul, ol) {
    margin: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__virtual-note :where(ul, ol),
.eventhive-template.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-typography.entry-content.entry-content .eventhive-classic-single__virtual-note :where(ul, ol) {
    margin-inline-start: 0;
    padding-inline-start: 1.75em;
    list-style-position: outside;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__virtual-note :where(li + li),
.eventhive-template.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-typography.entry-content.entry-content .eventhive-classic-single__virtual-note :where(li + li) {
    margin-block-start: var(--eh-classic-compact-row-gap);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__virtual-note > * + * {
    margin-block-start: var(--eh-classic-compact-row-gap);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__venue-name,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__organizer-name {
    margin: 0;
    font-family: var(--eh-font-family-heading, var(--eh-font-family-content, var(--eh-content-font-family, inherit)));
    font-size: var(--eh-heading-card, var(--eh-heading-h5));
    font-weight: var(--eh-weight-bold);
    line-height: var(--eh-leading-tight);
    letter-spacing: normal;
    text-transform: none;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__organizer-logo {
    display: flex;
    justify-content: flex-start;
    margin: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__organizer-logo-image {
    display: block;
    width: auto;
    max-width: min(100%, 180px);
    max-height: 80px;
    height: auto;
    margin-inline: 0 auto;
    border-radius: 0;
    object-fit: contain;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__text p {
    margin: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__text--compact > * + * {
    margin-block-start: var(--eh-classic-compact-row-gap);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-typography > .eventhive-classic-single__organizer-logo + .eventhive-classic-single__organizer-name,
.eventhive-template.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-typography.entry-content.entry-content > .eventhive-classic-single__organizer-logo + .eventhive-classic-single__organizer-name {
    margin-block-start: var(--eh-gap-s);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__venue-address,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__contact-list {
    display: grid;
    margin: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__venue-address {
    gap: 0;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: var(--eh-classic-detail-address-line-height);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__venue-map,
.eventhive-template.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-typography.entry-content.entry-content > .eventhive-classic-single__venue-map {
    width: 100%;
    max-width: 100%;
    margin-block-start: var(--eh-gap-m);
    margin-inline: 0;
    justify-self: stretch;
}

.eventhive-layout--classic.eventhive-template--single p.eventhive-google-map__open-link-wrap,
.eventhive-template.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-typography.entry-content.entry-content > p.eventhive-google-map__open-link-wrap {
    width: 100%;
    max-width: 100%;
    margin-block-start: var(--eh-gap-xs);
    margin-inline: 0;
    justify-self: stretch;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__contact-list {
    gap: var(--eh-classic-component-gap);
    text-align: start;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__organizer-contact {
    margin: 0;
    font-family: inherit;
    font-style: normal;
    text-align: start;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-typography > .eventhive-classic-single__venue-name + .eventhive-classic-single__venue-address,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-typography > .eventhive-classic-single__organizer-name + .eventhive-classic-single__organizer-contact,
.eventhive-template.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-typography.entry-content.entry-content > .eventhive-classic-single__venue-name + .eventhive-classic-single__venue-address,
.eventhive-template.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__detail-typography.entry-content.entry-content > .eventhive-classic-single__organizer-name + .eventhive-classic-single__organizer-contact {
    margin-block-start: var(--eh-gap-l);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__contact-item {
    display: grid;
    row-gap: var(--eh-gap-xs);
    column-gap: 0;
    margin: 0;
    min-width: 0;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__contact-item dt,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__contact-item dd {
    margin: 0;
    padding: 0;
    min-width: 0;
    color: inherit;
    line-height: var(--eh-classic-detail-compact-line-height);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__contact-item .eventhive-theme-content,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__contact-item .eventhive-theme-content__inner,
.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__contact-item a {
    line-height: inherit;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__contact-item dd {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    overflow-wrap: anywhere;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__contact-item dt {
    font-weight: var(--eh-weight-bold);
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__venue-address {
    font-style: normal;
}

/* --------------------------------------------------------------------------
   Classic: Related Events
-------------------------------------------------------------------------- */

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__related {
    display: grid;
    align-items: stretch;
    gap: var(--eh-gap-l);
    margin: 0;
    border: 0;
    border-block-start: 1px solid var(--eh-classic-color-separator);
    box-shadow: none;
    outline: 0;
    padding-block-start: var(--eh-gap-l);
    padding-inline: 0;
    padding-block-end: 0;
    text-align: start;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__related-header {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--eh-gap-m);
    align-self: stretch;
    width: 100%;
    margin-block-end: 0;
    text-align: start;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__related-title {
    flex: 1 1 auto;
    margin: 0;
    font-size: var(--eh-heading-section, var(--eh-heading-h4));
    font-weight: var(--eh-component-title-weight, var(--eh-weight-semibold));
    line-height: var(--eh-leading-tight);
    letter-spacing: normal;
    text-align: start;
    text-transform: none;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__related-header .eventhive-button {
    flex: 0 0 auto;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__related .eventhive-classic-grid {
    align-items: stretch;
    width: 100%;
}

.eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__related .eventhive-classic-grid-card {
    height: 100%;
}

@media (max-width: 640px) {
    .eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__related-header {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* --------------------------------------------------------------------------
   Classic: Responsive Rules
-------------------------------------------------------------------------- */

@media (max-width: 900px) {
    .eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__layout {
        grid-template-columns: 1fr;
        grid-template-areas:
            "title"
            "highlights"
            "description"
            "sidebar";
        gap: var(--eh-gap-l);
    }

    .eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__primary {
        display: contents;
    }

    .eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__rail {
        position: static;
        display: contents;
    }

    .eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__title-block {
        grid-area: title;
    }

    .eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__title {
        overflow-wrap: anywhere;
    }

    .eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__description {
        grid-area: description;
        max-width: none;
        margin-block-start: 0;
    }

    .eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__highlights {
        grid-area: highlights;
    }

    .eventhive-layout--classic.eventhive-template--single .eventhive-classic-single__sidebar {
        grid-area: sidebar;
    }

    .eventhive-layout--classic.eventhive-template--single .eventhive-classic-single--no-rail .eventhive-classic-single__layout {
        display: grid;
        grid-template-areas:
            "title"
            "description";
    }
}
