.cc_ZRhciBAWv3_NPc3bhD553 .pillow-home-categories { width: 100%; min-width: 0; color: var(--kombos-gray-900); }
.cc_ZRhciBAWv3_NPc3bhD553 .pillow-home-categories__container { box-sizing: border-box; width: 100%; max-width: 93rem; margin-inline: auto; padding: 1.5rem 1rem 2rem; min-width: 0; }
.cc_ZRhciBAWv3_NPc3bhD553 .pillow-home-categories__heading { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: .75rem 1.5rem; margin-bottom: 1rem; }
.cc_ZRhciBAWv3_NPc3bhD553 .pillow-home-categories__heading h2 { margin: 0; overflow-wrap: anywhere; }
.cc_ZRhciBAWv3_NPc3bhD553 .pillow-home-categories__all { display: inline-flex; align-items: center; gap: .5rem; min-height: 2.75rem; color: inherit; text-decoration: underline; text-underline-offset: .25em; }
.cc_ZRhciBAWv3_NPc3bhD553 .pillow-home-categories__all:focus-visible { outline: 2px solid var(--pillow-focus-color); outline-offset: 3px; border-radius: 6px; }
/* Studio's renderer and component wrappers use display: contents.
   Grid sizes the actual tile boxes, independent of those wrappers. */
.cc_ZRhciBAWv3_NPc3bhD553 .pillow-home-categories__rail { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 1.5rem .75rem; min-width: 0; }
@media (min-width: 640px) { .cc_ZRhciBAWv3_NPc3bhD553 .pillow-home-categories__rail { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem 1rem; } }
@media (min-width: 768px) { .cc_ZRhciBAWv3_NPc3bhD553 .pillow-home-categories__container { padding: 2rem 1.5rem 2.5rem; } .cc_ZRhciBAWv3_NPc3bhD553 .pillow-home-categories__heading { margin-bottom: 1.5rem; } }
@media (min-width: 1024px) { .cc_ZRhciBAWv3_NPc3bhD553 .pillow-home-categories__rail { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 1.75rem 1rem; } }
