/* Shared text/media sections. Loaded after each page's local style block.
   Equal columns keep alternating media edges on one seam; media fills each row. */
.sx-chap,.sz-chap,.ku-chap{
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:stretch;
}
.sx-chap-media,.sz-chap-media,.ku-chap-media{
  width:100%;height:auto;aspect-ratio:auto;align-self:stretch;
}
.sx-chap-media,.sz-chap-media{min-height:min(60svh,600px)}
.sx-chap-copy,.sz-chap-copy{padding:clamp(30px,4vw,56px) clamp(24px,3.5vw,56px)}
.sx-chap-media video{object-fit:cover}
.sx-chap:hover .sx-chap-media img,.sz-chap:hover .sz-chap-media img,.ku-chap:hover .ku-chap-media img{
  transform:none;
}
/* Wedding: the sticky frame fills the visible height below the header. */
.sx-split > .sx-wrap{max-width:none;padding-inline:0}
.sx-split-grid{
  --split-visible-header:var(--split-header-height,84px);
  grid-template-columns:repeat(2,minmax(0,1fr));
}
body:has(.ms-topbar.sx-hidden) .sx-split-grid{--split-visible-header:0px}
.sx-split-media{
  width:100%;height:calc(100svh - var(--split-visible-header));min-height:0;aspect-ratio:auto;
  top:var(--split-visible-header);margin-top:0;
}
.sx-split-copy{padding-inline:clamp(28px,3.5vw,56px)}
.sx-split-copy .sx-blk p,.sx-split-copy .sx-blk ul{max-width:58ch}
.sx-split-media .sx-vid video{object-fit:cover}
@media(max-width:960px){
  /* Full-width media stays above the scrolling copy. Share its height with
     the text clearance so the first paragraph starts below the frame. */
  .sx-split-grid{--split-frame-height:44svh;grid-template-columns:minmax(0,1fr)}
  .sx-split-media{
    height:var(--split-frame-height);top:var(--split-visible-header);z-index:2;
  }
  .sx-split-copy{
    z-index:1;
    padding:calc(var(--sx-top,0px) + var(--split-frame-height) + clamp(18px,4vw,30px)) clamp(20px,5vw,56px) 0;
  }
}
@media(max-width:940px){
  .sx-chap,.sz-chap,.ku-chap{grid-template-columns:minmax(0,1fr)}
  .sx-chap-media,.sz-chap-media,.ku-chap-media{min-height:clamp(240px,65vw,480px)}
}
