/* Complete collection journeys. Scene choices are independent of cover, palette and copy. */
.journey-folio, .journey-signature, .journey-caption { display: none; }
body[data-journey] .module-section { position: relative; min-width: 0; }
body[data-journey]:is(.font-vogue-fashion,[data-font-style="vogue-fashion"]) { --font-sans: 'Montserrat',sans-serif; }
body[data-journey] .module-section:not(#heroSection) { padding-block: calc(64px * var(--chapter-space,var(--atelier-space))); margin-bottom: calc(35px * var(--atelier-space)); border-top: 0 !important; }
body[data-journey] .vintage-section-header { position: relative; margin-bottom: 38px; }
body[data-journey] .vintage-section-header::after { display: none; }
body[data-journey] .section-pretitle { font: 500 11px/1.8 var(--font-sans); letter-spacing: .15em; margin-bottom: 12px; }
body[data-journey] .section-title { font: 400 calc(clamp(34px,5vw,59px) * var(--chapter-title-scale,1))/1.03 var(--font-serif); letter-spacing: -.03em; text-wrap: balance; }
body[data-journey] .journey-folio { display: block; font: 400 11px/1.5 var(--font-sans); letter-spacing: .1em; margin-bottom: 23px; color: var(--text-muted); }
body[data-journey][data-folios="hide"] .journey-folio { display: none; }
body[data-journey] .journey-signature { display: block; font: 400 36px/1.35 var(--font-script); color: var(--text-primary); margin: 28px 0 0; overflow-wrap: anywhere; }
body[data-journey] .journey-signature[hidden], body[data-journey] .journey-caption[hidden] { display: none; }
body[data-journey] :is(.venue-card,.gift-card) { margin-bottom: 0; }
body[data-journey] :is(.venue-icon-wrapper,.milestone-icon) { background: transparent; box-shadow: none; border: 0; border-radius: 0; color: var(--gold-primary); }
body[data-journey] .venue-icon-wrapper { margin-bottom: 22px; width: auto; height: auto; padding: 0; }
body[data-journey] .venue-icon-wrapper svg { width: 37px; height: 37px; }
body[data-journey] .venue-name { font: 400 clamp(25px,3.4vw,37px)/1.14 var(--font-serif); letter-spacing: -.02em; text-wrap: balance; }
body[data-journey] .venue-type { font: 500 11px/1.8 var(--font-sans); letter-spacing: .12em; }
body[data-journey] .venue-address { font: 400 14px/1.8 var(--font-sans); max-width: 29em; }
body[data-journey] .venue-time { font: italic 400 24px/1.5 var(--font-serif); background: none; padding: 0; border: 0; }
body[data-journey] :is(.btn-map,.btn-copy-data) { background: transparent; color: var(--text-primary); border: 1px solid var(--atelier-rule); border-radius: 0; padding: 12px 15px; min-height: 44px; font: 500 11px/1.6 var(--font-sans); box-shadow: none; }
body[data-journey] .btn-map:hover { background: var(--text-primary); color: var(--bg-parchment); transform: none; }
body[data-journey] .parents-blessing-card #parentsSectionQuote { font: italic 400 24px/1.55 var(--font-serif) !important; max-width: 29em; margin: 0 auto 40px !important; }
body[data-journey] .parents-grid { gap: 28px !important; }
body[data-journey] .parents-grid h4 { font: 500 10px/1.8 var(--font-sans) !important; letter-spacing: .13em !important; margin-bottom: 14px !important; }
body[data-journey] .parents-grid p { font: 400 clamp(21px,2.5vw,28px)/1.4 var(--font-serif) !important; text-wrap: balance; }
body[data-journey] .padrinos-box { padding-top: 26px !important; }
body[data-journey] #countdownSection { border-block: 1px solid var(--atelier-rule) !important; }
body[data-journey] .countdown-grid { max-width: 620px; margin-inline: auto; grid-template-columns: repeat(4,minmax(0,1fr)); }
body[data-journey] .countdown-num { font: 400 clamp(38px,6.6vw,72px)/1 var(--font-serif); color: var(--text-primary); background: none; -webkit-text-fill-color: currentColor; }
body[data-journey] .countdown-label { font: 400 10px/1.8 var(--font-sans); letter-spacing: .12em; margin-top: 10px; }
body[data-journey] .calendar-actions { margin-top: 30px; }
body[data-journey] .calendar-actions a { background: transparent; border-width: 0 0 1px; font-size: 11px; }
body[data-journey] #historiaSection .historia-editorial-body { max-width: none !important; }
body[data-journey] #historiaSection .hero-photo-frame { max-width: none; height: auto !important; width: 100%; aspect-ratio: 4/5; margin: 0 !important; padding: 0; border: 0; border-radius: 0; }
body[data-journey] #historiaShortText { font: 400 clamp(23px,3.1vw,35px)/1.5 var(--font-serif) !important; text-wrap: pretty; margin: 0; }
body[data-journey] #historiaShortText:empty { display: none; }
body[data-journey] .timeline-horizontal-track { max-width: none; margin: 0; gap: 0; }
body[data-journey] .milestone-title { font: 400 25px/1.2 var(--font-serif); margin: 0 0 8px; text-wrap: balance; }
body[data-journey] .milestone-desc { font: 400 13px/1.75 var(--font-sans); }
body[data-journey] .timeline-milestone-card { border-radius: 0; }
body[data-journey] #dressCodeSection .dress-code-card { padding: 0; }
body[data-journey] .dress-code-badge { display: inline-block; font: 400 24px/1.3 var(--font-serif); color: var(--text-primary); background: transparent; border: 0; padding: 0 0 18px; letter-spacing: .02em; }
body[data-journey] .dress-code-rules { margin-top: 30px; }
body[data-journey] #dressCodePaletteGrid { gap: 18px; }
body[data-journey] .gift-card { padding: 27px 0; border-bottom: 1px solid var(--atelier-rule) !important; text-align: left; }
body[data-journey] .gift-card-title { font: 400 24px/1.3 var(--font-serif); }
body[data-journey] :is(#giftBankIcon,#giftStoreIcon,#rsvpYesIcon,#rsvpNoIcon) { display: none; }
body[data-journey] .bank-info-box { background: transparent; padding: 20px 0; border: 0; }
body[data-journey] .bank-row { padding: 7px 0; gap: 20px; }
body[data-journey] .bank-label { font: 400 12px/1.7 var(--font-sans); }
body[data-journey] .bank-val { font: 400 15px/1.7 var(--font-sans); overflow-wrap: anywhere; }
body[data-journey] #giftIntroText { font: 400 17px/1.8 var(--font-serif) !important; }
body[data-journey] .gallery-grid { gap: 25px; }
body[data-journey] .gallery-item { position: relative; min-width: 0; background: var(--bg-card); }
body[data-journey] .journey-caption { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; pointer-events: none; position: absolute; left: 0; bottom: 0; width: 100%; padding: 13px 15px; background: var(--journey-paper); color: var(--journey-ink); font: italic 400 17px/1.4 var(--font-serif); text-align: left; overflow-wrap: anywhere; z-index: 3; }
body[data-journey] #hospedajeSection .venue-card { padding: 0; text-align: left; }
body[data-journey] .rsvp-guest-header { text-align: left; margin-bottom: 30px; }
body[data-journey] .rsvp-guest-greeting { font: italic 400 22px/1.4 var(--font-serif); color: var(--text-muted); }
body[data-journey] .rsvp-guest-name { font: 400 clamp(27px,3vw,38px)/1.1 var(--font-serif); color: var(--text-primary); letter-spacing: -.02em; }
body[data-journey] .rsvp-passes-tag { background: transparent; border: 0; padding: 0; font: 400 11px/1.8 var(--font-sans); letter-spacing: .06em; color: var(--text-muted); margin-top: 12px; }
body[data-journey] .rsvp-label { font: 500 12px/1.7 var(--font-sans); color: var(--text-primary); margin-bottom: 9px; }
body[data-journey] :is(.rsvp-input,.rsvp-select,.rsvp-textarea,.rsvp-radio-card) { background: transparent; border: 1px solid var(--atelier-rule); border-radius: 0; box-shadow: none; color: var(--text-primary); font: 400 13px/1.65 var(--font-sans); }
body[data-journey] :is(.rsvp-input,.rsvp-select) { min-height: 47px; }
body[data-journey] .rsvp-textarea { min-height: 105px; }
body[data-journey] .rsvp-radio-options { gap: 8px; }
body[data-journey] .rsvp-radio-card { padding: 14px 12px; }
body[data-journey] .rsvp-radio-card strong { font-weight: 400; }
body[data-journey] .rsvp-radio-card:has(input:checked) { background: color-mix(in oklab,var(--text-primary) 6%,transparent); border-color: var(--text-primary); }
body[data-journey] .rsvp-radio-card input { accent-color: var(--text-primary); }
body[data-journey] .rsvp-field-hint { font: 400 11px/1.7 var(--font-sans); color: var(--text-muted); }
body[data-journey] .btn-rsvp-submit { min-height: 50px; font: 500 12px/1.6 var(--font-sans); letter-spacing: .04em; border: 1px solid var(--text-primary); background: var(--text-primary); color: var(--bg-parchment); border-radius: 0; box-shadow: none; }
body[data-journey] .wedding-footer { border-top: 1px solid var(--atelier-rule); padding-block: 55px 20px; }

/* Letter: a portrait beside a signed note, a program sheet, a reply postcard. */
body[data-journey] #historiaSection[data-scene="letter"] { background: var(--bg-card) !important; border: 1px solid var(--atelier-rule) !important; padding: 48px clamp(24px,5vw,55px); }
body[data-journey] #historiaSection[data-scene="letter"] .historia-editorial-body { display: grid; grid-template-columns: minmax(0,1fr); gap: 30px; }
body[data-journey] #historiaSection[data-scene="letter"] .hero-photo-frame { max-width: 280px; margin: 0 auto !important; padding: 8px; border: 1px solid var(--atelier-rule); background: var(--bg-parchment); aspect-ratio: 1; rotate: -2deg; }
body[data-journey] #historiaSection[data-scene="letter"] #historiaShortText { font-style: italic !important; max-width: 25em; margin-inline: auto; }
body[data-journey] #historiaSection[data-scene="letter"] .journey-signature { margin-top: 0; text-align: right; }
body[data-journey] #cronogramaSection[data-scene="letter"] { max-width: 650px; margin-inline: auto; padding-inline: clamp(15px,4vw,45px); border-inline: 1px solid var(--atelier-rule); }
body[data-journey] #cronogramaSection[data-scene="letter"] .timeline-milestone-card { grid-template-columns: 85px minmax(0,1fr); gap: 0 24px; padding: 26px 0; }
body[data-journey] #cronogramaSection[data-scene="letter"] .milestone-icon { display: none; }
body[data-journey] #cronogramaSection[data-scene="letter"] .milestone-time { grid-column: 1; grid-row: 1 / span 2; font: italic 400 23px/1.3 var(--font-serif); }
body[data-journey] #cronogramaSection[data-scene="letter"] :is(.milestone-title,.milestone-desc) { grid-column: 2; }
body[data-journey] #itinerarySection[data-scene="letter"] .venue-card { border: 1px solid var(--atelier-rule) !important; padding: 38px clamp(22px,4vw,42px); text-align: center; }
body[data-journey] #itinerarySection[data-scene="letter"] .venue-address { margin-inline: auto; }
body[data-journey] #itinerarySection[data-scene="letter"] .venue-card + .venue-card { margin-top: 25px; }
body[data-journey] #rsvpSection[data-scene="letter"] { border: 1px solid var(--atelier-rule) !important; padding: 52px clamp(23px,5vw,55px); background: var(--bg-card) !important; max-width: 780px; }
body[data-journey] #rsvpSection[data-scene="letter"]::before { content: ''; position: absolute; top: 14px; right: 14px; width: 42px; height: 54px; border: 1px dashed var(--atelier-rule); pointer-events: none; }
body[data-journey="letter"] #padresSection { border: 0 !important; box-shadow: none !important; background: transparent !important; }
body[data-journey="letter"] #padresSection .section-title { font-style: italic; }
body[data-journey="letter"] #dressCodeSection { border-block: 1px solid var(--atelier-rule) !important; }
body[data-journey="letter"] .gallery-grid { padding: 16px; }
body[data-journey="letter"] .gallery-item { padding: 10px 10px 33px; border: 1px solid var(--atelier-rule); }
body[data-journey="letter"] .gallery-item img { width: 100%; height: 100%; object-fit: cover; }
body[data-journey="letter"] .gallery-item:nth-child(2) { rotate: -2deg; }
body[data-journey="letter"] .gallery-item:nth-child(3) { rotate: 2deg; }

/* Editorial: numbered spreads, an index of the day and strong alignment. */
body[data-journey] #historiaSection[data-scene="editorial"] { border: 0 !important; background: transparent !important; box-shadow: none !important; }
body[data-journey] #historiaSection[data-scene="editorial"] .vintage-section-header { text-align: left; }
body[data-journey] #historiaSection[data-scene="editorial"] .historia-editorial-body { display: grid; gap: 30px; text-align: left !important; }
body[data-journey] #historiaSection[data-scene="editorial"] .hero-photo-frame { aspect-ratio: 1.12; }
body[data-journey] #historiaSection[data-scene="editorial"] .journey-signature { font-family: var(--font-serif); font-size: 19px; margin-top: 0; }
body[data-journey] #cronogramaSection[data-scene="editorial"] { border-top: 2px solid var(--text-primary) !important; }
body[data-journey] #cronogramaSection[data-scene="editorial"] .vintage-section-header { text-align: left; }
body[data-journey] #cronogramaSection[data-scene="editorial"] .timeline-milestone-card { grid-template-columns: 110px minmax(0,1fr); padding: 31px 0; gap: 0 22px; }
body[data-journey] #cronogramaSection[data-scene="editorial"] .milestone-time { grid-column: 1; grid-row: 1 / span 2; font: 400 28px/1.2 var(--font-serif); }
body[data-journey] #cronogramaSection[data-scene="editorial"] .milestone-icon { display: none; }
body[data-journey] #cronogramaSection[data-scene="editorial"] :is(.milestone-title,.milestone-desc) { grid-column: 2; }
body[data-journey] #cronogramaSection[data-scene="editorial"] .milestone-title { font-size: 29px; }
body[data-journey] #itinerarySection[data-scene="editorial"] { display: grid; grid-template-columns: minmax(0,1fr); gap: 27px; }
body[data-journey] #itinerarySection[data-scene="editorial"] .vintage-section-header { grid-column: 1 / -1; text-align: left; margin: 0 0 18px; }
body[data-journey] #itinerarySection[data-scene="editorial"] .venue-card { text-align: left; padding: 31px 0 0; border-top: 1px solid var(--text-primary) !important; }
body[data-journey] #itinerarySection[data-scene="editorial"] .venue-icon-wrapper { display: none; }
body[data-journey] #itinerarySection[data-scene="editorial"] .venue-buttons { justify-content: start; }
body[data-journey] #rsvpSection[data-scene="editorial"] { max-width: none; padding: 55px clamp(22px,4vw,45px); border: 0 !important; }
body[data-journey] #rsvpSection[data-scene="editorial"] .vintage-section-header { text-align: left; }
body[data-journey="editorial"] :is(#padresSection,#regalosSection,#hospedajeSection) > .vintage-section-header { text-align: left; }
body[data-journey="editorial"] :is(#padresSection,#regalosSection,#hospedajeSection) { border-top: 1px solid var(--atelier-rule) !important; }
body[data-journey="editorial"] #padresSection .parents-grid { text-align: left !important; }
body[data-journey="editorial"] #parentsSectionQuote { text-align: left !important; margin-left: 0 !important; }
body[data-journey="editorial"] #countdownSection { text-align: left; }
body[data-journey="editorial"] #countdownSection .vintage-section-header { text-align: left; }
body[data-journey="editorial"] #dressCodeSection > .vintage-section-header { text-align: left; }
body[data-journey="editorial"] #galeriaSection > .vintage-section-header { text-align: left; border-top: 2px solid var(--text-primary); padding-top: 30px; }
body[data-journey="editorial"][data-gallery-layout="mosaic"] .gallery-grid { grid-template-columns: minmax(0,1.6fr) minmax(0,1fr); align-items: start; }
body[data-journey="editorial"][data-gallery-layout="mosaic"] .gallery-item.full-width { grid-column: 1; grid-row: 1 / span 2; height: 100%; min-height: 520px; }
body[data-journey="editorial"][data-gallery-layout="mosaic"] .gallery-item:not(.full-width) { height: 250px; }

/* Garden: arches, a continuous route and open, breathable invitations. */
body[data-journey] #historiaSection[data-scene="botanical"] { border: 0 !important; background: transparent !important; box-shadow: none !important; }
body[data-journey] #historiaSection[data-scene="botanical"] .section-title { font-style: italic; }
body[data-journey] #historiaSection[data-scene="botanical"] .historia-editorial-body { display: grid; gap: 33px; }
body[data-journey] #historiaSection[data-scene="botanical"] .hero-photo-frame { max-width: 360px; margin-inline: auto !important; border-radius: 50% 50% 0 0; outline: 1px solid var(--atelier-rule); outline-offset: 8px; }
body[data-journey] #historiaSection[data-scene="botanical"] #historiaShortText { font-style: italic !important; }
body[data-journey] #historiaSection[data-scene="botanical"] .journey-signature { margin-top: 0; }
body[data-journey] #cronogramaSection[data-scene="botanical"] .timeline-horizontal-track { max-width: 620px; margin-inline: auto; }
body[data-journey] #cronogramaSection[data-scene="botanical"] .timeline-milestone-card { grid-template-columns: 46px minmax(0,1fr); gap: 4px 25px; padding: 5px 0 44px; border-bottom: 0 !important; }
body[data-journey] #cronogramaSection[data-scene="botanical"] .timeline-milestone-card::before { content: ''; position: absolute; left: 22px; top: 38px; bottom: 0; width: 1px; background: var(--atelier-rule); }
body[data-journey] #cronogramaSection[data-scene="botanical"] .timeline-milestone-card:last-child::before { display: none; }
body[data-journey] #cronogramaSection[data-scene="botanical"] .milestone-icon { grid-column: 1; grid-row: 1 / span 3; border: 1px solid var(--atelier-rule); border-radius: 50% 50% 0 0; width: 45px; height: 45px; padding: 10px; }
body[data-journey] #cronogramaSection[data-scene="botanical"] .milestone-time { grid-column: 2; grid-row: 1; font: 500 11px/1.8 var(--font-sans); letter-spacing: .1em; }
body[data-journey] #cronogramaSection[data-scene="botanical"] .milestone-title { grid-column: 2; grid-row: 2; font-style: italic; font-size: 30px; }
body[data-journey] #cronogramaSection[data-scene="botanical"] .milestone-desc { grid-column: 2; grid-row: 3; }
body[data-journey] #itinerarySection[data-scene="botanical"] .venue-card { max-width: 610px; margin: 0 auto 28px; padding: 65px 28px 40px; border: 1px solid var(--atelier-rule) !important; border-radius: 45% 45% 0 0 !important; text-align: center; }
body[data-journey] #itinerarySection[data-scene="botanical"] .venue-name { font-style: italic; }
body[data-journey] #itinerarySection[data-scene="botanical"] .venue-address { margin-inline: auto; }
body[data-journey] #rsvpSection[data-scene="botanical"] { border-block: 1px solid var(--atelier-rule) !important; padding-inline: clamp(16px,5vw,50px); max-width: 760px; margin-inline: auto; }
body[data-journey] #rsvpSection[data-scene="botanical"] .section-title { font-style: italic; }
body[data-journey="botanical"] .section-title { font-style: italic; }
body[data-journey="botanical"] #padresSection { max-width: 720px; margin-inline: auto; }
body[data-journey="botanical"] #regalosSection { border: 0 !important; box-shadow: none !important; background: transparent !important; }
body[data-journey="botanical"] #dressCodeSection { border-block: 1px solid var(--atelier-rule) !important; }
body[data-journey="botanical"] #hospedajeSection .venue-card { border-left: 1px solid var(--atelier-rule) !important; padding-left: 30px; }
body[data-journey="botanical"][data-gallery-layout="diptych"] .gallery-item:nth-child(2) { border-radius: 50% 50% 0 0; }

/* Gala: broad photographic scenes, a formal program and a contrasting reply. */
body[data-journey] #historiaSection[data-scene="nocturne"] { border: 0 !important; box-shadow: none !important; background: transparent !important; }
body[data-journey] #historiaSection[data-scene="nocturne"] .vintage-section-header { text-align: left; }
body[data-journey] #historiaSection[data-scene="nocturne"] .historia-editorial-body { display: grid; gap: 38px; text-align: left !important; }
body[data-journey] #historiaSection[data-scene="nocturne"] .hero-photo-frame { aspect-ratio: 1.6; }
body[data-journey] #historiaSection[data-scene="nocturne"] #historiaShortText { font-size: clamp(28px,4.3vw,50px) !important; line-height: 1.3 !important; font-style: italic !important; max-width: 24em; }
body[data-journey] #historiaSection[data-scene="nocturne"] .journey-signature { margin-top: 0; font-family: var(--font-serif); font-size: 20px; }
body[data-journey] #cronogramaSection[data-scene="nocturne"] { border-block: 1px solid var(--atelier-rule) !important; }
body[data-journey] #cronogramaSection[data-scene="nocturne"] .timeline-milestone-card { grid-template-columns: minmax(0,1fr) 44px; padding: 30px 0; gap: 0 20px; }
body[data-journey] #cronogramaSection[data-scene="nocturne"] .milestone-time { grid-column: 1; grid-row: 1; font: italic 400 37px/1.15 var(--font-serif); margin-bottom: 14px; }
body[data-journey] #cronogramaSection[data-scene="nocturne"] .milestone-title { grid-column: 1; grid-row: 2; font-size: 27px; }
body[data-journey] #cronogramaSection[data-scene="nocturne"] .milestone-desc { grid-column: 1; grid-row: 3; }
body[data-journey] #cronogramaSection[data-scene="nocturne"] .milestone-icon { grid-column: 2; grid-row: 1 / span 3; align-self: center; }
body[data-journey] #itinerarySection[data-scene="nocturne"] .venue-card { padding: 37px 0; border-bottom: 1px solid var(--atelier-rule) !important; text-align: left; }
body[data-journey] #itinerarySection[data-scene="nocturne"] .venue-name { font-size: clamp(33px,4.5vw,55px); }
body[data-journey] #itinerarySection[data-scene="nocturne"] .venue-buttons { justify-content: start; }
body[data-journey] #rsvpSection[data-scene="nocturne"] {
  --text-primary: var(--journey-paper); --text-muted: var(--journey-paper); --text-light: var(--journey-paper); --gold-primary: var(--journey-paper); --gold-dark: var(--journey-paper);
  --bg-card: var(--journey-ink); --bg-parchment: var(--journey-ink); --chapter-bg: var(--journey-ink); --chapter-ink: var(--journey-paper);
  --atelier-rule: color-mix(in oklab,var(--journey-paper) 30%,transparent);
  background: var(--journey-ink) !important; color: var(--journey-paper); border: 0 !important; padding: 60px clamp(25px,5vw,65px); max-width: none;
}
body[data-journey] #rsvpSection[data-scene="nocturne"] .vintage-section-header { text-align: left; }
body[data-journey] #rsvpSection[data-scene="nocturne"] :is(.rsvp-input,.rsvp-select,.rsvp-textarea,.rsvp-radio-card) { color: var(--journey-paper); background: transparent; }
body[data-journey] #rsvpSection[data-scene="nocturne"] :is(input,textarea)::placeholder { color: color-mix(in oklab,var(--journey-paper) 75%,var(--journey-ink)); }
body[data-journey] #rsvpSection[data-scene="nocturne"] .rsvp-select option { color: var(--journey-paper); background: var(--journey-ink); }
body[data-journey="nocturne"] #padresSection { background: transparent !important; box-shadow: none !important; border: 0 !important; }
body[data-journey="nocturne"] #padresSection .parents-grid { text-align: left !important; }
body[data-journey="nocturne"] #padresSection .vintage-section-header { text-align: left; }
body[data-journey="nocturne"] :is(#dressCodeSection,#regalosSection,#hospedajeSection) { border-top: 1px solid var(--atelier-rule) !important; }
body[data-journey="nocturne"] :is(#dressCodeSection,#regalosSection,#hospedajeSection) .vintage-section-header { text-align: left; }
body[data-journey="nocturne"] #galeriaSection .section-title { font-size: calc(clamp(44px,6vw,75px) * var(--chapter-title-scale,1)); font-style: italic; }
body[data-journey="nocturne"] .gallery-grid { scrollbar-width: thin; scrollbar-color: var(--journey-accent) transparent; }

@media(min-width:760px) {
  body[data-journey] #historiaSection:is([data-scene="editorial"],[data-scene="botanical"]) { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(0,1fr); column-gap: 55px; align-items: center; }
  body[data-journey] #historiaSection:is([data-scene="editorial"],[data-scene="botanical"]) > .vintage-section-header { grid-column: 2; grid-row: 1; align-self: end; margin: 0 0 25px; text-align: left; }
  body[data-journey] #historiaSection:is([data-scene="editorial"],[data-scene="botanical"]) .historia-editorial-body { display: contents; }
  body[data-journey] #historiaSection:is([data-scene="editorial"],[data-scene="botanical"]) .hero-photo-frame { grid-column: 1; grid-row: 1 / span 3; aspect-ratio: 3/4; height: 100% !important; max-height: 720px; }
  body[data-journey] #historiaSection:is([data-scene="editorial"],[data-scene="botanical"]) #historiaShortText { grid-column: 2; grid-row: 2; text-align: left; font-size: 29px !important; }
  body[data-journey] #historiaSection:is([data-scene="editorial"],[data-scene="botanical"]) .journey-signature { grid-column: 2; grid-row: 3; align-self: start; margin-top: 25px; text-align: left; }
  body[data-journey] #historiaSection[data-scene="letter"] .historia-editorial-body { grid-template-columns: minmax(0,1fr) minmax(0,1.6fr); align-items: center; gap: 24px 45px; }
  body[data-journey] #historiaSection[data-scene="letter"] .hero-photo-frame { grid-column: 1; grid-row: 1 / span 2; aspect-ratio: 4/5; }
  body[data-journey] #historiaSection[data-scene="letter"] #historiaShortText { grid-column: 2; text-align: left; font-size: 29px !important; }
  body[data-journey] #historiaSection[data-scene="letter"] .journey-signature { grid-column: 2; }
  body[data-journey] #historiaSection[data-scene="nocturne"] .historia-editorial-body { grid-template-columns: minmax(0,1.6fr) minmax(0,1fr); }
  body[data-journey] #historiaSection[data-scene="nocturne"] .hero-photo-frame { grid-column: 1 / -1; }
  body[data-journey] #historiaSection[data-scene="nocturne"] .journey-signature { align-self: end; text-align: right; }
  body[data-journey] #itinerarySection:is([data-scene="letter"],[data-scene="botanical"],[data-scene="editorial"]) { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(0,1fr); gap: 33px; align-items: start; }
  body[data-journey] #itinerarySection:is([data-scene="letter"],[data-scene="botanical"],[data-scene="editorial"]) > .vintage-section-header { grid-column: 1 / -1; }
  body[data-journey] #itinerarySection:is([data-scene="letter"],[data-scene="botanical"]) .venue-card { width: 100%; max-width: none; margin: 0; }
  body[data-journey] #itinerarySection:is([data-scene="letter"],[data-scene="botanical"]) .venue-card + .venue-card { margin-top: 75px; }
  body[data-journey] #itinerarySection[data-scene="nocturne"] .venue-card { display: grid; grid-template-columns: minmax(0,1.65fr) minmax(0,1fr); column-gap: 60px; }
  body[data-journey] #itinerarySection[data-scene="nocturne"] .venue-icon-wrapper { display: none; }
  body[data-journey] #itinerarySection[data-scene="nocturne"] :is(.venue-type,.venue-name,.venue-time) { grid-column: 1; }
  body[data-journey] #itinerarySection[data-scene="nocturne"] .venue-address { grid-column: 2; grid-row: 1 / span 2; align-self: end; }
  body[data-journey] #itinerarySection[data-scene="nocturne"] .venue-buttons { grid-column: 2; grid-row: 3; }
  body[data-journey] #cronogramaSection[data-scene="nocturne"] .timeline-horizontal-track { grid-template-columns: minmax(0,1.2fr) minmax(0,1fr); column-gap: 65px; }
  body[data-journey] #rsvpSection:is([data-scene="editorial"],[data-scene="nocturne"]) { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.3fr); align-items: start; gap: 50px; }
  body[data-journey] #rsvpSection:is([data-scene="editorial"],[data-scene="nocturne"]) .section-title { font-size: calc(clamp(40px,4.9vw,64px) * var(--chapter-title-scale,1)); }
  body[data-journey="editorial"] #countdownSection { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.5fr); align-items: center; column-gap: 50px; }
  body[data-journey="editorial"] #countdownSection .calendar-actions { grid-column: 2; margin: 0; }
  body[data-journey="editorial"] #countdownSection .vintage-section-header { grid-row: 1 / span 2; margin: 0; }
  body[data-journey="editorial"] #countdownSection .countdown-grid { width: 100%; }
  body[data-journey="editorial"] :is(#dressCodeSection,#hospedajeSection), body[data-journey="nocturne"] :is(#dressCodeSection,#hospedajeSection) { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.4fr); gap: 38px; text-align: left; }
}
@media(max-width:759px) {
  body[data-journey] .module-section:not(#heroSection) { padding-block: calc(43px * var(--chapter-space,var(--atelier-space))); margin-bottom: 27px; }
  body[data-journey] .vintage-section-header { margin-bottom: 28px; }
  body[data-journey] .parents-grid { grid-template-columns: minmax(0,1fr) !important; }
  body[data-journey] .padrinos-box { grid-column: auto !important; }
  body[data-journey] #historiaSection .historia-editorial-body { grid-template-columns: minmax(0,1fr); }
  body[data-journey] #historiaSection .hero-photo-frame { margin-bottom: 8px !important; }
  body[data-journey] #cronogramaSection[data-scene="editorial"] .timeline-milestone-card { grid-template-columns: 84px minmax(0,1fr); gap: 0 17px; }
  body[data-journey] #cronogramaSection[data-scene="editorial"] .milestone-time { font-size: 22px; }
  body[data-journey] #cronogramaSection[data-scene="editorial"] .milestone-title { font-size: 26px; }
  body[data-journey] #cronogramaSection[data-scene="letter"] .timeline-milestone-card { grid-template-columns: 66px minmax(0,1fr); gap: 0 15px; }
  body[data-journey] #cronogramaSection[data-scene="letter"] .milestone-time { font-size: 20px; }
  body[data-journey] #itinerarySection[data-scene="botanical"] .venue-card { padding-top: 62px; }
  body[data-journey="editorial"][data-gallery-layout="mosaic"] .gallery-item.full-width { min-height: 365px; }
  body[data-journey="editorial"][data-gallery-layout="mosaic"] .gallery-item:not(.full-width) { height: 170px; }
  body[data-journey] .gallery-grid { gap: 16px; }
  body[data-journey] .rsvp-radio-options { flex-direction: column; }
}
/* Explicit section controls take precedence over a collection's composition. */
body[data-journey] #mainContent .module-section[data-chapter-align="center"] > .vintage-section-header { text-align: center; }
body[data-journey] #mainContent .module-section[data-chapter-align="left"] > .vintage-section-header { text-align: left; }
body[data-journey] #mainContent .module-section[data-chapter-measure="narrow"] { max-width: 660px !important; margin-inline: auto; }
body[data-journey] #mainContent .module-section[data-chapter-finish="paper"] {
  --text-primary:var(--journey-ink); --text-muted:var(--journey-ink); --text-light:var(--journey-ink); --gold-dark:var(--journey-ink);
  --bg-parchment:var(--journey-paper); --atelier-rule:color-mix(in oklab,var(--journey-ink) 25%,transparent);
  background: var(--chapter-bg) !important;
}
body[data-journey] #mainContent .module-section[data-chapter-finish="ink"] { --bg-parchment:var(--chapter-bg); background: var(--chapter-bg) !important; }
body[data-journey] #mainContent #rsvpSection[data-chapter-finish="paper"] :is(.rsvp-input,.rsvp-select,.rsvp-textarea,.rsvp-radio-card) { color:var(--journey-ink); }
body[data-journey] #mainContent #rsvpSection[data-chapter-finish="paper"] :is(input,textarea)::placeholder { color:var(--journey-ink); opacity:.75; }
body[data-journey] #mainContent #rsvpSection[data-chapter-finish="paper"] .rsvp-select option { background:var(--journey-paper); color:var(--journey-ink); }
body.a11y-high-contrast[data-journey] #rsvpSection { --journey-paper:#fff; --journey-ink:#111; }
/* Comparing scenes must not leave content waiting for an old scroll reveal. */
body[data-catalog-preview="true"][data-catalog-motion="paused"] #mainContent :is(.module-section,.reveal-card,.vintage-section-header,.timeline-milestone-card) { opacity: 1 !important; transform: none !important; }
