.ow-routine-banner{box-sizing:border-box;overflow:hidden;background:var(--orb-bg,#213d32);color:var(--orb-text,#fff);padding:var(--orb-top,88px) 24px var(--orb-bottom,88px);font-family:var(--font-body--family,inherit)}
.ow-routine-banner *,.ow-routine-banner *::before,.ow-routine-banner *::after{box-sizing:border-box}
.ow-routine-banner__inner{width:min(100%,var(--orb-width,1280px));margin:auto;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(36px,6vw,112px)}
.ow-routine-banner__copy{min-width:0}
.ow-routine-banner__eyebrow{margin:0 0 24px;font-size:12px;font-weight:650;line-height:1.35;letter-spacing:.16em;text-transform:uppercase;opacity:.82}
.ow-routine-banner__title{max-width:670px;margin:0;font-family:var(--font-heading--family,inherit);font-size:var(--orb-title,52px);font-weight:var(--font-heading--weight,650);line-height:1.08;letter-spacing:-.045em;color:inherit}
.ow-routine-banner__description{max-width:580px;margin:28px 0 0;font-size:clamp(15px,1.35vw,18px);line-height:1.6;opacity:.88}
.ow-routine-banner__count{margin:20px 0 0;font-size:13px;letter-spacing:.03em;opacity:.72}
.ow-routine-banner__cta{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;min-height:56px;max-width:100%;margin-top:34px;padding:8px 9px 8px 25px;border:0;border-radius:999px;background:var(--orb-accent,#eaffac);color:#16251c;font:650 14px/1.25 var(--font-body--family,inherit);cursor:pointer;transition:transform .28s ease,box-shadow .28s ease,filter .28s ease}
.ow-routine-banner__cta:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 28px #0003}
.ow-routine-banner__cta:disabled{cursor:not-allowed;opacity:.55}
.ow-routine-banner__cta.is-loading{cursor:wait}
.ow-routine-banner__cta-icon{width:39px;height:39px;display:grid;place-items:center;flex:none;border-radius:50%;background:#16251c;color:#fff}
.ow-routine-banner__cta-icon svg{width:18px;height:18px;transition:transform .28s ease}
.ow-routine-banner__cta:hover:not(:disabled) .ow-routine-banner__cta-icon svg{transform:translateX(3px)}
.ow-routine-banner__stock,.ow-routine-banner__status{font-size:13px;line-height:1.4;margin:10px 0 0}
.ow-routine-banner__status:empty{display:none}
.ow-routine-banner__status:not(.is-error):not(:empty){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ow-routine-banner__visual{min-width:0}
.ow-routine-banner__topline{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 16px;font-size:12px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;opacity:.83}
.ow-routine-banner__track{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-width:0}
.ow-routine-banner__card{position:relative;display:flex;flex-direction:column;min-width:0;min-height:365px;overflow:hidden;border-radius:24px;background:var(--orb-card,#f5f6f2);color:#17251d;box-shadow:0 14px 32px #091a141a;transition:transform .36s cubic-bezier(.2,.7,.2,1),box-shadow .36s ease}
.ow-routine-banner__card:hover{transform:translateY(-5px);box-shadow:0 22px 44px #091a1436}
.ow-routine-banner__track:not([data-empty]) .ow-routine-banner__card:only-child{max-width:310px;width:100%;justify-self:center;grid-column:1/-1}
.ow-routine-banner__image{height:270px;display:grid;place-items:center;padding:20px 20px 4px;text-decoration:none}
.ow-routine-banner__image img,.ow-routine-banner__image svg{width:100%;height:100%;object-fit:contain;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.ow-routine-banner__card:hover .ow-routine-banner__image img{transform:scale(1.045)}
.ow-routine-banner__meta{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:baseline;margin-top:auto;padding:14px 18px 19px}
.ow-routine-banner__number{font-size:11px;opacity:.55}
.ow-routine-banner__product-title{min-width:0;color:inherit;font-weight:650;font-size:16px;line-height:1.25;text-decoration:none}
.ow-routine-banner__product-title:hover{text-decoration:underline;text-underline-offset:3px}
.ow-routine-banner__price{grid-column:2;margin-top:6px;font-size:13px;opacity:.78}
.ow-routine-banner__soldout{position:absolute;top:14px;right:14px;padding:7px 9px;border-radius:999px;background:#fff;color:#742e22;font-size:11px;font-weight:600}
.ow-routine-banner--slider .ow-routine-banner__track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 14px)/2);grid-template-columns:none;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-behavior:smooth}
.ow-routine-banner--slider .ow-routine-banner__track::-webkit-scrollbar{display:none}
.ow-routine-banner--slider .ow-routine-banner__card{scroll-snap-align:start}
.ow-routine-banner__controls{display:flex;justify-content:flex-end;gap:9px;margin-top:17px}
.ow-routine-banner__controls button{display:grid;place-items:center;width:40px;height:40px;border:1px solid #ffffff75;border-radius:50%;background:transparent;color:inherit;cursor:pointer;transition:background .2s ease,color .2s ease}
.ow-routine-banner__controls button:hover:not(:disabled){background:#fff;color:#16251c}
.ow-routine-banner__controls button:disabled{opacity:.3;cursor:default}
.ow-routine-banner__controls svg{width:18px;height:18px}
.ow-routine-banner :is(button,a):focus-visible{outline:2px solid var(--orb-accent,#eaffac);outline-offset:4px}
.ow-routine-banner--empty{padding:32px 20px;text-align:center}
@media(max-width:989px){.ow-routine-banner__inner{gap:28px}.ow-routine-banner__card{min-height:300px}.ow-routine-banner__image{height:220px}}
@media(max-width:749px){.ow-routine-banner{padding:56px 18px}.ow-routine-banner__inner{grid-template-columns:1fr;gap:38px}.ow-routine-banner__eyebrow{margin-bottom:16px}.ow-routine-banner__title{font-size:var(--orb-title-mobile,34px);line-height:1.14}.ow-routine-banner__description{margin-top:18px;font-size:15px}.ow-routine-banner__count{margin-top:14px}.ow-routine-banner__cta{margin-top:23px;min-height:52px}.ow-routine-banner__card{min-height:300px}.ow-routine-banner__image{height:220px}.ow-routine-banner__track{grid-template-columns:1fr}.ow-routine-banner--slider .ow-routine-banner__track{grid-auto-columns:min(78vw,285px);margin-right:-18px;padding-right:18px}.ow-routine-banner__track:not([data-empty]) .ow-routine-banner__card:only-child{grid-column:1;max-width:310px}}
@media(prefers-reduced-motion:reduce){.ow-routine-banner *{scroll-behavior:auto!important;transition:none!important}}
