/* Readable supporting copy, with the approved typefaces and title hierarchy intact. */
.eyebrow{font-size:12px;letter-spacing:.2em}
.event-intro{font-size:20px;line-height:1.5}
.event-description{font-size:16px;line-height:1.75;max-width:430px}
.event-message{margin-top:24px;padding:0 0 22px;border-bottom:1px solid #bca37899}
.event-message .event-intro{display:flex;flex-wrap:wrap;justify-content:center;gap:0 .25em;color:var(--ink);font-size:22px;line-height:1.5;padding-bottom:20px;border-bottom:1px solid #bca37899}
.event-message .event-intro span{white-space:nowrap}
.event-message .event-description{max-width:410px;margin-top:14px;line-height:1.7;text-wrap:pretty}
.event-message .event-invitation{margin-top:10px}
.event-message+.event-date{margin-top:19px;padding-top:0;border-top:0}
.event-date{font-size:22px}
.progress-label{font-size:clamp(10px,2.6vw,12px)}
.peek-small{font-size:clamp(10.5px,2.4vw,14px);line-height:1.2;letter-spacing:.16em;margin-top:0}
.destination-details dt,.travel-times dt{font-size:12px;letter-spacing:.1em;line-height:1.5}
.destination-details dd{font-size:24px}
.destination-details .sub-detail,.travel-times .sub-detail{font-size:14px;line-height:1.65}
.travel-intro{font-size:16px;line-height:1.7;max-width:390px}
.travel-times dd{font-size:24px}
.dresscode-copy>p:not(.eyebrow):not(.dresscode-motto){font-size:16px;line-height:1.75}
.dresscode-motto{font-size:22px}
.packing-list p{font-size:15px;line-height:1.7}
.packing-list strong{font-size:22px}
.packing-list li{padding:14px 0}
.dresscode-visual figcaption{font-size:11px;letter-spacing:.14em}
.site-header nav{font-size:14px}
.is-scrollable .wordmark{display:flex;flex-direction:column;align-items:center;gap:3px;line-height:1.05;text-align:center}
.is-scrollable .wordmark em{display:block;margin-left:0;line-height:1.05}
.header-logo{width:auto;height:48px;object-fit:contain;flex:none}
.closing-signoff{width:max-content;max-width:100%;align-self:center;margin:auto auto 24px;padding-top:32px}
.closing-brand-strip{position:relative;width:100%;aspect-ratio:1670 / 173;margin-bottom:18px}
.closing-brand-strip svg{position:absolute;inset:0;width:100%;height:100%}
.closing-card .closing-signoff .closing-statement{margin:0;padding:0}
.location-link{font-size:15px}
.slide-count{font-size:13px}
.slide-label,.scroll-hint{font-size:12px}
.replay-link{font-size:14px}
.closing-message>p{max-width:390px;font-size:17px}

@media(max-width:700px){
  .open-hint{font-size:18px}
  .is-scrollable .wordmark{font-size:20px}
  .is-scrollable .wordmark em{display:block;margin-left:0;font-size:27px;line-height:1.05}
  .site-header nav{font-size:13px}
  .header-logo{height:46px}
  .eyebrow{font-size:clamp(10.5px,2.7vw,12px);letter-spacing:.18em}
  .event-intro{font-size:18px}
  .event-description{font-size:15px;line-height:1.75}
  .event-date{font-size:20px}
  .event-message{margin-top:22px;padding:0 0 18px}
  .event-message .event-intro{font-size:clamp(17.5px,4.7vw,20px);padding-bottom:18px}
  .event-message .event-description{line-height:1.65}
  .destination-details dt,.travel-times dt{font-size:11px}
  .destination-details dd{font-size:23px}
  .destination-details .sub-detail,.travel-times .sub-detail{font-size:14px}
  .travel-intro{font-size:15px}
  .travel-times dd{font-size:24px}
  .dresscode-copy>p:not(.eyebrow):not(.dresscode-motto){font-size:15px}
  .dresscode-motto{font-size:20px}
  .packing-list strong{font-size:21px}
  .packing-list p{font-size:14px}
  .dresscode-visual figcaption{font-size:11px}
  .closing-message>p{font-size:clamp(14px,3.9vw,16px)}
  .slide-navigation{padding-left:14px;padding-right:14px}
  .slide-navigation a{font-size:13px;gap:6px}
  .slide-position{min-width:82px}
  .slide-count{font-size:12px}
  .slide-label,.scroll-hint{font-size:11px;letter-spacing:0}
  .replay-link{font-size:12px}
}

@media(max-width:370px){
  .is-scrollable .site-header{padding-left:17px;padding-right:17px}
  .travel-intro{margin-left:-3px;margin-right:-3px}
  .eyebrow{letter-spacing:.14em}
  .slide-navigation{padding-left:11px;padding-right:11px;gap:5px}
  .slide-navigation a{font-size:12px;gap:5px}
  .slide-position{min-width:78px}
  .slide-label,.scroll-hint{font-size:10.5px}
}

/* At enlarged text settings, allow the carefully set closing lines to reflow. */
@media(max-width:310px){
  .closing-first-line,.closing-card .closing-statement{white-space:normal}
}

@media(max-height:540px) and (min-width:701px){
  .welcome-content{transform:none}
  .welcome-title{font-size:32px;margin-bottom:18px}
  .welcome-title em{width:220px;margin-top:-12px}
  .envelope{width:min(340px,50vw)}
  .open-hint{font-size:16px;margin-top:10px}
}
