/* /Components/AnnouncementList.razor.rz.scp.css */
.announcements[b-t0x6yw52tj] {
    margin: 0;
    padding: 0;
    list-style: none;
}

.announcement[b-t0x6yw52tj] {
    display: grid;
    gap: 0.5rem;
    padding-block: 1.4rem;
    border-top: 1px solid color-mix(in srgb, currentColor 18%, transparent);
}

.announcement:last-child[b-t0x6yw52tj] {
    border-bottom: 1px solid color-mix(in srgb, currentColor 18%, transparent);
}

.meta[b-t0x6yw52tj] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem;
}

.kind[b-t0x6yw52tj] {
    padding: 0.05rem 0.5rem;
    border-radius: 6px;
    font-size: 0.85rem;
    border: 1.5px solid currentColor;
}

/* Fully booked is the one people most need to notice */
.kind-booked[b-t0x6yw52tj] {
    background: var(--lime);
    border-color: var(--lime);
    color: var(--ink);
}

.date[b-t0x6yw52tj] {
    font-size: 0.85rem;
    opacity: 0.7;
}

h3[b-t0x6yw52tj] {
    font-size: 1.15rem;
}

p[b-t0x6yw52tj] {
    max-width: 60ch;
    opacity: 0.85;
}
/* /Components/ComingSoon.razor.rz.scp.css */
.placeholder[b-3045uoq6xu] {
    display: grid;
    gap: 1rem;
    justify-items: start;
}

.actions[b-3045uoq6xu] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.9rem;
    margin-top: 1rem;
}
/* /Components/PageIntro.razor.rz.scp.css */
.page-intro[b-emvtd9jo5o] {
    padding-block: clamp(3.5rem, 8vw, 6.5rem) clamp(3rem, 6vw, 5rem);
}

.eyebrow[b-emvtd9jo5o] {
    color: var(--lime);
    margin-bottom: 1.25rem;
}

h1[b-emvtd9jo5o] {
    font-size: var(--step-1);
    max-width: 16ch;
}

.intro-lead[b-emvtd9jo5o] {
    margin-top: 1.5rem;
    color: var(--fog);
    max-width: 52ch;
}
/* /Components/RateCard.razor.rz.scp.css */
.rate-card[b-s5rplrbzdr] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    height: 100%;
    padding: 1.5rem;
    border-radius: var(--radius-tile);
    background: var(--chalk);
    border: 2px solid transparent;
}

.rate-card.is-membership[b-s5rplrbzdr] {
    background: var(--ink);
    color: var(--chalk);
    border-color: var(--lime);
}

header[b-s5rplrbzdr] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}

.tag[b-s5rplrbzdr] {
    padding: 0.1rem 0.5rem;
    border-radius: 6px;
    background: var(--lime);
    color: var(--ink);
    font-size: 0.8rem;
}

.price[b-s5rplrbzdr] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0 0.5rem;
}

.unit[b-s5rplrbzdr] {
    white-space: nowrap;
}

.amount[b-s5rplrbzdr] {
    font-family: var(--font-display);
    font-stretch: 115%;
    font-weight: 850;
    font-size: 2.6rem;
    line-height: 1;
}

.unit[b-s5rplrbzdr] {
    font-family: var(--font-label);
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--graphite);
}

.is-membership .unit[b-s5rplrbzdr],
.is-membership .summary[b-s5rplrbzdr] {
    color: var(--fog);
}

.summary[b-s5rplrbzdr] {
    color: var(--graphite);
}

.includes[b-s5rplrbzdr] {
    margin: auto 0 0;
    padding: 1rem 0 0;
    border-top: 1px solid var(--concrete-deep);
    list-style: none;
    display: grid;
    gap: 0.35rem;
    font-size: 0.95rem;
}

.is-membership .includes[b-s5rplrbzdr] {
    border-top-color: #333331;
}

.includes li[b-s5rplrbzdr]::before {
    content: "+ ";
    font-weight: 700;
    color: var(--oak);
}

.is-membership .includes li[b-s5rplrbzdr]::before {
    color: var(--lime);
}
/* /Components/SeatBoard.razor.rz.scp.css */
.seat-board[b-gqoqkf11tu] {
    margin: 0;
    padding: clamp(1rem, 2.5vw, 1.5rem);
    border-radius: 20px;
    background: var(--ink-raised);
    border: 1px solid #333331;
}

.board-head[b-gqoqkf11tu] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
    color: var(--fog);
}

.count[b-gqoqkf11tu] {
    font-family: var(--font-label);
    font-size: 1.15rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--chalk);
}

.count strong[b-gqoqkf11tu] {
    color: var(--lime);
    font-family: var(--font-display);
    font-size: 1.9rem;
    font-weight: 850;
    margin-right: 0.15rem;
}

svg[b-gqoqkf11tu] {
    width: 100%;
    height: auto;
    overflow: visible;
}

/* ---------- Furniture ---------- */

.zone[b-gqoqkf11tu] {
    fill: #1f1f1e;
    stroke: #3a3a38;
    stroke-width: 1;
}

.glass[b-gqoqkf11tu] {
    fill: none;
    stroke: #6d6c68;
    stroke-width: 1.5;
    stroke-dasharray: 2 3;
}

.table[b-gqoqkf11tu],
.shelf[b-gqoqkf11tu] {
    fill: var(--oak);
    opacity: 0.55;
}

.zone-name[b-gqoqkf11tu] {
    font-family: var(--font-label);
    font-size: 9px;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    fill: var(--fog);
}

/* ---------- Seats ---------- */

.seat circle[b-gqoqkf11tu] {
    stroke-width: 2;
    transform-box: fill-box;
    transform-origin: center;
}

.seat-open circle[b-gqoqkf11tu] {
    fill: var(--lime);
    stroke: var(--lime);
    /* Open seats light up one after another when the page loads */
    animation: light-up-b-gqoqkf11tu 420ms cubic-bezier(0.3, 1.5, 0.6, 1) backwards;
    animation-delay: calc(var(--i) * 28ms + 250ms);
}

.seat-occupied circle[b-gqoqkf11tu] {
    fill: transparent;
    stroke: #6d6c68;
}

.seat-reserved circle[b-gqoqkf11tu] {
    fill: transparent;
    stroke: var(--chalk);
    stroke-dasharray: 3 3;
}

@keyframes light-up-b-gqoqkf11tu {
    from {
        opacity: 0;
        transform: scale(0.3);
    }
}

/* ---------- The resident cat ---------- */

/* CatGlyph draws in currentColor */
.cat[b-gqoqkf11tu] {
    color: var(--chalk);
}

/* ---------- Legend ---------- */

.legend[b-gqoqkf11tu] {
    display: flex;
    flex-wrap: wrap;
    gap: 1.25rem;
    margin: 1rem 0 0;
    padding: 0;
    list-style: none;
    font-family: var(--font-label);
    font-size: 0.95rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--fog);
}

.legend li[b-gqoqkf11tu] {
    display: flex;
    align-items: center;
    gap: 0.45rem;
}

.key[b-gqoqkf11tu] {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid;
}

.key-open[b-gqoqkf11tu] {
    background: var(--lime);
    border-color: var(--lime);
}

.key-occupied[b-gqoqkf11tu] {
    border-color: #6d6c68;
}

.key-reserved[b-gqoqkf11tu] {
    border-color: var(--chalk);
    border-style: dashed;
}
/* /Components/SiteFooter.razor.rz.scp.css */
.site-footer[b-cju8d64xtt] {
    padding-top: clamp(3rem, 6vw, 5rem);
    border-top: 1px solid #2c2c2b;
}

.grid[b-cju8d64xtt] {
    display: grid;
    grid-template-columns: 1.3fr 1fr 1fr 1fr;
    gap: 2.5rem;
}

.brand img[b-cju8d64xtt] {
    width: 190px;
    height: auto;
}

.label[b-cju8d64xtt] {
    margin-bottom: 0.75rem;
}

p:not(.label)[b-cju8d64xtt] {
    margin-bottom: 1rem;
}

ul[b-cju8d64xtt] {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 0.5rem;
}

ul a[b-cju8d64xtt] {
    text-decoration: none;
}

ul a:hover[b-cju8d64xtt] {
    color: var(--lime);
}

.fine-print[b-cju8d64xtt] {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 1rem;
    margin-top: 3.5rem;
    padding-block: 1.5rem;
    border-top: 1px solid #2c2c2b;
    color: var(--fog);
    font-size: 0.9rem;
}

.prototype[b-cju8d64xtt] {
    font-family: var(--font-label);
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

@media (max-width: 860px) {
    .grid[b-cju8d64xtt] {
        grid-template-columns: 1fr 1fr;
    }

    .brand[b-cju8d64xtt] {
        grid-column: 1 / -1;
    }
}

@media (max-width: 480px) {
    .grid[b-cju8d64xtt] {
        grid-template-columns: minmax(0, 1fr);
    }
}
/* /Components/SiteHeader.razor.rz.scp.css */
.site-header[b-gb5ezynzfg] {
    position: sticky;
    top: 0;
    z-index: 50;
    border-bottom: 1px solid #2c2c2b;
}

.bar[b-gb5ezynzfg] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    min-height: 72px;
}

.brand img[b-gb5ezynzfg] {
    height: 44px;
    width: auto;
}

.nav[b-gb5ezynzfg] {
    display: flex;
    align-items: center;
    gap: 2.5rem;
}

.links[b-gb5ezynzfg] {
    display: flex;
    gap: 2rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.actions[b-gb5ezynzfg] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

/* ::deep reaches the <a> that NavLink renders */
.nav[b-gb5ezynzfg]  .link {
    position: relative;
    font-family: var(--font-label);
    font-weight: 600;
    font-size: 1.1rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    text-decoration: none;
    color: var(--chalk);
}

.nav[b-gb5ezynzfg]  .link:hover {
    color: var(--lime);
}

/* Current page gets a lime underline */
.nav[b-gb5ezynzfg]  .link.active::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -6px;
    height: 3px;
    border-radius: 2px;
    background: var(--lime);
}

.menu-toggle[b-gb5ezynzfg] {
    display: none;
    min-height: 44px;
    padding: 0 1rem;
    border: 2px solid var(--chalk);
    border-radius: 10px;
    background: transparent;
    color: var(--chalk);
    font-family: var(--font-label);
    font-weight: 700;
    font-size: 1.05rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    cursor: pointer;
}

@media (max-width: 860px) {
    .menu-toggle[b-gb5ezynzfg] {
        display: inline-flex;
        align-items: center;
    }

    .nav[b-gb5ezynzfg] {
        display: none;
        position: absolute;
        top: 72px;
        left: 0;
        right: 0;
        flex-direction: column;
        align-items: stretch;
        gap: 1.5rem;
        padding: 1.5rem var(--gutter) 2rem;
        background: var(--ink);
        border-bottom: 1px solid #2c2c2b;
    }

    .nav.is-open[b-gb5ezynzfg] {
        display: flex;
    }

    .links[b-gb5ezynzfg] {
        flex-direction: column;
        gap: 1.1rem;
    }

    .nav[b-gb5ezynzfg]  .link {
        font-size: 1.5rem;
    }

    .actions[b-gb5ezynzfg] {
        flex-direction: column;
        align-items: stretch;
    }
}
/* /Pages/Home.razor.rz.scp.css */
/* ---------- Fully booked notice ---------- */

.notice[b-vnl002df05] {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.4rem 0.9rem;
    padding: 0.6rem var(--gutter);
    background: var(--lime);
    color: var(--ink);
    font-weight: 600;
    text-decoration: none;
    text-align: center;
}

.notice:hover .notice-more[b-vnl002df05] {
    transform: translateX(3px);
}

.notice-more[b-vnl002df05] {
    display: inline-block;
    transition: transform 150ms ease;
}

/* ---------- Hero ---------- */

.hero[b-vnl002df05] {
    padding-block: clamp(3rem, 7vw, 6rem) clamp(4rem, 8vw, 7rem);
    overflow: hidden;
}

.hero-grid[b-vnl002df05] {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    align-items: center;
    gap: clamp(2.5rem, 5vw, 4.5rem);
}

.hero-copy .label[b-vnl002df05] {
    margin-bottom: 1.5rem;
}

h1[b-vnl002df05] {
    font-size: var(--step-hero);
    line-height: 0.88;
    font-stretch: 118%;
    font-weight: 900;
}

.hero-copy .lead[b-vnl002df05] {
    margin-top: 1.75rem;
    color: var(--fog);
}

.hero-actions[b-vnl002df05] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.9rem;
    margin-top: 2.25rem;
}

/* ---------- Photo ---------- */

.photo[b-vnl002df05] {
    position: relative;
    margin: 0;
    background: var(--ink);
}

.photo img[b-vnl002df05] {
    width: 100%;
    height: clamp(300px, 52vw, 620px);
    object-fit: cover;
    object-position: center 40%;
}

.photo figcaption[b-vnl002df05] {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 1.25rem;
}

.photo figcaption .label[b-vnl002df05] {
    padding: 0.35rem 0.75rem;
    border-radius: 8px;
    background: var(--ink);
    color: var(--chalk);
}

/* ---------- Shared section heading ---------- */

.section-title[b-vnl002df05] {
    font-size: var(--step-1);
}

.section-head[b-vnl002df05] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1.25rem 3rem;
    margin-bottom: clamp(2rem, 4vw, 3rem);
}

/* ---------- Work & everything else ---------- */

.uses[b-vnl002df05] {
    margin: clamp(2rem, 4vw, 3.5rem) 0 0;
    padding: 0;
    list-style: none;
}

.use[b-vnl002df05] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: center;
    gap: 1rem 3rem;
    padding-block: 1.1rem;
    border-top: 2px solid var(--ink);
}

.use:last-child[b-vnl002df05] {
    border-bottom: 2px solid var(--ink);
}

.use-word[b-vnl002df05] {
    font-family: var(--font-display);
    font-stretch: 118%;
    font-weight: 900;
    font-size: clamp(2.4rem, 6vw, 5rem);
    line-height: 1;
    text-transform: uppercase;
    transition: color 200ms ease;
}

.use-detail[b-vnl002df05] {
    font-size: 1.1rem;
    color: var(--graphite);
    max-width: 42ch;
}

.use:hover .use-word[b-vnl002df05] {
    color: var(--oak);
}

/* ---------- Cats ---------- */

.cats[b-vnl002df05] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.25rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.cat-card[b-vnl002df05] {
    display: grid;
    gap: 0.6rem;
    align-content: start;
    padding: 1.75rem 1.5rem;
    border-radius: var(--radius-tile);
    background: var(--concrete);
}

.cat-card[b-vnl002df05]  .cat-icon {
    width: 56px;
    height: 40px;
    color: var(--ink);
    margin-bottom: 0.5rem;
}

.cat-card h3[b-vnl002df05] {
    font-size: 1.8rem;
}

.cat-card .label[b-vnl002df05] {
    font-size: 0.85rem;
    margin-top: 0.4rem;
}

/* ---------- Rates teaser ---------- */

.rates[b-vnl002df05] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.25rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

/* ---------- Visit ---------- */

.visit-grid[b-vnl002df05] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
    gap: clamp(2.5rem, 6vw, 6rem);
}

.visit-grid .lead[b-vnl002df05] {
    margin-top: 1.5rem;
}

.hours[b-vnl002df05] {
    margin: 1.75rem 0 2rem;
    display: grid;
    gap: 0.6rem;
    max-width: 26rem;
}

.hours div[b-vnl002df05] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding-bottom: 0.6rem;
    border-bottom: 1px dashed #3a3a38;
}

.hours dt[b-vnl002df05] {
    color: var(--fog);
}

.hours dd[b-vnl002df05] {
    margin: 0;
    font-weight: 600;
}

.announcements-label[b-vnl002df05] {
    margin-bottom: 0.5rem;
}

/* ---------- Responsive ---------- */

@media (max-width: 960px) {
    .hero-grid[b-vnl002df05],
    .visit-grid[b-vnl002df05] {
        grid-template-columns: minmax(0, 1fr);
    }

    .rates[b-vnl002df05] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cats[b-vnl002df05] {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 640px) {
    .use[b-vnl002df05] {
        grid-template-columns: minmax(0, 1fr);
        gap: 0.25rem;
    }

    .rates[b-vnl002df05] {
        grid-template-columns: minmax(0, 1fr);
    }
}
/* /Pages/Menu.razor.rz.scp.css */
.menu-grid[b-w80t7b78gg] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(3rem, 6vw, 5rem) clamp(2.5rem, 6vw, 6rem);
}

.menu-section header[b-w80t7b78gg] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
    padding-bottom: 1rem;
    border-bottom: 3px solid var(--ink);
}

.menu-section h2[b-w80t7b78gg] {
    font-size: var(--step-2);
}

.items[b-w80t7b78gg] {
    margin: 0;
    padding: 0;
    list-style: none;
}

.item[b-w80t7b78gg] {
    padding-block: 1.1rem;
    border-bottom: 1px solid var(--concrete-deep);
}

.item-line[b-w80t7b78gg] {
    display: flex;
    align-items: baseline;
    gap: 0.75rem;
}

.item h3[b-w80t7b78gg] {
    font-size: 1.1rem;
    font-stretch: 100%;
    text-transform: none;
    letter-spacing: 0;
}

/* Dotted line between the item name and its price, like a printed menu */
.leader[b-w80t7b78gg] {
    flex: 1;
    border-bottom: 2px dotted var(--graphite);
    opacity: 0.5;
    transform: translateY(-4px);
}

.price[b-w80t7b78gg] {
    font-family: var(--font-label);
    font-weight: 700;
    font-size: 1.25rem;
    letter-spacing: 0.04em;
}

.item p[b-w80t7b78gg] {
    margin-top: 0.25rem;
    max-width: 44ch;
}

.favorite[b-w80t7b78gg] {
    margin-left: 0.4rem;
    padding: 0 0.45rem;
    border-radius: 6px;
    background: var(--lime);
    color: var(--ink);
    font-size: 0.8rem;
}

@media (max-width: 760px) {
    .menu-grid[b-w80t7b78gg] {
        grid-template-columns: minmax(0, 1fr);
    }
}
/* /Pages/SpaceAndRates.razor.rz.scp.css */
.section-title[b-i2h49bdw5n] {
    font-size: var(--step-1);
}

/* ---------- Zones ---------- */

.zones[b-i2h49bdw5n] {
    margin: 0;
    padding: 0;
    list-style: none;
}

.zone[b-i2h49bdw5n] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
    gap: 1rem 3rem;
    padding-block: 2rem;
    border-top: 2px solid var(--ink);
}

.zone:last-child[b-i2h49bdw5n] {
    border-bottom: 2px solid var(--ink);
}

.zone h2[b-i2h49bdw5n] {
    font-size: var(--step-2);
}

.zone-name .label[b-i2h49bdw5n] {
    margin-top: 0.75rem;
}

.zone-body p[b-i2h49bdw5n] {
    font-size: 1.1rem;
    max-width: 50ch;
}

.amenities[b-i2h49bdw5n] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: 1rem 0 0;
    padding: 0;
    list-style: none;
}

.amenities li[b-i2h49bdw5n] {
    padding: 0.25rem 0.75rem;
    border-radius: 999px;
    background: var(--chalk);
    font-size: 0.9rem;
    font-weight: 500;
}

/* ---------- Board ---------- */

.board-grid[b-i2h49bdw5n] {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    align-items: center;
    gap: clamp(2.5rem, 5vw, 4.5rem);
}

.board-lead[b-i2h49bdw5n] {
    margin-block: 1.5rem 2rem;
}

/* ---------- Rates ---------- */

.rates-lead[b-i2h49bdw5n] {
    margin-block: 1rem 2.5rem;
}

.rates[b-i2h49bdw5n] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.25rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

/* ---------- Steps ---------- */

.steps[b-i2h49bdw5n] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.25rem;
    margin: 2.5rem 0 0;
    padding: 0;
    list-style: none;
    counter-reset: step;
}

.step[b-i2h49bdw5n] {
    counter-increment: step;
    padding-top: 1.25rem;
    border-top: 2px solid var(--ink);
}

.step[b-i2h49bdw5n]::before {
    content: counter(step);
    display: inline-grid;
    place-items: center;
    width: 2.2rem;
    height: 2.2rem;
    margin-bottom: 1rem;
    border-radius: 10px;
    background: var(--ink);
    color: var(--lime);
    font-family: var(--font-display);
    font-weight: 850;
}

.step h3[b-i2h49bdw5n] {
    margin-bottom: 0.5rem;
}

.step p[b-i2h49bdw5n] {
    color: var(--graphite);
}

/* ---------- Rules ---------- */

.rules-grid[b-i2h49bdw5n] {
    display: grid;
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
    gap: 2rem 3rem;
}

.rules[b-i2h49bdw5n] {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 1.1rem;
}

.rules li[b-i2h49bdw5n] {
    padding-block: 0.9rem;
    border-bottom: 1px solid var(--concrete-deep);
}

.rules li:first-child[b-i2h49bdw5n] {
    padding-top: 0;
}

/* ---------- Responsive ---------- */

@media (max-width: 960px) {
    .board-grid[b-i2h49bdw5n],
    .rules-grid[b-i2h49bdw5n] {
        grid-template-columns: minmax(0, 1fr);
    }

    .rates[b-i2h49bdw5n],
    .steps[b-i2h49bdw5n] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .zone[b-i2h49bdw5n] {
        grid-template-columns: minmax(0, 1fr);
    }

    .rates[b-i2h49bdw5n],
    .steps[b-i2h49bdw5n] {
        grid-template-columns: minmax(0, 1fr);
    }
}
/* /Pages/Visit.razor.rz.scp.css */
.visit-grid[b-xm9pkeybft] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
}

.card[b-xm9pkeybft] {
    padding: clamp(1.5rem, 3vw, 2.5rem);
    border-radius: 20px;
    background: var(--chalk);
}

.card h2[b-xm9pkeybft] {
    font-size: var(--step-2);
}

.hours[b-xm9pkeybft] {
    margin: 1.5rem 0 0;
    display: grid;
    gap: 0.75rem;
}

.hours div[b-xm9pkeybft] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding-bottom: 0.75rem;
    border-bottom: 1px dashed var(--concrete-deep);
    font-size: 1.1rem;
}

.hours dt[b-xm9pkeybft] {
    color: var(--graphite);
}

.hours dd[b-xm9pkeybft] {
    margin: 0;
    font-weight: 600;
}

/* Needs its own rule: .card above would otherwise win over the global .on-ink background */
.card-ink[b-xm9pkeybft] {
    background: var(--ink);
}

.card-ink .lead[b-xm9pkeybft] {
    margin-top: 1.25rem;
}

.links[b-xm9pkeybft] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.9rem;
    margin-top: 2rem;
}

.section-title[b-xm9pkeybft] {
    font-size: var(--step-1);
}

.announcements-grid[b-xm9pkeybft] {
    display: grid;
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
    gap: 2rem 4rem;
}

.announcements-grid .lead[b-xm9pkeybft] {
    margin-top: 1rem;
}

@media (max-width: 860px) {
    .visit-grid[b-xm9pkeybft],
    .announcements-grid[b-xm9pkeybft] {
        grid-template-columns: minmax(0, 1fr);
    }
}
