/* Hallmark · pre-emit critique: P5 H5 E4 S5 R5 V4.
 * Existing cream/navy system; compact department cutouts inspired by the user's reference.
 * Homepage order: campaign, departments, new arrivals, price, bridal, mesh. */
@media (min-width: 768px) {
 .odai-warm-home .oh-hero.oh-photographic { height: clamp(360px, 30vw, 560px); min-height: 0; max-height: none; aspect-ratio: auto; }
 .odai-warm-home .oh-photographic .oh-slide picture img { object-position: center top; }
 .odai-warm-home .oh-photographic .oh-slide .oh-scene-copy h2 { font-size: clamp(32px, 3.2vw, 56px); }
}
.warm-category-section { padding-top: 32px; }
.warm-category-section .warm-categories { grid-template-columns: repeat(auto-fit, minmax(152px, 1fr)); gap: 16px; }
.warm-category-section .warm-category { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: 4px; min-height: 184px; padding: 12px; border-radius: var(--warm-radius-small); color: var(--warm-ink); }
.warm-category-section .warm-category img, .warm-category-section .warm-category-empty { height: 144px; object-fit: contain; }
.warm-category-section .warm-category h3 { font-size: 15px; line-height: 1.5; overflow-wrap: anywhere; }
.warm-category-section .warm-category span { color: var(--warm-ink); }
.warm-category-section .warm-category-0 { background: var(--warm-category-rose); }
.warm-category-section .warm-category-1 { background: var(--warm-category-gold); }
.warm-category-section .warm-category-2 { background: var(--warm-category-sage); }
.warm-category-section .warm-category-3 { background: var(--warm-category-peach); }
.warm-category-section .warm-category-4 { background: var(--warm-category-blue); }
.warm-category-section .warm-category-5 { background: var(--warm-category-lilac); }
.warm-category-section .warm-department-lingerie { background: var(--warm-category-rose); }
.warm-category-section .warm-department-nightwear { background: var(--warm-category-gold); }
.warm-category-section .warm-department-pajamas { background: var(--warm-category-sage); }
.warm-category-section .warm-department-body-care { background: var(--warm-category-peach); }
.warm-category-section .warm-department-mesh { background: var(--warm-category-blue); }
.warm-category-section .warm-department-couples { background: var(--warm-category-lilac); }
.warm-category-section .warm-category-bridal { background: var(--warm-category-bridal); }
.warm-category:focus-visible, .warm-price-links > a:focus-visible { outline: 2px solid var(--warm-accent); outline-offset: 4px; }
.warm-category:active { transform: translateY(1px); }
.warm-section-description { font-size: 16px; color: var(--warm-muted); margin-top: 8px; line-height: 1.7; }
.warm-price-section .warm-price-links { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 16px; }
.warm-price-section .warm-price-links > a { justify-content: center; gap: 8px; padding: 16px 12px; border-color: var(--warm-ink); background: var(--warm-ink); color: var(--warm-surface); white-space: nowrap; }
.warm-price-section .warm-price-links svg { color: inherit; margin-inline-start: 4px; width: 16px; }
.warm-price-section .warm-price-links > a:hover { background: var(--warm-accent-hover); }
.warm-price-section .warm-price-links > a:active { transform: translateY(1px); }
.warm-bridal .warm-section-heading { align-items: flex-start; }
.warm-mesh-intro { position: relative; isolation: isolate; display: flex; align-items: center; min-height: 0; aspect-ratio: 3 / 1; padding: 32px 40px; margin-bottom: 24px; border-radius: var(--warm-radius); overflow: hidden; color: var(--warm-surface); background: var(--warm-ink); }
.warm-mesh-picture { position: absolute; inset: 0; z-index: -2; }
.warm-mesh-picture img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.warm-mesh-intro::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(to left, var(--warm-mesh-shade) 0%, var(--warm-mesh-tint) 56%, transparent 72%); }
.warm-mesh-copy { width: 60%; margin-inline-end: auto; }
.warm-mesh-intro h2 { font-size: clamp(28px, 3vw, 40px); line-height: 1.4; font-weight: 700; overflow-wrap: anywhere; }
.warm-mesh-intro p { font-size: 17px; line-height: 1.7; max-width: 580px; margin-block: 12px 20px; }
.warm-mesh-intro .oh-btn { background: var(--warm-surface); color: var(--warm-ink); border: 0; min-height: 48px; padding-inline: 24px; font-weight: 700; white-space: nowrap; }
.warm-mesh-intro .oh-btn:focus-visible { outline: 2px solid var(--warm-surface); outline-offset: 4px; }
.warm-mesh .oh-shop-card .oh-card-footer .oh-price { font-size: 13px; font-weight: 500; line-height: 1.6; }
@media (max-width: 1199px) {
 .warm-category-section .warm-categories { grid-template-columns: repeat(3, minmax(0, 1fr)); }
 .warm-category-section .warm-category { padding: 16px; }
 .warm-category-section .warm-category h3 { font-size: 17px; }
 .warm-price-section .warm-price-links { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
 .warm-category-section { padding-top: 28px; }
 .warm-category-section .warm-categories { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
 .warm-category-section .warm-category { grid-template-columns: minmax(0, 1fr); grid-template-rows: 108px auto; min-height: 192px; gap: 8px; padding: 12px; }
 .warm-category-section .warm-category img, .warm-category-section .warm-category-empty { height: 108px; grid-column: 1; grid-row: 1; }
 .warm-category-section .warm-category h3 { font-size: 15px; line-height: 1.4; min-height: 42px; }
 .warm-category-section .warm-category div { grid-column: 1; grid-row: 2; }
 .warm-category-section .warm-category span { margin-block: 4px 0; }
 .warm-price-section .warm-price-links { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
 .warm-price-section .warm-price-links > a { gap: 8px; }
 .warm-section-description { font-size: 15px; }
 .warm-mesh-intro { align-items: flex-end; aspect-ratio: auto; min-height: 540px; padding: 24px 20px; }
 .warm-mesh-intro::before { background: linear-gradient(to top, var(--warm-mesh-shade) 0%, var(--warm-mesh-shade) 25%, var(--warm-mesh-tint) 44%, transparent 64%); }
 .warm-mesh-copy { width: 100%; }
 .warm-mesh-picture img { object-position: left top; }
 .warm-mesh-intro p { font-size: 16px; }
 .warm-mesh .oh-shop-card .oh-card-footer { flex-wrap: wrap; }
 .warm-mesh .oh-shop-card .oh-card-footer .oh-price { flex-basis: 100%; font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
 .warm-category:active, .warm-price-links > a:active { transform: none; }
}
