body.mobile-wedding-navigation {
    --mobile-catalog-accent: #ef6a2e;
    --mobile-catalog-accent-ink: #d85b24;
    --mobile-catalog-accent-soft: #fff1e9;
    --mobile-catalog-counter-bg: #f6f6f4;
    --mobile-catalog-counter-line: #e8e7e3;
    --mobile-catalog-counter-ink: #817e78;
    --mobile-catalog-favorite: #d66f7f;
    --mobile-catalog-favorite-soft: #fae9ed;
    --mobile-catalog-favorite-idle: #aeb4b7;
    --wedding-catalog-category-height: 92px;
    --wedding-catalog-sticky-category-height: 52px;
    --mobile-wedding-header-surface: color-mix(in srgb, var(--bj-header-surface, #fdfdfc) 97%, transparent);
}

.mobileWeddingHeader {
    box-sizing: border-box;
    position: relative;
    width: 100%;
    height: 56px;
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) 88px;
    align-items: center;
    padding: 0 8px 0 12px;
}

.mobileWeddingHeader__logo {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
}

.mobileWeddingHeader__logo img {
    width: 27px;
    height: 27px;
    display: block;
    object-fit: contain;
}

.mobileWeddingHeader__selector {
    min-width: 0;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    justify-self: center;
    position: absolute;
    top: 6px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    padding: 0 12px;
    border: 0;
    border-radius: 22px;
    color: var(--bj-brand-navy, #1b2631);
    background: transparent;
    font-family: var(--bj-font-family, Pretendard, sans-serif);
    font-size: 18px;
    font-weight: 700;
    letter-spacing: -.025em;
}

.mobileWeddingHeader__selector .mobileHeaderContextTitle {
    margin: 0;
    font: inherit;
    letter-spacing: inherit;
}

.mobileWeddingHeader__selector svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    transition: transform 160ms ease;
}

.mobileWeddingHeader__selector[aria-expanded="true"] svg {
    transform: rotate(180deg);
}

.mobileWeddingHeader__selector:focus-visible,
.mobileWeddingSectionMenu a:focus-visible,
.mobileCatalogExplorer a:focus-visible,
.mobileCatalogExplorer button:focus-visible,
.mobileCatalogExplorer input:focus-visible {
    outline: 2px solid var(--bj-brand-navy, #1b2631);
    outline-offset: 2px;
}

.mobileWeddingHeader__actions {
    grid-column: 3;
    width: 88px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    justify-self: end;
    position: relative;
    z-index: 1;
}

.mobileWeddingSectionOverlay {
    position: fixed;
    inset: 56px 0 0;
    z-index: 149;
    background: rgba(18, 21, 23, .36);
}

.mobileWeddingSectionMenu {
    box-sizing: border-box;
    position: fixed;
    top: 56px;
    right: 0;
    left: 0;
    z-index: 150;
    padding: 16px 20px 20px;
    border-top: 0;
    border-radius: 0 0 18px 18px;
    background: var(--mobile-wedding-header-surface, var(--bj-header-surface, #fdfdfc));
    box-shadow: 0 14px 30px rgba(24, 24, 23, .12);
}

.mobileWeddingSectionMenu nav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 26px;
    row-gap: 0;
}

.mobileWeddingSectionMenu a {
    min-height: 47px;
    display: flex;
    align-items: center;
    position: relative;
    padding: 0 8px;
    border-bottom: 0;
    color: #77736e;
    font-family: var(--bj-font-family, Pretendard, sans-serif);
    font-size: 15px;
    font-weight: 500;
}

.mobileWeddingSectionMenu a.is-current {
    color: var(--bj-brand-navy, #1b2631);
    font-weight: 700;
}

.mobileWeddingSectionMenu a.is-current::after {
    position: absolute;
    bottom: 5px;
    left: 8px;
    width: 18px;
    height: 2px;
    border-radius: 2px;
    background: var(--bj-brand-navy, #1b2631);
    content: '';
}

body.mobile-section-menu-open {
    overflow: hidden;
}

body.mobile-section-menu-open #main_header {
    background: var(--mobile-wedding-header-surface, var(--bj-header-surface, #fdfdfc)) !important;
    box-shadow: none;
}

body.mobile-section-menu-open .fixedBottomMenuWrapper .bottomMenuListBox,
body.mobile-section-menu-open .mobileChannelTalk {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
}

body.mobile-wedding-navigation .weddingCatalogContextNav,
body.mobile-wedding-navigation .weddingCatalogToolbarActions {
    --catalog-nav-selection-accent: var(--bj-brand-navy, #1b2631);
}

body.mobile-wedding-navigation .weddingCatalogResultCount {
    display: inline-flex !important;
    align-items: center;
    gap: 2px;
}

/*
 * /m/ is an explicit mobile surface even when it is opened in a wide browser
 * or the page is zoomed out.  Do not let its horizontal catalog rail depend on
 * the shared PC breakpoint; otherwise every link falls back to a full-width
 * block and the menu collapses vertically into the product grid.
 */
body.mobile-wedding-navigation .weddingCatalogContextNav--mobile {
    --catalog-nav-icon-tile-size: var(--bj-catalog-category-tile, 36px);
    --catalog-nav-icon-glyph-size: var(--bj-catalog-category-icon, 24px);
    display: block;
    width: 100%;
    border-bottom: 1px solid var(--catalog-nav-line, #e2e0dd);
}

body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__railViewport {
    width: 100%;
    height: 75px;
    padding: 0 8px;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    background: #fff;
}

body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__railViewport::-webkit-scrollbar {
    display: none;
}

body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__rail,
body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__styles,
body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__related {
    display: flex;
    width: max-content;
    height: 75px;
    flex: none;
}

body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__rail {
    align-items: center;
    min-width: 100%;
}

body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__styles,
body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__related {
    gap: 0;
}

body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__related {
    position: relative;
    margin-left: 0;
    padding-left: 0;
}

body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__related::before {
    display: none;
}

body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__link,
body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__utilityLink {
    width: auto;
    height: 69px;
    flex: 0 0 auto;
    flex-direction: column;
    gap: 5px;
    padding: 2px 8px 0;
    font-size: var(--bj-catalog-category-label-mobile, 16px);
    line-height: 20px;
}

body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__link.is-current::after {
    bottom: -6px;
}

body.mobile-wedding-navigation .weddingCatalogContextNav--mobile:not(.companionCatalogNav) {
    min-height: var(--wedding-catalog-category-height);
    padding-top: 16px;
}

body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__link,
body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__utilityLink {
    min-width: 72px;
}

body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__collections {
    display: flex;
    width: max-content;
    height: 75px;
    flex: none;
    align-items: center;
    border-left: 1px solid var(--catalog-nav-line, #e2e0dd);
}

body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__collectionLink {
    position: relative;
    display: inline-flex;
    min-width: 72px;
    height: 69px;
    align-items: flex-end;
    justify-content: center;
    gap: 3px;
    box-sizing: border-box;
    padding: 0 10px 10px;
    color: var(--catalog-nav-muted);
    font-size: 14px;
    font-weight: var(--bj-type-control-weight);
    line-height: 20px;
    text-decoration: none;
    white-space: nowrap;
}

body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__collectionLink b {
    color: var(--mobile-catalog-accent-ink);
    font-size: 12px;
    font-weight: var(--bj-type-body-weight);
}

body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__collectionLink.is-current {
    color: var(--catalog-nav-ink);
    font-weight: var(--bj-type-nav-weight);
}

body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__collectionLink.is-current::after {
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 32px;
    height: 2px;
    transform: translateX(-50%);
    background: var(--catalog-nav-selection-accent);
    content: '';
}

body.mobile-wedding-navigation .weddingCatalogContextNav--mobile .weddingCatalogContextNav__collectionLink:focus-visible {
    outline: 2px solid var(--catalog-nav-ink);
    outline-offset: -2px;
}

body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="COMPACT_DOWN"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__collections,
body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="REVEAL_UP"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__collections,
body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="MODAL"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__collections {
    height: 52px;
}

body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="COMPACT_DOWN"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__collectionLink,
body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="REVEAL_UP"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__collectionLink,
body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="MODAL"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__collectionLink {
    height: 52px;
    align-items: center;
    padding-top: 0;
    padding-bottom: 0;
}

body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="COMPACT_DOWN"] .weddingCatalogContextNav--mobile:not(.companionCatalogNav),
body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="REVEAL_UP"] .weddingCatalogContextNav--mobile:not(.companionCatalogNav),
body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="MODAL"] .weddingCatalogContextNav--mobile:not(.companionCatalogNav) {
    min-height: 52px;
    padding-top: 0;
}

body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="COMPACT_DOWN"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__railViewport,
body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="REVEAL_UP"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__railViewport,
body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="MODAL"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__railViewport {
    height: 52px;
    background-color: #fff;
    background-image: linear-gradient(to bottom, transparent calc(100% - 1px), #d4d6d7 calc(100% - 1px));
}

body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="COMPACT_DOWN"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__iconTile,
body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="REVEAL_UP"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__iconTile,
body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="MODAL"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__iconTile {
    display: none;
}

body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="COMPACT_DOWN"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__link,
body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="COMPACT_DOWN"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__utilityLink,
body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="REVEAL_UP"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__link,
body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="REVEAL_UP"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__utilityLink,
body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="MODAL"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__link,
body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="MODAL"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__utilityLink {
    min-width: 64px;
    height: 52px;
    flex-direction: row;
    gap: 0;
    padding: 0 12px;
    font-size: 16px;
    font-weight: 500;
    line-height: 52px;
}

body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="COMPACT_DOWN"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__link.is-current,
body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="REVEAL_UP"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__link.is-current,
body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="MODAL"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__link.is-current {
    font-weight: 600;
}

body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="COMPACT_DOWN"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__link.is-current::after,
body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="REVEAL_UP"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__link.is-current::after,
body.mobile-wedding-navigation[data-wedding-catalog-scroll-state="MODAL"] .weddingCatalogContextNav--mobile .weddingCatalogContextNav__link.is-current::after {
    bottom: 0;
}

/* Toolbar geometry is owned by wedding_catalog_modern.css.php. */

body.mobile-wedding-navigation .weddingCatalogFilterTrigger {
    width: 60px;
    padding-right: 6px;
    padding-left: 6px;
}

body.mobile-wedding-navigation .weddingCatalogFilterTrigger .btn_name {
    font-size: 14px;
    font-weight: 400;
}

body.mobile-wedding-navigation .weddingCatalogToolbarActions--mobile {
    width: 100%;
    margin-left: 0;
    justify-content: flex-start;
    gap: 12px;
}

body.mobile-wedding-navigation .weddingCatalogToolbarActions--mobile .weddingCatalogToolbarActions__link {
    padding: 0;
    font-size: 14px;
    font-weight: 400;
}

body.mobile-wedding-navigation .filterConditionBox > .weddingCatalogToolbarActions .weddingCatalogToolbarActions__link--benefit {
    color: var(--wedding-catalog-ink);
    font-weight: 600;
}

body.mobile-wedding-navigation .weddingCatalogToolbarActions--mobile .weddingCatalogToolbarActions__link + .weddingCatalogToolbarActions__link::before {
    content: none;
}

body.mobile-wedding-navigation .filterConditionBox > .weddingCatalogToolbarActions .weddingCatalogToolbarActions__link b {
    color: var(--mobile-catalog-accent-ink);
    font-weight: 400;
}

body.mobile-wedding-navigation .product-list-sid-pack .weddingCatalogSortTrigger {
    font-size: 14px;
    font-weight: 400;
}

body.mobile-wedding-navigation .filterConditionBox > .zzim_list_view_btn .zzim_list_view_btn_text {
    top: 0;
    width: auto;
    color: #53656e;
    font-size: 14px !important;
    white-space: nowrap;
}

body.mobile-wedding-navigation .filterConditionBox > .zzim_list_view_btn .zzim_list_view_btn_text::before {
    display: none;
    content: none;
}

body.mobile-wedding-navigation .filterConditionBox > .zzim_list_view_btn {
    position: relative;
    width: 44px;
}

body.mobile-wedding-navigation .filterConditionBox > .zzim_list_view_btn > a {
    width: 44px;
}

body.mobile-wedding-navigation .filterConditionBox > .zzim_list_view_btn .zzim_list_view_btn_icon {
    display: none;
}

body.mobile-wedding-navigation .filterConditionBox > .zzim_list_view_btn .zzim_list_view_btn_name_text {
    position: static;
    overflow: visible;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
    clip: auto;
    clip-path: none;
    font-size: 14px !important;
    white-space: nowrap;
}

body.mobile-wedding-navigation .filterConditionBox > .zzim_list_view_btn a.zzim_list_view_btn_on .zzim_list_view_btn_text {
    color: inherit;
}

body.mobile-wedding-navigation .filterConditionBox > .zzim_list_view_btn .zzim_list_view_btn_counter:empty {
    display: none;
}

body.mobile-wedding-navigation .filterConditionBox > .zzim_list_view_btn .zzim_list_view_btn_counter:not(:empty) {
    box-sizing: border-box;
    position: static;
    overflow: visible;
    width: auto;
    min-width: 0;
    height: auto;
    margin: 0 0 0 2px;
    padding: 0;
    clip: auto;
    clip-path: none;
    border: 0;
    border-radius: 0;
    color: #e74932;
    background: transparent;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    font-variant-numeric: tabular-nums;
}

body.mobile-wedding-navigation .bojagiMobileDock .bojagiMobileDock__item[data-dock-key="free-sample"] .bojagiMobileDock__badge {
    border: 1px solid var(--mobile-catalog-counter-line);
    color: var(--mobile-catalog-counter-ink);
    background: var(--mobile-catalog-counter-bg);
    line-height: 18px;
}

body.mobile-wedding-navigation .bojagiMobileDock,
body.mobile-wedding-navigation .bottomMenuListBox.bojagiMobileDock--main,
body.mobile-wedding-navigation .bottomMenuListBox.bojagiMobileDock--main.isSafari,
body.mobile-wedding-navigation .bottomMenuListBox.bojagiMobileDock--main.isChrome,
body.mobile-wedding-navigation .bottomMenuListBox.bojagiMobileDock--main.isNaver,
body.mobile-wedding-navigation .bottomMenuListBox.bojagiMobileDock--main.isKakaoTalk {
    --bojagi-mobile-dock-surface: rgba(255, 255, 255, .8);
    border-radius: 24px;
    background: var(--bojagi-mobile-dock-surface);
    -webkit-backdrop-filter: saturate(1.06) blur(20px);
    backdrop-filter: saturate(1.06) blur(20px);
    box-shadow: 0 4px 16px rgba(35, 31, 27, .07);
}

body.mobile-wedding-navigation #slide_pl .pl_cardCode_block .zzim_btn {
    right: 4px;
    top: 4px;
    bottom: auto;
    width: 40px;
    height: 40px;
    background-image: url("/card/img/product_list_heart_off.png") !important;
    background-size: 24px auto;
    background-position: center;
}

body.mobile-wedding-navigation #slide_pl .pl_cardCode_block .zzim_btn.active {
    background-image: url("/card/img/product_list_heart_on.png") !important;
}

body.mobile-wedding-navigation #slide_pl .pl_cardCode_block .zzim_btn.active_effect {
    animation: none;
}

body.mobile-wedding-navigation #slide_pl .pl_mark_wrapper_area {
    margin-bottom: 8px;
}

body.mobile-wedding-navigation #slide_pl .pl_cardCode_block .pl_cardCode {
    min-height: 20px;
    gap: 5px;
}



body.mobile-wedding-navigation #slide_pl .pl_qty_select {
    width: 50px;
    min-width: 50px;
    max-width: 50px;
    flex-basis: 50px;
    gap: 4px;
    color: var(--bj-catalog-supporting-color) !important;
}

body.mobile-wedding-navigation #slide_pl .pl_qty_select > .bottom_triangle_mark {
    position: relative;
    width: 12px;
    height: 12px;
    margin: 0;
    flex: 0 0 12px;
}

body.mobile-wedding-navigation #slide_pl .pl_qty_select > .bottom_triangle_mark::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 12px;
    height: 12px;
    border: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='m2.5 4.25 3.5 3.5 3.5-3.5' fill='none' stroke='%239a9ea0' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 12px 12px;
    transform: none;
}

body.mobile-wedding-navigation #slide_pl .card_price_txt,
body.mobile-wedding-navigation #slide_pl .wedding_catalog_price_amount {
    color: var(--bj-catalog-supporting-color);
    font-size: var(--bj-catalog-price-size) !important;
    font-weight: var(--bj-catalog-price-weight);
    line-height: var(--bj-catalog-price-line);
}

body.mobile-wedding-navigation #slide_pl .pl_cnt_price > .wedding_catalog_price_value {
    color: var(--bj-catalog-supporting-color);
    font-size: var(--bj-catalog-price-size) !important;
    font-weight: var(--bj-catalog-price-weight);
    line-height: var(--bj-catalog-price-line);
}

body.mobile-wedding-navigation #slide_pl .wedding_catalog_price_unit {
    color: #556168;
    font-size: 12px !important;
    font-weight: 400;
    line-height: 20px;
}

body.mobile-wedding-navigation #slide_pl .sample_pick_icon {
    display: inline-flex;
    width: auto;
    height: 40px;
    min-height: 40px;
    align-items: center;
    justify-content: flex-start;
    gap: 5px;
    padding: 0 0 8px;
    border: 0;
    border-radius: 0;
    color: var(--wedding-catalog-muted);
    background: transparent;
    font-size: var(--bj-catalog-cta-size, 14px);
    font-weight: var(--bj-catalog-cta-weight, 500);
    line-height: 20px;
}

body.mobile-wedding-navigation #slide_pl .sample_pick_icon::after {
    display: none;
}

body.mobile-wedding-navigation #slide_pl .sample_pick_icon[data-sample-state="loading"]::after {
    display: block;
    border: 1.5px solid #d8dcde;
    border-top-color: #66737a;
    border-radius: 50%;
    background: none;
    animation: mobileWeddingSampleSpin .7s linear infinite;
}

@keyframes mobileWeddingSampleSpin {
    to { transform: rotate(360deg); }
}

body.mobile-wedding-navigation #slide_pl .sample_pick_icon.sample_btn_on {
    padding: 0 0 8px;
    border: 0;
    border-radius: 0;
    color: var(--bj-catalog-selected-action-color);
    background: transparent;
    font-weight: var(--bj-catalog-cta-weight, 500);
}



body.mobile-wedding-navigation #slide_pl > .swiper-wrapper > .swiper-slide {
    padding-bottom: calc(84px + env(safe-area-inset-bottom, 0px));
}

.weddingCatalogContextNav__countBadge {
    box-sizing: border-box;
    position: absolute;
    top: -4px;
    right: -13px;
    min-width: 25px;
    height: 17px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 5px;
    border: 1px solid var(--mobile-catalog-counter-line);
    border-radius: 9px;
    color: var(--mobile-catalog-counter-ink);
    background: var(--mobile-catalog-counter-bg);
    font-size: 10px;
    font-style: normal;
    font-weight: 500;
    line-height: 15px;
    font-variant-numeric: tabular-nums;
}

/* The result toolbar states the total; repeating it above ALL adds noise. */
body.mobile-wedding-navigation .weddingCatalogContextNav__countBadge {
    display: none;
}

body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuSlideUp {
    max-height: calc(100svh - 58px);
    border-radius: 18px 18px 0 0;
    box-shadow: 0 -8px 28px rgba(24, 24, 23, .16);
}

body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuSlideUp.is-catalog-searching {
    max-height: min(96dvh, 820px) !important;
}

body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"].active .bottomMenuListBox {
    opacity: 0;
    pointer-events: none;
    transform: translateY(100%);
}

body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"].active .mobileChannelTalk {
    opacity: 0;
    pointer-events: none;
}

body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuTitleBox.drag-handle {
    position: relative;
    height: 24px;
}

body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuTitleBox .iClose {
    position: absolute;
    z-index: 2;
    top: -2px;
    right: 8px;
    width: 36px;
    height: 28px;
    display: block;
    padding: 0;
    border: 0;
    background: transparent;
    transform: none !important;
}

body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuTitleBox .iClose::before,
body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuTitleBox .iClose::after {
    position: absolute;
    top: 13px;
    left: 11px;
    width: 14px;
    height: 1.5px;
    border-radius: 1px;
    background: #6f6b66;
    content: '';
}

body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuTitleBox .iClose::before {
    transform: rotate(45deg);
}

body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuTitleBox .iClose::after {
    transform: rotate(-45deg);
}

body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuContentBox,
body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuContentBox > section[data-section="category"],
body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] #accordianCategory {
    height: 100%;
}

body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuContentBox {
    height: calc(100% - 24px);
}

body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] #accordianCategory {
    display: block;
    overflow: hidden;
    background: #fff;
}

.mobileCatalogExplorer {
    height: 100%;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    color: var(--bj-brand-navy, #1b2631);
    background: #fff;
    font-family: var(--bj-font-family, Pretendard, sans-serif);
    font-size: 0 !important;
}

.mobileCatalogExplorer__top,
.mobileCatalogExplorer__body,
.mobileCatalogExplorer__right,
.mobileCatalogExplorer__content,
.mobileCatalogExplorer__panel {
    color: #333 !important;
    font-size: 0 !important;
}

html.mobile-catalog-sheet-open {
    overflow: hidden;
}

[data-mobile-catalog-shell].active {
    z-index: 11000;
}

.mobileCatalogExplorer .mobileSrOnly {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
}

.mobileCatalogExplorer__top {
    padding: 4px 14px 10px;
    border-bottom: 1px solid var(--bj-line, #ece9e6);
}

.mobileCatalogExplorer__search {
    position: relative;
}

.mobileCatalogExplorer__search input {
    box-sizing: border-box;
    width: 100%;
    display: block !important;
    height: 48px;
    padding: 0 88px 0 16px;
    border: 1px solid #e2e0dc;
    border-radius: 10px;
    color: var(--bj-brand-navy, #1b2631);
    background: #f7f6f3;
    font-family: inherit;
    font-size: 16px;
}

.mobileCatalogExplorer__search input::placeholder {
    color: #8b8883;
}

.mobileCatalogExplorer__search input::-webkit-search-cancel-button {
    -webkit-appearance: none;
    appearance: none;
}

.mobileCatalogExplorer__search button[type="submit"] {
    position: absolute;
    top: 1px;
    right: 1px;
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 0;
    border-radius: 9px;
    color: var(--bj-brand-navy, #1b2631);
    background: transparent;
}

.mobileCatalogExplorer__searchClear {
    position: absolute;
    top: 7px;
    right: 45px;
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 0;
    border-radius: 50%;
    color: #8a8782;
    background: transparent;
}

.mobileCatalogExplorer__searchClear[hidden] {
    display: none;
}

.mobileCatalogExplorer__searchClear svg {
    width: 15px;
    height: 15px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.5;
    stroke-linecap: round;
}

.mobileCatalogExplorer__searchIcon {
    width: 21px;
    height: 21px;
}

.mobileCatalogExplorer__quickLinks {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    margin-top: 0;
    border-top: 1px solid #ebe8e2;
}

.mobileCatalogExplorer__quickLinks a {
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: 0;
    border-radius: 0;
    color: #56534f;
    background: #fff;
    font-size: 13px;
    font-weight: 500;
    line-height: 20px;
}

.mobileCatalogExplorer__quickLinks a + a {
    border-left: 1px solid #ebe8e2;
}

.mobileCatalogExplorer__quickIcon {
    width: 17px;
    height: 17px;
}

.mobileCatalogExplorer__body {
    min-height: 0;
    display: grid;
    grid-template-columns: 104px minmax(0, 1fr);
}

.mobileCatalogExplorer.is-searching .mobileCatalogExplorer__quickLinks,
.mobileCatalogExplorer.is-searching .mobileCatalogExplorer__eventBanner,
.mobileCatalogExplorer.is-searching .mobileCatalogExplorer__body,
.mobileCatalogExplorer.is-searching .mobileCatalogExplorer__accordion {
    display: none;
}

.mobileCatalogExplorer__searchResults {
    min-height: 0;
    overflow-y: auto;
    padding: 8px 14px 96px;
    background: var(--bj-clean, #fff);
    scrollbar-width: none;
}

.mobileCatalogExplorer__searchResults::-webkit-scrollbar {
    display: none;
}

.mobileCatalogExplorer__searchResults[hidden] {
    display: none;
}

.mobileCatalogSearchSummary {
    min-height: 32px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--bj-brand-navy, #1b2631);
    font-size: 14px;
    line-height: 20px;
}

.mobileCatalogSearchSummary strong {
    font-weight: 600;
}

.mobileCatalogSearchSummary span,
.mobileCatalogSearchGroup h3 span {
    color: var(--bj-tertiary, #918e87);
    font-weight: 500;
}

.mobileCatalogSearchGroup {
    padding: 5px 0 10px;
}

.mobileCatalogSearchGroup + .mobileCatalogSearchGroup {
    border-top: 1px solid var(--bj-line, #ddd9d2);
}

.mobileCatalogSearchGroup h3 {
    margin: 0 0 6px;
    color: var(--bj-muted, #66635e);
    font-size: 13px;
    font-weight: 600;
    line-height: 20px;
}

.mobileCatalogSearchCategory {
    min-height: 54px;
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr) 20px;
    align-items: center;
    gap: 10px;
    padding: 6px 10px;
    border-radius: 8px;
    color: var(--bj-brand-navy, #1b2631);
    background: var(--bj-stone, #f1efe9);
}

.mobileCatalogSearchCategory__icon {
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background: var(--bj-clean, #fff);
    font-size: 18px;
}

.mobileCatalogSearchCategory strong,
.mobileCatalogSearchCategory small {
    display: block;
}

.mobileCatalogSearchCategory strong {
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
}

.mobileCatalogSearchCategory small {
    margin-top: 2px;
    color: var(--bj-muted, #66635e);
    font-size: 12px;
    line-height: 18px;
}

.mobileCatalogSearchCategory > b {
    color: var(--bj-tertiary, #918e87);
    font-size: 17px;
    font-weight: 400;
}

.mobileCatalogSearchGroup--product .mobileCatalogSearchGroup__items {
    border-top: 1px solid #ece9e4;
}

.mobileCatalogSearchProduct {
    box-sizing: border-box;
    min-width: 0;
    min-height: 92px;
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr) 18px;
    grid-template-rows: minmax(22px, auto) minmax(18px, auto);
    align-content: center;
    align-items: end;
    column-gap: 12px;
    padding: 8px 0;
    border-bottom: 1px solid #ece9e4;
    color: var(--bj-brand-navy, #1b2631);
}

.mobileCatalogSearchProduct__stage {
    grid-row: 1 / 3;
    width: 76px;
    height: 76px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border-radius: 8px;
    background: var(--bj-product-stage, #f7f5f1);
}

.mobileCatalogSearchProduct__stage img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
}

.mobileCatalogSearchProduct__stage.is-image-missing::after {
    color: var(--bj-tertiary, #918e87);
    font-size: 12px;
    content: '이미지 준비 중';
}

.mobileCatalogSearchProduct > strong {
    overflow: hidden;
    align-self: end;
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mobileCatalogSearchProduct > small {
    overflow: hidden;
    align-self: start;
    margin-top: 3px;
    color: var(--bj-tertiary, #918e87);
    font-size: 11px;
    line-height: 16px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mobileCatalogSearchProduct::after {
    grid-column: 3;
    grid-row: 1 / 3;
    align-self: center;
    color: var(--bj-tertiary, #918e87);
    font-size: 17px;
    content: '→';
}

.mobileCatalogSearchGroup--support .mobileCatalogSearchGroup__items {
    border-top: 1px solid #ece9e4;
}

.mobileCatalogSearchSupport {
    min-height: 52px;
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr) 18px;
    align-items: center;
    gap: 8px;
    border-bottom: 1px solid #ece9e4;
    color: var(--bj-brand-navy, #1b2631);
}

.mobileCatalogSearchSupport > span {
    color: var(--bj-tertiary, #918e87);
    font-size: 12px;
}

.mobileCatalogSearchSupport > strong {
    overflow: hidden;
    font-size: 13px;
    font-weight: 500;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mobileCatalogSearchSupport > b {
    color: var(--bj-tertiary, #918e87);
    font-weight: 400;
}

.mobileCatalogSearchState {
    min-height: 180px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: var(--bj-tertiary, #918e87);
    font-size: 13px;
    line-height: 20px;
    text-align: center;
}

.mobileCatalogSearchState strong {
    color: var(--bj-brand-navy, #1b2631);
    font-size: 15px;
    font-weight: 600;
}

.mobileCatalogSearchState span {
    color: var(--bj-tertiary, #918e87);
}

.mobileCatalogSearchProduct.is-active,
.mobileCatalogSearchCategory.is-active,
.mobileCatalogSearchSupport.is-active {
    outline: 2px solid var(--mobile-catalog-accent);
    outline-offset: 2px;
}

.mobileCatalogExplorer__groups {
    min-height: 0;
    overflow-y: auto;
    padding: 10px 0 86px;
    border-right: 1px solid #eceae6;
    background: #faf9f7;
    scrollbar-width: none;
}

.mobileCatalogExplorer__groups::-webkit-scrollbar,
.mobileCatalogExplorer__content::-webkit-scrollbar {
    display: none;
}

.mobileCatalogExplorer__groups button,
.mobileCatalogExplorer__groups .mobileCatalogExplorer__groupLink {
    box-sizing: border-box;
    position: relative;
    width: 100%;
    min-height: 52px;
    padding: 0 10px 0 14px;
    border: 0;
    color: #77736e;
    background: transparent;
    text-align: left;
    font-family: inherit;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
}

.mobileCatalogExplorer__groups button[aria-selected="true"] {
    color: var(--bj-brand-navy, #1b2631);
    background: #fff5ef;
    font-weight: 600;
}

.mobileCatalogExplorer__groups button[aria-selected="true"]::before {
    position: absolute;
    top: 10px;
    bottom: 10px;
    left: 0;
    width: 2px;
    border-radius: 0 2px 2px 0;
    background: var(--mobile-catalog-accent);
    content: '';
}

.mobileCatalogExplorer__content {
    min-width: 0;
    min-height: 0;
    overflow-y: auto;
    padding: 0 12px 92px;
    scrollbar-width: none;
}

.mobileCatalogExplorer__panel[hidden] {
    display: none;
}

.mobileCatalogExplorer__heading {
    min-height: 56px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.mobileCatalogExplorer__heading strong {
    font-size: 16px;
    font-weight: 600;
    line-height: 24px;
    letter-spacing: -.025em;
}

.mobileCatalogExplorer__heading > a {
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: #6e6a65;
    font-size: 19px;
}

.mobileCatalogExplorer__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px 8px;
}

.mobileCatalogExplorer__subheading {
    grid-column: 1 / -1;
    margin: 2px 0 -2px;
    padding-top: 14px;
    border-top: 1px solid #ece9e4;
    color: #77736e;
    font-size: 12px;
    font-weight: 600;
    line-height: 18px;
    text-align: left;
}

.mobileCatalogExplorer__grid > a {
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 7px;
    color: #514e49;
    text-align: center;
}

.mobileCatalogExplorer__tile {
    box-sizing: border-box;
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    display: grid;
    place-items: center;
    border: 1px solid transparent;
    border-radius: var(--bj-catalog-category-radius, 8px);
    background: #f6f4f1;
}

.mobileCatalogExplorer__tile img {
    width: 32px;
    height: 32px;
    display: block;
    object-fit: contain;
}

.mobileCatalogExplorer__tile b {
    color: var(--bj-brand-navy, #1b2631);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: -.02em;
}

.mobileCatalogExplorer__grid > a.is-current .mobileCatalogExplorer__tile {
    border-color: #e5e1db;
    background: #fff;
}

.mobileCatalogExplorer__label {
    min-height: 32px;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    font-size: 13px;
    font-weight: 500;
    line-height: 18px;
    word-break: keep-all;
}

.mobileCatalogExplorer__groups button > span,
.mobileCatalogExplorer__groups .mobileCatalogExplorer__groupLink > span {
    color: inherit !important;
    font: inherit !important;
}

/* 바로 가는 칸(명함·모바일·연하장)은 펼침이 없는 링크 — 모양은 같은 줄의 단추와 같게, 밑줄 없이. */
.mobileCatalogExplorer__groups .mobileCatalogExplorer__groupLink {
    text-decoration: none;
    -webkit-tap-highlight-color: transparent;
}

.mobileCatalogExplorer__grid > a.is-current .mobileCatalogExplorer__label {
    color: var(--bj-brand-navy, #1b2631);
    font-weight: 600;
}

.mobileCatalogExplorer__count {
    box-sizing: border-box;
    position: absolute;
    top: 6px;
    right: 6px;
    min-width: 25px;
    height: 17px;
    padding: 0 5px;
    border: 1px solid #dfdedb;
    border-radius: 9px;
    color: #77736e;
    background: #f3f3f1;
    font-size: 10px;
    font-style: normal;
    font-weight: 500;
    line-height: 15px;
    font-variant-numeric: tabular-nums;
}

.mobileCatalogExplorer__accordion {
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: #fff;
}

.mobileCatalogExplorer__accordionItem {
    flex: 0 0 40px;
    min-height: 40px;
    display: grid;
    grid-template-rows: 40px minmax(0, 1fr);
    overflow: hidden;
    border-bottom: 1px solid #ece9e4;
    transition: flex-grow 200ms cubic-bezier(.22, .61, .36, 1);
}

.mobileCatalogExplorer__accordionItem.is-open {
    flex: 1 1 auto;
    min-height: 0;
}

.mobileCatalogExplorer__accordionTrigger {
    box-sizing: border-box;
    position: relative;
    width: 100%;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0 16px;
    border: 0;
    color: #625f5a;
    background: #fff;
    font-family: inherit;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    text-align: left;
}

.mobileCatalogExplorer__accordionTrigger::before {
    position: absolute;
    top: 10px;
    bottom: 10px;
    left: 0;
    width: 2px;
    border-radius: 0 2px 2px 0;
    background: transparent;
    content: '';
}

.mobileCatalogExplorer__accordionTrigger svg {
    width: 18px;
    height: 18px;
    flex: 0 0 auto;
    fill: none;
    stroke: #8c8882;
    stroke-width: 1.5;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: transform 180ms ease;
}

.mobileCatalogExplorer__accordionItem.is-open > .mobileCatalogExplorer__accordionTrigger {
    color: var(--bj-brand-navy, #1b2631);
    background: #fff8f4;
    font-size: 15px;
    font-weight: 600;
}

.mobileCatalogExplorer__accordionItem.is-open > .mobileCatalogExplorer__accordionTrigger::before {
    background: var(--mobile-catalog-accent);
}

.mobileCatalogExplorer__accordionItem.is-open > .mobileCatalogExplorer__accordionTrigger svg {
    transform: rotate(180deg);
}

.mobileCatalogExplorer__panel {
    min-height: 0;
    overflow: hidden;
    padding: 0 !important;
    background: #faf9f7;
    visibility: hidden;
}

.mobileCatalogExplorer__accordionItem.is-open > .mobileCatalogExplorer__panel {
    visibility: visible;
}

.mobileCatalogExplorer__panelInner {
    box-sizing: border-box;
    height: 100%;
    overflow-y: auto;
    padding: 0 14px 12px;
    overscroll-behavior: contain;
    scrollbar-width: none;
}

.mobileCatalogExplorer__panelInner::-webkit-scrollbar {
    display: none;
}

.mobileCatalogExplorer__heading {
    min-height: 32px;
    justify-content: flex-end;
}

.mobileCatalogExplorer__heading strong {
    font-size: 15px;
    line-height: 22px;
}

.mobileCatalogExplorer__heading > a {
    width: auto;
    height: 32px;
    display: inline-flex;
    grid: none;
    gap: 4px;
    padding: 0 2px 0 10px;
    border-radius: 0;
    color: #77736e;
    font-size: 12px;
    font-weight: 500;
    line-height: 32px;
}

.mobileCatalogExplorer__subheading {
    margin: 4px 0;
    padding-top: 6px;
    font-size: 12px;
    line-height: 18px;
}

.mobileCatalogExplorer__grid {
    gap: 4px;
}

.mobileCatalogExplorer__grid > .mobileCatalogExplorer__child {
    box-sizing: border-box;
    min-width: 0;
    min-height: 58px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 5px 2px;
    border-radius: 8px;
    color: #514e49;
    text-align: center;
}

.mobileCatalogExplorer__child.is-current {
    color: var(--bj-brand-navy, #1b2631);
    background: #fff;
    box-shadow: inset 0 0 0 1px #e5e1db;
}

.mobileCatalogExplorer__child .mobileCatalogExplorer__tile {
    width: 30px;
    height: 28px;
    aspect-ratio: auto;
    border: 0;
    background: transparent;
}

.mobileCatalogExplorer__child .mobileCatalogExplorer__tile img {
    width: 26px;
    height: 26px;
}

.mobileCatalogExplorer__child .mobileCatalogExplorer__label {
    min-height: 18px;
    align-items: center;
    font-size: 12px;
    line-height: 18px;
}

.mobileCatalogExplorer__child .mobileCatalogExplorer__count {
    top: -4px;
    right: -14px;
}

.mobileCatalogExplorer__grid--collection {
    gap: 6px;
}

.mobileCatalogExplorer__grid > .mobileCatalogExplorer__child--collection {
    min-height: 36px;
    flex-direction: row;
    padding: 0 6px;
    border: 1px solid #e4e0da;
    border-radius: 18px;
    background: #fff;
}

.mobileCatalogExplorer__child--collection .mobileCatalogExplorer__tile {
    display: none;
}

.mobileCatalogExplorer__child--collection .mobileCatalogExplorer__label {
    font-size: 12px;
    font-weight: 600;
}

.mobileCatalogExplorer__grid--related {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0 8px;
}

.mobileCatalogExplorer__grid > .mobileCatalogExplorer__child--related {
    min-height: 36px;
    flex-direction: row;
    justify-content: flex-start;
    gap: 5px;
    padding: 0;
    border-bottom: 1px solid #ece9e4;
    border-radius: 0;
    text-align: left;
}

.mobileCatalogExplorer__child--related .mobileCatalogExplorer__tile {
    width: 22px;
    height: 22px;
    flex: 0 0 auto;
}

.mobileCatalogExplorer__child--related .mobileCatalogExplorer__tile img {
    width: 20px;
    height: 20px;
}

.mobileCatalogExplorer__child--related .mobileCatalogExplorer__label {
    justify-content: flex-start;
    font-size: 12.5px;
    line-height: 18px;
    text-align: left;
}

@media (max-height: 700px) {
    .mobileCatalogExplorer__accordionItem {
        flex-basis: 38px;
        min-height: 38px;
        grid-template-rows: 38px minmax(0, 1fr);
    }

    .mobileCatalogExplorer__accordionTrigger {
        height: 38px;
    }

    .mobileCatalogExplorer__quickLinks a {
        min-height: 38px;
    }
}

@media (max-width: 359px) {
    .mobileCatalogExplorer__body {
        grid-template-columns: 94px minmax(0, 1fr);
    }

    .mobileCatalogExplorer__content {
        padding-right: 10px;
        padding-left: 10px;
    }

    .mobileCatalogExplorer__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Search and close are one floating control row above the category surface. */
.mobileCatalogExplorerSheet {
    box-sizing: border-box;
    position: fixed !important;
    right: auto !important;
    bottom: -100dvh;
    left: 5px !important;
    width: calc(100vw - 10px) !important;
    height: min(96dvh, 820px) !important;
    max-height: min(96dvh, 820px) !important;
    font-size: 0 !important;
}

.mobileCatalogExplorerSheet.slideUp {
    bottom: 0;
}

body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuSlideUp {
    overflow: visible;
    border-radius: 0;
    background: transparent !important;
    box-shadow: none;
}

body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuTitleBox.drag-handle {
    position: absolute;
    z-index: 5;
    top: 8px;
    right: 10px;
    width: 46px;
    height: 48px;
    pointer-events: none;
}

body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuTitleBox .iClose {
    top: 0;
    right: 0;
    width: 46px;
    height: 48px;
    border: 1px solid #e1ddd6;
    border-radius: 24px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 5px 18px rgba(36, 31, 26, .1);
    pointer-events: auto;
}

body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuTitleBox .iClose::before,
body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuTitleBox .iClose::after {
    top: 23px;
    left: 14px;
    width: 18px;
    height: 1.5px;
    background: #4f4c48;
}

body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuContentBox {
    height: 100%;
}

body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] #accordianCategory {
    background: transparent;
}

.mobileCatalogExplorer {
    background: transparent;
}

.mobileCatalogExplorer,
.mobileCatalogExplorer * {
    font-family: var(--bj-font-family, Pretendard, "Noto Sans KR", sans-serif) !important;
}

.mobileCatalogExplorer__top {
    padding: 8px 66px 12px 14px;
    border-bottom: 0;
    background: transparent;
}

.mobileCatalogExplorer__search input {
    height: 48px;
    border-color: #e1ddd6;
    border-radius: 24px;
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 5px 18px rgba(36, 31, 26, .1);
}

.mobileCatalogExplorer__search button[type="submit"] {
    border-radius: 23px;
}

.mobileCatalogExplorer__body,
.mobileCatalogExplorer__searchResults {
    border-radius: 18px 18px 0 0;
    box-shadow: 0 -8px 28px rgba(24, 24, 23, .14);
}

.mobileCatalogExplorer__searchResults {
    margin: 0 5px;
    background: #fff;
}

@media (max-height: 700px) {
    body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuTitleBox.drag-handle {
        top: 2px;
        height: 44px;
    }

    body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuTitleBox .iClose {
        height: 44px;
        border-radius: 22px;
    }

    body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuTitleBox .iClose::before,
    body.mobile-wedding-navigation .fixedBottomMenuWrapper[data-navigation-mode="catalog-explorer"] .bottomMenuTitleBox .iClose::after {
        top: 21px;
    }

    .mobileCatalogExplorer__top {
        padding: 6px 66px 10px 14px;
    }

    .mobileCatalogExplorer__search input {
        height: 44px;
        border-radius: 22px;
    }
}

.mobileCatalogExplorer__subheading--reviews {
    margin-top: 9px;
}

.mobileCatalogExplorer__reviewLinks {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
}

.mobileCatalogExplorer__reviewLinks a {
    box-sizing: border-box;
    min-width: 0;
    min-height: 40px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 12px;
    align-items: center;
    gap: 5px;
    padding: 0 8px;
    border: 1px solid #e7e3dc;
    border-radius: 10px;
    color: #514e49;
    background: #fff;
    font-size: 13.5px;
    font-weight: 500;
    line-height: 19px;
}

.mobileCatalogExplorer__reviewLinks a b {
    color: #96918a;
    font-size: 13px;
    font-weight: 400;
}

.mobileCatalogExplorer__eventBanner {
    box-sizing: border-box;
    min-height: 56px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 0 12px 10px 0;
    padding: 8px 11px 8px 14px;
    border: 1px solid #e3dfd8;
    border-radius: 14px;
    color: var(--bj-brand-navy, #1b2631);
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 5px 16px rgba(41, 36, 31, .06);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.mobileCatalogExplorer__eventBanner > span {
    min-width: 0;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.mobileCatalogExplorer__eventBanner small {
    color: #77736e;
    font-size: 11.5px;
    font-weight: 500;
    line-height: 16px;
}

.mobileCatalogExplorer__eventBanner small b {
    color: var(--mobile-catalog-accent-ink, #d85b24);
    font-weight: 600;
}

.mobileCatalogExplorer__eventBanner strong {
    overflow: hidden;
    color: var(--bj-brand-navy, #1b2631);
    font-size: 14.5px;
    font-weight: 600;
    line-height: 21px;
    letter-spacing: -.015em;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mobileCatalogExplorer__eventBanner em {
    width: 30px;
    height: 30px;
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    border: 1px solid #e1ddd7;
    border-radius: 50%;
    color: var(--bj-brand-navy, #1b2631);
    background: #f5f3ef;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
}

@media (max-height: 700px) {
    .mobileCatalogExplorer__eventBanner {
        min-height: 50px;
        margin-bottom: 7px;
        padding-top: 6px;
        padding-bottom: 6px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .mobileWeddingHeader__selector svg {
        transition: none;
    }
}

/* Fixed first-tier rail with one reusable speech-bubble submenu surface. */
.mobileCatalogExplorer__body {
    --mobile-catalog-explorer-surface: #f6f5f3;
    box-sizing: border-box;
    position: relative;
    width: 100%;
    min-height: 0;
    display: grid;
    grid-template-columns: 94px minmax(0, 1fr);
    overflow: hidden;
    padding: 0;
    background: var(--mobile-catalog-explorer-surface);
}

.mobileCatalogExplorer__support {
    box-sizing: border-box;
    width: 100%;
    min-height: 48px;
    display: flex;
    align-items: center;
    gap: 7px;
    margin-top: 14px;
    padding: 10px 10px 0;
    border-top: 1px solid #ece9e4;
    color: #66625d;
    font-size: 13.5px;
    font-weight: 500;
    line-height: 20px;
    white-space: nowrap;
}

.mobileCatalogExplorer__support em {
    margin-left: auto;
    color: #aaa59e;
    font-size: 14px;
    font-style: normal;
}

.mobileCatalogExplorer__supportIconBox {
    width: 22px;
    height: 22px;
    display: inline-flex;
    flex: 0 0 22px;
    align-items: center;
    justify-content: center;
}

.mobileCatalogExplorer__supportIcon {
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.5;
    transform: translateX(1px);
}

.mobileCatalogExplorer__groups {
    min-height: 0;
    display: grid;
    grid-auto-rows: 48px;
    align-content: start;
    position: relative;
    z-index: 2;
    overflow: visible;
    padding: 8px 0;
    border: 0;
    background: var(--mobile-catalog-explorer-surface);
}

.mobileCatalogExplorer__right {
    box-sizing: border-box;
    position: relative;
    z-index: 1;
    width: 100%;
    min-width: 0;
    min-height: 0;
    display: grid;
    grid-template-rows: auto auto;
    align-content: start;
    overflow: hidden;
    background: var(--mobile-catalog-explorer-surface);
}

.mobileCatalogExplorer__groups button,
.mobileCatalogExplorer__groups .mobileCatalogExplorer__groupLink {
    box-sizing: border-box;
    position: relative;
    width: 100%;
    min-height: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 4px 8px;
    border: 0;
    border-radius: 0;
    color: #7b7771;
    background: transparent;
    font-family: inherit;
    font-size: 15px !important;
    font-weight: 500;
    line-height: 21px;
    text-align: center;
    word-break: keep-all;
}

.mobileCatalogExplorer__groups button[aria-selected="true"] {
    color: var(--bj-brand-navy, #1b2631);
    background: transparent;
    font-weight: 600;
}

.mobileCatalogExplorer__groups button[aria-selected="true"]::before {
    top: 50%;
    bottom: auto;
    right: -3px;
    left: auto;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--bj-brand-navy, #1b2631);
    transform: translateY(-50%);
}

.mobileCatalogExplorer__content {
    box-sizing: border-box;
    position: relative;
    min-width: 0;
    min-height: 0;
    overflow: visible;
    margin: 10px 12px 8px 0;
    padding: 0;
    border: 1px solid #e4dfd8;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(46, 39, 31, .07);
    align-self: start;
    min-height: var(--mobile-catalog-rail-height, 448px);
}

.mobileCatalogExplorer__content::before {
    content: none;
}

.mobileCatalogExplorer__panel {
    box-sizing: border-box;
    height: auto;
    min-height: 0;
    overflow: hidden;
    padding: 0 !important;
    border-radius: inherit;
    background: #fff;
    visibility: visible;
}

.mobileCatalogExplorer__panel[hidden] {
    display: none;
}

.mobileCatalogExplorer__panelInner {
    box-sizing: border-box;
    height: auto;
    overflow: visible;
    padding: 16px 14px 18px;
    overscroll-behavior: contain;
    scrollbar-width: none;
}

.mobileCatalogExplorer__summary {
    min-height: 18px;
    margin: 0 0 12px;
    color: #7b7771;
    font-size: 13px;
    font-weight: 500;
    line-height: 19px;
    letter-spacing: -.015em;
}

.mobileCatalogExplorer__summary strong {
    margin-right: 2px;
    color: var(--bj-brand-navy, #1b2631);
    font-weight: 600;
}

.mobileCatalogExplorer__heading {
    min-height: 50px;
    justify-content: space-between;
    border-bottom: 1px solid #efede9;
}

.mobileCatalogExplorer__heading strong {
    color: var(--bj-brand-navy, #1b2631);
    font-size: 15px;
    font-weight: 600;
    line-height: 22px;
    letter-spacing: -.02em;
}

.mobileCatalogExplorer__heading > a {
    width: auto;
    height: 34px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 0 2px 0 10px;
    border-radius: 0;
    color: #7b7771;
    font-size: 12px;
    font-weight: 500;
    line-height: 34px;
}

.mobileCatalogExplorer__subheading {
    margin: 22px 0 6px;
    padding-top: 0;
    border-top: 0;
    color: #6b6762;
    font-size: 13px;
    line-height: 19px;
}

.mobileCatalogExplorer__grid {
    gap: 5px;
}

.mobileCatalogExplorer__grid > .mobileCatalogExplorer__child {
    min-height: 62px;
    gap: 5px;
    padding: 6px 2px;
    border-radius: 10px;
}

.mobileCatalogExplorer__child .mobileCatalogExplorer__tile {
    width: 32px;
    height: 30px;
}

.mobileCatalogExplorer__child .mobileCatalogExplorer__tile img {
    width: 27px;
    height: 27px;
}

[data-mobile-catalog-panel="wedding"] [data-mobile-catalog-child="modern"] .mobileCatalogExplorer__tile img {
    width: 25px;
    height: 25px;
}

.mobileCatalogExplorer__child .mobileCatalogExplorer__label {
    position: relative;
    min-height: 20px;
    font-size: 14px;
    line-height: 20px;
}

.mobileCatalogExplorer__child.is-current {
    background: transparent;
    box-shadow: none;
}

.mobileCatalogExplorer__child.is-current .mobileCatalogExplorer__label::after {
    position: absolute;
    right: 50%;
    bottom: -4px;
    width: 14px;
    height: 2px;
    border-radius: 2px;
    background: var(--bj-brand-navy, #1b2631);
    content: '';
    transform: translateX(50%);
}

.mobileCatalogExplorer__grid > .mobileCatalogExplorer__child--collection,
.mobileCatalogExplorer__grid > .mobileCatalogExplorer__child--related {
    min-height: 38px;
}

.mobileCatalogExplorer__grid > .mobileCatalogExplorer__child--collection {
    padding-right: 4px;
    padding-left: 4px;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.mobileCatalogExplorer__grid > .mobileCatalogExplorer__child--collection + .mobileCatalogExplorer__child--collection {
    border-left: 0;
}

.mobileCatalogExplorer__grid--related {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 0;
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid #ece9e4;
}

.mobileCatalogExplorer__grid > .mobileCatalogExplorer__child--related {
    justify-content: center;
    gap: 0;
    padding: 0;
    border-bottom: 0;
    border-radius: 0;
    text-align: center;
}

[data-mobile-catalog-panel="wedding"] .mobileCatalogExplorer__grid--related > [data-mobile-catalog-child="greeting"] {
    grid-column: 2;
}

.mobileCatalogExplorer__child--related .mobileCatalogExplorer__label {
    justify-content: center;
    text-align: center;
}

.mobileCatalogExplorer__child--related .mobileCatalogExplorer__tile {
    display: none;
}

.mobileCatalogExplorer__childArrow {
    flex: 0 0 auto;
    color: #aaa59e;
    font-size: 12px;
    font-weight: 400;
}

/* 후기 링크 둘은 위 «구매 혜택·웨딩 식권…»과 같은 세 칸 축의 첫째·둘째 칸에 선다(눌리지 않는 제목 칸을 없앴다). */
.mobileCatalogExplorer__reviewLinks {
    grid-column: 1 / -1;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
}

.mobileCatalogExplorer__reviewLinks a {
    min-height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 0;
    border-bottom: 0;
    border-radius: 0;
    background: transparent;
}

.mobileCatalogExplorer__reviews {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: center;
    gap: 0;
    margin-top: 20px;
    padding-top: 14px;
    border-top: 1px solid #ece9e4;
}

.mobileCatalogExplorer__subheading--reviews {
    grid-column: auto;
    margin: 0;
    text-align: center;
    white-space: nowrap;
}

.mobileCatalogExplorer__subheading.mobileCatalogExplorer__subheading--related {
    margin: 0;
    padding: 0;
    border: 0;
}

@media (max-height: 700px) {
    .mobileCatalogExplorer__top {
        padding-top: 2px;
        padding-bottom: 8px;
    }

    .mobileCatalogExplorer__search input {
        height: 44px;
    }

    .mobileCatalogExplorer__search button[type="submit"] {
        width: 42px;
        height: 42px;
    }

    .mobileCatalogExplorer__searchClear {
        top: 5px;
    }

    .mobileCatalogExplorer__groups {
        grid-auto-rows: 48px;
        padding-top: 5px;
        padding-bottom: 5px;
    }

    .mobileCatalogExplorer__groups button,
    .mobileCatalogExplorer__groups .mobileCatalogExplorer__groupLink {
        padding-top: 2px;
        padding-bottom: 2px;
        font-size: 15px !important;
        line-height: 22px;
    }

    .mobileCatalogExplorer__content {
        margin-top: 7px;
        margin-bottom: 7px;
    }
}

@media (max-width: 359px) {
    .mobileCatalogExplorer__body {
        grid-template-columns: 86px minmax(0, 1fr);
    }

    .mobileCatalogExplorer__content {
        margin-right: 9px;
        margin-left: 7px;
    }
}

@media (max-height: 700px) {
    .mobileCatalogExplorer__panelInner {
        padding: 12px 14px 14px;
    }

    .mobileCatalogExplorer__heading {
        min-height: 46px;
    }

    .mobileCatalogExplorer__subheading {
        margin: 14px 0 4px;
        padding-top: 0;
    }

    .mobileCatalogExplorer__grid > .mobileCatalogExplorer__child {
        min-height: 60px;
    }

    .mobileCatalogExplorer__grid > .mobileCatalogExplorer__child--collection,
    .mobileCatalogExplorer__grid > .mobileCatalogExplorer__child--related {
        min-height: 38px;
    }

    .mobileCatalogExplorer__reviewLinks a {
        min-height: 38px;
    }

    .mobileCatalogExplorer__summary {
        margin-bottom: 8px;
    }

    .mobileCatalogExplorer__reviews {
        margin-top: 16px;
        padding-top: 12px;
    }

    .mobileCatalogExplorer__subheading--reviews {
        margin: 0;
    }

    .mobileCatalogExplorer__subheading.mobileCatalogExplorer__subheading--related {
        margin-top: 16px;
        padding-top: 12px;
    }
}
