/* Keep authored words intact; the shared fitter adapts oversized copy. */
body.public-invitation :is(h1,h2,h3,p,[data-invitation-fit],.invitation-prose){
  overflow-wrap:normal!important;
  word-break:normal!important;
  -webkit-hyphens:none!important;
  hyphens:none!important;
  min-width:0;
}
[data-invitation-fit="single"]{white-space:nowrap}

[data-invitation-fit]{display:block;max-width:100%}
.organic-gate-copy,.poster-gate>div:last-child,.calendar-gate>div:last-child,.album-gate>div:last-child,.scrap-gate>div:last-child,.dino-gate-card,.book-cover-copy,.poster-title,.calendar-hero>div:first-of-type,.album-hero>div:first-child,.scrap-note,.space-hero-copy,.space-photo-log-copy,.family-venue>div,.invitation-footer{min-width:0}
/* Long unbroken titles must not enlarge the centred cover's grid track. */
.warm-page .warm-hero{grid-template-columns:minmax(0,1fr)}
.warm-hero-paper{min-width:0;max-width:100%}
/* Responsive type is sized by the template, not mobile text inflation. */
body.public-invitation{-webkit-text-size-adjust:100%;text-size-adjust:100%}
