/* Native horizontal scroll preserves touch, trackpad and no-JS access. */
.ingredient-carousel-section{padding-block:clamp(34px,4vw,54px);background:#790020;color:#fff0a4}
.ingredient-carousel-section>.sip-page-width{max-width:1240px}
.ingredient-carousel-heading{max-width:860px;margin:0 0 22px}
.ingredient-carousel-heading>.eyebrow{margin:0 0 10px;color:#fff0a4;font:700 11px/1.6 var(--sans);letter-spacing:.13em}
.ingredient-carousel-heading h2{scroll-margin-top:140px;margin:0 0 12px;color:#fff0a4;font:900 clamp(39px,4.2vw,60px)/1.04 var(--serif);letter-spacing:-.04em}
.ingredient-carousel-heading>p:last-child{margin:0;max-width:60ch;color:#ffe3eb;font:400 14px/1.75 var(--sans)}
.ingredient-carousel{min-width:0}
.ingredient-carousel__toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.ingredient-carousel__hint{display:flex;align-items:center;gap:8px;margin:0;color:#ffe3eb;font:500 12px/1.6 var(--sans)}
.ingredient-carousel__hint>span{font-size:22px;line-height:1}
.ingredient-carousel__controls{display:flex;align-items:center;gap:12px}
.ingredient-carousel [hidden]{display:none}
.ingredient-carousel__nav{display:inline-flex;justify-content:center;align-items:center;width:46px;height:46px;padding:0;border:1px solid #fff0a46e;border-radius:50%;background:transparent;color:#fff0a4;font-size:22px;cursor:pointer}
.ingredient-carousel__nav:hover:not(:disabled){background:#fff0a4;color:#790020}
.ingredient-carousel__nav:disabled{opacity:.35;cursor:default}
.ingredient-carousel__status{min-width:42px;text-align:center;color:#fff0a4;font:600 12px/1.5 var(--sans)}
.ingredient-carousel__rail{position:relative;display:flex;align-items:flex-start;gap:22px;min-width:0;margin:0;padding:0 0 10px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scroll-padding-inline:0;scrollbar-color:#fff0a470 #ffffff12;scrollbar-width:thin}
.ingredient-carousel__rail:focus-visible{outline:2px solid #fff0a4;outline-offset:6px;border-radius:26px}
.ingredient-carousel__slide{position:relative;display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:stretch;flex:0 0 calc(100% - 64px);min-width:0;margin:0;padding:0;overflow:hidden;scroll-snap-align:start;border:1px solid #fff0a43d;border-radius:28px;background:#ffe3eb;color:#790020}
.ingredient-carousel__slide:nth-child(even){background:#ffd4e1}
.ingredient-carousel__media{display:flex;flex-direction:column;min-width:0;margin:0;background:#fff0c1}
.ingredient-carousel__slide:nth-child(even) .ingredient-carousel__media{background:#fffaf0}
.ingredient-carousel__media img{display:block;flex:0 0 auto;width:100%;min-height:0;height:clamp(250px,27vw,330px);max-height:none;padding:20px;object-fit:contain}
.ingredient-carousel__media figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding:12px 20px;border-top:1px solid #7900201c;color:#790020;background:#fff0a4;font:700 10px/1.5 var(--sans);letter-spacing:.07em;text-transform:uppercase}
.ingredient-carousel__slide:nth-child(even) .ingredient-carousel__media figcaption{background:#fff0c1}
.ingredient-carousel__copy{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:clamp(24px,2.4vw,32px);text-align:left}
.ingredient-carousel__copy>.ingredient-carousel__eyebrow{margin:0 0 10px;color:#8f2444;font:700 10px/1.5 var(--sans);letter-spacing:.08em}
.ingredient-carousel__copy h3{margin:0 0 10px;max-width:19ch;font:900 clamp(29px,2.8vw,40px)/1.07 var(--serif);letter-spacing:-.035em;overflow-wrap:normal;word-break:normal;text-wrap:balance}
.ingredient-carousel__copy>.ingredient-carousel__role{margin:0 0 13px;padding:5px 10px;border:1px solid #79002026;border-radius:24px;color:#790020;background:#fffaf0;font:600 11px/1.5 var(--sans)}
.ingredient-carousel__copy>.ingredient-carousel__intro{margin:0 0 14px;color:#652337;font:400 14px/1.75 var(--sans)}
.ingredient-carousel__why{width:100%;margin:0 0 17px;padding-top:13px;border-top:1px solid #79002026}
.ingredient-carousel__why>p:first-child{margin:0 0 6px;color:#790020;font:700 10px/1.5 var(--sans);text-transform:uppercase;letter-spacing:.08em}
.ingredient-carousel__why>p:last-child{margin:0;color:#652337;font:400 13px/1.75 var(--sans)}
.ingredient-carousel__copy>.ingredient-carousel__more{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;width:auto;min-height:46px;margin:0;padding:10px 18px;border:1px solid #790020;border-radius:999px;background:#790020;color:#fffaf0;font:600 12px/1.6 var(--sans);text-decoration:none;cursor:pointer}
.ingredient-carousel__copy>.ingredient-carousel__more:hover{background:#a4003a;color:#fffaf0;transform:none}
.ingredient-carousel__more>span:last-child{font-size:20px;line-height:1}
.ingredient-carousel__footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:9px}
.ingredient-carousel__footer>p{max-width:64ch;margin:0;color:#ffe3eb;font:400 11px/1.65 var(--sans)}
.ingredient-carousel__pages{display:flex;flex:none;gap:0}
.ingredient-carousel__pages>button{display:grid;place-items:center;width:34px;min-width:34px;height:44px;margin:0;padding:0;border:0;border-radius:12px;background:transparent;color:#fff0a4;cursor:pointer}
.ingredient-carousel__pages>button>span{display:block;width:7px;height:7px;border:1px solid currentColor;border-radius:50%;background:transparent}
.ingredient-carousel__pages>button[aria-current="true"]>span{width:22px;border-radius:10px;background:currentColor}
.ingredient-carousel__nav:focus-visible,.ingredient-carousel__pages>button:focus-visible{outline:3px solid #fff0a4;outline-offset:4px}
.ingredient-carousel__more:focus-visible{outline:3px solid #790020;outline-offset:5px}
.ingredient-carousel-section .ingredient-map__footnote{color:#ffe3eb}
/* The longest active only needs two reserved lines on the narrowest phones. */
.ingredient-carousel-heading__prefix{display:block}
.ingredient-carousel-heading__name{display:block;min-block-size:1.1em;max-inline-size:24ch;font-size:.86em;line-height:1.1;text-wrap:balance;text-decoration:underline;text-decoration-color:#ffadca80;text-decoration-thickness:1px;text-underline-offset:.13em}
@media(max-width:1000px){
 .ingredient-carousel__slide{flex-basis:calc(100% - 40px);grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
 .ingredient-carousel__copy{padding:24px}
 .ingredient-carousel__media img{height:clamp(250px,32vw,310px);padding:16px}
}
@media(max-width:749px){
 .ingredient-carousel-section{padding-block:32px}
 .ingredient-carousel-heading{margin-bottom:18px}
 .ingredient-carousel-heading h2{scroll-margin-top:126px;font-size:clamp(34px,8.8vw,44px);margin-bottom:10px}
 .ingredient-carousel-heading>.eyebrow{font-size:10px;margin-bottom:8px}
 .ingredient-carousel-heading>p:last-child{font-size:13px;line-height:1.7}
 .ingredient-carousel-heading__name{font-size:clamp(25px,6.9vw,37px)}
 .ingredient-carousel__toolbar{gap:8px;margin-bottom:10px}
 .ingredient-carousel__hint{font-size:11px}
 .ingredient-carousel__controls{gap:9px}
 .ingredient-carousel__nav{width:44px;height:44px}
 .ingredient-carousel__rail{gap:14px;padding-bottom:9px}
 .ingredient-carousel__slide{flex-basis:calc(100% - 24px);grid-template-columns:minmax(0,1fr);grid-template-rows:190px auto;border-radius:23px}
 .ingredient-carousel__media{display:block;position:relative;height:190px}
 .ingredient-carousel__media img{width:100%;height:100%;max-height:none;padding:12px 16px 38px}
 .ingredient-carousel__media figcaption{position:absolute;inset:auto 0 0;padding:8px 17px;font-size:9px}
 .ingredient-carousel__copy{padding:21px}
 .ingredient-carousel__copy h3{font-size:clamp(28px,7.1vw,34px);margin-bottom:10px}
 .ingredient-carousel__copy>.ingredient-carousel__eyebrow{font-size:9px;margin-bottom:9px}
 .ingredient-carousel__copy>.ingredient-carousel__role{font-size:10px;margin-bottom:12px}
 .ingredient-carousel__copy>.ingredient-carousel__intro{font-size:13px;margin-bottom:13px;line-height:1.75}
 .ingredient-carousel__why{margin-bottom:16px;padding-top:12px}
 .ingredient-carousel__why>p:last-child{font-size:12px;line-height:1.75}
 .ingredient-carousel__copy>.ingredient-carousel__more{min-height:44px}
 .ingredient-carousel__footer{flex-direction:column;align-items:flex-start;gap:5px;margin-top:8px}
 .ingredient-carousel__pages{align-self:center}
}
@media(max-width:359px){
 .ingredient-carousel-heading__name{min-block-size:2.2em}
 .ingredient-carousel__toolbar{align-items:flex-start}
 .ingredient-carousel__controls{margin-left:auto}
 .ingredient-carousel__copy{padding:20px}
}
@media(prefers-reduced-motion:reduce){.ingredient-carousel__rail{scroll-behavior:auto}.ingredient-carousel__nav,.ingredient-carousel__more{transition:none}}
