/* Food-led marketing design. Product screenshots retain their original UI. */
:root {
  --site-paper: #faf7ef;
  --site-panel: #f0eee4;
  --site-forest: #123e30;
  --site-cream: #fffdf6;
  --site-display: Georgia, 'Times New Roman', serif;
  --muted: #53635e;
}
body { background: var(--site-paper); overflow-wrap: anywhere; }
.skip-link { position: fixed; top: 8px; left: 16px; z-index: 100; padding: 10px 14px; border-radius: var(--radius-sm); color: var(--site-cream); background: var(--ink); transform: translateY(-150%); }
.skip-link:focus-visible { transform: translateY(0); outline: 3px solid var(--lime); outline-offset: 2px; }
.site-header { background: var(--site-cream); box-shadow: none; border-color: var(--line); }
.site-header .brand img { width: 142px; }
.site-nav a { padding-inline: 11px; }
.section-shell { scroll-margin-top: 100px; }
.food-hero.section-shell { display: block; padding-top: 44px; padding-bottom: 0; min-height: 0; }
.food-hero-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; }
.food-hero-grid > *, .photo-studio-panel > * { min-width: 0; }
.food-hero-copy { padding-block: 26px; }
.food-hero .eyebrow, .photo-studio .eyebrow { border: 0; background: none; padding: 0; margin-bottom: 20px; letter-spacing: .09em; }
.food-hero h1 { margin: 0; max-width: 12ch; font-family: var(--site-display); font-weight: 500; font-size: clamp(3.1rem, 5.4vw, 5rem); line-height: 1.04; letter-spacing: -.055em; }
.food-hero h1 em { color: var(--green-dark); font-weight: inherit; }
.food-hero .hero-subtitle { margin: 24px 0 0; max-width: 43ch; font-size: 1.1rem; }
.food-hero .action-row { justify-content: flex-start; margin-top: 26px; }
.food-hero .button { min-height: 50px; padding: 13px 22px; white-space: normal; }
.food-hero-note { margin: 17px 0 0; color: var(--muted); font-size: .82rem; }
.food-hero-visual { position: relative; margin: 0; padding-bottom: 28px; }
.food-hero-photo { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; border-radius: var(--radius-lg); }
.food-hero-phone { position: absolute; width: 27%; left: -6%; bottom: 4%; padding: 6px; background: var(--ink); border: 1px solid var(--line-strong); border-radius: 23px; box-shadow: var(--shadow-md); transform: rotate(-7deg); }
.food-hero-phone img { width: 100%; height: auto; border-radius: 18px; }
.food-hero-visual figcaption { position: absolute; right: 16px; bottom: 10px; max-width: 65%; padding: 15px 19px; background: var(--site-cream); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow-sm); }
.food-hero-visual figcaption strong { display: block; color: var(--green-dark); font-size: 1rem; }
.food-hero-visual figcaption span { color: var(--muted); font-size: .75rem; }
.food-highlights { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 36px; padding: 23px 0; border-block: 1px solid var(--line-strong); gap: 28px; }
.food-highlights p { margin: 0; display: grid; grid-template-columns: auto 1fr; column-gap: 13px; align-items: center; }
.food-highlights svg { width: 25px; height: 25px; grid-row: span 2; fill: none; stroke: var(--green-dark); stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.food-highlights strong { font-size: .9rem; }
.food-highlights span { font-size: .8rem; color: var(--muted); }
.food-platform { padding-top: 72px; padding-bottom: 32px; }
.food-platform .nk-product-showroom { background: var(--site-panel); }
.food-platform .nk-caption-index { color: var(--green-dark); }
.photo-studio { padding-block: 72px; }
.photo-studio-panel { display: grid; grid-template-columns: .9fr 1.1fr; gap: 48px; align-items: center; }
.photo-studio h2 { font-family: var(--site-display); font-size: clamp(2.4rem, 4.2vw, 3.65rem); font-weight: 500; letter-spacing: -.045em; line-height: 1.1; margin: 0 0 22px; }
.photo-studio h2 em { color: var(--green-dark); }
.photo-studio-copy > p { color: var(--ink-soft); max-width: 45ch; }
.photo-studio-copy .photo-principle { padding-left: 18px; border-left: 3px solid var(--green); color: var(--site-forest); font-weight: 650; }
.photo-link { display: inline-flex; align-items: center; gap: 12px; padding-block: 10px; color: var(--green-dark); font-weight: 700; text-decoration: underline; text-underline-offset: 5px; }
.photo-comparison { margin: 0; min-width: 0; }
.photo-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.photo-example { position: relative; min-width: 0; }
.photo-example img { width: 100%; height: auto; aspect-ratio: .8; object-fit: cover; border-radius: var(--radius); }
.photo-example span { position: absolute; left: 12px; top: 12px; padding: 6px 11px; border-radius: var(--radius-pill); background: var(--site-cream); color: var(--site-forest); font-size: .75rem; font-weight: 750; max-width: calc(100% - 24px); }
.photo-example:last-child span { background: var(--lime); }
.photo-comparison figcaption { margin-top: 12px; color: var(--muted); font-size: .75rem; line-height: 1.5; }
.photo-steps { list-style: none; counter-reset: photo-step; display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; margin: 38px 0 0; padding: 26px 0 0; border-top: 1px solid var(--line-strong); }
.photo-steps li { counter-increment: photo-step; padding-left: 41px; position: relative; }
.photo-steps li::before { content: '0' counter(photo-step); position: absolute; left: 0; top: 0; color: var(--green-dark); font-size: .85rem; font-weight: 750; }
.photo-steps h3 { margin: 0 0 9px; font-size: 1rem; }
.photo-steps p { color: var(--ink-soft); font-size: .9rem; margin: 0; }
.photo-usage { font-size: .78rem; line-height: 1.6; color: var(--muted); margin: 26px 0 0; max-width: 100ch; }
.quality-grid { gap: 0; border-block: 1px solid var(--line-strong); }
.quality-card { box-shadow: none; background: transparent; border: 0; border-radius: 0; padding: 26px 22px; }
.quality-card::before { display: none; }
.quality-card + .quality-card { border-left: 1px solid var(--line-strong); }
.quality-card h3 { font-size: 1.12rem; }
.quality-card p { font-size: .93rem; }
.section-intro h2, .nk-demo-intro h2 { font-family: var(--site-display); font-weight: 500; letter-spacing: -.035em; }
.pricing-section { background: var(--site-forest); }
.pricing-summary { background: transparent; border: 0; border-left: 1px solid var(--line-strong); border-radius: 0; }
.pricing-summary strong { font-family: var(--site-display); font-weight: 500; color: var(--site-cream); font-size: clamp(4.5rem, 8vw, 7rem); }
.pricing-summary small, .pricing-section .marketplace-note { color: var(--experience-text-on-dark); }
.pricing-hero h2 { font-family: var(--site-display); font-weight: 500; letter-spacing: -.035em; }
.faq-list details { box-shadow: none; background: var(--site-cream); }
.faq h2, .lead-capture-copy h2 { font-family: var(--site-display); font-weight: 500; letter-spacing: -.035em; }
.lead-capture-section { background: var(--site-forest); }
.lead-capture-section .lead-form { background: var(--site-cream); border-color: var(--line); color: var(--ink); }
.lead-capture-section .lead-form label > span { color: var(--ink-soft); }
.lead-capture-section .lead-form :is(input, textarea) { color: var(--ink); background: var(--experience-paper); border-color: var(--line-strong); }
.lead-capture-section .lead-form :is(input, textarea)::placeholder { color: var(--muted); }
.lead-capture-section .lead-form :is(.form-note, .optional-marker) { color: var(--muted); }
.lead-capture-section .lead-form .required-marker { color: var(--green-dark); }
.lead-capture-section .lead-form-notice { color: var(--green-dark); background: var(--site-panel); border-color: var(--line-strong); }
.lead-capture-section .lead-form-notice a { color: inherit; }
.food-hero a:focus-visible, .photo-studio a:focus-visible { outline: 3px solid var(--green); outline-offset: 4px; }
@media (max-width: 1000px) {
  .food-hero-grid { gap: 30px; }
  .food-hero h1 { font-size: clamp(3rem, 6vw, 4rem); }
  .food-hero .hero-subtitle { font-size: 1rem; }
  .photo-studio-panel { gap: 28px; }
  .quality-card { padding-inline: 16px; }
}
@media (max-width: 760px) {
  .food-hero.section-shell { padding-top: 28px; }
  .food-hero-grid { grid-template-columns: 1fr; gap: 25px; }
  .food-hero-copy { padding: 0; }
  .food-hero h1 { font-size: clamp(2.8rem, 10.8vw, 4.7rem); max-width: 15ch; }
  .food-hero .eyebrow { margin-bottom: 16px; }
  .food-hero .hero-subtitle { margin-top: 18px; max-width: 50ch; }
  .food-hero .action-row { flex-direction: row; display: flex; gap: 10px; margin-top: 20px; }
  .food-hero .button { width: auto; flex: 1; padding-inline: 12px; font-size: .88rem; }
  .food-hero-note { margin-top: 12px; }
  .food-hero-visual { margin-left: 22px; padding-bottom: 18px; }
  .food-hero-photo { aspect-ratio: 1.35; }
  .food-hero-phone { width: 24%; left: -6%; bottom: 4%; border-radius: 15px; padding: 4px; }
  .food-hero-phone img { border-radius: 11px; }
  .food-hero-visual figcaption { right: 10px; bottom: 0; padding: 11px 13px; }
  .food-hero-visual figcaption strong { font-size: .9rem; }
  .food-hero-visual figcaption span { font-size: .7rem; }
  .food-highlights { margin-top: 26px; gap: 15px; padding: 20px 0; }
  .food-highlights p { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
  .food-highlights strong { font-size: .78rem; }
  .food-highlights span { display: none; }
  .food-platform { padding-top: 48px; }
  .photo-studio { padding-block: 48px; }
  .photo-studio-panel { grid-template-columns: 1fr; gap: 24px; }
  .photo-studio-copy > p { max-width: none; }
  .photo-example img { aspect-ratio: 1; }
  .photo-steps { grid-template-columns: 1fr; gap: 22px; margin-top: 26px; }
  .quality-grid { grid-template-columns: 1fr 1fr; }
  .quality-card:nth-child(3) { border-left: 0; }
  .quality-card:nth-child(n+3) { border-top: 1px solid var(--line-strong); }
  .pricing-summary { border-left: 0; border-top: 1px solid var(--line-strong); padding-left: 0; }
}
@media (max-width: 360px) {
  .food-hero h1 { font-size: 2.75rem; }
  .food-hero .button { font-size: .78rem; padding-inline: 8px; }
  .food-hero-visual figcaption { max-width: 70%; }
  .photo-example span { left: 7px; top: 7px; padding: 5px 7px; font-size: .65rem; }
  .quality-grid { grid-template-columns: 1fr; }
  .quality-card + .quality-card { border-left: 0; border-top: 1px solid var(--line-strong); }
}
@media (prefers-reduced-motion: reduce) {
  .food-hero * { animation: none !important; }
}
