/* Page-specific media and responsive refinements; the shared homepage stylesheet owns the layout and visual system. */
.purpose-page .purpose-hero-still,
.purpose-page .purpose-hero-video{position:absolute;inset:0;width:100%;height:100%;}
.purpose-page .purpose-hero-still{background:var(--navy) url('../assets/purpose/responsible-food-production-v2.png') center 55%/cover no-repeat;}
.purpose-page .purpose-hero-video{object-fit:cover;object-position:center 55%;}
.purpose-page .hero-shade{background:linear-gradient(180deg,rgba(12,27,44,.58),rgba(12,27,44,.28) 38%,rgba(12,27,44,.72));}
.purpose-page .purpose-values .section-label{background:#fff;color:var(--navy);}
.purpose-page .purpose-principles{grid-template-columns:repeat(3,minmax(0,1fr));}
.purpose-page .purpose-principles .audience{border-color:rgba(255,255,255,.32);}
.purpose-page .sustainability-layout{align-items:center;}
.purpose-page .sustainability-image{margin:0;min-height:420px;overflow:hidden;background:var(--navy);}
.purpose-page .sustainability-image img{display:block;width:100%;height:100%;min-height:420px;object-fit:cover;}
.purpose-page .sustainability-copy{max-width:650px;}
.purpose-page .purpose-close .experience-copy{color:rgba(255,255,255,.88);}
.purpose-page .purpose-close .underlink{color:#fff;}
@media(max-width:1050px){.purpose-page .purpose-principles{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:760px){
  .purpose-page .purpose-principles{grid-template-columns:1fr;}
  .purpose-page .sustainability-image,.purpose-page .sustainability-image img{min-height:300px;}
  .purpose-page .purpose-hero-video{display:none;}
}
@media(prefers-reduced-motion:reduce){.purpose-page .purpose-hero-video{display:none;}}

/* Centre all page headings and subheadings while keeping longer body copy easy to read. */
.purpose-page h1,
.purpose-page h2,
.purpose-page h3,
.purpose-page .eyebrow,
.purpose-page .brand-line{ text-align:center; }
.purpose-page .section-intro{max-width:900px;margin-left:auto;margin-right:auto;text-align:center;}
.purpose-page .section-intro>p{margin-left:auto;margin-right:auto;}
.purpose-page .purpose-principles .audience{align-items:center;text-align:center;}
.purpose-page .purpose-principles .audience p{max-width:390px;}
.purpose-page .section-label{text-align:left;}
.people-profile{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.82fr);align-items:center;gap:clamp(48px,8vw,120px);min-height:calc(100svh - 92px);}
.people-copy{max-width:660px;}
.people-copy h1{font-size:clamp(48px,6vw,82px);margin:0 0 18px;text-align:left;}
.people-copy .brand-line{text-align:left;margin:0 0 28px;}
.people-copy>p:not(.eyebrow):not(.brand-line){max-width:620px;font-size:17px;line-height:1.75;margin:0 0 18px;}
.people-copy .section-label{text-align:left;}
.people-portrait{margin:0;aspect-ratio:1/1;max-height:620px;overflow:hidden;background:#e8ecea;}
.people-portrait img{display:block;width:100%;height:100%;object-fit:cover;}
.people-close .section-intro{max-width:780px;margin:auto;text-align:center;}
.people-close .section-intro>p{max-width:680px;margin:20px auto;}
@media(max-width:760px){.people-profile{grid-template-columns:1fr;gap:32px;min-height:unset;padding-top:62px;padding-bottom:62px;}.people-copy h1{font-size:54px;}.people-copy>p:not(.eyebrow):not(.brand-line){font-size:16px;}.people-portrait{width:100%;max-height:none;aspect-ratio:1/1;}}
.people-profile{gap:clamp(40px,6vw,90px);padding-top:76px;padding-bottom:76px;min-height:calc(100svh - 92px);}
.people-copy{max-width:600px;}
.people-copy h1{font-size:clamp(48px,5.2vw,72px);margin-bottom:12px;}
.people-copy .brand-line{font-size:clamp(21px,2vw,28px);line-height:1.35;margin-bottom:22px;}
.people-copy>p:not(.eyebrow):not(.brand-line){font-size:16px;line-height:1.7;margin-bottom:15px;}
.people-portrait{width:100%;max-height:560px;}
.people-page .site-header .nav-dropdown{color:#fff;}
.people-page .site-header{position:relative;inset:auto;width:100%;height:92px;background:var(--navy);}
.people-page .site-header nav a,.people-page .site-header .header-contact{color:rgba(255,255,255,.92);}
.people-page .site-header .header-description{color:#fff;}
@media(max-width:1050px){.people-profile{gap:40px;padding-top:64px;padding-bottom:64px;}.people-copy h1{font-size:58px;}.people-copy .brand-line{font-size:22px;}}
.people-copy .section-label{display:none;}
.purpose-hero .hero-inner{width:min(1320px,90%);}
.purpose-hero h1{max-width:1200px;font-size:clamp(40px,4.6vw,72px);text-wrap:balance;}
.purpose-hero .hero-copy{max-width:1050px;}
@media(max-width:760px){.purpose-hero h1{font-size:clamp(38px,9vw,54px);}}
