/* Scoped storefront styling. It never changes the global Website layout. */
[data-msf-ui="event"].msf-digital-public {
    --msf-digital-gold: #c8a44d;
    --msf-digital-gold-strong: #98730b;
    --msf-digital-ivory: #faf7ef;
    --msf-digital-ink: #1f201d;
    min-height: 100vh;
    box-sizing: border-box;
    padding: 0 clamp(1rem, 4vw, 3rem) var(--msf-ui-space-12);
    background: var(--msf-digital-ivory);
    color: var(--msf-digital-ink);
    font-family: var(--msf-ui-font-sans);
}

[data-msf-ui="event"] .msf-digital-public *,
[data-msf-ui="event"] .msf-digital-public *::before,
[data-msf-ui="event"] .msf-digital-public *::after { box-sizing: border-box; }

[data-msf-ui="event"] .msf-digital-public__header,
[data-msf-ui="event"] .msf-digital-public__intro,
[data-msf-ui="event"] .msf-digital-public__filters,
[data-msf-ui="event"] .msf-digital-public__grid,
[data-msf-ui="event"] .msf-digital-public__detail,
[data-msf-ui="event"] .msf-digital-public__empty,
[data-msf-ui="event"] .msf-digital-public__confirmation {
    width: min(100%, var(--msf-ui-content-max));
    margin-right: auto;
    margin-left: auto;
}

[data-msf-ui="event"] .msf-digital-public__header {
    min-height: 4.5rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--msf-ui-space-4);
    border-bottom: 1px solid rgb(31 32 29 / 12%);
}

[data-msf-ui="event"] .msf-digital-public__brand {
    display: grid;
    color: inherit;
    line-height: 1.15;
    text-decoration: none;
}

[data-msf-ui="event"] .msf-digital-public__brand span,
[data-msf-ui="event"] .msf-digital-public__intro > p,
[data-msf-ui="event"] .msf-digital-public__card > div > p,
[data-msf-ui="event"] .msf-digital-public__detail-copy > p,
[data-msf-ui="event"] .msf-digital-public__confirmation > p {
    margin: 0;
    color: var(--msf-digital-gold-strong);
    font-size: var(--msf-ui-text-xs);
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

[data-msf-ui="event"] .msf-digital-public__brand strong { font-size: var(--msf-ui-text-lg); }

[data-msf-ui="event"] .msf-digital-public__back {
    color: inherit;
    font-size: var(--msf-ui-text-sm);
    font-weight: 700;
    text-decoration: none;
}

[data-msf-ui="event"] .msf-digital-public__intro { padding: clamp(2.5rem, 6vw, 4.5rem) 0 var(--msf-ui-space-6); }

[data-msf-ui="event"] .msf-digital-public__intro h1,
[data-msf-ui="event"] .msf-digital-public__detail h1,
[data-msf-ui="event"] .msf-digital-public__confirmation h1 {
    max-width: 44rem;
    margin: var(--msf-ui-space-2) 0 var(--msf-ui-space-3);
    color: var(--msf-digital-ink);
    font-size: clamp(2rem, 4vw, 3.25rem);
    line-height: 1.12;
    letter-spacing: -.035em;
}

[data-msf-ui="event"] .msf-digital-public__intro > span,
[data-msf-ui="event"] .msf-digital-public__detail-copy > span,
[data-msf-ui="event"] .msf-digital-public__confirmation > span {
    display: block;
    max-width: 42rem;
    color: #62645d;
    line-height: 1.6;
}

[data-msf-ui="event"] .msf-digital-public__filters {
    padding: var(--msf-ui-space-4);
    border: 1px solid var(--msf-ui-border);
    border-radius: var(--msf-ui-radius-lg);
    background: rgb(255 255 255 / 78%);
    box-shadow: var(--msf-ui-shadow-card);
}

[data-msf-ui="event"] .msf-digital-public__filters > label {
    display: block;
    margin-bottom: var(--msf-ui-space-2);
    color: var(--msf-digital-ink);
    font-size: var(--msf-ui-text-sm);
    font-weight: 800;
}

[data-msf-ui="event"] .msf-digital-public__filters > div { display: flex; gap: var(--msf-ui-space-2); max-width: 36rem; }

[data-msf-ui="event"] .msf-digital-public__filters input,
[data-msf-ui="event"] .msf-digital-public__checkout input {
    min-width: 0;
    min-height: var(--msf-ui-control-height);
    border: 1px solid var(--msf-ui-border);
    border-radius: var(--msf-ui-radius-sm);
    background: #fff;
    padding: 0 var(--msf-ui-space-3);
    color: var(--msf-digital-ink);
    font: inherit;
}

[data-msf-ui="event"] .msf-digital-public__filters input { flex: 1 1 auto; }

[data-msf-ui="event"] .msf-digital-public__filters button,
[data-msf-ui="event"] .msf-digital-public__checkout button,
[data-msf-ui="event"] .msf-digital-public__button {
    min-height: var(--msf-ui-control-height);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--msf-digital-ink);
    border-radius: var(--msf-ui-radius-sm);
    background: var(--msf-digital-ink);
    padding: 0 var(--msf-ui-space-4);
    color: #fff;
    font: inherit;
    font-size: var(--msf-ui-text-sm);
    font-weight: 800;
    text-decoration: none;
}

[data-msf-ui="event"] .msf-digital-public__filters nav {
    display: flex;
    flex-wrap: wrap;
    gap: var(--msf-ui-space-2);
    margin-top: var(--msf-ui-space-3);
}

[data-msf-ui="event"] .msf-digital-public__filters nav a {
    min-height: 2.25rem;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--msf-ui-border);
    border-radius: var(--msf-ui-radius-pill);
    padding: 0 var(--msf-ui-space-3);
    color: inherit;
    font-size: var(--msf-ui-text-sm);
    font-weight: 700;
    text-decoration: none;
}

[data-msf-ui="event"] .msf-digital-public__filters nav a.is-active {
    border-color: var(--msf-digital-gold);
    background: var(--msf-ui-gold-soft);
    color: var(--msf-digital-gold-strong);
}

[data-msf-ui="event"] .msf-digital-public__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--msf-ui-space-5);
    padding-top: var(--msf-ui-space-6);
}

[data-msf-ui="event"] .msf-digital-public__card {
    display: grid;
    grid-template-rows: auto 1fr;
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--msf-ui-border);
    border-radius: var(--msf-ui-radius-lg);
    background: #fff;
    box-shadow: var(--msf-ui-shadow-card);
}

[data-msf-ui="event"] .msf-digital-public__card > img,
[data-msf-ui="event"] .msf-digital-public__cover-fallback {
    width: 100%;
    aspect-ratio: 4 / 5;
    display: block;
    object-fit: contain;
    background: var(--msf-ui-gold-soft);
}

[data-msf-ui="event"] .msf-digital-public__cover-fallback,
[data-msf-ui="event"] .msf-digital-public__cover > span {
    display: grid;
    place-items: center;
    color: var(--msf-digital-gold-strong);
    font-size: var(--msf-ui-text-xl);
    font-weight: 800;
}

[data-msf-ui="event"] .msf-digital-public__card > div {
    display: grid;
    align-content: start;
    gap: var(--msf-ui-space-2);
    min-width: 0;
    padding: var(--msf-ui-space-4);
}

[data-msf-ui="event"] .msf-digital-public__card h2 { margin: 0; font-size: var(--msf-ui-text-lg); line-height: 1.35; }

[data-msf-ui="event"] .msf-digital-public__card h2 a,
[data-msf-ui="event"] .msf-digital-public__card a:last-child { color: inherit; font-weight: 800; text-decoration: none; }

[data-msf-ui="event"] .msf-digital-public__card > div > span { font-weight: 800; }
[data-msf-ui="event"] .msf-digital-public__card a:last-child { margin-top: var(--msf-ui-space-2); color: var(--msf-digital-gold-strong); }

[data-msf-ui="event"] .msf-digital-public__detail { padding-top: clamp(var(--msf-ui-space-8), 5vw, var(--msf-ui-space-12)); }

[data-msf-ui="event"] .msf-digital-public__detail-grid {
    display: grid;
    grid-template-columns: minmax(15rem, 27.5rem) minmax(0, 1fr);
    align-items: start;
    gap: clamp(var(--msf-ui-space-6), 5vw, var(--msf-ui-space-12));
    margin-top: var(--msf-ui-space-5);
}

[data-msf-ui="event"] .msf-digital-public__cover {
    width: min(100%, 27.5rem);
    aspect-ratio: 4 / 5;
    display: grid;
    place-items: center;
    justify-self: center;
    overflow: hidden;
    border: 1px solid var(--msf-ui-border);
    border-radius: var(--msf-ui-radius-lg);
    background: var(--msf-ui-gold-soft);
    box-shadow: var(--msf-ui-shadow-card);
}

[data-msf-ui="event"] .msf-digital-public__cover > img { width: 100%; height: 100%; object-fit: contain; }

[data-msf-ui="event"] .msf-digital-public__detail-copy { min-width: 0; }

[data-msf-ui="event"] .msf-digital-public__purchase-panel {
    display: grid;
    gap: var(--msf-ui-space-3);
    margin-top: var(--msf-ui-space-5);
    padding: var(--msf-ui-space-5);
    border: 1px solid var(--msf-ui-border);
    border-radius: var(--msf-ui-radius-lg);
    background: #fff;
    box-shadow: var(--msf-ui-shadow-card);
}

[data-msf-ui="event"] .msf-digital-public__purchase-panel h2 { margin: 0; font-size: var(--msf-ui-text-lg); }

[data-msf-ui="event"] .msf-digital-public__purchase-panel > strong {
    color: var(--msf-digital-ink);
    font-size: var(--msf-ui-text-xl);
    line-height: 1.2;
}

[data-msf-ui="event"] .msf-digital-public__section {
    max-width: 48rem;
    margin-top: var(--msf-ui-space-8);
    padding-top: var(--msf-ui-space-6);
    border-top: 1px solid var(--msf-ui-border);
    line-height: 1.65;
}

[data-msf-ui="event"] .msf-digital-public__section h2 { margin: 0 0 var(--msf-ui-space-3); font-size: var(--msf-ui-text-xl); }

[data-msf-ui="event"] .msf-digital-public__checkout { display: grid; gap: var(--msf-ui-space-3); }
[data-msf-ui="event"] .msf-digital-public__checkout label { display: grid; gap: var(--msf-ui-space-1); font-size: var(--msf-ui-text-sm); font-weight: 800; }

[data-msf-ui="event"] .msf-digital-public__notice,
[data-msf-ui="event"] .msf-digital-public__error {
    margin: 0;
    padding: var(--msf-ui-space-3);
    border-radius: var(--msf-ui-radius-sm);
    font-size: var(--msf-ui-text-sm);
    line-height: 1.5;
}

[data-msf-ui="event"] .msf-digital-public__notice { background: var(--msf-ui-gold-soft); color: #71550d; }
[data-msf-ui="event"] .msf-digital-public__error { background: var(--msf-ui-danger-soft); color: var(--msf-ui-danger); }

[data-msf-ui="event"] .msf-digital-public__empty,
[data-msf-ui="event"] .msf-digital-public__confirmation {
    margin-top: var(--msf-ui-space-6);
    padding: clamp(var(--msf-ui-space-5), 5vw, var(--msf-ui-space-10));
    border: 1px solid var(--msf-ui-border);
    border-radius: var(--msf-ui-radius-lg);
    background: rgb(255 255 255 / 78%);
    box-shadow: var(--msf-ui-shadow-card);
}

[data-msf-ui="event"] .msf-digital-public__confirmation .msf-digital-public__button { margin-top: var(--msf-ui-space-4); }

[data-msf-ui="event"] .msf-digital-public :is(a, button, input):focus-visible {
    outline: none;
    box-shadow: var(--msf-ui-focus-ring);
}

[data-msf-ui="event"] .msf-digital-public :is(button, a):hover { opacity: .9; }

@media (max-width: 64rem) {
    [data-msf-ui="event"] .msf-digital-public__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 48rem) {
    [data-msf-ui="event"].msf-digital-public { padding-bottom: var(--msf-ui-space-8); }
    [data-msf-ui="event"] .msf-digital-public__detail-grid { grid-template-columns: 1fr; }
    [data-msf-ui="event"] .msf-digital-public__cover { width: min(100%, 22rem); justify-self: start; }
}

@media (max-width: 32.5rem) {
    [data-msf-ui="event"].msf-digital-public { padding-inline: var(--msf-ui-space-4); }
    [data-msf-ui="event"] .msf-digital-public__header { align-items: flex-start; flex-direction: column; justify-content: center; padding: var(--msf-ui-space-3) 0; }
    [data-msf-ui="event"] .msf-digital-public__intro { padding-top: var(--msf-ui-space-8); }
    [data-msf-ui="event"] .msf-digital-public__filters > div { flex-direction: column; }
    [data-msf-ui="event"] .msf-digital-public__filters button { width: 100%; }
    [data-msf-ui="event"] .msf-digital-public__grid { grid-template-columns: 1fr; }
    [data-msf-ui="event"] .msf-digital-public__card { grid-template-columns: 7.5rem minmax(0, 1fr); grid-template-rows: 1fr; }
    [data-msf-ui="event"] .msf-digital-public__card > img,
    [data-msf-ui="event"] .msf-digital-public__cover-fallback { height: 100%; min-height: 10rem; aspect-ratio: auto; }
    [data-msf-ui="event"] .msf-digital-public__purchase-panel { padding: var(--msf-ui-space-4); }
}

@media (prefers-reduced-motion: reduce) {
    [data-msf-ui="event"] .msf-digital-public *,
    [data-msf-ui="event"] .msf-digital-public *::before,
    [data-msf-ui="event"] .msf-digital-public *::after { scroll-behavior: auto; transition-duration: .01ms; animation-duration: .01ms; animation-iteration-count: 1; }
}
