/* HOME editorial grid and spacing. Loaded after the shared design system. */
#top .hero-image { position:relative; }
#top .hero-photo-stack {
  position:relative;
  width:min(100%, 50vh, 480px);
}
#top .hero-photo-stack .hero-photo-credit {
  left:0;
  transform:none;
  width:100%;
}
#top .hero-photo-credit {
  position:absolute;
  top:calc(100% + 5px);
  left:50%;
  transform:translateX(-50%);
  width:min(100%, 50vh, 480px);
  color:var(--brand-navy);
  font-size:11px;
  line-height:1.2;
  letter-spacing:.045em;
}
#top .hero-photo-credit span { display:block; }
#top .hero-photo-credit span + span {
  margin-top:2px;
  color:var(--secondary-text);
  letter-spacing:0;
}
@media (max-width:850px) {
  #top .hero-photo-credit { width:min(100%, 45.33svh, 420px); }
  #top .hero-photo-stack { width:min(100%, 45.33svh, 420px); }
}
@media (max-width:700px) {
  #top .hero-photo-credit { width:min(100%, 50svh, 426px); }
  #top .hero-photo-stack { width:min(100%, 50svh, 426px); }
}
@media (max-width:480px) {
  #top .hero-photo-credit { width:min(100%, 48svh, 386px); font-size:clamp(9px, 2.5vw, 11px); }
  #top .hero-photo-stack { width:min(100%, 48svh, 386px); }
}
#top .ingredient-photo { position:relative; }
#top .ingredient-photo .hero-photo-credit {
  left:0;
  transform:none;
  width:100%;
}
#top .signature-photo { position:relative; }
#top .signature-photo .hero-photo-credit {
  left:0;
  transform:none;
  width:100%;
}
main {
  width:calc(100% - 128px);
  max-width:1360px;
  margin-inline:auto;
}
body > header {
  padding-inline:max(64px, calc((100vw - 1360px) / 2));
}
main > section:is(.home-hero,.statement,.photo-story,.editorial-band,.course-preview,.leiker-home,.about-home,.contact-home) {
  padding-inline:0;
  border-bottom:1px solid var(--divider);
}
main > section:is(.statement,.photo-story,.editorial-band,.course-preview,.leiker-home,.about-home,.contact-home) {
  padding-block:120px;
  min-height:0;
}
main > section.contact-home { border-bottom:0; }
.statement,.editorial-band,.course-preview,.leiker-home { grid-template-columns:1fr 2fr; gap:9%; }
.photo-story { gap:8%; }
.signature-story .story-copy { margin-left:0; }
.about-home,.contact-home { grid-template-columns:1fr 1fr; gap:10%; align-items:start; }
.about-home > div { min-width:0; }
.about-home h2 { margin-bottom:0; }
.about-home > div:last-child > p:last-of-type { margin-bottom:1.75rem; }
.leiker-content { width:100%; max-width:780px; }
.leiker-content > .quiet-link { margin-top:2rem; }
#leiker .leiker-parent { margin-bottom:.9rem; }
#leiker h2 { margin-bottom:1.25rem; }
#leiker .leiker-message { margin-bottom:1.75rem; }
#leiker .leiker-description { margin-bottom:1.65rem; }
main > section .section-marker {
  display:block;
  font-size:13px;
  font-weight:500;
  letter-spacing:.12em;
  line-height:1.4;
  color:var(--brand-navy);
}
.statement h2,.story-copy h2,.band-main h2,.contact-home h2 {
  max-width:680px;
  line-height:1.32;
}
.about-home .about-lead { max-width:680px; }
.statement-content > p,.story-copy > p,.band-main > p,.about-home > div > p,.contact-home p {
  max-width:620px;
  line-height:1.8;
}
/* 01 — F&B R&D & CONSULTING: compact the editorial column without moving its grid. */
main > section#consulting {
  padding-block:110px;
  min-height:0;
  height:auto;
  align-items:start;
}
#consulting .statement-content h2 {
  line-height:1.3;
  margin-bottom:40px;
}
#consulting .statement-content > p {
  margin:0;
}
#consulting .service-line {
  margin-top:20px;
  padding-top:20px;
  padding-bottom:0;
  margin-bottom:36px;
}
/* 02 — align the signature copy with its portrait image at a natural height. */
main > section#signature {
  padding-block:110px;
  min-height:0;
  height:auto;
  align-items:center;
}
#signature .story-copy .section-marker { margin-bottom:32px; }
#signature .story-copy h2 { margin-bottom:32px; }
#signature .story-copy > p { margin-bottom:32px; }
#projects .story-photo { position:relative; }
#projects .project-photo-credit {
  position:absolute;
  top:100%;
  left:0;
  margin-top:10px;
  font-size:12px;
  line-height:1.45;
  letter-spacing:.06em;
  color:var(--brand-navy);
}
#projects .project-photo-credit span { display:block; }
#projects .project-photo-credit span + span {
  margin-top:3px;
  letter-spacing:0;
  color:var(--secondary-text);
}
/* Keep the two parts of 04 EDUCATION visually connected on desktop. */
@media (min-width:851px) {
  main > section#education { padding-bottom:84px; }
  main > section#courses { padding-top:84px; }
}
@media (max-width:1100px) {
  main { width:calc(100% - 72px); }
  body > header { padding-inline:36px; }
  .statement,.editorial-band,.course-preview,.leiker-home { gap:6%; }
}
@media (max-width:850px) {
  main { width:calc(100% - 64px); }
  body > header { padding-inline:32px; }
  main > section:is(.statement,.photo-story,.editorial-band,.course-preview,.leiker-home,.about-home,.contact-home) {
    padding-block:88px;
  }
  .photo-story { gap:5%; }
  main > section#consulting { padding-block:88px; }
  main > section#signature { padding-block:88px; }
}
@media (max-width:700px) {
  main { width:calc(100% - 44px); }
  body > header { padding-inline:22px; }
  main > section:is(.statement,.photo-story,.editorial-band,.course-preview,.leiker-home,.about-home,.contact-home) {
    padding-block:72px;
  }
  main > section:is(.home-hero,.statement,.photo-story,.editorial-band,.course-preview,.leiker-home,.about-home,.contact-home) {
    padding-inline:0;
  }
  .statement,.photo-story,.editorial-band,.course-preview,.leiker-home,.about-home,.contact-home {
    grid-template-columns:minmax(0,1fr);
    gap:2.4rem;
  }
  .course-preview,.about-home { gap:1.5rem; }
  .signature-story .story-copy { margin-left:0; }
  .leiker-content { max-width:none; }
  .contact-home { gap:2.6rem; }
  main > section#consulting { padding-block:72px; }
  main > section#signature { padding-block:72px; }
  #signature .story-copy .section-marker { margin-bottom:24px; }
  #projects .project-photo-credit { position:static; }
  /* Keep photo credits readable and attached to their images on phones. */
  #top .hero-photo-credit { font-size:12px; letter-spacing:.015em; }
  #top .ingredient-photo .hero-photo-credit,
  #top .signature-photo .hero-photo-credit { width:100%; }
  #top .signature-photo .hero-photo-credit {
    left:max(0px, calc((100% - 446px) / 2));
    width:min(100%, 446px);
  }
  #top .wide-story { row-gap:0; }
  #top .wide-story .ingredient-photo .hero-photo-credit {
    position:static;
    margin-top:5px;
    margin-bottom:40px;
  }
  #top .wide-story .story-copy .section-marker { margin-bottom:20px; }
  #top .signature-story { row-gap:3.5rem; }
  #projects .project-photo-credit { margin-top:5px; letter-spacing:.015em; }
  #leiker .leiker-keyword-separator { display:none; }
  #leiker .leiker-keyword-last { display:block; white-space:nowrap; }
  #global .band-main > p,
  #about > div:last-child > p { word-break:keep-all; overflow-wrap:break-word; }
}
@media (max-width:480px) {
  #top .hero-photo-credit { font-size:12px; }
}
