/* Approved food range: image-led category cards and shared responsive alignment. */
.food-range{background:#f4f3ee;color:#172941;padding:72px 0 54px;position:relative;scroll-margin-top:24px}
.food-range-inner{position:relative}
.food-range-heading{display:flex;align-items:center;justify-content:space-between;gap:40px}
.food-eyebrow{font-size:11px;font-weight:600;line-height:1.5;letter-spacing:.16em;color:#636758;margin-bottom:12px}
.food-range-heading h2{font-family:Fraunces,Georgia,serif;font-weight:500;font-size:clamp(36px,3.5vw,52px);line-height:1.15;letter-spacing:-.035em}
.food-range-intro{font-size:16px;line-height:1.6;color:#59615d;margin-top:12px}
.food-all{display:inline-flex;align-items:center;gap:24px;min-height:50px;padding:12px 0;border-bottom:1px solid #9da49b;white-space:nowrap;font-size:14px;font-weight:500}
.food-all svg,.food-range-bottom svg{width:20px;height:20px;flex-shrink:0}
.food-all:hover{border-color:#172941}
.food-grid{list-style:none;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:1fr;gap:22px;padding:0;margin:122px 0 0}
.food-item{display:flex;min-width:0}
.food-card{display:flex;flex-direction:column;position:relative;width:100%;min-height:288px;padding:108px 18px 18px;background:#fffefa;border-radius:20px;box-shadow:0 16px 28px #302a2412,0 3px 6px #302a2403;isolation:isolate}
.food-plate{position:absolute;top:-76px;left:50%;width:190px;max-width:100%;height:190px;transform:translateX(-50%);margin:0;pointer-events:none}
.food-plate img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 12px 10px #292b2020)}
.food-card-copy{text-align:center}
.food-card h3{font-family:Inter,Arial,sans-serif;font-size:22px;font-weight:600;line-height:1.25;letter-spacing:-.035em;min-height:55px;display:flex;align-items:center;justify-content:center;max-width:12ch;margin-inline:auto;text-wrap:balance}
.food-card-copy p{font-size:12px;line-height:1.5;letter-spacing:-.015em;color:#646960;min-height:36px;margin-top:9px;text-wrap:balance}
.food-card-meta{display:flex;justify-content:center;align-items:center;gap:7px;padding:13px 0;margin-top:15px;border-top:1px solid #e3e3d9;border-bottom:1px solid #e3e3d9;font-size:12px;font-weight:500;white-space:nowrap;line-height:1.5;color:#656c63}
.food-meta-dot{width:4px;height:4px;border-radius:50%;background:#dfa92c;flex-shrink:0}
.food-card-action{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:17px;font-size:16px;line-height:1.3;font-weight:600;letter-spacing:-.025em}
.food-card-arrow{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:#f4bd3c;color:#172941;flex-shrink:0}
.food-card-arrow svg{width:19px;height:19px}
.food-card--gold{background:#f4bd3c;box-shadow:0 18px 32px #c6952725,0 3px 6px #c6952708}
.food-card--gold .food-card-copy p,.food-card--gold .food-card-meta{color:#534721}
.food-card--gold .food-card-meta{border-color:#17294125}
.food-card--gold .food-meta-dot{background:#fffefa}
.food-card--gold .food-card-arrow{background:#fffefa}
.food-card:hover,.food-card:focus-visible{background:#f4bd3c;box-shadow:0 18px 32px #c6952725}
.food-card:hover .food-card-copy p,.food-card:hover .food-card-meta,.food-card:focus-visible .food-card-copy p,.food-card:focus-visible .food-card-meta{color:#534721}
.food-card:hover .food-card-meta,.food-card:focus-visible .food-card-meta{border-color:#17294125}
.food-card:hover .food-card-arrow,.food-card:focus-visible .food-card-arrow{background:#fffefa}
.food-card:hover .food-meta-dot,.food-card:focus-visible .food-meta-dot{background:#fffefa}
.food-range :focus-visible{outline:3px solid #172941;outline-offset:6px}
.food-range-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:52px;font-size:13px;line-height:1.6}
.food-range-bottom p{color:#687065}.food-range-bottom a{display:inline-flex;align-items:center;gap:22px;min-height:44px;font-weight:500}.food-range-bottom a:hover{text-decoration:underline;text-underline-offset:5px}

@media(min-width:1600px){.food-range{padding-block:88px 64px}.food-grid{margin-top:134px}}
@media(max-width:1279px){.food-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:116px 28px;max-width:1000px;margin:124px auto 0}.food-card{padding:122px 26px 22px;min-height:308px}.food-plate{width:216px;height:216px;top:-84px}.food-card h3{font-size:24px;min-height:60px;max-width:13ch}.food-card-copy p{font-size:14px;min-height:42px}.food-card-meta{font-size:12px;gap:10px}.food-card-action{font-size:18px}.food-card-arrow{width:40px;height:40px}}
@media(max-width:949px){.food-range{padding:56px 0 44px}.food-range-heading{align-items:flex-end;gap:28px}.food-range-heading h2{max-width:14ch}.food-all{gap:16px}.food-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:116px 28px;max-width:720px}.food-range-bottom{margin-top:40px}}
@media(max-width:599px){.food-range{padding:44px 0 34px}.food-range-heading{display:block;text-align:center}.food-eyebrow{font-size:10px;margin-bottom:10px}.food-range-heading h2{font-size:36px;max-width:13ch;margin-inline:auto}.food-range-intro{font-size:14px;max-width:27ch;margin:12px auto 0}.food-all{font-size:14px;margin-top:16px;min-height:44px;gap:18px}.food-grid{grid-template-columns:1fr;max-width:300px;gap:116px;margin-top:120px}.food-card{padding-top:140px;min-height:320px}.food-plate{width:226px;height:226px;top:-88px}.food-card h3{font-size:25px;min-height:36px;max-width:none}.food-card-copy p{min-height:24px;font-size:14px;margin-top:10px}.food-card-meta{margin-top:22px;font-size:12px;padding:15px 0}.food-card-action{padding-top:20px;font-size:19px}.food-card-arrow{width:42px;height:42px}.food-range-bottom{display:block;text-align:center;margin-top:36px}.food-range-bottom a{margin-top:8px;gap:16px}}
@media(max-width:349px){.food-range-heading h2{font-size:32px}.food-card{padding-inline:24px}.food-grid{max-width:270px}}

/* A compact category overview on phones, without six oversized repeated cards. */
@media(max-width:599px){
 .food-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:440px;gap:60px 14px;margin-top:76px}
 .food-card{padding:82px 14px 14px;min-height:204px;border-radius:16px}
 .food-plate{width:140px;height:140px;top:-52px}
 .food-card h3{font-size:18px;min-height:46px;max-width:12ch}
 .food-card-copy p,.food-card-meta{display:none}
 .food-card-action{font-size:14px;padding-top:16px}
 .food-card-arrow{width:32px;height:32px;border-radius:8px}
 .food-card-arrow svg{width:17px;height:17px}
 .food-range-bottom p{display:none}
}

/* Scroll controls depth; the settled state retains the approved static design. */
.food-motion .food-item{perspective:1100px;perspective-origin:50% 45%}
.food-motion .food-card{isolation:auto;transform-style:preserve-3d;transform-origin:50% 80%;transform:translate3d(0,var(--range-lift,0px),var(--range-depth,0px)) rotateX(var(--range-pitch,0deg)) rotateY(var(--range-yaw,0deg));backface-visibility:hidden}
.food-motion .food-plate{transform:translateX(-50%) translate3d(0,var(--plate-lift,0px),var(--plate-depth,0px)) rotateX(var(--plate-pitch,0deg));transform-origin:center;backface-visibility:hidden}
.food-motion .food-item[data-range-state=entering] .food-card,.food-motion .food-item[data-range-state=entering] .food-plate{will-change:transform}
.food-motion .food-item[data-range-state=settled] .food-card{transform:none}
.food-motion .food-item[data-range-state=settled] .food-plate{transform:translateX(-50%)}
.food-motion .food-item:focus-within .food-card{transform:none!important}
.food-motion .food-item:focus-within .food-plate{transform:translateX(-50%)!important}
@media(prefers-reduced-motion:reduce){.food-motion .food-item{perspective:none}.food-motion .food-card{transform:none!important;will-change:auto!important}.food-motion .food-plate{transform:translateX(-50%)!important;will-change:auto!important}}
