/* Tender feedback uses the same easing on every page. Content is visible at rest. */
:root{--motion-soft:cubic-bezier(.16,1,.3,1);--motion-fast:180ms;--motion-response:320ms}
::selection{background:#ead0d4;color:var(--ink)}
.hero{overflow:hidden}.hero-photo,.hero-copy{animation:none}
.hero-title-line{display:block}
.care-signature{display:flex;align-items:center;gap:10px;color:var(--accent);font-size:13px;line-height:1.5;margin:18px 0 0}
.care-signature svg{width:27px;height:25px;flex:none;overflow:visible}
.care-signature path{fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}
.flavour-photo{display:block;overflow:hidden;border-radius:5px;line-height:0}
.flavour-photo img{display:block;border-radius:0;transform-origin:50% 65%}
.flavour-grid .text-link,.catalog-card .text-link{display:inline-flex;align-items:center;gap:9px;background:none;text-decoration:none;min-height:44px}
.motion-arrow{display:inline-block;vertical-align:middle;width:17px;height:17px;flex:none;transition:translate var(--motion-response) var(--motion-soft)}
.flavour-grid .text-link::after,.catalog-card .text-link::after{display:none}
.button{transition:background-color var(--motion-response),transform var(--motion-response) var(--motion-soft),box-shadow var(--motion-response)}
.button:active{transform:scale(.98)}
.choices button{min-height:44px;transition:background-color 220ms,color 220ms,border-color 220ms,transform var(--motion-fast)}
.choices button:active{transform:scale(.97)}
.catalog-controls #search{transition:border-color 220ms,background-color 220ms;caret-color:var(--accent)}
.catalog-controls #search:focus{background:var(--light);border-color:var(--accent)}
#result-count{font-variant-numeric:tabular-nums;min-height:24px}
.faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:52px;cursor:pointer;transition:color 220ms}
.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:'';width:16px;height:16px;flex:none;background:linear-gradient(currentColor,currentColor) center/12px 1px no-repeat,linear-gradient(currentColor,currentColor) center/1px 12px no-repeat;transition:transform var(--motion-response) var(--motion-soft)}
.faq details[open] summary{color:var(--accent)}.faq details[open] summary::after{transform:rotate(45deg)}
.faq details{transition:background-color var(--motion-response)}
.shop .shop-logo img{transition:transform 450ms var(--motion-soft)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .catalog-card>a,.flavour-grid>a{translate:none!important;transform:none}
 .catalog-card>a:hover,.flavour-grid>a:hover{translate:none!important;transform:none}
 .serving-visual{overflow:hidden}
 .catalog-card .serving-visual img,.flavour-photo img{transition:transform 750ms var(--motion-soft)}
 .catalog-card a:hover .serving-visual img,.flavour-grid>a:hover .flavour-photo img{transform:scale(1.022)}
 .catalog-card a:hover .motion-arrow,.flavour-grid>a:hover .motion-arrow{translate:4px 0}
 .shop:hover .shop-logo img{transform:translateX(3px)}
 .faq summary:hover{color:var(--accent)}
 .button:hover{transform:translateY(-1px);box-shadow:none}
}
.catalog-card a:focus-visible .motion-arrow,.flavour-grid>a:focus-visible .motion-arrow{translate:4px 0}
@media(max-width:760px){.care-signature{margin-top:14px}.flavour-grid .text-link{margin-top:0}.catalog-card .text-link{gap:6px}.faq summary{font-size:15px}}
@media(prefers-reduced-motion:reduce){
 .hero-photo,.hero-copy{animation:none}
 .button,.choices button,.catalog-card img,.flavour-photo img,.motion-arrow,.faq summary::after,.shop .shop-logo img{transition:none!important;transform:none!important;translate:none!important}
 html{scroll-behavior:auto}
}
