/* Shared C1 category artwork; existing desktop icon boxes and layout remain. */
:is(.byst-mobile-shortcuts, .byst-category-grid, .byst-category-nav, .byst-main-category-shortcut) [data-byst-legacy-category] { display: none; }
.byst-category-paper { display: block; width: 100%; height: 100%; }
.byst-category-paper img { display: block; width: 100%; height: 100%; max-width: none; object-fit: contain; }
.byst-category-arrow,
.byst-category-nav-mobile-all,
.byst-category-nav .byst-category-short-label,
.byst-home-categories-c1 .byst-category-short-label { display: none; }

@media (max-width: 699px) {
    .byst-category-nav-icon:has(.byst-category-paper) { width: 44px; height: 44px; flex-basis: 44px; background: transparent; }
    .byst-category-carousel { position: relative; }
    .byst-home-categories-c1 .byst-shortcut-row { gap: 10px; margin-top: 14px; padding-top: 3px; padding-bottom: 8px; overscroll-behavior-inline: contain; scrollbar-width: none; }
    .byst-home-categories-c1 .byst-shortcut-row::-webkit-scrollbar { display: none; }
    .byst-home-categories-c1 .byst-shortcut { flex: 0 0 94px; }
    .byst-home-categories-c1 .byst-shortcut > span { width: 68px; height: 68px; margin-bottom: 7px; box-shadow: none; background: transparent; }
    .byst-home-categories-c1 .byst-shortcut b { font-size: 11px; font-weight: 700; line-height: 1.35; min-height: 2.7em; }
    .byst-home-categories-c1 .byst-shortcut em { margin-top: 3px; font-size: 10px; font-weight: 400; line-height: 1.3; }
    .byst-category-carousel::before,
    .byst-category-carousel::after { position: absolute; z-index: 1; top: 0; bottom: 0; width: 32px; pointer-events: none; }
    .byst-category-carousel.can-scroll-left::before { content: ''; left: -2px; background: linear-gradient(to right, #fff8f8, transparent); }
    .byst-category-carousel.can-scroll-right::after { content: ''; right: -2px; background: linear-gradient(to left, #fff8f8, transparent); }
    .byst-category-carousel .byst-category-arrow { display: flex; position: absolute; z-index: 2; top: 12px; align-items: center; justify-content: center; width: 40px; height: 52px; margin: 0; padding: 6px; border: 0; border-radius: 50%; background: transparent; color: #67525c; cursor: pointer; }
    .byst-category-carousel .byst-category-arrow[hidden] { display: none; }
    .byst-category-arrow--previous { left: -5px; }
    .byst-category-arrow--next { right: -5px; }
    .byst-category-arrow svg { width: 28px; height: 28px; padding: 4px; border: 1px solid #ead8df; border-radius: 50%; background: rgba(255,255,255,.96); fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; box-shadow: 0 2px 8px rgba(70,45,55,.1); }
    .byst-home-categories-c1 .byst-main-category-shortcut__list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; padding: 2px 0 4px; overflow: visible; }
    .byst-home-categories-c1 .byst-main-category-shortcut__item { display: flex; flex-direction: column; width: 100%; min-width: 0; min-height: 89px; gap: 5px; padding: 8px 2px; text-align: center; white-space: normal; border-radius: 14px; box-shadow: none; }
    .byst-home-categories-c1 .byst-main-category-shortcut__item > span { width: 48px; height: 48px; flex: 0 0 48px; border-radius: 0; background: transparent; }
    .byst-home-categories-c1 .byst-main-category-shortcut__item strong { display: block; width: 100%; }
    .byst-home-categories-c1 .byst-main-category-shortcut__item .byst-category-short-label { display: block; font-size: 11px; font-weight: 700; line-height: 1.35; }
    .byst-home-categories-c1 .byst-main-category-shortcut__item .byst-category-full-label,
    .byst-home-categories-c1 .byst-main-category-shortcut__item em { display: none; }
    .byst-category-nav { padding: 2px 0 4px; overflow: visible; }
    .byst-category-nav .byst-category-nav__list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
    .byst-category-nav .byst-category-nav-card { display: flex; flex-direction: column; width: 100%; min-width: 0; min-height: 89px; gap: 5px; padding: 8px 2px; text-align: center; white-space: normal; border-radius: 14px; box-shadow: none; }
    .byst-category-nav .byst-category-nav-card--all { display: none; }
    .byst-category-nav .byst-category-nav-icon { width: 48px; height: 48px; flex: 0 0 48px; border-radius: 0; background: transparent; }
    .byst-category-nav .byst-category-nav-card strong { display: block; width: 100%; }
    .byst-category-nav .byst-category-short-label { display: block; font-size: 11px; font-weight: 700; line-height: 1.35; }
    .byst-category-nav .byst-category-full-label,
    .byst-category-nav .byst-category-nav-card em { display: none; }
    .byst-category-nav .byst-category-nav-mobile-all { display: block; width: fit-content; margin: 12px 0 0 auto; padding: 7px 0; color: #805263; font: 700 12px/1.5 var(--byst-sans); text-decoration: none; }
    .byst-home-categories-c1 .byst-shortcut-row:focus-visible,
    .byst-category-arrow:focus-visible { outline: 2px solid #a9526b; outline-offset: 2px; }
}

/* Shared compact shop cards for recommendations and category listings. */
@media (max-width: 699px) {
    .byst-community :is(#byst-directory-recommendations, .byst-pick-section, .byst-all-partners-section, .byst-benefit-partners) .byst-partner-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 10px; }
    .byst-community :is(#byst-directory-recommendations, .byst-pick-section, .byst-all-partners-section, .byst-benefit-partners) .byst-partner-card { display: flex; flex-direction: column; min-width: 0; min-height: 0; border-radius: 14px; overflow: hidden; box-shadow: 0 5px 15px rgba(58,42,37,.05); }
    .byst-community :is(#byst-directory-recommendations, .byst-pick-section, .byst-all-partners-section, .byst-benefit-partners) .byst-partner-card__image { display: block; position: relative; flex: none; width: 100%; height: auto; min-height: 0; aspect-ratio: 4 / 3; border-radius: 14px 14px 0 0; background: #fff; }
    .byst-community :is(#byst-directory-recommendations, .byst-pick-section, .byst-all-partners-section, .byst-benefit-partners) .byst-partner-card__image img { display: block; width: 100%; height: 100%; object-fit: contain; border-radius: 0; }
    .byst-community :is(#byst-directory-recommendations, .byst-pick-section, .byst-all-partners-section, .byst-benefit-partners) .byst-partner-card__body { display: block; min-width: 0; padding: 10px 10px 12px; }
    .byst-community :is(#byst-directory-recommendations, .byst-pick-section, .byst-all-partners-section, .byst-benefit-partners) .byst-partner-card__meta { display: block; margin: 0 0 5px; font-size: 10px; font-weight: 700; line-height: 1.35; }
    .byst-community :is(#byst-directory-recommendations, .byst-pick-section, .byst-all-partners-section, .byst-benefit-partners) .byst-partner-card__title { display: block; margin: 0 0 6px; font-family: var(--byst-sans); font-size: 14px; font-weight: 700; line-height: 1.4; overflow-wrap: anywhere; }
    .byst-community :is(#byst-directory-recommendations, .byst-pick-section, .byst-all-partners-section, .byst-benefit-partners) .byst-partner-card__text { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; margin: 0; font-size: 12px; font-weight: 400; line-height: 1.5; color: #3f3633; }
    .byst-community :is(#byst-directory-recommendations, .byst-pick-section, .byst-all-partners-section, .byst-benefit-partners) .byst-partner-card__badge,
    .byst-community :is(#byst-directory-recommendations, .byst-pick-section, .byst-all-partners-section, .byst-benefit-partners) .byst-partner-card__pick-badge { top: 7px; right: 7px; padding: 4px 7px; font-size: 10px; line-height: 1.2; }
    .byst-community :is(#byst-directory-recommendations, .byst-pick-section, .byst-all-partners-section, .byst-benefit-partners) .byst-partner-card__badge { left: auto; width: max-content; max-width: calc(100% - 14px); }
    .byst-community :is(#byst-directory-recommendations, .byst-pick-section, .byst-all-partners-section, .byst-benefit-partners) .byst-partner-card__pick-badge { right: auto; left: 7px; }
    .byst-community :is(#byst-directory-recommendations, .byst-pick-section, .byst-all-partners-section, .byst-benefit-partners) .byst-chip-row { display: none; }
}

@media (max-width: 699px) {
    .byst-all-partners-section .byst-empty-state { grid-column: 1 / -1; }
}

/* Mobile readability refinements (0.1.209). */
@media (max-width: 699px) {
    .byst-partner-detail .byst-related-partners .byst-partner-card__text { display: none; }
    .byst-taxonomy-page .byst-category-hero h1 { font-size: 30px; line-height: 1.2; }
    .byst-taxonomy-page .byst-category-hero__copy > p:not(.byst-eyebrow):not(.byst-category-hero__subtitle) { line-height: calc(1.8em - 2px); }
    .byst-taxonomy-page .byst-guide-listing .byst-guide-list-item__excerpt { display: none; }
}

/* Reader benefits use the same compact cards as recommendations and category lists. */
.byst-community .byst-benefit-more[hidden] { display: none; }
.byst-community .byst-benefit-more:not([hidden]) { display: flex; justify-content: center; margin-top: 18px; }
.byst-community .byst-benefit-partners .byst-section-head::after { content: none; }
.byst-community .byst-benefit-partners .byst-partner-card[hidden] { display: none; }
@media (max-width: 699px) {
    .byst-community .byst-benefit-partners .byst-section-head::after { content: none; }
    .byst-community :is(#byst-directory-recommendations, .byst-benefit-partners) .byst-partner-card[hidden] { display: none; }
    .byst-community .byst-benefit-more:not([hidden]) { display: flex; justify-content: center; margin-top: 18px; }
    .byst-community .byst-benefit-more .byst-button { font-family: var(--byst-sans); font-size: 14px; }
}
@media (min-width: 700px) {
    .byst-community .byst-benefit-partners .byst-partner-card[data-byst-benefit-extra][hidden] { display: none; }
}

/* Group each mobile category heading into one compact title block. */
@media (max-width: 699px) {
    .byst-taxonomy-page .byst-category-hero .byst-eyebrow { margin: 0 0 5px; line-height: 1.35; }
    .byst-taxonomy-page .byst-category-hero h1 { margin: 0; }
    .byst-taxonomy-page .byst-category-hero__copy > .byst-category-hero__subtitle { margin: 5px 0 0; line-height: 1.35; }
    .byst-taxonomy-page .byst-category-hero__subtitle + p { margin-top: 14px; }
}

/* Desktop Guide lists show the headline and metadata without a short excerpt. */
@media (min-width: 700px) {
    .byst-page-guide-archive .byst-community.byst-guide-archive .byst-guide-list-item .byst-guide-list-item__excerpt { display: none; }
}

/* Keep the established hero while adding a desktop keyword entry point. */
.byst-desktop-home-search { display: none; }
.byst-page-community .byst-desktop-home-search { display: flex; gap: 8px; margin: 0 0 18px; max-width: 560px; padding: 6px; border: 1px solid var(--byst-line); border-radius: 12px; background: #fff; }
.byst-desktop-home-search input { flex: 1; min-width: 0; padding: 9px; border: 0; background: transparent; color: var(--byst-ink); font: 400 16px/1.4 var(--byst-sans); }
.byst-desktop-home-search button { padding: 9px 18px; border: 0; border-radius: 8px; background: var(--byst-pink); color: #fff; font: 700 14px/1.4 var(--byst-sans); cursor: pointer; }
@media (max-width: 699px) {
    .byst-page-community .byst-desktop-home-search:not(.byst-business-hero-search) { display: none; }
}
.byst-guide-type-filter { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 14px; }

/* A readable, editable policy page using the existing shared site chrome. */
.byst-privacy-content { max-width: 820px; margin: 0 auto; padding: 44px 24px 64px; color: #393330; font: 400 16px/1.75 var(--byst-sans); overflow-wrap: anywhere; }
.byst-privacy-content h1 { font: 800 clamp(26px, 3vw, 38px)/1.3 var(--byst-sans); color: var(--byst-ink); margin: 0 0 24px; }
.byst-privacy-content h2 { font: 700 26px/1.4 var(--byst-sans); margin: 40px 0 18px; scroll-margin-top: 100px; }
.byst-privacy-content h3 { font: 700 19px/1.45 var(--byst-sans); margin: 28px 0 10px; }
.byst-privacy-content p, .byst-privacy-content ul { margin: 0 0 16px; }
.byst-privacy-content ul { padding-left: 1.4em; }
.byst-privacy-content li { margin: 0 0 8px; }
.byst-privacy-content a { color: #91445c; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 699px) {
    .byst-privacy-content { padding: 28px 20px 40px; font-size: 14px; line-height: 1.7; }
    .byst-privacy-content h2 { font-size: 23px; }
    .byst-privacy-content h3 { font-size: 17px; }
}
