/* Hickory cinematic layer. Progressive enhancement only: the editorial DOM remains the source of truth. */
.kitchen-story{background:var(--dark);color:var(--cream)}
.kitchen-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}
.kitchen-heading .eyebrow{margin:0;color:#e5b48d}
.kitchen-heading .text-link{font-size:14px}
.kitchen-panels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.kitchen-panel figure{background:#111713;overflow:hidden}
.kitchen-panel img{width:100%;aspect-ratio:4/5;object-fit:contain}
.kitchen-copy{padding:24px 0 0}
.kitchen-copy .eyebrow{color:#e5b48d;margin-bottom:14px}
.kitchen-copy h2{font-size:clamp(29px,3vw,44px);margin-bottom:20px}
.kitchen-copy h2 em{color:#efa36b}
.kitchen-copy p{max-width:440px;color:#d5d9d1;font-size:15px}
.kitchen-count{display:none}
@media(max-width:760px){.kitchen-panels{grid-template-columns:1fr;gap:42px}.kitchen-heading{align-items:start;flex-wrap:wrap}.kitchen-panel img{max-height:560px}.kitchen-copy h2{font-size:38px}}

@media(prefers-reduced-motion:no-preference){
  .cinema-ready{--cinema-ease:cubic-bezier(.16,1,.3,1)}
  .cinema-ready .header{background:#171c1ac7;backdrop-filter:blur(16px) saturate(.82);transition:background .4s,border-color .4s,backdrop-filter .4s}
  .cinema-ready.cinema-scrolled .header{background:#171c1af5;border-bottom-color:#efa36b38;backdrop-filter:blur(18px) saturate(.9)}
  .cinema-progress{position:fixed;z-index:40;inset:0 0 auto;height:2px;background:#ffffff12;pointer-events:none}
  .cinema-progress i{display:block;height:100%;background:#ed965e;transform:scaleX(var(--cinema-document,0));transform-origin:left}
  .cinema-ready .cinema-reveal{opacity:0;transform:translateY(24px);transition:opacity .75s var(--cinema-ease),transform .9s var(--cinema-ease);transition-delay:var(--cinema-delay,0ms)}
  .cinema-ready .cinema-visible{opacity:1;transform:none}
  .cinema-ready .cinema-scene{position:relative;display:block;padding:0;isolation:isolate}
  .cinema-ready .cinema-stage{position:sticky;top:var(--cinema-header,var(--header-height));height:calc(100svh - var(--cinema-header,var(--header-height)));min-height:0;overflow:hidden;isolation:isolate}

  /* HERO: the photograph is the moving object. The stage never grows a decorative green box. */
  .cinema-ready .cinema-hero{height:170svh;background:var(--dark)}
  .cinema-hero .cinema-stage{display:block;padding:0;background:#101613}
  .cinema-hero .hero-image{position:absolute;z-index:1;inset:0;overflow:hidden;background:transparent;clip-path:inset(var(--cinema-hero-y,7svh) var(--cinema-hero-x,14vw) round var(--cinema-hero-radius,46px));will-change:clip-path}
  .cinema-hero .hero-image img{width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:50% 58%;opacity:var(--cinema-hero-image-opacity,.78);transform:scale(var(--cinema-hero-scale,1.085));filter:saturate(.9) contrast(1.04) brightness(.94);will-change:transform,opacity}
  .cinema-hero .hero-image:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(8,13,10,.92) 0%,rgba(8,13,10,.70) 34%,rgba(8,13,10,.28) 68%,rgba(8,13,10,.08) 100%),linear-gradient(0deg,rgba(8,13,10,.62) 0%,transparent 48%,rgba(8,13,10,.16) 100%);opacity:var(--cinema-hero-overlay,1);will-change:opacity}
  .cinema-hero .hero-content{position:absolute;z-index:3;inset:0;max-width:none;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(34px,5vw,72px) var(--gutter) clamp(94px,10svh,120px);opacity:var(--cinema-hero-copy-opacity,1);transform:translateY(var(--cinema-hero-copy-y,0));pointer-events:none;will-change:opacity,transform}
  .cinema-hero .hero-content>*{pointer-events:auto}
  .cinema-hero .hero-content .eyebrow{color:#f0c4a2;text-shadow:0 2px 18px #0008}
  .cinema-hero h1{font-size:clamp(54px,min(7vw,12svh),104px);max-width:720px;text-shadow:0 10px 36px #0008}
  .cinema-hero .hero-content>p{max-width:430px;color:#f0efe8;text-shadow:0 5px 24px #0009}
  .cinema-hero .actions{filter:drop-shadow(0 8px 20px #0005)}
  .cinema-hero .hero-foot{position:absolute;z-index:4;inset:auto var(--gutter) 23px;padding-top:0;color:#f4f0e7d9;text-shadow:0 4px 18px #0008;opacity:var(--cinema-hero-foot-opacity,1)}
  .cinema-hero .hero-foot a{position:relative;padding-right:18px}
  .cinema-hero .hero-foot a:after{content:'';position:absolute;right:0;top:5px;width:5px;height:5px;border-right:1px solid #ed965e;border-bottom:1px solid #ed965e;transform:rotate(45deg);animation:cinema-cue 2s ease-in-out infinite}

  /* KITCHEN STORY: one shared editorial system, three deliberate beats. */
  .cinema-ready .cinema-kitchen{height:300svh;background:#151d18}
  .cinema-kitchen .cinema-stage{padding:0 var(--gutter)}
  .cinema-kitchen .kitchen-heading{position:absolute;inset:28px var(--gutter) auto;z-index:4;margin:0;padding-bottom:20px;border-bottom:1px solid #ffffff24}
  .cinema-kitchen .kitchen-panels{position:absolute;inset:112px var(--gutter) 58px;display:block}
  .cinema-kitchen .kitchen-panel{position:absolute;inset:0;display:grid;grid-template-columns:1.08fr 1fr;gap:9%;align-items:center;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(24px);transition:opacity .5s ease,transform .8s var(--cinema-ease),visibility .5s}
  .cinema-kitchen .kitchen-panel.cinema-active{opacity:1;visibility:visible;pointer-events:auto;transform:none}
  .cinema-kitchen .kitchen-panel figure{height:100%;min-height:0;background:#111713;border-radius:6px;box-shadow:0 24px 64px #0000001f}
  .cinema-kitchen .kitchen-panel figure>img{height:100%;width:100%;aspect-ratio:auto;object-fit:contain;transform:scale(var(--cinema-panel-scale,1));will-change:transform}
  .cinema-kitchen .kitchen-copy{padding:0}
  .cinema-kitchen .kitchen-copy .eyebrow{font-size:13px;letter-spacing:.16em}
  .cinema-kitchen .kitchen-copy h2{font-size:clamp(38px,min(5vw,8svh),68px);max-width:540px}
  .cinema-kitchen .kitchen-copy p{font-size:16px;line-height:1.7}
  .cinema-kitchen .kitchen-count{display:block;position:absolute;right:var(--gutter);bottom:20px;margin:0;font-size:14px;letter-spacing:.12em;color:#e5b48d}

  /* TABLE: calm after the narrative peak, with only a restrained photographic release. */
  .cinema-ready .cinema-table{height:140svh;background:var(--dark)}
  .cinema-table .cinema-stage{display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:38px var(--gutter);gap:8%}
  .cinema-table .experience-image{height:100%;min-height:0;padding:0;overflow:hidden;clip-path:inset(var(--cinema-table-inset,4%) 0 round var(--cinema-table-radius,28px));will-change:clip-path}
  .cinema-table .experience-image img{height:100%;width:100%;max-height:none;aspect-ratio:auto;object-fit:contain;transform:scale(var(--cinema-table-scale,1.025));will-change:transform}
  .cinema-table .experience-content{padding:0;opacity:var(--cinema-table-copy-opacity,1);transform:translateY(var(--cinema-table-copy-y,20px));will-change:transform,opacity}
  .cinema-table .experience-content h2{font-size:clamp(38px,min(4.8vw,8svh),66px)}

  .cinema-ready .photo-link img{transition:filter .4s,box-shadow .4s,transform .6s var(--cinema-ease)}
  .cinema-ready .photo-link:hover img{box-shadow:0 18px 35px #1c251b24;transform:translateY(-3px)}
  .cinema-touch .cinema-kitchen .kitchen-panel,.cinema-touch .cinema-table .experience-image,.cinema-touch .cinema-table .experience-content{transition-duration:.62s}
  @keyframes cinema-cue{0%,100%{translate:0 0;opacity:.6}50%{translate:0 5px;opacity:1}}
}

@media(max-width:900px) and (prefers-reduced-motion:no-preference){
  .cinema-ready .cinema-hero{height:160svh}
  .cinema-hero .cinema-stage{display:block;padding:0}
  .cinema-hero .hero-image{clip-path:inset(var(--cinema-hero-y,3.5svh) var(--cinema-hero-x,4.5vw) round var(--cinema-hero-radius,24px))}
  .cinema-hero .hero-image img{object-position:50% 56%}
  .cinema-hero .hero-image:after{background:linear-gradient(180deg,rgba(8,13,10,.62) 0%,rgba(8,13,10,.42) 28%,rgba(8,13,10,.16) 52%,rgba(8,13,10,.78) 100%),linear-gradient(90deg,rgba(8,13,10,.42),transparent 76%)}
  .cinema-hero .hero-content{justify-content:flex-start;padding:clamp(34px,6svh,62px) var(--gutter) 104px}
  .cinema-hero h1{font-size:clamp(46px,min(12vw,7svh),64px);line-height:.98;margin-bottom:16px;max-width:94%}
  .cinema-hero .hero-content .eyebrow{font-size:10px;margin-bottom:14px}
  .cinema-hero .hero-content>p{font-size:14px;line-height:1.5;max-width:340px;margin-bottom:18px}
  .cinema-hero .actions{gap:8px}
  .cinema-hero .button{padding:10px 15px;min-height:44px;font-size:13px}
  .cinema-hero .hero-foot{bottom:18px;font-size:9px;gap:14px}

  .cinema-ready .cinema-kitchen{height:285svh}
  .cinema-kitchen .kitchen-heading{top:22px;padding-bottom:16px;gap:12px;flex-wrap:nowrap;align-items:center}
  .cinema-kitchen .kitchen-heading .eyebrow{font-size:10px}
  .cinema-kitchen .kitchen-heading .text-link{font-size:12px;white-space:nowrap}
  .cinema-kitchen .kitchen-panels{inset:102px var(--gutter) 48px}
  .cinema-kitchen .kitchen-panel{grid-template-columns:1fr;grid-template-rows:auto auto;align-content:start;align-items:start;gap:22px}
  .cinema-kitchen .kitchen-panel figure{height:clamp(270px,31svh,440px);min-height:0;align-self:start}
  .cinema-kitchen .kitchen-panel figure>img{width:100%;height:100%;max-height:none;object-fit:contain}
  .cinema-kitchen .kitchen-copy{position:relative;z-index:1;padding:0}
  .cinema-kitchen .kitchen-copy h2{font-size:clamp(30px,8vw,42px);margin-bottom:12px}
  .cinema-kitchen .kitchen-copy .eyebrow{font-size:11px;margin-bottom:10px}
  .cinema-kitchen .kitchen-copy p{font-size:14px;line-height:1.55;margin:0}
  .cinema-kitchen .kitchen-count{font-size:12px;bottom:16px}

  .cinema-ready .cinema-table{height:130svh}
  .cinema-table .cinema-stage{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto;gap:22px;padding:24px var(--gutter) 28px}
  .cinema-table .experience-content h2{font-size:clamp(32px,9vw,46px);margin-bottom:15px}
  .cinema-table .experience-content .eyebrow{margin-bottom:14px;font-size:11px}
  .cinema-table .experience-content p{font-size:14px;line-height:1.5;margin-bottom:18px}
  .cinema-table .experience-content .button{font-size:13px;min-height:44px;padding:10px 15px}
}

/* Story assets share the same frame/copy system. Brand badge is metadata, never the hero of the panel. */
.kitchen-panel .angus-story-photo,.kitchen-panel .story-bread-photo{object-fit:contain;object-position:50% 50%}
.kitchen-panel .kitchen-copy .angus-association-badge{display:block!important;width:150px!important;max-width:45%!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;margin-top:18px}
@media(prefers-reduced-motion:no-preference){
  .cinema-kitchen .kitchen-panel .angus-story-photo,.cinema-kitchen .kitchen-panel .story-bread-photo{object-fit:contain;object-position:50% 50%}
  .cinema-kitchen .kitchen-panel .kitchen-copy .angus-association-badge{width:150px!important;max-width:45%!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important}
}
@media(max-width:900px) and (prefers-reduced-motion:no-preference){
  .cinema-kitchen .kitchen-panel .kitchen-copy .angus-association-badge{width:132px!important;max-width:42%!important;margin-top:14px}
}
