/* Homepage categories: compact illustrated cards from the supplied reference. */
#taste-categories.taste-category-section { padding-top:40px; }
#taste-categories .taste-section-heading { align-items:center; border-color:#112a54; background:linear-gradient(90deg,#f1f4fa 0,#fbfcff 72%,#fff 100%); }
#taste-categories .taste-section-heading h2 { color:#112a54; }
#taste-categories .taste-section-heading > a { margin-left:auto; }
#taste-categories .taste-category-controls { position:static; display:flex; align-items:center; gap:4px; margin:0; padding:0; transform:none; pointer-events:auto; }
#taste-categories:not(.has-overflow) .taste-category-controls { display:none; }
#taste-categories .taste-category-controls button { display:grid; place-items:center; width:36px; height:36px; padding:0; border:0; border-radius:50%; background:#e7eeff; color:#111c2d; box-shadow:none; cursor:pointer; }
#taste-categories .taste-category-controls button:hover:not(:disabled),
#taste-categories .taste-category-controls button:focus-visible { background:#dee8ff; color:#9e001f; box-shadow:none; transform:none; }
#taste-categories .taste-category-controls button:focus-visible,
#taste-categories .taste-section-heading > a:focus-visible,
#taste-categories .taste-category:focus-visible { outline:2px solid #9e001f; outline-offset:3px; }
#taste-categories .taste-category-controls button .taste-icon { width:20px; height:20px; }
#taste-categories .taste-category-slider { --taste-category-gap:16px; width:100%; }
#taste-categories .taste-category-grid { gap:var(--taste-category-gap); align-items:stretch; padding:2px 2px 13px; scrollbar-width:none; }
#taste-categories .taste-category-grid::-webkit-scrollbar { display:none; }
#taste-categories .taste-category-slider .taste-category { flex:0 0 calc((100% - 5 * var(--taste-category-gap)) / 6); display:flex; flex-direction:column; align-items:stretch; justify-content:flex-start; min-width:0; min-height:0; padding:16px; gap:0; border:0; border-radius:12px; background:linear-gradient(180deg,#ffe8ed 0%,#fff 100%); box-shadow:0 2px 10px #111c2d12; text-align:left; overflow:hidden; transition:transform .2s ease,box-shadow .2s ease; }
#taste-categories .taste-category-slider .taste-category--1 { background:linear-gradient(180deg,#ddf5eb 0%,#fff 100%); }
#taste-categories .taste-category-slider .taste-category--2 { background:linear-gradient(180deg,#e1f1ff 0%,#fff 100%); }
#taste-categories .taste-category-slider .taste-category--3 { background:linear-gradient(180deg,#fff0d4 0%,#fff 100%); }
#taste-categories .taste-category-slider .taste-category--4 { background:linear-gradient(180deg,#f0e8ff 0%,#fff 100%); }
#taste-categories .taste-category-slider .taste-category--5 { background:linear-gradient(180deg,#ffe8dc 0%,#fff 100%); }
#taste-categories .taste-category-slider .taste-category:hover { background:linear-gradient(180deg,#ffe8ed 0%,#fff 100%); box-shadow:0 10px 24px #111c2d1c; transform:translateY(-4px); }
#taste-categories .taste-category-slider .taste-category--1:hover { background:linear-gradient(180deg,#ddf5eb 0%,#fff 100%); }
#taste-categories .taste-category-slider .taste-category--2:hover { background:linear-gradient(180deg,#e1f1ff 0%,#fff 100%); }
#taste-categories .taste-category-slider .taste-category--3:hover { background:linear-gradient(180deg,#fff0d4 0%,#fff 100%); }
#taste-categories .taste-category-slider .taste-category--4:hover { background:linear-gradient(180deg,#f0e8ff 0%,#fff 100%); }
#taste-categories .taste-category-slider .taste-category--5:hover { background:linear-gradient(180deg,#ffe8dc 0%,#fff 100%); }
#taste-categories .taste-category-slider .taste-category .taste-category__count { position:static; order:0; align-self:flex-start; display:inline-flex; align-items:center; width:auto; max-width:calc(100% - 28px); min-height:21px; margin:0; padding:3px 8px; border:0; border-radius:999px; background:#eacbd1; color:#8c1730; box-shadow:none; backdrop-filter:none; font-size:10px!important; font-weight:700; line-height:1.25!important; white-space:nowrap; }
#taste-categories .taste-category-slider .taste-category--1 .taste-category__count { background:#d0ebdf; color:#176047; }
#taste-categories .taste-category-slider .taste-category--2 .taste-category__count { background:#d1e6f8; color:#145780; }
#taste-categories .taste-category-slider .taste-category--3 .taste-category__count { background:#f8e4bb; color:#895215; }
#taste-categories .taste-category-slider .taste-category--4 .taste-category__count { background:#e4d8f5; color:#684494; }
#taste-categories .taste-category-slider .taste-category--5 .taste-category__count { background:#f7d9c9; color:#984a26; }
#taste-categories .taste-category__arrow { position:absolute; top:16px; right:16px; display:grid; place-items:center; width:20px; height:20px; color:#c8102e; transition:transform .2s ease; }
#taste-categories .taste-category--1 .taste-category__arrow { color:#1d8b60; }
#taste-categories .taste-category--2 .taste-category__arrow { color:#2384b9; }
#taste-categories .taste-category--3 .taste-category__arrow { color:#ba791e; }
#taste-categories .taste-category--4 .taste-category__arrow { color:#8058b3; }
#taste-categories .taste-category--5 .taste-category__arrow { color:#cf693b; }
#taste-categories .taste-category__arrow .taste-icon { width:18px; height:18px; }
#taste-categories .taste-category:hover .taste-category__arrow { transform:translateX(4px); }
#taste-categories .taste-category-slider .taste-category__image { order:1; display:grid; place-items:center; width:100%; height:auto; aspect-ratio:1; min-height:0; margin:8px 0; padding:8px; border:0; border-radius:0; background:transparent; box-shadow:none; overflow:visible; }
#taste-categories .taste-category-slider .taste-category__image img { display:block; width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 6px 7px #111c2d22); }
#taste-categories .taste-category-slider .taste-category__fallback svg { width:52%; height:52%; }
#taste-categories .taste-category-slider .taste-category > div { order:2; display:block; width:100%; margin-top:auto; }
#taste-categories .taste-category-slider .taste-category h3 { margin:0; color:#111c2d; font-size:15px; line-height:1.35; font-weight:700; letter-spacing:0; text-transform:none; }
@media (max-width:1199px) {
    #taste-categories .taste-category-slider .taste-category { flex-basis:calc((100% - 2 * var(--taste-category-gap)) / 3); }
}
@media (max-width:767px) {
    #taste-categories.taste-category-section { padding-top:36px; }
    #taste-categories .taste-section-heading { align-items:center; margin-bottom:19px; }
    #taste-categories .taste-category-controls { grid-column:1 / -1; justify-self:end; }
    #taste-categories .taste-category-slider { --taste-category-gap:12px; }
    #taste-categories .taste-category-slider .taste-category { flex-basis:calc((100% - var(--taste-category-gap)) / 2); padding:12px; }
    #taste-categories .taste-category-slider .taste-category__image { height:auto; aspect-ratio:1; padding:5px; }
    #taste-categories .taste-category-slider .taste-category h3 { font-size:13px; }
    #taste-categories .taste-category-slider .taste-category .taste-category__count { min-height:19px; padding:3px 6px; font-size:9px!important; }
    #taste-categories .taste-category__arrow { top:12px; right:12px; }
}
@media (max-width:359px) {
    #taste-categories .taste-category-slider .taste-category { flex-basis:calc((100% - var(--taste-category-gap)) / 2); padding:9px; }
    #taste-categories .taste-category__arrow { top:9px; right:9px; width:16px; }
    #taste-categories .taste-category-slider .taste-category .taste-category__count { max-width:calc(100% - 18px); font-size:8px!important; }
}
@media (prefers-reduced-motion:reduce) {
    #taste-categories .taste-category-slider .taste-category,
    #taste-categories .taste-category__arrow,
    #taste-categories .taste-category-slider .taste-category__image img { transition:none; }
}
