/* 상품 목록과 상품 상세. 상품 정보와 선택 동작을 우선한다. */
.catalog-intro,
.catalog-editorial,
.detail-editorial,
.detail-nav,
.fruit-sheet,
.detail-dock {
    --shop-ink: #20231f;
    --shop-muted: #666b63;
    --shop-accent: #334b35;
    --shop-line: #e4e6df;
    --shop-surface: #f4f5f1;
    color: var(--shop-ink);
    font-family: SUIT, sans-serif;
    font-weight: 400;
}

.catalog-intro { padding-top: 36px; padding-bottom: 22px; }
.catalog-intro h1 {
    margin: 0 0 8px;
    font-family: SUIT, sans-serif;
    font-size: 32px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: -.025em;
    word-break: keep-all;
}
.catalog-intro > p { max-width: 42rem; color: var(--shop-muted); font-size: 14px; line-height: 1.6; }
.catalog-editorial { padding-bottom: 56px; }
.catalog-editorial .search-form {
    display: flex;
    align-items: center;
    gap: 12px;
    max-width: 560px;
    margin: 0 0 22px;
    padding: 0 0 0 14px;
    border: 1px solid var(--shop-line);
    border-radius: 0;
    background: #fff;
}
.catalog-editorial .search-form > svg { width: 18px; height: 18px; color: var(--shop-muted); }
.catalog-editorial .search-form input { padding: 12px 0; font-size: 16px; border-radius: 0; caret-color: var(--shop-accent); }
.catalog-editorial .search-form input::placeholder { color: var(--shop-muted); opacity: 1; }
.catalog-editorial .search-form .button { min-height: 46px; padding: 10px 22px; margin: -1px; font-size: 14px; font-weight: 500; border-radius: 0; }
.catalog-editorial .filter-row { gap: 28px; margin: 0; border-bottom: 1px solid var(--shop-line); }
.catalog-editorial .filter {
    position: relative;
    min-height: 46px;
    padding: 10px 0 12px;
    border: 0;
    border-radius: 0;
    color: var(--shop-muted);
    background: transparent;
    font-size: 14px;
    font-weight: 400;
    transition: color 150ms ease;
}
.catalog-editorial .filter.active { color: var(--shop-ink); background: transparent; font-weight: 600; }
.catalog-editorial .filter.active::after { content: ''; position: absolute; bottom: -1px; left: 0; right: 0; height: 2px; background: var(--shop-accent); }
.catalog-editorial .filter:hover { color: var(--shop-ink); }
.catalog-editorial .catalog-info { align-items: center; gap: 16px; margin: 16px 0 10px; }
.catalog-editorial .catalog-results { min-width: 0; display: flex; align-items: center; flex-wrap: wrap; gap: 4px 14px; }
.catalog-editorial .catalog-result-count { color: var(--shop-muted); font-size: 13px; overflow-wrap: anywhere; }
.catalog-editorial .catalog-result-count strong { color: var(--shop-ink); font-weight: 500; }
.catalog-editorial .catalog-result-count > span { color: var(--shop-ink); font-weight: 500; font-variant-numeric: tabular-nums; }
.catalog-editorial .catalog-reset { display: inline-flex; align-items: center; min-height: 44px; color: var(--shop-muted); font-size: 12px; text-decoration: underline; text-underline-offset: 3px; }
.catalog-editorial .catalog-sort { gap: 8px; color: var(--shop-ink); }
.catalog-editorial .catalog-sort label { font-size: 12px; }
.catalog-editorial .catalog-sort select,
.catalog-editorial .catalog-sort button { min-height: 44px; padding: 8px 10px; border-color: var(--shop-line); border-radius: 0; background: #fff; font-size: 13px; font-weight: 400; }
.catalog-editorial .catalog-sort button { min-width: 46px; }
.catalog-editorial .catalog-sort button:hover { border-color: var(--shop-muted); }
.catalog-editorial .catalog-preview-note { margin: 0 0 20px; color: var(--shop-muted); font-size: 12px; line-height: 1.6; word-break: keep-all; }
.catalog-editorial .product-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px 20px; }
.catalog-editorial .catalog-gift-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.catalog-editorial .product-card,
.catalog-editorial .gift-card { min-width: 0; border: 0; border-radius: 0; background: #fff; box-shadow: none; }
.catalog-editorial .product-photo,
.catalog-editorial .gift-card .gift-cover { border-radius: 0; background: var(--shop-surface); aspect-ratio: 1; }
.catalog-editorial .gift-card .gift-cover > img { object-fit: contain; }
.catalog-editorial .product-photo > img,
.catalog-editorial .gift-card .gift-cover > img { transition: opacity 180ms ease; }
.catalog-editorial .product-photo:hover > img,
.catalog-editorial .gift-card .gift-cover:hover > img { transform: none; opacity: .94; }
.catalog-editorial .card-arrow { display: none; }
.catalog-editorial .photo-note,
.catalog-editorial .gift-image-note { padding: 3px 6px; border: 0; border-radius: 0; color: var(--shop-muted); background: #fff; font-size: 10px; font-weight: 400; }
.catalog-editorial .product-meta { margin: 12px 0 5px; color: var(--shop-muted); font-size: 11px; gap: 5px; flex-wrap: wrap; }
.catalog-editorial .product-card h3,
.catalog-editorial .gift-card .gift-card-copy h3 { color: var(--shop-ink); font-family: SUIT, sans-serif; font-size: 17px; line-height: 1.45; font-weight: 500; letter-spacing: -.015em; word-break: keep-all; }
.catalog-editorial .product-card > p,
.catalog-editorial .gift-card .gift-composition { color: var(--shop-muted); font-size: 13px; font-weight: 400; line-height: 1.6; }
.catalog-editorial .product-card > p { margin: 5px 0 8px; }
.catalog-editorial .price strong,
.catalog-editorial .gift-card .price strong { color: var(--shop-ink); font-size: 20px; line-height: 1.4; font-weight: 600; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.catalog-editorial .price strong small,
.catalog-editorial .gift-card .price strong small { font-size: 13px; font-weight: 400; }
.catalog-editorial .price > span,
.catalog-editorial .gift-card .price > .estimate-label { color: var(--shop-muted); font-size: 11px; font-weight: 400; }
.catalog-editorial .gift-card .gift-card-copy { padding-top: 12px; }
.catalog-editorial .gift-card-bottom { padding-top: 10px; gap: 8px; }
.catalog-editorial .gift-detail-link { min-height: 44px; padding: 8px 10px; border-color: var(--shop-line); border-radius: 0; background: #fff; color: var(--shop-ink); font-size: 12px; font-weight: 400; }
.catalog-editorial .catalog-empty { padding: 38px 0 44px; border: 0; border-top: 1px solid var(--shop-line); border-radius: 0; background: #fff; text-align: left; }
.catalog-editorial .catalog-empty h2 { margin-bottom: 8px; font-size: 20px; font-weight: 500; line-height: 1.5; letter-spacing: -.02em; }
.catalog-editorial .catalog-empty p { margin-bottom: 18px; color: var(--shop-muted); font-size: 14px; line-height: 1.7; }
.catalog-editorial .catalog-empty-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 22px; }
.catalog-editorial .catalog-empty .button { border-radius: 0; min-height: 44px; padding: 10px 16px; font-size: 14px; font-weight: 500; }
.catalog-editorial .catalog-empty .text-link { min-height: 44px; font-size: 14px; font-weight: 400; }
.catalog-editorial .button.navy,
.detail-editorial .button.navy { background: var(--shop-accent); color: #fff; border-color: var(--shop-accent); }
.catalog-editorial .button.navy:hover:not(:disabled),
.detail-editorial .button.navy:hover:not(:disabled) { background: #263b28; border-color: #263b28; transform: none; }

.detail-editorial { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: 48px; padding-bottom: 38px; }
.detail-editorial .detail-gallery,
.detail-editorial .buy-box { min-width: 0; }
.detail-editorial .detail-photo { border-radius: 0; background: var(--shop-surface); }
.detail-editorial .detail-photo > img { aspect-ratio: 1; max-height: none; }
.detail-editorial .detail-photo.gift-detail-photo > img { aspect-ratio: 1; object-fit: contain; }
.detail-editorial .photo-note { top: auto; bottom: 10px; left: 10px; padding: 3px 6px; border: 0; border-radius: 0; background: #fff; color: var(--shop-muted); font-size: 11px; }
.detail-editorial .image-thumbs { gap: 8px; margin: 10px 0 8px; flex-wrap: wrap; }
.detail-editorial .image-thumbs button { width: 58px; height: 58px; padding: 2px; border-radius: 0; border-color: var(--shop-line); background: var(--shop-surface); }
.detail-editorial .image-thumbs button[aria-pressed=true] { border-color: var(--shop-accent); }
.detail-editorial .detail-gallery > .small-note { color: var(--shop-muted); font-size: 12px; line-height: 1.6; }
.detail-editorial .buy-box { padding-top: 0; }
.detail-editorial .detail-backlink { display: inline-flex; align-items: center; gap: 7px; min-height: 44px; margin: -9px 0 5px; color: var(--shop-muted); font-size: 12px; font-weight: 400; }
.detail-editorial .detail-backlink > svg { transform: rotate(180deg); }
.detail-editorial .detail-backlink:hover { color: var(--shop-ink); text-decoration: underline; text-underline-offset: 3px; }
.detail-editorial .buy-box h1 { margin: 0; font-family: SUIT, sans-serif; font-size: 32px; font-weight: 500; letter-spacing: -.025em; line-height: 1.35; word-break: keep-all; overflow-wrap: anywhere; }
.detail-editorial .detail-composition { margin: 8px 0 0; color: var(--shop-ink); font-size: 16px; line-height: 1.6; font-weight: 400; }
.detail-editorial .detail-price { margin: 14px 0; gap: 12px; }
.detail-editorial .detail-price strong { font-size: 28px; font-weight: 600; line-height: 1.4; font-variant-numeric: tabular-nums; letter-spacing: -.02em; }
.detail-editorial .detail-price small { font-size: 16px; font-weight: 400; margin-left: 3px; }
.detail-editorial .detail-price > span { color: var(--shop-muted); font-size: 12px; }
.detail-editorial .detail-intro { margin: 0 0 16px; color: var(--shop-muted); font-size: 13px; font-weight: 400; line-height: 1.7; word-break: keep-all; }
.detail-editorial .product-spec { margin: 0 0 20px; padding: 12px 0; border-color: var(--shop-line); }
.detail-editorial .product-spec > div { grid-template-columns: 88px minmax(0, 1fr); gap: 12px; padding: 5px 0; font-size: 13px; line-height: 1.6; }
.detail-editorial .product-spec dt { color: var(--shop-muted); font-weight: 400; }
.detail-editorial .product-spec dd { word-break: keep-all; overflow-wrap: anywhere; }
.detail-editorial .field-label { margin: 0 0 8px; font-size: 14px; font-weight: 500; }
.detail-editorial .field-label > span { color: var(--shop-muted); font-size: 12px; font-weight: 400; }
.detail-editorial #product-option { min-height: 46px; padding: 10px 12px; border: 1px solid var(--shop-line); border-radius: 0; background: #fff; font-size: 16px; font-weight: 400; }
.detail-editorial .option-help { margin: 6px 0 0; color: var(--shop-muted); font-size: 12px; line-height: 1.6; }
.detail-editorial .quantity-row { margin: 8px 0; padding: 8px 0; font-size: 14px; }
.detail-editorial .quantity-row label { font-weight: 400; }
.detail-editorial .quantity-row small { color: var(--shop-muted); font-size: 12px; font-weight: 400; margin-left: 7px; }
.detail-editorial .stepper { border-color: var(--shop-line); border-radius: 0; overflow: visible; }
.detail-editorial .stepper button { width: 44px; height: 44px; background: #fff; font-size: 18px; font-weight: 400; }
.detail-editorial .stepper input { width: 48px; height: 44px; background: #fff; border-color: var(--shop-line); font-size: 16px; }
.detail-editorial .stepper button:hover { background: var(--shop-surface); }
.detail-editorial .total-row { margin: 14px 0 0; padding-top: 16px; border-color: var(--shop-line); gap: 12px; }
.detail-editorial .total-row > span { font-size: 14px; }
.detail-editorial .total-row small { color: var(--shop-muted); font-size: 11px; margin-top: 3px; }
.detail-editorial .total-row strong { font-size: 24px; font-weight: 600; font-variant-numeric: tabular-nums; letter-spacing: -.02em; }
.detail-editorial .buy-actions { grid-template-columns: 1fr; gap: 4px; margin-top: 16px; }
.detail-editorial .buy-actions .button { border-radius: 0; min-height: 48px; font-size: 15px; font-weight: 500; }
.detail-editorial .buy-actions .button.outline { min-height: 44px; padding: 8px; border: 0; background: #fff; color: var(--shop-muted); text-decoration: underline; text-underline-offset: 3px; font-size: 13px; font-weight: 400; transform: none; }
.detail-editorial .order-note { display: block; margin-top: 6px; color: var(--shop-muted); font-size: 12px; font-weight: 400; line-height: 1.7; }
.detail-editorial .detail-quicklinks { gap: 20px; margin-top: 12px; }
.detail-editorial .detail-quicklinks a,
.detail-editorial .detail-quicklinks button { color: var(--shop-muted); border-color: var(--shop-line); font-size: 12px; font-weight: 400; }

.detail-nav { border-color: var(--shop-line); background: #fff; }
.detail-nav > .wrap { justify-content: flex-start; gap: 36px; }
.detail-nav a { min-height: 50px; padding: 14px 0; font-size: 14px; font-weight: 400; }
.detail-nav a[aria-current=location] { color: var(--shop-accent); font-weight: 500; box-shadow: inset 0 -2px var(--shop-accent); }
.fruit-sheet { padding-top: 32px; padding-bottom: 24px; }
.fruit-sheet .sheet-heading { margin-bottom: 20px; }
.fruit-sheet .sheet-heading h2 { font-family: SUIT, sans-serif; font-size: 24px; line-height: 1.5; font-weight: 500; letter-spacing: -.02em; }
.fruit-sheet .sheet-heading > p { margin-top: 8px; color: var(--shop-muted); font-size: 14px; line-height: 1.7; }
.fruit-sheet .sheet-heading .eyebrow,
.fruit-sheet .passport-mark,
.fruit-sheet .choice-icon,
.fruit-sheet .serving-number { display: none; }
.fruit-sheet .fruit-story-grid { border: 0; gap: 28px; background: #fff; }
.fruit-sheet .fruit-story-grid .story-photo { min-height: 0; border-radius: 0; aspect-ratio: 1.1; }
.fruit-sheet .fruit-story-grid figcaption { padding: 8px 0; border: 0; color: var(--shop-muted); }
.fruit-sheet .fruit-passport { padding: 4px 0; }
.fruit-sheet .fruit-passport h3 { font-family: SUIT, sans-serif; font-size: 21px; line-height: 1.5; font-weight: 500; }
.fruit-sheet .passport-label,
.fruit-sheet .passport-story,
.fruit-sheet .fruit-passport .small-note { color: var(--shop-muted); font-weight: 400; }
.fruit-sheet .passport-story { margin-bottom: 14px; line-height: 1.8; }
.fruit-sheet .fruit-passport .small-note { padding-top: 12px; border-color: var(--shop-line); }
.fruit-sheet .fruit-tags { gap: 8px 16px; margin: 12px 0 16px; }
.fruit-sheet .fruit-tags li { padding: 0; border: 0; border-radius: 0; color: var(--shop-muted); font-size: 12px; }
.fruit-sheet .choice-grid { gap: 24px; margin-top: 22px; }
.fruit-sheet .choice-grid article { padding-top: 14px; border-color: var(--shop-line); }
.fruit-sheet :is(.choice-grid, .serving-grid, .care-panel, .delivery-summary) h3 { margin: 0 0 8px; font-size: 16px; font-weight: 500; line-height: 1.6; }
.fruit-sheet :is(.choice-grid, .serving-grid, .care-panel, .delivery-summary) p { color: var(--shop-muted); font-size: 13px; line-height: 1.8; font-weight: 400; }
.fruit-sheet .sheet-section { padding: 32px 0; border-color: var(--shop-line); }
.fruit-sheet .spec-layout { gap: 28px; }
.fruit-sheet .composition-ticket { border: 0; border-radius: 0; padding: 22px; background: var(--shop-surface); }
.fruit-sheet .composition-ticket > span { color: var(--shop-muted); font-size: 12px; }
.fruit-sheet .composition-ticket > strong { margin: 10px 0; font-size: 20px; font-weight: 500; }
.fruit-sheet .composition-ticket > p { margin-bottom: 12px; color: var(--shop-muted); font-size: 13px; line-height: 1.8; }
.fruit-sheet .info-list > div { grid-template-columns: 110px minmax(0, 1fr); gap: 16px; padding: 12px 0; border-color: var(--shop-line); }
.fruit-sheet .info-list dt,
.fruit-sheet .info-list small { color: var(--shop-muted); font-weight: 400; }
.fruit-sheet .serving-grid { gap: 24px; margin-bottom: 18px; }
.fruit-sheet .serving-grid article { padding: 16px 0; border-color: var(--shop-line); }
.fruit-sheet .care-panel { gap: 28px; padding: 22px; border: 0; border-radius: 0; background: var(--shop-surface); }
.fruit-sheet .care-panel > div > svg { display: none; }
.fruit-sheet .care-panel > div + div { padding-left: 24px; border-color: var(--shop-line); }
.fruit-sheet .care-panel .small-note { margin-top: 12px; }
.fruit-sheet .care-sources { margin-top: 12px; color: var(--shop-muted); }
.fruit-sheet .delivery-summary { border: 0; gap: 28px; }
.fruit-sheet .delivery-summary > div { padding: 0; }
.fruit-sheet .delivery-summary > div > svg { display: none; }
.fruit-sheet .delivery-summary > div + div { border: 0; }
.fruit-sheet .delivery-summary .text-link { margin-top: 10px; font-weight: 400; }
.fruit-sheet .product-faq details { border-color: var(--shop-line); }
.fruit-sheet .product-faq summary { font-size: 14px; font-weight: 500; line-height: 1.7; }
.fruit-sheet .product-faq details > p { color: var(--shop-muted); font-size: 13px; line-height: 1.8; }
.fruit-sheet .detail-finish { padding: 24px 0 8px; gap: 12px; }
.fruit-sheet .detail-finish > p { font-family: SUIT, sans-serif; font-size: 16px; line-height: 1.7; font-weight: 400; }
.fruit-sheet .detail-finish .button { min-height: 46px; border-radius: 0; font-size: 14px; font-weight: 500; }
.fruit-sheet .text-link { font-weight: 400; }
.detail-dock:not([hidden]) { border-color: var(--shop-line); box-shadow: none; background: #fff; }
.detail-dock span { color: var(--shop-muted); font-size: 11px; }
.detail-dock strong { font-size: 22px; font-weight: 600; }
.detail-dock .button { border-radius: 0; font-weight: 500; }
.catalog-editorial :is(a, button, input, select):focus-visible,
.detail-editorial :is(a, button, input, select):focus-visible,
.detail-nav a:focus-visible,
.fruit-sheet :is(a, button, summary):focus-visible,
.detail-dock button:focus-visible { outline: 2px solid var(--shop-accent); outline-offset: 3px; }

@media (max-width: 1000px) {
    .catalog-editorial .product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px 18px; }
    .catalog-editorial .catalog-gift-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .detail-editorial { gap: 28px; }
    .detail-editorial .product-spec > div { grid-template-columns: 80px minmax(0, 1fr); gap: 8px; }
}
@media (max-width: 700px) {
    .catalog-intro { padding-top: 24px; padding-bottom: 18px; }
    .catalog-intro h1 { margin-bottom: 6px; font-size: 26px; }
    .catalog-intro > p { font-size: 13px; }
    .catalog-editorial { padding-bottom: 36px; }
    .catalog-editorial .search-form { gap: 10px; margin-bottom: 14px; padding-left: 12px; max-width: none; }
    .catalog-editorial .search-form .button { padding-inline: 18px; }
    .catalog-editorial .filter-row { gap: 24px; }
    .catalog-editorial .filter { font-size: 13px; }
    .catalog-editorial .catalog-info { gap: 6px 12px; margin-top: 10px; align-items: center; flex-wrap: wrap; }
    .catalog-editorial .catalog-results { flex: 1 1 100%; }
    .catalog-editorial .catalog-sort { margin-left: auto; gap: 7px; }
    .catalog-editorial .catalog-sort select { font-size: 16px; max-width: 175px; }
    .catalog-editorial .catalog-preview-note { margin-bottom: 16px; font-size: 12px; }
    .catalog-editorial .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 14px; }
    .catalog-editorial .product-card h3,
    .catalog-editorial .gift-card .gift-card-copy h3,
    .catalog-editorial .catalog-gift-grid .gift-card .gift-card-copy h3 { font-size: 16px; font-weight: 500; }
    .catalog-editorial .product-card > p,
    .catalog-editorial .gift-card .gift-composition { font-size: 12px; }
    .catalog-editorial .price,
    .catalog-editorial .gift-card .price { gap: 3px 7px; flex-wrap: wrap; }
    .catalog-editorial .price strong,
    .catalog-editorial .gift-card .price strong { font-size: 19px; }
    .catalog-editorial .price > span { border: 0; padding: 0; font-size: 10px; }
    .catalog-editorial .gift-card-bottom { display: block; }
    .catalog-editorial .gift-detail-link { margin-top: 5px; padding: 8px 0; border: 0; font-size: 12px; min-height: 44px; }
    .catalog-editorial .catalog-empty { padding-top: 28px; padding-bottom: 28px; }
    .catalog-editorial .catalog-empty h2 { font-size: 18px; }
    .detail-editorial { display: block; padding-bottom: 28px; }
    .detail-editorial .detail-gallery { max-width: none; }
    .detail-editorial .detail-photo > img,
    .detail-editorial .detail-photo.gift-detail-photo > img { aspect-ratio: 1.1; max-height: none; }
    .detail-editorial .image-thumbs button { width: 54px; height: 54px; }
    .detail-editorial .buy-box { padding-top: 20px; }
    .detail-editorial .detail-backlink { margin-bottom: 4px; }
    .detail-editorial .buy-box h1 { font-size: 26px; }
    .detail-editorial .detail-composition { margin-top: 6px; font-size: 15px; }
    .detail-editorial .detail-price { margin: 10px 0; }
    .detail-editorial .detail-price strong { font-size: 26px; }
    .detail-editorial .product-spec > div { grid-template-columns: 82px minmax(0, 1fr); font-size: 13px; }
    .detail-editorial .total-row strong { font-size: 23px; }
    .detail-nav > .wrap { justify-content: flex-start; gap: 20px; padding-inline: 20px; overflow-x: auto; }
    .detail-nav a { min-height: 46px; padding: 12px 0; font-size: 13px; }
    .fruit-sheet { padding-top: 24px; }
    .fruit-sheet .sheet-heading { margin-bottom: 16px; }
    .fruit-sheet .sheet-heading h2 { font-size: 20px; }
    .fruit-sheet .sheet-heading > p { font-size: 13px; }
    .fruit-sheet .fruit-story-grid,
    .fruit-sheet .spec-layout,
    .fruit-sheet .care-panel,
    .fruit-sheet .delivery-summary { grid-template-columns: 1fr; gap: 18px; }
    .fruit-sheet .fruit-passport { padding: 0; }
    .fruit-sheet .fruit-passport h3 { font-size: 19px; }
    .fruit-sheet .choice-grid { grid-template-columns: 1fr; gap: 14px; margin-top: 18px; }
    .fruit-sheet .sheet-section { padding: 26px 0; }
    .fruit-sheet .composition-ticket,
    .fruit-sheet .care-panel { padding: 18px; }
    .fruit-sheet .composition-ticket > strong { font-size: 18px; }
    .fruit-sheet .info-list > div { grid-template-columns: 92px minmax(0, 1fr); gap: 12px; font-size: 13px; }
    .fruit-sheet .serving-grid { grid-template-columns: 1fr; gap: 0; margin-bottom: 12px; }
    .fruit-sheet .care-panel > div + div { padding-left: 0; padding-top: 14px; border-left: 0; border-top: 1px solid var(--shop-line); }
    .fruit-sheet .detail-finish > p { font-size: 14px; }
    .detail-dock:not([hidden]) { padding: 10px 20px; gap: 12px; }
    .detail-dock strong { font-size: 20px; }
    .detail-dock .button { min-height: 44px; padding: 10px 18px; font-size: 13px; }
}
@media (max-width: 390px) {
    .catalog-editorial .filter-row { gap: 20px; }
    .catalog-editorial .product-grid { column-gap: 12px; }
    .catalog-editorial .product-card h3 { font-size: 15px; }
    .detail-editorial .quantity-row small { font-size: 11px; margin-left: 5px; }
    .detail-editorial .total-row { gap: 8px; }
}
@media (prefers-reduced-motion: reduce) {
    .catalog-editorial :is(a, button, img),
    .detail-editorial :is(a, button, img) { transition: none; }
    .catalog-editorial :is(.product-photo, .gift-cover):hover > img { opacity: 1; transform: none; }
}
