*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{color:#30272a;--popup-inline-padding:clamp(20px, 7vw, 35px);--popup-action-size:47px;--popup-action-gap:5px;--popup-label-size:14px;font-synthesis:none;text-rendering:optimizelegibility;background:#eee9e1;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:#eee9e1;min-width:320px}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #c78b72}.page-shell{min-height:100dvh;padding:0}.invitation-shell{background:#fbf8f2;width:100%;max-width:520px;min-height:100dvh;margin-inline:auto;position:relative;overflow:hidden;box-shadow:0 0 46px #2f1f1c1f}.video-frame{background:#2f1e20;width:100%;height:100dvh;min-height:100dvh;position:relative;overflow:hidden}.wedding-video{z-index:1;-o-object-fit:cover;object-fit:cover;-o-object-position:center center;object-position:center center;background:0 0;width:100%;min-width:100%;max-width:none;height:100%;display:block;position:absolute;inset:0}.video-vignette{z-index:2;pointer-events:none;background:linear-gradient(#200d0f1f,#0000 26% 76%,#140a0a3d);position:absolute;inset:0}.video-paused-indicator{z-index:3;color:#fff8ef;cursor:pointer;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#2f1e20c7;border:1px solid #fff8efb8;border-radius:50%;place-items:center;width:64px;height:64px;animation:.18s ease-out both video-paused-indicator-in;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 26px #0000003d}.video-paused-indicator:hover{background:#74182be6}@keyframes video-paused-indicator-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.86)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.video-fallback{color:#fbf8f2;text-align:center;background:radial-gradient(circle at 50% 40%,#8d4052,#3d1d26 68%);place-content:center;gap:10px;height:100dvh;padding:32px;display:grid}.fallback-mark{color:#e4b395;font-size:34px}.video-fallback p{margin:0;font-family:Georgia,serif;font-size:22px}.video-fallback small{color:#f1d9cc;font-size:12px}.bottom-navigation{z-index:20;width:100%;max-width:520px;min-height:88px;padding:9px 6px max(9px, env(safe-area-inset-bottom));color:#fff8ef;background:#74182b;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -7px 24px #240a0f29}.nav-item{color:#fff8efb8;cursor:pointer;background:0 0;border:0;border-radius:2px;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-width:44px;min-height:62px;transition:color .18s,background-color .18s;display:flex}.nav-item span{letter-spacing:.02em;font-size:11px}.nav-item:hover,.nav-item--active{color:#fff8ef;background:#ffffff1a}.nav-item--active{box-shadow:inset 0 -2px #e6b292}.panel-backdrop{z-index:25;cursor:default;background:#1f0d117a;border:0;width:100%;height:100%;position:fixed;inset:0}.panel-backdrop--music{background:#1f0d1114}.action-panel{z-index:30;right:0;bottom:calc(88px + env(safe-area-inset-bottom));color:#30272a;background:#fbf8f2;border:1px solid #74182b1a;border-bottom:0;border-radius:18px 18px 0 0;flex-direction:column;width:min(100%,520px);max-height:min(72dvh,620px);margin-inline:auto;display:flex;position:fixed;left:0;overflow:hidden;box-shadow:0 -12px 40px #2f18192e}.panel-heading{background:#fffdf9;border-bottom:1px solid #e9dfd5;flex:none;justify-content:space-between;align-items:flex-start;gap:18px;padding:22px 22px 17px;display:flex}.panel-eyebrow{color:#9e6a5c;letter-spacing:.16em;text-transform:uppercase;margin:0 0 5px;font-size:10px;font-weight:700}.panel-heading h2{color:#561424;letter-spacing:-.02em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:26px;font-weight:500}.close-button{color:#74182b;cursor:pointer;background:#fbf8f2;border:1px solid #e8d8ce;border-radius:50%;flex:none;place-items:center;width:42px;height:42px;display:grid}.panel-scroll{overscroll-behavior:contain;overflow-y:auto}.panel-content{padding:20px 22px calc(22px + env(safe-area-inset-bottom))}.panel-intro{color:#68575a;margin:0 0 18px;font-size:14px;line-height:1.6}.status-note{color:#754234;background:#f7e9df;border-left:2px solid #c78b72;margin:-6px 0 15px;padding:10px 12px;font-size:12px}.music-status{color:#665558;align-items:center;gap:9px;margin-bottom:18px;font-size:12px;display:flex}.status-dot{background:#b8a8a1;border-radius:50%;width:8px;height:8px}.status-dot--live{background:#6b9b72;box-shadow:0 0 0 4px #6b9b7221}.music-controls{grid-template-columns:1.15fr 1fr 1fr;gap:8px;display:grid}.primary-control,.secondary-control,.submit-button{cursor:pointer;border:1px solid #74182b;border-radius:4px;justify-content:center;align-items:center;gap:7px;min-height:50px;display:flex}.primary-control{color:#fff8ef;background:#74182b}.secondary-control{color:#74182b;background:0 0;border-color:#d8c2b6;font-size:11px}.event-summary,.location-summary{background:#fffdf9;border:1px solid #eadfd6;margin-bottom:16px;padding:15px 16px}.event-summary{gap:5px;display:grid}.event-summary strong,.location-summary h3{color:#5b1929;margin:0;font-family:Georgia,serif;font-size:16px;font-weight:500}.event-summary span,.location-summary p{color:#746366;margin:0;font-size:12px;line-height:1.5}.action-stack{gap:10px;display:grid}.action-card{color:#30272a;text-align:left;cursor:pointer;background:#fffdf9;border:1px solid #eadfd6;border-radius:5px;align-items:center;gap:13px;width:100%;min-height:68px;padding:11px 13px;transition:border-color .18s,transform .18s,box-shadow .18s;display:flex}.action-card:hover{border-color:#c78b72;transform:translateY(-1px);box-shadow:0 5px 18px #46212012}.action-card__icon{color:#74182b;background:#fdf3ec;border:1px solid #ead5ca;flex:none;place-items:center;width:40px;height:40px;display:grid}.action-card__copy{flex:1;gap:3px;display:grid}.action-card__label{color:#541625;font-size:14px;font-weight:650}.action-card__description{color:#8a7979;font-size:11px}.action-card__arrow{color:#9d7267;font-size:20px}.panel-footnote,.form-note{color:#958487;font-size:11px;line-height:1.5}.contact-list{gap:0;height:100%;display:grid}.contact-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:7px 0;display:grid}.contact-row:last-child{border-bottom:0}.contact-info{gap:3px;min-width:0;display:grid}.contact-info strong{color:#211b1d;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:400;overflow:hidden}.contact-info span{color:#b2abad;font-size:14px;font-style:italic}.contact-info small{display:none}.contact-actions{align-items:center;gap:21px;display:flex}.contact-button{width:var(--popup-action-size);height:var(--popup-action-size);color:#080808;cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.contact-button:hover{color:#74182b}.contact-button--whatsapp{color:#080808;background:0 0}.contact-icon{-o-object-fit:contain;object-fit:contain;width:42px;height:42px;display:block}.empty-state{color:#806c6e;text-align:center;background:#f6eee8;padding:18px;font-size:13px}.rsvp-form{gap:16px;display:grid}.form-fieldset{border:0;margin:0;padding:0}.form-fieldset legend,.form-label{color:#5c474b;gap:7px;font-size:12px;font-weight:650;display:grid}.radio-group{grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;display:grid}.radio-card{color:#756265;cursor:pointer;background:#fffdf9;border:1px solid #e1d2c8;align-items:center;gap:8px;min-height:46px;padding:0 11px;font-size:13px;display:flex}.radio-card--selected{color:#74182b;background:#fdf1e9;border-color:#b97c68}.radio-card input{accent-color:#74182b}.form-input{color:#30272a;background:#fffdf9;border:1px solid #dfd1c7;border-radius:3px;outline:none;width:100%;min-height:45px;padding:10px 12px}.form-input:focus{border-color:#a75d4a;box-shadow:0 0 0 3px #a75d4a1f}.form-textarea{resize:vertical;min-height:auto}.optional{color:#9f8e8d;font-weight:400}.field-error{color:#b43838;font-size:11px;font-weight:400}.submit-button{color:#fff8ef;background:#74182b;font-size:13px;font-weight:650}.submit-button:disabled{cursor:wait;opacity:.7}.action-panel--music{max-height:min(360px, calc(100dvh - 88px - env(safe-area-inset-bottom)));background:#fff;border-radius:18px 18px 0 0;box-shadow:0 -12px 40px #2f18192e}.action-panel--music .panel-heading{z-index:2;pointer-events:none;background:0 0;border:0;min-height:0;padding:0;position:absolute;top:0;left:0;right:0}.action-panel--music .panel-heading>div,.action-panel--music .close-button{display:none}.action-panel--music .panel-scroll{background:#fff}.music-panel-content{min-height:0;padding:20px 14px calc(14px + env(safe-area-inset-bottom));color:#30272a;background:#fff}.music-player-header{align-items:center;gap:10px;min-height:62px;display:flex}.music-avatar{-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;background:#4d3025;border:2px solid #ffffff80;border-radius:50%;flex:none;width:48px;height:48px;animation:3s linear infinite paused music-avatar-spin;display:block}.music-avatar--playing{animation-play-state:running}@keyframes music-avatar-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.music-track-copy{flex:1;min-width:0}.music-track-copy h3{color:#571727;letter-spacing:.01em;text-overflow:ellipsis;white-space:nowrap;margin:0 0 3px;font-size:clamp(14px,4vw,20px);font-weight:700;line-height:1.2;overflow:hidden}.music-track-copy p{color:#806d70;margin:0;font-size:13px}.music-icon-button{color:#74182b;background:0 0;border:0;flex:none;place-items:center;width:40px;height:40px;display:grid}.music-panel-content .status-note{color:#754234;background:#f7e9df;border-left-color:#c78b72;margin:7px 0 9px}.music-progress-area{margin-top:10px}.music-progress{appearance:none;background:linear-gradient(90deg, #74182b var(--progress,0%), #eadfd6 var(--progress,0%));cursor:pointer;border-radius:999px;width:100%;height:5px;margin:0;display:block}.music-progress::-webkit-slider-thumb{appearance:none;background:#ee174b;border:0;border-radius:50%;width:15px;height:15px}.music-progress::-moz-range-thumb{background:#ee174b;border:0;border-radius:50%;width:15px;height:15px}.music-time{color:#8a7979;justify-content:space-between;margin-top:6px;font-size:11px;display:flex}.music-panel-content .music-status{color:#746366;margin:12px 0}.music-panel-content .status-dot{background:#b8a8a1}.music-panel-content .status-dot--live{background:#79b47a;box-shadow:0 0 0 4px #79b47a2e}.music-panel-content .music-controls{grid-template-columns:repeat(3,1fr);gap:7px}.music-panel-content .primary-control,.music-panel-content .secondary-control{border-radius:3px;min-height:48px;font-size:11px}.music-panel-content .primary-control{color:#fff;background:#74182b}.music-panel-content .secondary-control{color:#74182b;background:#fffdf9;border-color:#d8c2b6}.action-panel--calendar{background:#fff;border:0;border-radius:18px 18px 0 0;height:128px;max-height:128px;box-shadow:0 -10px 30px #2f18191a}.action-panel--calendar .panel-heading{z-index:2;pointer-events:none;background:0 0;border:0;min-height:0;padding:0;position:absolute;top:0;left:0;right:0}.action-panel--calendar .panel-heading>div{display:none}.action-panel--calendar .close-button{opacity:0;pointer-events:auto;width:28px;height:28px;position:absolute;top:4px;right:4px}.action-panel--calendar .panel-scroll{background:#fff;height:100%}.calendar-panel-content{height:100%;padding:7px var(--popup-inline-padding) 10px;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.calendar-action{justify-content:center;align-items:center;gap:var(--popup-action-gap);color:#211b1d;cursor:pointer;background:0 0;border:0;flex-direction:column;min-width:0;min-height:44px;display:flex}.calendar-action:hover{color:#74182b}.calendar-logo{width:var(--popup-action-size);height:var(--popup-action-size);color:#1b1a1b;place-items:center;display:grid;position:relative}.calendar-logo img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%;display:block}.calendar-logo__frame{width:100%;height:100%;position:absolute;inset:0}.calendar-logo__inner{color:#1b1a1b;place-items:center;width:22px;height:18px;margin-top:7px;display:grid;position:relative}.calendar-logo__inner strong{font-size:17px;font-weight:700;line-height:1}.calendar-action>span:last-child{font-size:var(--popup-label-size);white-space:nowrap;font-weight:400;line-height:1.15}.action-panel--location{background:#fff;border:0;border-radius:18px 18px 0 0;height:124px;max-height:124px;box-shadow:0 -10px 30px #2f18191a}.action-panel--location .panel-heading{z-index:2;pointer-events:none;background:0 0;border:0;min-height:0;padding:0;position:absolute;top:0;left:0;right:0}.action-panel--location .panel-heading>div{display:none}.action-panel--location .close-button{opacity:0;pointer-events:auto;width:28px;height:28px;position:absolute;top:4px;right:4px}.action-panel--location .panel-scroll{background:#fff;height:100%}.location-panel-content{height:100%;padding:7px var(--popup-inline-padding) 10px;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.location-action{justify-content:center;align-items:center;gap:var(--popup-action-gap);color:#211b1d;cursor:pointer;background:0 0;border:0;flex-direction:column;min-width:0;min-height:44px;display:flex}.location-action:hover{color:#74182b}.location-action:active{transform:translateY(1px)}.location-logo{width:var(--popup-action-size);height:var(--popup-action-size);color:currentColor;place-items:center;display:grid}.location-logo img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%;display:block}.location-action>span:last-child{font-size:var(--popup-label-size);white-space:nowrap;font-weight:400;line-height:1.15}.action-panel--contact{background:#fff;border:0;border-radius:18px 18px 0 0;height:315px;max-height:315px;box-shadow:0 -10px 30px #2f18191a}.action-panel--contact .panel-heading{z-index:2;pointer-events:none;background:0 0;border:0;min-height:0;padding:0;position:absolute;top:0;left:0;right:0}.action-panel--contact .panel-heading>div{display:none}.action-panel--contact .close-button{opacity:0;pointer-events:auto;width:28px;height:28px;position:absolute;top:4px;right:4px}.action-panel--contact .panel-scroll{background:#fff;height:100%}.contact-panel-content{height:100%;padding:18px var(--popup-inline-padding) 15px}.action-panel--rsvp{background:#fff;border:0;border-radius:18px 18px 0 0;height:204px;max-height:204px;box-shadow:0 -10px 30px #2f18191a}.action-panel--rsvp .panel-heading{z-index:2;pointer-events:none;background:0 0;border:0;min-height:0;padding:0;position:absolute;top:0;left:0;right:0}.action-panel--rsvp .panel-heading>div{display:none}.action-panel--rsvp .close-button{opacity:0;pointer-events:auto;width:28px;height:28px;position:absolute;top:4px;right:4px}.action-panel--rsvp .panel-scroll{background:#fff;height:100%}.rsvp-choice-content{height:100%;padding:20px var(--popup-inline-padding) 15px;color:#171416;background:#fff;flex-direction:column;align-items:center;display:flex}.rsvp-ornament{color:#171416;width:min(240px,70%);height:28px}.rsvp-choice-content h2{color:#171416;letter-spacing:.07em;margin:6px 0 22px;font-family:Georgia,Times New Roman,serif;font-size:20px;font-weight:500;line-height:1.15}.rsvp-choice-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:42px;width:min(270px,100%);display:grid}.rsvp-choice{color:#171416;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:7px;min-width:0;padding:0;display:flex}.rsvp-choice:hover{color:#74182b}.rsvp-choice span{font-size:var(--popup-label-size);white-space:nowrap;font-weight:400;line-height:1.15}@media (width<=520px){.page-shell,.invitation-shell,.video-frame{width:100vw;max-width:100vw}.page-shell{overflow-x:hidden}}@media (aspect-ratio<=9/16){.wedding-video{-o-object-fit:contain;object-fit:contain}}@media (width>=521px){.page-shell{padding:24px 0}.invitation-shell{border-radius:4px;min-height:calc(100dvh - 48px)}.video-frame,.wedding-video,.video-fallback{height:calc(100dvh - 48px);min-height:calc(100dvh - 48px)}.bottom-navigation{border-radius:0 0 4px 4px;bottom:24px}.action-panel{bottom:calc(112px + env(safe-area-inset-bottom));border-radius:12px}}@media (width<=360px){.bottom-navigation{padding-inline:2px}.nav-item{gap:4px}.nav-item span{font-size:10px}.panel-heading,.panel-content{padding-inline:17px}.music-controls{grid-template-columns:1fr 1fr}.primary-control{grid-column:1/-1}.music-panel-content .music-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.music-panel-content .primary-control{grid-column:auto}.music-panel-content .primary-control,.music-panel-content .secondary-control{gap:4px;padding-inline:4px;font-size:10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
