/* Secondary labels stay legible without competing with the calligraphy. */
.eyebrow,.arrival-top .eyebrow,.arrival-title>.eyebrow,.arrival-foot,.sound-note,.letter .eyebrow,.button,.text-button,.family-lines .eyebrow,.world-bottom .eyebrow,.world-hint,.date-content>.eyebrow,.countdown small,.countdown-note,.section-kicker,.card-time,.venue-art-label,.venue-copy>.eyebrow,.venue-copy .text-button,.calendar-note,.rsvp-heading>.eyebrow,.rsvp-availability,.closing>.eyebrow,.closing>.button,.replay,.control-label,.menu-dialog>.eyebrow,.small-dialog>.eyebrow,.menu-dialog nav small,.scroll-cue{font-size:12px}
.arrival-top .eyebrow,.arrival-foot{letter-spacing:.17em}.arrival-art{mask-image:linear-gradient(90deg,#000,transparent 24%,transparent 76%,#000)}.arrival-top .eyebrow{max-width:calc(100vw - 70px)}.world-bottom .eyebrow{letter-spacing:.12em}.family-lines .eyebrow{letter-spacing:.16em}.control-label{font-size:10px;letter-spacing:.1em}.letter .eyebrow{font-size:9px}.arrival-foot{font-size:10px}.preloader{position:fixed;inset:0;z-index:100;background:var(--wine);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:25px}.preloader p{font:12px var(--sans);letter-spacing:.12em;color:#cbb18d}.loading-line{height:1px;width:100px;background:linear-gradient(90deg,transparent,var(--gold),transparent);animation:loading 1.4s infinite alternate}@keyframes loading{from{transform:scaleX(.2);opacity:.3}to{transform:scaleX(1);opacity:1}}
@media(max-width:500px){.arrival-title>.eyebrow{font-size:10px;letter-spacing:.17em}.arrival-top .eyebrow{font-size:10px}.family-lines .eyebrow{font-size:11px}.world-bottom .eyebrow{font-size:10px}.rsvp-heading>.eyebrow{font-size:11px}.date-content>.eyebrow{font-size:11px}.scene-number{font-size:10px}.closing>.eyebrow{font-size:11px}.arrival h1{font-size:58px}.arrival-title{margin-top:5vh}.world-content{padding-bottom:85px}.world-bottom{max-width:290px}.countdown small{font-size:10px}.arrival-foot{font-size:9px}.arrival-action{margin-top:5px}}
@media(max-height:700px){.arrival h1{font-size:48px}.arrival-title{margin-top:20px}.arrival-top{gap:8px}.arrival-foot{margin:18px 0 27px}.arrival-action .button{min-height:48px;padding:12px 25px}}
@media print{.preloader{display:none!important}}
.arrival.card-expand .letter{z-index:8;transform:translateY(-30%) scale(12);transition:transform 1.1s cubic-bezier(.6,0,.2,1)}.arrival.card-expand .letter>*{opacity:0;transition:opacity .25s}.arrival.card-expand .letter:after{opacity:0}.arrival.card-expand .envelope-stage{z-index:8}.arrival.depart{transform:none}
.arrival-art{background:none;mask-image:none;opacity:.65}.arrival-art:before,.arrival-art:after{content:'';position:absolute;width:43%;height:58%;background-image:url('assets/envelope.webp');background-size:310% 195%;background-repeat:no-repeat}.arrival-art:before{left:0;top:0;background-position:left top;mask-image:radial-gradient(ellipse at top left,#000,transparent 71%)}.arrival-art:after{right:0;bottom:0;background-position:right bottom;mask-image:radial-gradient(ellipse at bottom right,#000,transparent 71%)}
.world-floral{position:absolute;bottom:-3%;width:40%;height:43%;background-image:url('assets/palace.webp');background-size:290% 275%;z-index:2;pointer-events:none;opacity:.88;will-change:transform}.world-floral.left{left:-5%;background-position:left bottom;mask-image:radial-gradient(ellipse at bottom left,#000,transparent 76%);transform:translate3d(calc(var(--camera,0)*-35px),calc(var(--camera,0)*18px),0)}.world-floral.right{right:-5%;background-position:right bottom;mask-image:radial-gradient(ellipse at bottom right,#000,transparent 76%);transform:translate3d(calc(var(--camera,0)*35px),calc(var(--camera,0)*18px),0)}.world-content{z-index:3}.low-motion .world-floral{transform:none}
