/* Weekend Pitmasters Phase 5 photography */
.phase5-photo{display:block;overflow:hidden;border-radius:12px;background:#221d19}
.phase5-photo img{display:block;width:100%;height:auto;object-fit:cover}
.phase5-home-hero{width:100%;aspect-ratio:16/9;align-self:center;min-width:0}
.phase5-home-hero img{height:100%;object-fit:cover}
.phase5-dawn{position:relative;isolation:isolate;max-width:1200px;margin:48px auto 0;overflow:hidden;border-radius:12px;max-height:320px}
.phase5-dawn .phase5-photo{border-radius:0}
.phase5-dawn img{width:100%;height:320px;object-fit:cover}
.phase5-dawn:after{content:"";position:absolute;inset:0;background:rgba(18,16,14,.55);pointer-events:none}
.guide-page>.phase5-photo{margin:20px 0 28px;aspect-ratio:16/9}
.guide-page>.phase5-photo img{height:100%}
.guide-page>.phase5-author{width:88px;aspect-ratio:1;border-radius:50%;margin:12px 0 24px}
.guide-page>.phase5-author img{height:100%;border-radius:50%}
.guide-page>.phase5-photo:not(.phase5-author){margin-block:24px}
.support-page>.phase5-photo{max-width:720px;margin:16px 0 32px}
.support-page>.phase5-photo:has(img[src*="portrait"]){width:160px;aspect-ratio:1;border-radius:50%}
.support-page>.phase5-photo:has(img[src*="portrait"]) img{height:100%;border-radius:50%}
.phase5-credits{list-style:none;padding:0;display:grid;gap:24px;margin:32px 0}
.phase5-credit{display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px;align-items:start;background:#fffdf8;border:1px solid #d9c3a0;border-radius:12px;padding:16px}
.phase5-credit .phase5-photo{width:96px;height:96px}
.phase5-credit .phase5-photo img{height:100%;object-fit:cover}
.phase5-credit p{overflow-wrap:anywhere;margin:6px 0}
@media(min-width:800px){.hero-layout>.phase5-home-hero{grid-column:2;grid-row:1 / span 2;align-self:stretch}.phase5-credits{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:799px){.hero-layout>.phase5-home-hero{order:2;margin-top:16px}.phase5-dawn img{height:210px}}
@media(prefers-reduced-motion:reduce){.phase5-photo img{animation:none!important;transition:none!important}}

.hero-meat-picker__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(108px,1fr));gap:12px}
.hero-meat-btn{min-height:116px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}
.hero-meat-btn .phase5-cut-photo{width:72px;height:72px;display:block;border-radius:50%;overflow:hidden;border:3px solid transparent;flex:none}
.hero-meat-btn .phase5-cut-photo img{width:100%;height:100%;object-fit:cover;display:block}
.hero-meat-btn.is-selected .phase5-cut-photo,.hero-meat-btn[aria-pressed="true"] .phase5-cut-photo{border-color:#c93b0d}
.hero-meat-btn:focus-visible{outline:2px solid #c93b0d;outline-offset:2px}

/* Homepage entry UX, October 2026. One start action, direct cut links, one food photo.
   This page-scoped layer follows the shared 4.0 stylesheet intentionally. */
body:not([data-planner-route="true"]) #top.hero {
  padding: 24px 0 32px;
  background: var(--char-800);
  border-top: 1px solid color-mix(in srgb, var(--kraft-300) 25%, transparent);
}
body:not([data-planner-route="true"]) #top.hero .hero-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(0, .96fr);
  gap: 24px 32px;
  align-items: center;
}
body:not([data-planner-route="true"]) #top.hero .hero-left {
  display: flex;
  flex-direction: column;
  gap: 24px;
  grid-column: 1;
  grid-row: 1;
  min-width: 0;
}
body:not([data-planner-route="true"]) #top.hero .hero-content {min-width: 0;}
body:not([data-planner-route="true"]) #top.hero .hero-content h1 {
  max-width: 17ch;
  margin: 0 0 12px;
  font-size: clamp(48px, 5.5vw, 76px);
  line-height: 1;
  letter-spacing: -.012em;
  text-wrap: balance;
}
body:not([data-planner-route="true"]) #top.hero .hero-subhead {
  max-width: 47ch;
  margin: 0 0 20px;
  font-size: 18px;
  line-height: 1.5;
  color: var(--kraft-300);
}
body:not([data-planner-route="true"]) #top.hero .hero-primary-start {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  box-sizing: border-box;
  min-height: 52px;
  max-width: 350px;
  padding: 12px 20px;
  border: 1px solid var(--ember-600);
  border-radius: 10px;
  background: var(--ember-600);
  color: var(--paper-50);
  font: 700 16px/1.35 var(--font-body);
  text-align: center;
  text-decoration: none;
}
body:not([data-planner-route="true"]) #top.hero .hero-primary-start:hover {
  background: var(--ember-500);
  border-color: var(--ember-500);
  color: var(--char-950);
}
body:not([data-planner-route="true"]) #top.hero .hero-primary-helper {
  margin: 8px 0 0;
  color: var(--kraft-300);
  font: 400 14px/1.5 var(--font-body);
}
body:not([data-planner-route="true"]) #top.hero[data-returning="true"] .hero-primary-start,
body:not([data-planner-route="true"]) #top.hero[data-returning="true"] .hero-primary-helper {
  display: none;
}
body:not([data-planner-route="true"]) #top.hero .hero-returning {
  margin: 12px 0 0;
}
body:not([data-planner-route="true"]) #top.hero .hero-returning__cta {
  color: var(--ember-600);
}
body:not([data-planner-route="true"]) #top.hero .hero-cta-zone {
  padding: 0;
  margin: 0;
}
body:not([data-planner-route="true"]) #top.hero .hero-quick-cuts__label {
  margin: 0 0 12px;
  color: var(--paper-50);
  font: 600 15px/1.4 var(--font-body);
}
body:not([data-planner-route="true"]) #top.hero .hero-quick-cuts__links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
body:not([data-planner-route="true"]) #top.hero .hero-cut-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-height: 44px;
  padding: 8px 14px;
  border: 1px solid var(--kraft-300);
  border-radius: 10px;
  background: transparent;
  color: var(--paper-50);
  font: 600 15px/1.3 var(--font-body);
  text-align: center;
  text-decoration: none;
}
body:not([data-planner-route="true"]) #top.hero .hero-cut-link:hover,
body:not([data-planner-route="true"]) #top.hero .hero-cut-link:focus-visible {
  border-color: var(--ember-500);
  background: var(--char-800);
}
body:not([data-planner-route="true"]) #top.hero .hero-visual {
  display: block;
  grid-column: 2;
  grid-row: 1;
  min-width: 0;
  height: 100%;
  margin: 0;
}
body:not([data-planner-route="true"]) #top.hero .hero-food-figure {
  width: 100%;
  height: 100%;
  max-height: 490px;
  min-height: 320px;
  margin: 0;
  aspect-ratio: 4 / 5;
  border-radius: 12px;
  overflow: hidden;
}
body:not([data-planner-route="true"]) #top.hero .hero-food-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 47%;
}
body:not([data-planner-route="true"]) #top.hero .hero-preview--outcomes {
  grid-column: 1 / -1;
  grid-row: 2;
  min-width: 0;
}
body:not([data-planner-route="true"]) #top.hero .hero-preview__description {
  max-width: 60ch;
}
@media (max-width: 900px) {
  body:not([data-planner-route="true"]) #top.hero .hero-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }
  body:not([data-planner-route="true"]) #top.hero .hero-left {display: contents;}
  body:not([data-planner-route="true"]) #top.hero .hero-content {
    grid-column: 1;
    grid-row: 1;
  }
  body:not([data-planner-route="true"]) #top.hero .hero-visual {
    grid-column: 1;
    grid-row: 2;
    height: auto;
  }
  body:not([data-planner-route="true"]) #top.hero .hero-food-figure {
    width: 100%;
    height: auto;
    min-height: 0;
    max-height: 240px;
    aspect-ratio: 16 / 7;
  }
  body:not([data-planner-route="true"]) #top.hero .hero-food-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }
  body:not([data-planner-route="true"]) #top.hero .hero-cta-zone {
    grid-column: 1;
    grid-row: 3;
  }
  body:not([data-planner-route="true"]) #top.hero .hero-preview--outcomes {
    grid-column: 1;
    grid-row: 4;
  }
}
@media (max-width: 520px) {
  body:not([data-planner-route="true"]) #top.hero {padding: 16px 0 24px;}
  body:not([data-planner-route="true"]) #top.hero .hero-content h1 {
    max-width: 19ch;
    margin-bottom: 12px;
    font-size: clamp(40px, 10.2vw, 48px);
    line-height: .99;
  }
  body:not([data-planner-route="true"]) #top.hero .hero-subhead {
    max-width: 36ch;
    margin-bottom: 16px;
    font-size: 16px;
    line-height: 1.5;
  }
  body:not([data-planner-route="true"]) #top.hero .hero-primary-start {
    width: 100%;
    max-width: none;
  }
  body:not([data-planner-route="true"]) #top.hero .hero-food-figure {
    aspect-ratio: 16 / 8;
    max-height: none;
  }
  body:not([data-planner-route="true"]) #top.hero .hero-preview__milestones {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }
  body:not([data-planner-route="true"]) #top.hero .hero-preview__milestone {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr) auto;
    gap: 4px 8px;
    padding: 12px;
    align-items: center;
  }
  body:not([data-planner-route="true"]) #top.hero .hero-preview__milestone .icon {
    grid-row: 1 / span 2;
  }
  body:not([data-planner-route="true"]) #top.hero .hero-preview__milestone strong {
    grid-column: 3;
    grid-row: 1;
    font-size: 15px;
  }
  body:not([data-planner-route="true"]) #top.hero .hero-preview__milestone > span:last-child {
    grid-column: 3;
    grid-row: 2;
    text-align: right;
  }
}


/* Footer legal/action links share one vertically centered 44px tap target.
   The privacy action is a button; reset its native control metrics so it
   sits on the same row as the neighboring links on phones and desktops. */
.site-footer-expanded .sfx-bottom-links > a,
.site-footer-expanded .sfx-bottom-links > button {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  align-self: center;
  flex: 0 0 auto;
  min-height: 44px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  appearance: none;
  color: var(--paper-50);
  font: inherit;
  line-height: 1.5;
  text-decoration: none;
  white-space: nowrap;
  vertical-align: middle;
}
