/* Shared controls and a product-first, tactile showcase. */
:root{--ease-out:cubic-bezier(.22,.68,0,1.01)}
button,a{-webkit-tap-highlight-color:transparent}button{touch-action:manipulation}button:disabled{cursor:default;opacity:.4}
.button,.header-cta,.filters button,.taste-buttons button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:52px;max-width:100%;padding:14px 24px;line-height:1.35;text-align:center;border-radius:999px;flex-shrink:0;vertical-align:middle;white-space:normal}
.button>span,.header-cta>span{display:inline-flex;align-items:center;justify-content:center;flex:0 0 22px;width:22px;height:22px;line-height:1;margin:0;transition:transform .35s var(--ease-out)}
.button:hover>span,.header-cta:hover>span{transform:translate(2px,-2px)}.button:hover{transform:none;box-shadow:0 8px 25px #29553b16}.button:active,.header-cta:active{scale:.98}
.header-inner{gap:18px}.header nav{margin-left:auto;gap:24px}.header-cta{font-size:11px;min-height:48px;padding:12px 20px;gap:16px}.brand{flex-shrink:0}.selection-toggle{display:flex;align-items:center;justify-content:center;position:relative;flex:0 0 44px;width:44px;height:44px;font-size:26px;background:transparent;border:1px solid #29553b30;border-radius:50%;line-height:1}.selection-count{position:absolute;right:-3px;top:-4px;background:var(--green);color:var(--paper);border-radius:50%;width:18px;height:18px;display:grid;place-items:center;font-size:9px}
.filters button,.taste-buttons button{min-height:44px;padding:11px 18px;gap:8px}.catalog{max-width:none}.catalog .section-top,.catalog .filters{max-width:1376px;margin-left:auto;margin-right:auto}
.showcase{--card-width:350px;--card-gap:80px;position:relative;margin-left:calc(-1 * max(56px,(100vw - 1376px)/2));margin-right:calc(-1 * max(56px,(100vw - 1376px)/2));outline-offset:-5px;overflow:hidden;touch-action:pan-y}
.showcase-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 max(56px,calc((100vw - 1376px)/2)) 20px}.showcase-caption{font-size:12px;color:#72836d}.slider-controls{display:flex;gap:12px;align-items:center;flex-shrink:0}.slider-controls button{width:48px;height:48px;border:1px solid #29553b50;display:grid;place-items:center;border-radius:50%;background:transparent;font-size:25px;line-height:1;transition:background .25s,color .25s}.slider-controls button:hover{background:var(--green);color:var(--paper)}.slider-controls .slider-play{font-size:18px;width:44px;height:44px}.slider-count{font-size:11px;font-variant-numeric:tabular-nums;min-width:48px;text-align:center}
.product-grid{position:relative;display:block;height:550px;overflow:hidden;cursor:grab}.product-grid.is-dragging{cursor:grabbing}.showcase .product{width:var(--card-width);position:absolute;left:50%;top:20px;opacity:1;transform:translateX(calc(-50% + var(--slot,0) * (var(--card-width) + var(--card-gap)))) translateY(22px) scale(.88);transition:transform .75s var(--ease-out),opacity .5s;user-select:none;will-change:transform}.showcase .product.is-active{transform:translateX(-50%) translateY(0) scale(1);z-index:2}.showcase .product.jump{transition:none}.showcase .product[hidden]{display:none}
.product-art{height:400px;border:0;overflow:visible;background:transparent!important;padding:25px 25px 0;border-radius:24px;isolation:auto;box-shadow:none!important;transform:none!important;display:flex;align-items:center;flex-direction:column}.product-art:before{content:'';position:absolute;inset:0 0 18px;border-radius:44% 44% 25px 25px;background:var(--lemon);opacity:.65;transform:scale(.92);transition:transform .65s var(--ease-out),opacity .65s;z-index:-1}.pink:before{background:var(--pink)}.lavender:before{background:var(--lavender)}.blue:before{background:var(--blue)}.is-active .product-art:before{transform:scale(1);opacity:1}.product-number{margin-bottom:15px;font-size:10px;opacity:.6}.product h3{text-align:center;font-size:28px;line-height:1.05;letter-spacing:-1px}.product-art img{position:relative;left:auto;bottom:auto;top:auto;width:100%;height:225px;flex:none;object-fit:contain;margin-top:16px;transform:rotate(-5deg);filter:drop-shadow(0 22px 12px #29553b20);transition:transform .75s var(--ease-out);pointer-events:none}.product:nth-child(even) img{transform:rotate(5deg)}.is-active .product-art img{transform:rotate(0)}.is-active:hover .product-art img{transform:translateY(-8px) rotate(-2deg)}.product-tag{position:absolute;left:50%;bottom:54px;transform:translateX(-50%);white-space:nowrap;font-size:7px;margin:0;border:0;z-index:2}.product-open{position:absolute;left:calc(50% - 24px);right:auto;bottom:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;padding:0;font-size:25px;line-height:1;background:var(--paper);border:1px solid #29553b60}.product-meta{justify-content:center;gap:12px;margin-top:22px;font-size:14px;text-align:center}.product-meta strong{max-width:none}.product-meta>span{font-size:11px;opacity:.65}.product-description{text-align:center;font-size:12px;line-height:1.6;margin-top:6px}.showcase-hint{text-align:center;font-size:10px;color:#72836d;margin-top:0}.catalog-all{margin-top:30px;width:max-content;max-width:100%}
.photo-story{background:#efe8db;overflow:hidden;padding-top:85px;padding-bottom:95px;text-align:center}.photo-story h2{font-size:50px;line-height:1.08}.photo-fan{--fan:1;display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin:70px auto 25px;max-width:1180px}.photo-card{display:block;padding:13px 13px 22px;background:var(--paper);box-shadow:0 20px 45px #6b50331b;transform:translateX(calc((1 - var(--fan)) * var(--fan-x,0px))) translateY(calc((1 - var(--fan)) * 100px)) rotate(calc(var(--fan) * var(--tilt,0deg)));transition:box-shadow .3s;transform-origin:50% 100%;will-change:transform}.photo-card:nth-child(1){--tilt:-7deg;--fan-x:200px}.photo-card:nth-child(2){--tilt:2deg;z-index:1}.photo-card:nth-child(3){--tilt:7deg;--fan-x:-200px}.photo-card img{aspect-ratio:1/1;width:100%;object-fit:cover;pointer-events:none}.photo-card>span{display:block;position:relative;text-align:left;font-size:17px;font-weight:500;padding:22px 38px 0 8px;line-height:1.4}.photo-card small{display:block;font-size:7px;font-weight:400;letter-spacing:1px;margin-bottom:10px}.photo-card i{position:absolute;right:8px;bottom:0;font-style:normal;font-size:24px}.photo-card:hover{box-shadow:0 25px 55px #6b503334}.photo-card:focus-visible{outline-offset:8px}
.taste-stage{overflow:hidden}.taste-stage>img{filter:drop-shadow(0 20px 12px #29553b15)}.taste-result a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;gap:20px;line-height:1.4}.text-link{min-height:44px;align-items:center}.round-arrow,.hero-scroll,.back-top{flex-shrink:0;line-height:1;padding:0}.buy-card{display:grid;grid-template-columns:1fr 54px;grid-template-rows:auto auto 1fr;gap:0 18px}.buy-card>span:first-child,.buy-card h3{grid-column:1/-1}.buy-card p{max-width:100%;grid-column:1;align-self:end}.buy-card .round-arrow{position:static;grid-column:2;align-self:end;width:54px;height:54px}.buy-card:hover .round-arrow{background:var(--green);color:var(--paper)}
dialog{max-height:calc(100dvh - 32px);overflow-y:auto;border:0;border-radius:24px;box-shadow:0 30px 100px #142d3955;padding:52px 32px 30px;width:calc(100% - 32px);max-width:560px}dialog[open]{animation:dialog-in .4s var(--ease-out)}dialog::backdrop{backdrop-filter:blur(7px);background:#233d2e70}.close-dialog{width:44px;height:44px;top:12px;right:12px;display:grid;place-items:center;border-radius:50%;border:1px solid #29553b30;font-size:27px;line-height:1}.close-dialog:hover{background:var(--lemon)}dialog>img{height:220px;margin-bottom:25px;filter:drop-shadow(0 15px 12px #29553b18)}dialog .button{width:100%;min-height:52px;gap:14px;line-height:1.4;padding:14px 18px}dialog .dialog-note{margin-top:17px}body.has-dialog{overflow:hidden}
.selection-row{display:grid;grid-template-columns:85px 1fr 44px;gap:15px;align-items:center;padding:20px 0;border-bottom:1px solid #29553b20}.selection-row img{width:85px;height:70px;object-fit:contain}.selection-row strong{font-size:13px;line-height:1.5}.selection-row button{width:44px;height:44px;font-size:22px;border-radius:50%;background:transparent}.selection-empty{padding:25px 0;color:#72836d}.selection-buy{margin-top:28px!important}@keyframes dialog-in{from{opacity:0;transform:translateY(25px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:1200px){.header nav{gap:16px}.header-inner{gap:12px}.header .brand>span{font-size:12px}.showcase{--card-width:320px;--card-gap:30px;margin-left:-32px;margin-right:-32px}.showcase-toolbar{padding-left:32px;padding-right:32px}.photo-fan{gap:22px}.photo-story h2{font-size:44px}}
@media(min-width:761px) and (max-width:1000px){.header .brand>span{display:none}.header nav{font-size:10px;gap:14px}.header-inner{gap:10px}.selection-toggle{flex-basis:40px;width:40px;height:40px}.header-cta{font-size:10px;padding:12px 14px}}
@media(max-width:760px){.header-inner{gap:8px}.header-cta{display:none}.header .brand{margin-right:auto}.header .brand>span{display:block;font-size:11px}.header .brand small{font-size:4.5px}.selection-toggle{flex-basis:40px;width:40px;height:40px;font-size:24px}.menu{height:44px;width:36px;position:relative}.menu span{transition:transform .3s,opacity .3s}.menu[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.button{font-size:12px;min-height:52px;gap:20px;padding:14px 20px}.filters button{padding:11px 15px;font-size:10px}.showcase{--card-width:270px;--card-gap:18px;margin-left:-20px;margin-right:-20px}.showcase-toolbar{padding:0 20px 18px;justify-content:center}.showcase-caption{display:none}.slider-controls{gap:15px}.slider-controls button{width:44px;height:44px}.product-grid{height:477px}.showcase .product{top:15px}.product-art{height:345px;padding:23px 17px 0}.product h3{font-size:25px}.product-art img{height:185px;margin-top:12px;width:100%}.product-tag{font-size:6px;bottom:50px}.product-meta{font-size:12px;margin-top:20px;align-items:center}.product-meta strong{font-size:12px;max-width:none}.product-meta>span{font-size:10px;padding:0}.product-description{font-size:11px}.showcase-hint{font-size:9px}.photo-story{padding:58px 0 65px}.photo-story h2{font-size:33px;letter-spacing:-1.5px}.photo-fan{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:20px;margin:34px -20px 0;padding:18px 35px 25px;scrollbar-width:none}.photo-fan::-webkit-scrollbar{display:none}.photo-card{flex:0 0 86%;scroll-snap-align:center;padding:10px 10px 20px;transform:rotate(-2deg);will-change:auto}.photo-card:nth-child(2){transform:rotate(2deg)}.photo-card:nth-child(3){transform:rotate(-2deg)}.photo-card>span{font-size:16px;padding-top:20px}.photo-card img{aspect-ratio:1.1/1}.photo-story .eyebrow{font-size:7px}.buy-card{padding:25px;grid-template-columns:1fr 44px;gap:0 10px}.buy-card .round-arrow{width:44px;height:44px;font-size:24px}.buy-card p{font-size:11px}.buy-card h3{font-size:31px}.partners-copy .button,.catalog-all,.story-copy .button{max-width:100%}.partners h2{font-size:clamp(29px,9vw,36px)}dialog{padding:60px 22px 24px}dialog h2{font-size:29px}dialog>img{height:180px}dialog .button{font-size:11px}.selection-row{grid-template-columns:65px 1fr 44px;gap:10px}.selection-row img{width:65px}.selection-row strong{font-size:12px}}
@media(max-width:360px){.showcase{--card-width:245px;--card-gap:16px}.product-art{height:330px}.product-art img{height:175px}.product-grid{height:465px}.header .brand img{width:40px}.header .brand>span{font-size:10px}.header .brand small{font-size:4px}.photo-story h2{font-size:29px}.button{gap:14px}.buy-card h3{font-size:28px}}
@media(prefers-reduced-motion:reduce){.showcase .product,.photo-card{transition:none;will-change:auto}.photo-fan{--fan:1}.photo-card{transform:rotate(var(--tilt,0deg))}.product-art img{transform:none!important}}
