:root{color-scheme:light;--navy:#071d40;--cream:#fff1d7;--papaya:#e64e08;--muted:#35445c;--line:#071d4030}html,body{background:#fff1d7;color:#071d40}#site{background:#ff7908;box-shadow:none}.section{isolation:isolate}#site .section{background:#ff7908;padding:90px 30px 85px}#site .section:before,.invitation:before{content:'';position:absolute;inset:0;background:url('assets/poster-waves.svg') center/100% 100% no-repeat;pointer-events:none;z-index:-1}.section>*{position:relative;z-index:1}.lineup-atmosphere,.filament-frame,.poster-frame,.continuous-filaments,.entry-halo,.entry-thread{display:none!important}.site-header{height:58px;padding-top:8px;padding-bottom:8px;background:#ff7908f5;border-bottom:1px solid #071d4015;color:#071d40}.sound-bars i{background:#071d40}.header-identity{font-size:9px}.hero-symbol,.poster-symbol,.invitation-symbol,.arrival-symbol{filter:none!important;mix-blend-mode:normal!important;animation:none!important}.hero{display:flex;align-items:stretch;min-height:calc(100svh - 76px)!important;padding:95px 28px 55px!important;text-align:center;gap:0}.hero-art{flex:none!important;margin:0 0 30px!important;min-height:0!important;height:auto!important;max-height:none!important;background:none!important}.hero-symbol{position:static!important;display:block;width:61%!important;max-width:270px!important;height:auto;margin:auto}.hero h1{font-family:'Playfair Display',Georgia,serif;font-weight:600;font-size:clamp(30px,9.4vw,53px);letter-spacing:-.055em;margin:0 -12px;line-height:1.25}.hero-overline,.hero-subtitle{font:400 clamp(17px,4.7vw,26px)/1.4 'Playfair Display',Georgia,serif;letter-spacing:.13em;margin:0 0 4px}.hero-subtitle{margin:4px 0 0}.hero-couple{font:400 16px/1.5 Inter,Arial,sans-serif;margin:24px 0 28px}.hero-actions{margin-top:0}.date{font:500 17px/1.5 'Playfair Display',Georgia,serif!important;letter-spacing:.13em!important}.event-location{font:500 11px/1.5 'Playfair Display',Georgia,serif!important;letter-spacing:.12em!important;color:#071d40!important;text-align:center!important;margin:0 0 28px!important}.hero .date{margin:0 0 3px!important}.hero .event-location{margin:0 0 35px!important}.button{border-radius:7px;letter-spacing:.03em;font:500 14px/1.3 'Playfair Display',Georgia,serif;min-height:56px}.primary{background:#071d40;color:#fff1d7}.papaya{background:#fa5a08;color:#fff1d7}.button:hover{color:#fff1d7}.text-button:hover,a:hover{color:#052c73}.explore{font:400 15px Georgia,serif;text-transform:none;letter-spacing:0;text-decoration:underline;text-underline-offset:6px}.practical-shortcut{font-size:9px!important;margin-top:4px!important;justify-content:center}.section-kicker{color:#071d40;line-height:1.5}.program{min-height:0!important}#site .program{padding:85px 25px 95px!important}.poster-symbol{width:140px;margin:0 auto 20px}.poster-brand{font:500 20px/1.2 'Playfair Display',Georgia,serif!important;letter-spacing:.1em!important;transform:none!important}.program h2{font:600 clamp(58px,16vw,88px)/1.15 'Playfair Display',Georgia,serif!important;letter-spacing:.025em!important;transform:none!important;margin:0 0 34px!important;color:#071d40}.lineup-day h3{font:500 21px Georgia,serif;color:#071d40;letter-spacing:.1em;margin:0 0 8px}.poster-act{font:600 clamp(23px,6.8vw,38px)/1.25 'Playfair Display',Georgia,serif!important;color:#071d40!important;padding:6px 0!important;min-height:44px;letter-spacing:-.05em!important;white-space:nowrap}.poster-act span{transform:none!important}.poster-act:hover{color:#fff1d7!important;text-shadow:none}.lineup-day+.lineup-day{margin-top:24px}.lineup-day+.lineup-day:before{content:'✦';display:block;font-size:32px;margin-bottom:24px}.poster-footer{margin-top:32px}.poster-footer .date{margin-bottom:4px}.poster-footer .couple{display:none}.poster-footer .event-location{margin-bottom:0!important}#site .rsvp{background:#fff1d7;min-height:0;padding:80px 28px 100px}.register-flower{width:85px;display:block;margin:0 auto 20px}.rsvp>.section-kicker{text-align:center;margin-bottom:16px}.rsvp h2{font-size:clamp(35px,9.7vw,54px);font-weight:600;letter-spacing:-.05em;text-align:center;margin-bottom:20px}.rsvp .eyebrow{display:none}.rsvp>.text-button{display:flex;justify-content:center;font-size:9px;margin-bottom:24px}.field-label{color:#071d40;font:500 15px Georgia,serif;margin:15px 0 9px;display:block}input:not([type=radio]):not([type=range]),select,textarea{background:#fff7e8;color:#071d40;border:1px solid #071d40aa;border-radius:5px}input::placeholder,textarea::placeholder{color:#536074}.attendance{flex-wrap:wrap}.attendance label{background:#fff7e8;border:1px solid #071d40;padding:13px 9px;border-radius:5px;flex:1}.attendance label:has(:checked){background:#ff6b08;color:#071d40}.partner-details{background:#fff7e8;border-color:#071d4033}.partner-details legend,.rsvp-summary dt{color:#923809}.step-label{color:#071d40;text-align:center;letter-spacing:.1em;margin:18px 0 25px}.bottom-nav{background:#fff1d7;border-color:#071d4033;box-shadow:0 -4px 16px #071d4010}.bottom-nav a{color:#071d40;font-size:11px}.bottom-nav a[aria-current]{color:#bd4000;background:#ff790810}.bottom-nav a[aria-current]:before,.bottom-nav .has-news:after{background:#e95600}.bottom-nav a svg{width:23px}.news h2,.information h2,.game h2{font-weight:600;letter-spacing:-.04em}.news-feature{background:#fff1d7;border:1px solid #071d40;border-radius:0}.news-small{border-color:#071d4040}.news-small>span,.game-gallery-heading span,.game h2 span{color:#071d40}.game>p{text-shadow:none!important}.game-gallery figcaption{color:#071d40}.information a{color:#071d40}.information .primary{color:#fff1d7}.information details{border-color:#071d4044}.information .venue-name{font-size:24px}.news .small,.small,.demo-note{color:#35445c}#site footer{background:#fff1d7;color:#071d40;border:0;padding-bottom:35px}dialog{background:#fff1d7;color:#071d40;border:1px solid #071d40;border-radius:12px}dialog::backdrop{background:#071d40a8}#act-heading{color:#071d40}#game-image-dialog{background:#fff1d7}.act-detail-footer{color:#071d40}.invitation{isolation:isolate;background:#ff7908;color:#071d40}.entry-top,.entry-kicker,.invitation-note,.entry-identity .once,.invitation-actions .text-button{color:#071d40}.entry-emblem .invitation-symbol{filter:none;mix-blend-mode:normal}.entry-start{background:#071d40;border:0;border-radius:6px;color:#fff1d7}.entry-start-copy small,.entry-play{color:#fff1d7}.entry-sound i{background:#071d40}.arrival-symbol{width:145px}.invitation .entry-top .event-location{font-size:8px!important}.resume,.status{background:#071d40;color:#fff1d7}
@media(min-width:700px){#site{max-width:560px}.hero{padding-top:105px!important}.hero h1{font-size:52px}.hero-art{margin-bottom:35px!important}.bottom-nav{border-radius:12px}.hero{min-height:800px!important}}
@media(max-width:359px){#site .section{padding-left:22px;padding-right:22px}.hero h1{font-size:9.1vw}.poster-act{font-size:6.7vw!important}.hero-couple{margin:20px 0}.hero .event-location{margin-bottom:25px!important}}
html{scroll-padding-top:58px}#site .section{scroll-margin-top:0!important}#site .program{padding-top:48px!important;padding-bottom:65px!important}.program .poster-symbol{width:125px;margin-bottom:14px}.program h2{margin-bottom:25px!important}.poster-act{font-size:clamp(24px,7.7vw,42px)!important;line-height:1.15!important;padding:4px 0!important}.lineup-day+.lineup-day{margin-top:14px}.lineup-day+.lineup-day:before{margin-bottom:14px;font-size:28px}.poster-footer{margin-top:26px}#site .rsvp{padding-top:48px}.rsvp h2{font-size:clamp(32px,8.8vw,48px)}#site .section:before{background-size:100% 900px;background-repeat:repeat-y}.hero .button{justify-content:center;gap:16px}.hero .button span{font:22px Arial,sans-serif}.hero h1{font-size:clamp(33px,10vw,56px);font-weight:600}.hero-overline,.hero-subtitle{letter-spacing:.08em}.hero .date{font-size:18px!important}.rsvp .register-flower{width:78px}.rsvp .step-label{margin:8px 0 20px}.rsvp>.text-button{margin-bottom:14px}
/* Independent poster screens: no vertical journey between menu destinations. */
html{scroll-behavior:auto;scroll-padding-top:0}#site{padding-bottom:calc(72px + env(safe-area-inset-bottom))}#site main{min-height:calc(100svh - 72px)}#site main>.section{min-height:calc(100svh - 72px)!important;scroll-margin:0!important;padding:85px 28px 75px!important}#site main>.section:before{background-size:100% 100%;background-repeat:no-repeat;opacity:1}#site>footer{display:none}.site-header{position:absolute;height:48px;background:transparent;border:0;padding-top:5px}.hero{justify-content:center}.hero-art{margin:0 0 25px!important}.hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:700;font-size:clamp(30px,9.8vw,55px);letter-spacing:-.035em}.hero-overline,.hero-subtitle{font-family:Georgia,serif;font-size:20px;letter-spacing:.1em}.hero-couple{margin:24px 0 30px;font-size:15px}.hero-actions .date{font-family:Georgia,serif!important}.hero .event-location{margin-bottom:45px!important}.hero .practical-shortcut{margin-top:0!important}.hero .button{font-family:Georgia,serif;font-size:14px}.program .poster-content{display:flex;flex-direction:column;align-items:stretch}.program .poster-symbol{width:135px;margin:0 auto 18px}.program .poster-brand{font-family:Georgia,serif!important;font-size:18px!important}.program h2{font-family:Georgia,serif!important;font-size:68px!important;letter-spacing:0!important;margin:0 0 25px!important}.poster-act{font-family:Georgia,serif!important;font-size:clamp(23px,7.3vw,41px)!important;font-weight:700!important;letter-spacing:-.045em!important;line-height:1.15!important;padding:3px 0!important;min-height:39px}.lineup-day h3{font:500 22px/1.2 Georgia,serif;margin-bottom:8px}.lineup-day+.lineup-day{margin-top:18px}.lineup-day+.lineup-day:before{font-size:28px;margin-bottom:18px}.poster-footer{margin-top:28px}.poster-footer .date{font-family:Georgia,serif!important;font-size:15px!important}.poster-footer .event-location{font-family:Georgia,serif!important;font-size:10px!important}.rsvp .register-flower{width:75px;margin:0 auto 20px}.rsvp h2{font-family:Georgia,serif;font-weight:700;font-size:36px;letter-spacing:-.06em;line-height:1.2;margin-bottom:20px}.rsvp>.text-button{font-size:8px;margin-bottom:15px}.rsvp .field-label{font-family:Georgia,serif;font-size:16px}.rsvp .step-label{font-size:10px;letter-spacing:.1em}.rsvp .button{font-family:Georgia,serif;font-size:15px}.rsvp .attendance legend{font:16px Georgia,serif}.rsvp .attendance label{font:13px Georgia,serif}.rsvp input,.rsvp textarea,.rsvp select{background:#fff7e8f5}#site .news h2,#site .game h2,#site .information h2{font-family:Georgia,serif;font-weight:700}.bottom-nav{bottom:0!important;border-radius:0!important}.information .text-button{display:flex}.section:after{content:'';position:absolute;inset:0;pointer-events:none;z-index:0;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23000' filter='url(%23n)' opacity='.6' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}.section>*{z-index:1}#site .hero{padding-top:85px!important;padding-bottom:65px!important}#site .program{padding-top:70px!important;padding-bottom:50px!important}#site .rsvp{padding-top:70px!important;padding-bottom:75px!important}
@media(max-height:750px){#site .hero{padding-top:60px!important;padding-bottom:35px!important}.hero-art{margin-bottom:15px!important}.hero-symbol{width:52%!important}.hero-couple{margin:15px 0 20px}.hero .event-location{margin-bottom:25px!important}#site .program{padding-top:55px!important}.program .poster-symbol{width:110px;margin-bottom:12px}.program h2{font-size:57px!important;margin-bottom:20px!important}.poster-act{min-height:34px}.poster-footer{margin-top:20px}}
/* Quiet invitation before the film; the poster palette begins after the totem. */
#invitation{background:#030b18;color:#f5e9d6;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:48px 30px;gap:0}
#invitation:before{display:none}
#invitation .entry-top,#invitation .entry-kicker,#invitation .entry-halo,#invitation .entry-thread{display:none}
#invitation .entry-emblem{width:min(48vw,210px);height:auto;margin:0 0 24px}
#invitation .entry-identity{margin:0}
#invitation h1{color:#f5e9d6;font-size:clamp(25px,7vw,36px);font-weight:400;letter-spacing:.08em}
#invitation .once{color:#c5bda9;font-size:13px;letter-spacing:.1em;margin:10px 0 0}
#invitation .invitation-actions{margin-top:58px;max-width:280px}
#invitation .entry-start{background:transparent;color:#f5e9d6;border:1px solid #f5e9d64d;border-radius:0;padding:17px 20px;min-height:60px}
#invitation .entry-start:hover{background:#f5e9d610;border-color:#f5e9d6}
#invitation .entry-start-copy{font:400 10px/1.5 Inter,Arial,sans-serif;letter-spacing:.15em}
#invitation .entry-start-copy small{display:none}
#invitation .entry-play{color:#f5e9d6;font-size:20px}
#invitation .invitation-actions .text-button{color:#aeb5c0;font-size:11px;text-transform:none;letter-spacing:0}
#invitation .invitation-note{color:#7f8999;margin-top:20px;font-size:7px}
#invitation .entry-sound{display:none}
#journey .arrival,#journey .journey-top,#journey .recovery{color:#f5e9d6}
@media(max-height:580px){#invitation .entry-emblem{width:140px;margin-bottom:14px}#invitation .invitation-actions{margin-top:28px}}
/* Line-up detail remains dark: explicit contrasting colors for every label. */
#act-dialog #act-heading,#act-dialog #act-day,#act-dialog .dialog-close{color:#ff8a0a}
#act-dialog .dialog-close:hover{color:#ffbd50}
#act-dialog .dialog-close:focus-visible{outline:2px solid #ff8a0a;outline-offset:4px}
#act-dialog #act-description{color:#fff1d7}
#act-dialog .small,#act-dialog .act-detail-footer,#act-dialog .event-location{color:#d5c9b5!important}
/* Editorial refinement: clear reading space within the approved poster frame. */
.site-header .header-identity{visibility:hidden}
.hero-symbol{max-width:190px!important}.hero-art{margin-bottom:26px!important}
.hero .event-location{font-size:12px!important;letter-spacing:.09em!important}
.hero .practical-shortcut{font-size:12px!important;letter-spacing:.06em}
#site .news,#site .game,#site .information{padding:85px 34px 105px}
#site .news:before,#site .game:before,#site .information:before{mask-image:linear-gradient(90deg,#000 16px,transparent 34px,transparent calc(100% - 34px),#000 calc(100% - 16px)),linear-gradient(#000 25px,transparent 65px,transparent calc(100% - 65px),#000 calc(100% - 25px))}
#site .news h2,#site .game h2,#site .information h2{font-size:clamp(36px,10vw,48px);line-height:1.12;letter-spacing:-.045em;margin:16px 0 22px}
.section-kicker{font-size:10px;letter-spacing:.13em}.text-button{min-height:44px}
.news-feature{overflow:hidden}.news-image{display:block;width:100%;height:220px;object-fit:cover;object-position:center 32%}.news-feature{padding:0}.news-copy{padding:24px}.news-copy h3{font:400 31px/1.12 Georgia,serif;margin:12px 0 18px}.news-copy p:not(.section-kicker){font-size:15px;line-height:1.65}.news-small{padding:30px 0 0;margin-top:30px;border-top:1px solid #071d4040}.news-small h3{font:400 27px/1.2 Georgia,serif}.news-small p{font-size:15px;line-height:1.65}
#site .rsvp{padding-bottom:110px!important}.rsvp .demo-note{font-size:11px;line-height:1.6;margin:22px 0 0}.rsvp>.text-button{font-size:10px;margin-bottom:10px}
.game .game-lead{font-size:19px!important;margin-bottom:22px}.game-gallery{gap:12px;padding-bottom:12px}.game-gallery figure{flex-basis:84%}.game-shot img{height:280px}.game-play{margin-top:14px}.game-story{border-top:1px solid #071d4030;margin-top:34px;padding-top:26px}.game-story h3{font:400 27px/1.2 Georgia,serif}.game-story p{font-size:15px;line-height:1.7}.game-story .game-signature{margin:20px 0 0;font-size:13px}
#act-dialog{padding:100px 30px 120px;isolation:isolate}#act-dialog:before{content:'';position:absolute;top:0;left:0;width:85px;height:125px;background:url('assets/poster-waves.svg') left top/280px 610px no-repeat;pointer-events:none;opacity:.7;z-index:-1}#act-dialog[open]{align-items:flex-start}.act-detail{padding:55px 0 25px}#act-dialog #act-day{margin-bottom:14px}#act-heading{margin-bottom:24px}#act-dialog .act-lead{font:400 23px/1.45 Georgia,serif;color:#fff1d7;margin-bottom:23px}#act-description{font-size:15px;line-height:1.75;font-weight:400}#act-dialog .small{font-size:12px;line-height:1.6;margin-top:28px}#act-dialog .dialog-close{font-size:12px;letter-spacing:.06em}#act-dialog .act-detail-footer{position:static;display:block;font-size:10px;line-height:1.7;margin-top:auto}#act-dialog[open]{flex-direction:column}#act-dialog .event-location{font-size:10px!important}
@media(max-width:350px){#site .news,#site .game,#site .information{padding-inline:28px}.news-copy{padding:20px}.game-shot img{height:245px}}
@media(prefers-reduced-motion:reduce){.section{animation:none!important}}
#site .news:before,#site .game:before,#site .information:before{mask-image:none;background-image:url('assets/reading-waves.svg')}
#site .rsvp:before{background-image:url('assets/reading-waves.svg')}
/* Six directly accessible destinations, with room for the practical information label. */
.bottom-nav{grid-template-columns:repeat(5,minmax(0,1fr)) minmax(0,1.55fr);padding-inline:4px}
.bottom-nav a{font-size:10px;letter-spacing:0;gap:4px;min-width:0;min-height:58px}
.bottom-nav a span{min-height:24px;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.2}
.bottom-nav .nav-information span{display:block}
.bottom-nav svg{width:21px;height:21px;flex:none}
#site .information h2{font-size:clamp(32px,9vw,43px)}
.information-intro{font-size:15px;line-height:1.65;margin-bottom:28px}
.information summary{font-size:23px;line-height:1.3;padding-right:24px;position:relative}
.information summary .plus{position:absolute;right:0;top:50%;transform:translateY(-50%)}
.information details p{font-size:15px;line-height:1.65}
.information .info-pending{font-weight:600}
.information details .text-button{font-size:11px;letter-spacing:.04em}
.coming-soon{display:flex;align-items:center;gap:6px;width:fit-content;margin-top:10px;padding:4px 10px 4px 5px;background:#fff1d7;border:1px solid #071d40;border-radius:16px;color:#071d40;font:500 11px/1.3 Arial,sans-serif;letter-spacing:.02em}
.coming-soon svg{width:24px;height:24px;flex:none}.belvis-photo{margin:24px 0}.belvis-photo img{display:block;width:100%;height:auto;border:1px solid #071d40;border-radius:70px 70px 3px 3px}.belvis-photo figcaption{font-size:10px;line-height:1.6;margin-top:9px}.belvis-photo a{text-decoration:underline}
.hero .save-date{font:500 11px/1.4 Arial,sans-serif;letter-spacing:.08em;display:flex;gap:8px;justify-content:center;align-items:center;padding:10px;margin-top:4px;min-height:44px}
#rsvp-welcome{text-align:center;scroll-margin-top:75px;margin:0 0 28px}#rsvp-welcome img{display:block;width:160px;height:auto;margin:0 auto 23px;animation:welcome-in .7s ease-out both}#rsvp-welcome h3{font:700 clamp(29px,8vw,38px)/1.15 Georgia,serif;letter-spacing:-.04em;margin:15px 0}#rsvp-welcome p:last-child{font-size:15px;line-height:1.6}.rsvp-saved>.register-flower,.rsvp-saved>.section-kicker,.rsvp-saved>h2,.rsvp-saved>.text-button,.rsvp-saved .result-title{display:none}.rsvp-saved #rsvp-edit{margin:22px 0 10px}.rsvp-saved #rsvp-summary{background:#fff7e8;border:1px solid #071d4030;border-radius:8px;padding:4px 18px 10px}#rsvp-form input:not([type=checkbox]):not([type=radio]),#rsvp-form select,#rsvp-form textarea{font-size:16px;scroll-margin:90px 0 110px}#rsvp-form input:focus-visible,#rsvp-form select:focus-visible,#rsvp-form textarea:focus-visible{outline:2px solid #071d40;outline-offset:3px}.bottom-nav a{min-height:58px}#site .section{padding-bottom:max(110px,env(safe-area-inset-bottom))}#acceso{overflow-wrap:anywhere}
@keyframes welcome-in{from{opacity:0;transform:translateY(8px) scale(.95)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){#rsvp-welcome img{animation:none}}

.information summary{display:block}.information summary .coming-soon{margin-top:8px}

