/* Task 5.6: image composition and motion only. Locked typography, copy and colour ownership stay intact. */
.me56-media{display:block;min-width:0;max-width:100%;margin:clamp(1.75rem,4vw,3.5rem) 0;color:inherit}
.me56-media picture{display:block;overflow:hidden;border-radius:8px;background:#f2ede5;isolation:isolate}
.me56-media img{display:block;width:100%;max-width:100%;height:auto;aspect-ratio:8/5;object-fit:cover;object-position:var(--me56-x,50%) var(--me56-y,50%);border-radius:0}
.me56-media figcaption{font:400 .8rem/1.55 var(--font-body,Inter,sans-serif);color:inherit;opacity:1;max-width:75ch;margin:.65rem 0 0}
.me56-lead{grid-column:1/-1;width:100%;margin:1.5rem 0 0}
.me56-lead img{aspect-ratio:2.15;max-height:620px}
.me56-wide img,.me56-chapter img{aspect-ratio:16/9}
.me56-chapter{margin:0 0 2rem}
.me56-transition{max-width:1600px;width:calc(100% - 64px);margin:0 auto clamp(2rem,6vw,6rem)}
.me56-transition img{aspect-ratio:21/9}
.me56-editorial{max-width:960px}
.me56-existing{grid-column:1/-1;min-width:0;max-width:100%;margin:2rem 0}
.me56-existing.me56-lead img{aspect-ratio:21/9;width:100%;height:auto;object-fit:cover}
.me56-existing.me52-hero-photo{margin:2rem 0!important}
.me52-package .me-pkg-hero>.me56-lead{margin-top:1.5rem}
.me52-package .me56-media{clear:both}
.me52-chapter-opening+.me56-chapter{margin-top:0}
.me51-signature .me56-wide{margin-bottom:0}
.me51-home .me51-journey.me56-journey-composition{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.65fr);align-items:center;gap:clamp(1.5rem,4vw,3.5rem)}
.me56-journey-composition>.me56-media{grid-column:1;grid-row:1;margin:0;align-self:stretch}
.me56-journey-composition>.me56-media picture{height:calc(100% - 3.5rem);min-height:200px}
.me56-journey-composition>.me56-media img{height:100%;min-height:200px;object-fit:cover}
.me56-journey-copy{grid-column:2;grid-row:1;min-width:0}
.me56-journey-copy .me51-journey-index{display:flex;gap:1rem;align-items:baseline;margin-bottom:.75rem}
.me56-journey-copy .me51-journey-decision{margin-top:1rem}
.me51-pathway-list .me56-media{margin:0 0 1.5rem}
.me51-pathway-list .me56-media img{aspect-ratio:16/9}
.me56-closing-composition{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,4rem);align-items:center}
.me56-closing-copy{min-width:0}
.me56-closing-composition>.me56-media{margin:0;min-width:0;align-self:center}
.me56-closing-composition>.me56-media img{aspect-ratio:4/3}
.me51-enquiry .me56-closing-composition{text-align:left}
.me51-enquiry .me56-closing-copy>p{margin-inline:0}
.me51-enquiry .me56-closing-copy .me-actions{justify-content:flex-start}
.me54-destination .me56-wide,.me55-page .me56-wide{margin-block:2.5rem}
.me54-destination .me56-editorial,.me55-page .me56-editorial{margin-inline:auto}
.me55-hero>.me56-lead img{aspect-ratio:21/8;max-height:450px}
/* No new colour rules: the accepted contrast component remains authoritative for every CTA. */
@media(prefers-reduced-motion:no-preference){
  body.me-foundation :is(.me-button,.me-pkg-cta){transition:transform 160ms ease,background-color 160ms ease,color 160ms ease,border-color 160ms ease}
  body.me-foundation :is(.me-button,.me-pkg-cta):active{transform:translateY(0)}
  @media(hover:hover) and (pointer:fine){
    body.me-foundation :is(.me-button,.me-pkg-cta):not(:disabled):not([aria-disabled="true"]):hover{transform:translateY(-2px)}
    .me56-media img{transition:transform 650ms cubic-bezier(.2,.65,.3,1)}
    .me56-media a:hover img,.me56-media a:focus-visible img{transform:scale(1.018)}
  }
}
@media(max-width:63.99rem){.me56-closing-composition{gap:2rem}.me56-lead img{aspect-ratio:16/9}}
@media(max-width:47.99rem){
  .me56-closing-composition,.me51-home .me51-journey.me56-journey-composition{grid-template-columns:1fr;gap:1.75rem}
  .me56-journey-copy{grid-column:1;grid-row:1}
  .me56-journey-composition>.me56-media{grid-column:1;grid-row:2}
  .me56-journey-composition>.me56-media picture{height:auto;min-height:0}
  .me56-journey-composition>.me56-media img{height:auto;min-height:0}
  .me56-closing-composition>.me56-media{width:100%}
  .me56-media{margin-block:1.75rem}
}
@media(max-width:37.49rem){
  .me56-media img,.me56-lead img,.me56-wide img,.me56-chapter img,.me56-transition img,.me55-hero>.me56-lead img{aspect-ratio:4/3;max-height:none}
  .me56-existing.me56-lead img{aspect-ratio:4/3}
  .me56-transition{width:calc(100% - 40px)}
  .me56-media figcaption{font-size:.75rem}
}
@media(prefers-reduced-motion:reduce){
  .me56-media,.me56-media img,[data-me56-reveal]{animation:none!important;transition:none!important;transform:none!important;opacity:1!important}
  body.me-foundation :is(.me-button,.me-pkg-cta){transition:none!important;transform:none!important}
}


/* Version 0.2.0: a varied editorial rhythm, without changing colour ownership. */
.me56-editorial-composition{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:clamp(1.75rem,4vw,4rem);align-items:center;max-width:none!important}
.me56-editorial-copy{min-width:0}
.me56-editorial-composition>.me56-media{width:100%;margin:0}
.me56-editorial-composition>.me56-media img{aspect-ratio:4/3}
.me55-reading.me56-editorial-composition{margin-inline:0}
.me51-position>.me56-position{grid-column:1;grid-row:2;margin:0}
.me51-position>div:first-child{grid-column:1/-1}
.me51-position>div:nth-child(2){grid-column:2;grid-row:2;align-self:center}
.me56-position img{aspect-ratio:4/3}
.me51-trust-grid>.me56-trust{grid-column:2;grid-row:1;margin:0}
.me51-trust-grid>.me51-evidence{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.me56-trust img{aspect-ratio:4/3}
.me56-planning{max-width:820px;margin:1.5rem 0 2.5rem auto}
.me56-planning img{aspect-ratio:2.1}
.me56-lead[data-me56-image="elephants-kilimanjaro"] img,
.me56-lead[data-me56-image="elephant-mountain-wetland"] img,
.me56-chapter[data-me56-image="elephants-kilimanjaro"] img{aspect-ratio:8/5;max-height:none}
.me52-signature .me52-chapter{position:relative}
.me52-signature .me52-chapter-opening{border-left:2px solid #C5A46D;padding-left:1.25rem}
.me52-signature .me56-chapter{margin-top:1.5rem;margin-bottom:2rem}
.me52-signature .me56-editorial{max-width:960px;margin-inline:auto}
.me52-signature #chapter-diani>.me56-existing img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.me56-editorial-composition .me56-media figcaption{max-width:50ch}
@media(max-width:63.99rem){
 .me56-editorial-composition{gap:2rem;grid-template-columns:1fr 1fr}
 .me56-lead img{aspect-ratio:16/9}
}
@media(max-width:47.99rem){
 .me56-editorial-composition{grid-template-columns:1fr}
 .me56-editorial-composition>.me56-media{max-width:100%;margin:0}
 .me51-position>div:first-child,.me51-position>div:nth-child(2),.me51-position>.me56-position{grid-column:1;grid-row:auto}
 .me51-trust-grid>.me56-trust,.me51-trust-grid>.me51-evidence{grid-column:1;grid-row:auto}
 .me51-trust-grid>.me51-evidence{grid-template-columns:1fr}
 .me56-position,.me56-trust,.me56-planning{width:100%;margin-block:1.5rem}
 .me56-planning{max-width:none}
 .me52-signature .me52-chapter-opening{padding-left:1rem}
}
@media(max-width:37.49rem){
 .me56-lead[data-me56-image] img,.me56-chapter[data-me56-image] img,.me56-planning img,.me56-position img,.me56-trust img{aspect-ratio:4/3}
 .me52-signature #chapter-diani>.me56-existing img{aspect-ratio:4/5;object-position:50% 50%}
}
@media(prefers-reduced-motion:reduce){
 main[data-me56-version] *,main[data-me56-version] *::before,main[data-me56-version] *::after{scroll-behavior:auto!important}
 .me56-media,.me56-media picture,.me56-media img,[data-me56-reveal]{animation:none!important;transition:none!important;transform:none!important;opacity:1!important;clip-path:none!important}
}

/* Match the accepted homepage's tablet stacking breakpoint. */
@media(max-width:55.99rem){
 .me51-position,.me51-trust-grid{grid-template-columns:minmax(0,1fr)}
 .me51-position>div:first-child,.me51-position>div:nth-child(2),.me51-position>.me56-position{grid-column:1;grid-row:auto}
 .me51-trust-grid>.me56-trust,.me51-trust-grid>.me51-evidence{grid-column:1;grid-row:auto}
 .me51-trust-grid>.me51-evidence{grid-template-columns:minmax(0,1fr)}
}

/* Preserve full wildlife subjects, and avoid inherited block display on split compositions. */
main[data-me56-version] .me56-editorial-composition{display:grid}
.me56-chapter[data-me56-image="leopard-in-bushland"] img{aspect-ratio:8/5;max-height:none}
@media(max-width:37.49rem){.me56-chapter[data-me56-image="leopard-in-bushland"] img{aspect-ratio:4/3}}

/* The accepted Diani panorama retains its complete camel group and horizon at every width. */
.me56-coast-existing img{width:100%;height:auto!important;max-height:none!important;aspect-ratio:16/9!important;object-fit:cover}

/* Own the columns of the new wrappers at every breakpoint, including package templates. */
main[data-me56-version] .me56-editorial-composition{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr)!important}
main[data-me56-version] .me56-closing-composition{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)!important}
@media(max-width:55.99rem){
 main[data-me56-version] .me56-editorial-composition,main[data-me56-version] .me56-closing-composition{grid-template-columns:minmax(0,1fr)!important}
}
