/* Visual category navigation, independent of the product cards. */
.gm-routine{background:#fff;padding:38px 0 30px;border-block:1px solid #eceee7;scroll-margin-top:0}
.gm-routine__heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px}
.gm-routine__heading .gm-kicker{font-size:.62rem;letter-spacing:.13em;margin-bottom:9px}
.gm-routine__heading h2{font-size:clamp(1.6rem,2.4vw,2.2rem);line-height:1.18;letter-spacing:-.02em;margin:0}
.gm-routine__heading p{font-size:.78rem;line-height:1.65;color:#62695e;margin:9px 0 0}
.gm-routine__actions{display:flex;align-items:center;gap:18px;flex-shrink:0}
.gm-routine__all{font-size:.78rem;font-weight:600;white-space:nowrap;padding:10px 0;color:var(--accent)}
.gm-routine__all:hover{text-decoration:underline}.gm-routine__all span{margin-left:7px}
.gm-routine__arrows{display:flex;gap:7px}.gm-routine__arrows[hidden]{display:none}
.gm-routine__arrows button{width:38px;height:38px;border:1px solid #d9ded2;border-radius:50%;background:#fff;color:var(--ink);font:inherit;cursor:pointer;display:grid;place-items:center}
.gm-routine__arrows button:hover:not(:disabled){background:#edf0e7}.gm-routine__arrows button:disabled{opacity:.35;cursor:default}
.gm-routine__track{display:grid;grid-auto-flow:column;grid-auto-columns:max(106px,calc((100% - 144px)/10));gap:16px;list-style:none;margin:0;padding:4px 2px 12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#cbd2c2 transparent}
.gm-routine__track>li{min-width:0;scroll-snap-align:start}
.gm-routine__step{display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--ink);height:100%;border-radius:12px;outline-offset:2px}
.gm-routine__image{display:block;width:100%;aspect-ratio:1;border:2px solid transparent;padding:3px;border-radius:18px;transition:border-color .2s}
.gm-routine__image img{display:block;width:100%;height:100%;object-fit:cover;border-radius:13px;background:#f2f0e9}
.gm-routine__step:hover .gm-routine__image{border-color:#c5ceba}.gm-routine__step.is-active .gm-routine__image{border-color:var(--accent)}
.gm-routine__number{font-size:.63rem;font-weight:600;line-height:1.5;padding:3px 9px;background:#f0f2ec;color:#56614b;border-radius:20px;margin:10px 0 10px;white-space:nowrap}
.gm-routine__step.is-active .gm-routine__number{background:var(--accent);color:#fff}
.gm-routine__step strong{font:600 .77rem/1.5 var(--sans);min-height:3em;max-width:16ch}
.gm-routine__step small{font-size:.62rem;line-height:1.5;color:#687060;margin-top:6px}
.gm-routine__step:focus-visible,.gm-routine__arrows button:focus-visible,.gm-routine__all:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.gm-routine-empty p{margin:16px auto 24px;max-width:44ch}.gm-routine-empty .gm-btn{margin-top:4px}
@media(max-width:700px){.gm-routine{padding:28px 0 18px;scroll-margin-top:0}.gm-routine__heading{display:block;margin-bottom:18px}.gm-routine__heading h2{font-size:1.7rem}.gm-routine__heading p{font-size:.75rem}.gm-routine__actions{justify-content:space-between;margin-top:12px}.gm-routine__track{grid-auto-columns:112px;gap:12px}.gm-routine__arrows button{width:38px;height:38px}.gm-routine__step strong{font-size:.76rem}}
@media(prefers-reduced-motion:reduce){.gm-routine__image{transition:none}}
