/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);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}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.start{inset-inline-start:var(--spacing)}.table{display:table}}:root{--navy:#082653;--navy-dark:#082653;--royal-blue:#082653;--gold:#c9a44d;--gold-light:#e2c36f;--ivory:#fffaf0}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-width:none}body{-ms-overflow-style:none;background:var(--navy-dark);color:var(--ivory);font-family:var(--font-sans), sans-serif;margin:0}html::-webkit-scrollbar{display:none}body::-webkit-scrollbar{display:none}main{overflow:hidden}.site-shell.site-loading{height:100svh;overflow:hidden}.opening-screen{z-index:100;isolation:isolate;background:var(--navy);will-change:opacity;place-content:center;justify-items:center;gap:34px;animation:.24s ease-out 1.72s forwards opening-screen-exit;display:grid;position:fixed;inset:0;overflow:hidden}.opening-screen:before,.opening-screen:after{content:"";pointer-events:none;border:1px solid #d6a84c94;position:absolute;inset:18px}.opening-screen:after{border-color:#d6a84c33;inset:25px}.opening-screen>p{color:var(--gold-light);font:italic 400 1rem var(--font-display), serif;letter-spacing:.08em;will-change:opacity, transform;margin:0;animation:.4s ease-out .12s both opening-caption}.envelope-stage{aspect-ratio:1.45;will-change:opacity, transform;width:min(78vw,330px);animation:.34s cubic-bezier(.22,.8,.28,1) both envelope-arrive;position:relative}.envelope{border:1px solid var(--gold);background:var(--navy);border-top:0;height:68%;position:absolute;inset:auto 0 0;box-shadow:0 20px 44px #0000004d}.envelope:before{content:"";z-index:1;background:var(--navy);clip-path:polygon(0 0,50% 58%,100% 0);position:absolute;inset:0}.envelope-flap{z-index:4;background:var(--navy);clip-path:polygon(0 0,100% 0,50% 70%);transform-origin:50% 0;will-change:transform;width:calc(100% + 2px);height:96%;animation:1.08s cubic-bezier(.2,.72,.22,1) .28s both envelope-open;position:absolute;top:-1px;left:-1px}.envelope-front{z-index:5;background:linear-gradient(32deg,#020d2233 49.6%,#0000 50%) 0/51% 100% no-repeat,linear-gradient(-32deg,#020d221f 49.6%,#0000 50%) 100%/51% 100% no-repeat;position:absolute;inset:0;overflow:hidden}.envelope-front:after{content:"";clip-path:polygon(0 100%,50% 18%,100% 100%);background:#020d2229;width:100%;height:72%;position:absolute;bottom:0;left:0}.envelope-letter{z-index:3;border:1px solid var(--gold);background:var(--ivory);width:82%;height:88%;color:var(--navy);backface-visibility:hidden;will-change:transform;flex-direction:column;justify-content:center;align-items:center;animation:1.08s cubic-bezier(.2,.72,.22,1) .28s both letter-rise;display:flex;position:absolute;bottom:6%;left:9%;box-shadow:0 10px 24px #0000002e}.envelope-letter strong{color:var(--navy);font:600 clamp(1.85rem, 7vw, 2.6rem)/1 var(--font-display), serif;letter-spacing:-.025em;white-space:nowrap}.envelope-flower{color:var(--gold);margin-bottom:15px;font:400 1.35rem/1 Georgia,serif}@keyframes envelope-arrive{0%{opacity:0;transform:translateY(18px)scale(.96)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes envelope-open{0%{z-index:4;transform:scaleY(1)}.001%{z-index:2}to{z-index:2;transform:scaleY(-1)}}@keyframes letter-rise{0%{z-index:3;transform:translate(0)scale(.97)}8%{z-index:3;transform:translate(0)scale(.97)}49%{z-index:3}50%{z-index:6}82%{z-index:6;transform:translateY(-98%)scale(1.025)}to{z-index:6;transform:translateY(-94%)scale(1.02)}}@keyframes opening-caption{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translate(0)}}@keyframes opening-screen-exit{to{opacity:0}}.hero{background:var(--navy);isolation:isolate;place-items:center;min-height:100svh;padding:52px 24px;display:grid;position:relative}.hero:before,.hero:after{content:"";pointer-events:none;border:1px solid #d6a84c94;position:absolute;inset:18px}.hero:after{border-color:#d6a84c33;inset:25px}.stars{opacity:.3;background-image:radial-gradient(circle, var(--gold-light) 1px, transparent 1.5px);z-index:-1;background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 35% 70%,#000);mask-image:linear-gradient(#000,#0000 35% 70%,#000)}.invitation{text-align:center;width:min(760px,100%);padding:60px 30px 48px}.shubh{color:var(--gold);font:500 1rem var(--font-display), serif;letter-spacing:.16em;margin:0 0 20px}.eyebrow,.detail-label{color:var(--gold-light);letter-spacing:.24em;text-transform:uppercase;margin:0;font-size:.68rem;font-weight:600}.invite-copy{color:#eadfc8;font:400 clamp(1.2rem, 3vw, 1.55rem)/1.45 var(--font-display), serif;letter-spacing:.025em;margin:20px 0 8px}.monogram{border:1px solid var(--gold);width:136px;height:136px;color:var(--gold-light);border-radius:50% 50% 48% 52%;flex-direction:column;justify-content:center;align-items:center;margin:22px auto 18px;display:flex;box-shadow:inset 0 0 0 7px #d6a84c14}.monogram span{font:500 4.4rem/.72 var(--font-display), serif;letter-spacing:-.08em;transform:translate(-.05em)}.monogram small{letter-spacing:.18em;text-transform:uppercase;margin-top:14px;font-size:.52rem;font-weight:600}.honouring{color:#e8c577;font:italic 400 clamp(1.4rem, 3.4vw, 1.65rem) var(--font-display), serif;margin:6px 0 0}h1{color:var(--ivory);font:500 clamp(3rem, 8vw, 6rem)/.95 var(--font-display), serif;letter-spacing:-.035em;margin:8px 0 0}.occasion{color:var(--gold-light);font:400 .95rem/1.5 var(--font-display), serif;letter-spacing:.06em;margin:4px 0 0}.divider,.bottom-ornament,.top-flourish{justify-content:center;align-items:center;gap:14px;display:flex}.divider{margin:30px auto}.divider span,.bottom-ornament span,.top-flourish>span:not(.flower-mark){background:linear-gradient(90deg, transparent, var(--gold));width:90px;height:1px}.divider span:last-child,.bottom-ornament span:last-child,.top-flourish>span:last-child{transform:scaleX(-1)}.divider b{color:var(--gold);font-size:.8rem}.event-when{margin:0 auto}.event-when p{color:var(--ivory);font:500 clamp(3rem, 8vw, 5.2rem)/.9 var(--font-display), serif;letter-spacing:.04em;margin:0}.event-when span{color:var(--gold-light);letter-spacing:.2em;text-transform:uppercase;margin-top:14px;font-size:.68rem;font-weight:600;display:block}.event-when address{max-width:480px;color:var(--gold-light);font:normal 400 clamp(1.05rem, 2.8vw, 1.3rem)/1.55 var(--font-display), serif;letter-spacing:.025em;margin:24px auto 0}.rsvp-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#020d226b;border:1px solid #d6a84c73;width:min(520px,100%);margin:0 auto;padding:26px}.rsvp-card label{color:#eadfc8;font:400 1rem var(--font-display), serif;text-align:left;margin:18px 0 8px;display:block}.rsvp-card>input,.rsvp-card select,.rsvp-card textarea{border:1px solid var(--gold);width:100%;min-height:48px;color:var(--navy-dark);font:inherit;background:#fff8e8f5;border-radius:0;outline:none;padding:0 14px}.rsvp-card textarea{resize:vertical;min-height:76px;padding-block:12px}.rsvp-card>input:focus,.rsvp-card select:focus,.rsvp-card textarea:focus{box-shadow:inset 0 0 0 2px var(--navy)}.rsvp-card input::placeholder{color:#866d73}.rsvp-card label span{color:#eadfc899;font-size:.75em}.attendance{border:0;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0 0;padding:0;display:grid}.attendance legend{color:#eadfc8;font:400 1rem var(--font-display), serif;text-align:left;margin-bottom:8px}.attendance label{cursor:pointer;font:500 .7rem/1.3 var(--font-sans), sans-serif;background:#fff8e80d;border:1px solid #d6a84c6b;align-items:center;gap:8px;margin:0;padding:12px;display:flex}.attendance input{accent-color:var(--gold)}.rsvp-submit{border:1px solid var(--gold);background:var(--gold);width:100%;min-height:48px;color:var(--navy-dark);cursor:pointer;letter-spacing:.12em;text-transform:uppercase;margin-top:18px;font-size:.65rem;font-weight:600;transition:all .25s}.rsvp-submit:hover:not(:disabled),.rsvp-submit:focus-visible{background:var(--gold-light);outline:none}.rsvp-submit:disabled,.admin-action:disabled{cursor:not-allowed;opacity:.55}.honeypot{clip:rect(0 0 0 0)!important;white-space:nowrap!important;width:1px!important;height:1px!important;position:absolute!important;overflow:hidden!important}.setup-note,.form-error{color:#f1ce7d;margin:12px 0 0;font-size:.68rem;line-height:1.5}.form-error{color:#ffb6b6}.privacy-note{color:#eadfc89e;margin:11px 0 0;font-size:.62rem;line-height:1.5}.rsvp-reveal{margin-top:34px;animation:.7s both reveal}.welcome{color:var(--gold-light);font:italic 400 1.15rem/1.5 var(--font-display), serif;margin:0 auto}@keyframes reveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.top-flourish{position:absolute;top:46px;left:50%;transform:translate(-50%)}.flower-mark{width:38px;height:38px;color:var(--gold);place-items:center;font:400 1.7rem/1 Georgia,serif;display:inline-grid}.bottom-ornament{color:var(--gold);position:absolute;bottom:42px;left:50%;transform:translate(-50%)}.note{text-align:center;color:var(--gold-light);background:var(--navy);padding:110px 24px 18px;position:relative}.note .eyebrow{color:var(--gold)}.note h2{color:var(--gold-light);font:500 clamp(2.4rem, 6vw, 4.6rem)/1 var(--font-display), serif;margin:20px auto}.note>p:not(.eyebrow,.no-gifts){color:#fffaf0d1;max-width:600px;font:400 1.1rem/1.75 var(--font-display), serif;margin:0 auto}.family-signoff{border-top:1px solid #c9a44d59;max-width:720px;margin:34px auto 0;padding-top:28px}.family-signoff p{color:var(--gold);font:italic 500 1.05rem var(--font-display), serif;margin:0 0 10px}.family-signoff strong{color:var(--ivory);font:500 clamp(1.05rem, 2.4vw, 1.3rem)/1.65 var(--font-display), serif;display:block}.family-signoff strong span{display:block}.note .no-gifts{width:fit-content;color:var(--gold-light);font:600 .66rem/1.4 var(--font-sans), sans-serif;letter-spacing:.12em;text-transform:uppercase;border:1px solid #c9a44d80;margin:30px auto 0;padding:9px 16px}.note .flower-mark{color:var(--gold);margin-top:34px}.rsvp-section{text-align:center;background:var(--navy);padding:84px 24px 18px}.rsvp-section .rsvp-reveal{background:#020d226b;border:1px solid #d6a84c73;place-items:center;width:min(520px,100%);min-height:180px;margin:0 auto;padding:32px;display:grid}.admin-trigger{color:#f0d58cb3;cursor:pointer;font:600 .58rem var(--font-sans), sans-serif;letter-spacing:.18em;text-transform:uppercase;background:0 0;border:0;border-bottom:1px solid #f0d58c59;margin-top:46px}.admin-backdrop{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#010816cc;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.admin-panel{border:1px solid var(--gold);background:var(--ivory);color:#122a4a;width:min(980px,100%);max-height:min(760px,90svh);padding:40px;position:relative;overflow:auto;box-shadow:0 28px 80px #00000061}.admin-panel .detail-label{color:#985f19}.admin-panel h2{font:500 2.6rem var(--font-display), serif;margin:8px 0 14px}.admin-panel>p:not(.detail-label,.setup-note,.form-error){color:#596a80;font:400 1rem/1.6 var(--font-display), serif}.admin-close{color:#122a4a;cursor:pointer;font:300 2rem/1 var(--font-display), serif;background:0 0;border:0;position:absolute;top:12px;right:16px}.admin-action{border:1px solid var(--navy);background:var(--navy);min-height:44px;color:var(--ivory);cursor:pointer;letter-spacing:.12em;text-transform:uppercase;margin-top:14px;padding:0 20px;font-size:.65rem;font-weight:600}.admin-action.secondary{color:var(--navy);background:0 0}.admin-actions{flex-wrap:wrap;gap:10px;display:flex}.guest-summary{gap:12px;margin:20px 0;display:flex}.guest-summary span{color:#284665;background:#f3e7ce;padding:8px 12px;font-size:.7rem;font-weight:600}.guest-table-wrap{background:#fffaf0;border:1px solid #e5d4b0;width:100%;overflow-x:auto}.guest-table{border-collapse:collapse;text-align:left;width:100%;min-width:760px}.guest-table caption{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.guest-table th,.guest-table td{vertical-align:top;border-bottom:1px solid #eadfc8;padding:13px 14px}.guest-table thead th{z-index:1;color:#264563;font:700 .62rem/1.3 var(--font-sans), sans-serif;letter-spacing:.09em;text-transform:uppercase;background:#efe0c2;position:sticky;top:0}.guest-table tbody tr:last-child>*{border-bottom:0}.guest-table tbody tr:nth-child(2n){background:#f3e7ce66}.guest-table tbody th{color:#122a4a;min-width:150px;font:600 1rem/1.25 var(--font-display), serif}.guest-table tbody th small{color:#985f19;font:600 .55rem/1.3 var(--font-sans), sans-serif;letter-spacing:.08em;text-transform:uppercase;margin-top:3px;display:block}.guest-table td{color:#596a80;font-size:.68rem}.guest-table a{color:#315a83;text-underline-offset:3px;text-decoration-color:#315a8359}.reply-badge{letter-spacing:.07em;text-transform:uppercase;border-radius:999px;padding:5px 8px;font-size:.56rem;font-weight:700;display:inline-block}.reply-badge.yes{color:#3f6232;background:#e7efdf}.reply-badge.no{color:#7d3342;background:#f4dfe2}.guest-table .guest-table-empty{color:#596a80;font:italic 400 1rem/1.4 var(--font-display), serif;text-align:center;padding:28px 14px}@media (width<=600px){.hero{padding:80px 28px 72px}.hero:before{inset:10px}.hero:after{inset:16px}.invitation{padding:44px 2px 52px}.invite-copy br{display:none}.top-flourish{top:34px}.attendance{grid-template-columns:1fr}.admin-panel{padding:32px 22px}.guest-summary{flex-direction:column;align-items:flex-start}.admin-actions .admin-action{flex:140px}.bottom-ornament{bottom:28px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.opening-screen,.opening-screen>p,.envelope-stage,.envelope-flap,.envelope-letter,.site-shell.site-ready{animation:none!important}}
