:root{--canvas:#fff6e3;--surface:#fffaf0;--surface-soft:#f3e7cb;--ink:#263523;--muted:#66725e;--primary:#165830;--primary-hover:#0f4826;--primary-ink:#fff9eb;--panel:#165830;--panel-deep:#0f4826;--panel-ink:#fff8e8;--panel-muted:#fff8e8cc;--accent:#a47d25;--accent-soft:#a47d251f;--danger:#914d48;--line:#545c3033;--line-strong:#545c3061;--display:"Bodoni 72", Didot, "Iowan Old Style", Baskerville, Georgia, serif;--body:"Avenir Next", Avenir, "Segoe UI", system-ui, sans-serif;color:var(--ink);font-family:var(--body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{background:radial-gradient(circle at 78% 8%, #a47d2514, transparent 28rem), var(--canvas);min-width:320px}body{background:var(--canvas);min-width:320px;min-height:100dvh;margin:0;overflow:hidden}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button:disabled{cursor:wait;opacity:.62}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.wedding-app{background:var(--canvas);height:100dvh;min-height:100dvh;position:relative;overflow:hidden}.wedding-app__ornament{display:none}.screen-transition{will-change:opacity, transform;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.section-label{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin:0 0 .75rem;font-size:.68rem;font-weight:700}.button{letter-spacing:.04em;cursor:pointer;border:1px solid #0000;border-radius:12px;min-height:50px;padding:.8rem 1.35rem;font-size:.78rem;font-weight:700;transition:background .18s,border-color .18s,color .18s,transform .18s}.button:hover{transform:translateY(-1px)}.button:active{transform:scale(.98)}.button__label{display:block}.button--primary{background:var(--primary);color:var(--primary-ink)}.button--primary:hover{background:var(--primary-hover)}.button--secondary{border-color:var(--line-strong);color:var(--primary);background:0 0}.button--secondary:hover{border-color:var(--primary)}.button--block{width:100%}.field{margin:0;display:block}.field>span{color:var(--ink);letter-spacing:.04em;margin-bottom:.48rem;font-size:.7rem;font-weight:700;display:block}.field input{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:52px;color:var(--ink);border-radius:12px;padding:.75rem .9rem;font-size:.94rem;transition:border-color .18s,box-shadow .18s}.field input:hover{border-color:var(--primary)}.field input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #0b4c4b1a}.field input::placeholder{color:var(--muted);opacity:.7}.form-error{border-left:3px solid var(--accent);background:var(--accent-soft);color:var(--ink);padding:.7rem .8rem;font-size:.76rem;line-height:1.45}.brand-mark{color:inherit;font-family:var(--display);letter-spacing:.08em;font-size:1.05rem}.wedding-app--lookup{background:var(--primary)}.landing-invitation{z-index:1;background-color:var(--primary);place-items:start center;width:100%;height:100dvh;min-height:540px;display:grid;position:relative;overflow:hidden}.landing-invitation__artwork{pointer-events:none;-webkit-user-select:none;user-select:none;width:auto;max-width:none;height:100%;position:absolute;top:0;left:50%;transform:translate(-50%)}.landing-invitation__content{z-index:1;text-align:center;visibility:hidden;width:min(100% - 3rem,390px);margin-top:clamp(8rem,18dvh,11rem);position:relative}.landing-invitation.is-ready .landing-invitation__content{visibility:visible}.landing-invitation__intro{color:var(--primary);letter-spacing:.07em;text-transform:uppercase;margin:0 0 .75rem;font-size:clamp(.7rem,1vw,.82rem);font-weight:700}.landing-invitation h1{color:var(--primary);font:400 clamp(2.05rem, 8.6vw, 3.55rem)/1 var(--display);letter-spacing:-.045em;white-space:nowrap;margin:0}.landing-invitation h1 span{color:var(--accent);font-size:.72em;font-style:italic}.landing-invitation__form{text-align:left;gap:.9rem;margin-top:clamp(4rem,8vh,4.75rem);display:grid}.landing-invitation .field input{background:#fffaf0d1;box-shadow:inset 0 1px #ffffffbf}.landing-invitation .button{justify-self:center;width:calc(100% - 2rem);margin-top:1.25rem}.lookup-layout{grid-template-columns:minmax(360px,42%) 1fr;height:100dvh;min-height:620px;display:grid;overflow:hidden}.brand-panel,.rsvp-brand,.confirmation-brand{isolation:isolate;background-color:var(--canvas);color:var(--panel-ink);background-image:url(/assets/garden-darbar-DH3v5Tm7.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;position:relative;overflow:hidden}.brand-panel__pattern,.rsvp-brand__pattern{display:none}.brand-panel__topline{z-index:2;color:#fff3cf;text-shadow:0 1px 12px #0f4826bf;letter-spacing:.14em;justify-content:space-between;align-items:center;font-size:.65rem;font-weight:600;display:flex;position:absolute;top:1.8rem;left:2rem;right:2rem}.brand-panel{place-items:center;padding:5rem 3rem;display:grid}.brand-panel__arch{aspect-ratio:.73;text-align:center;width:min(76%,390px);box-shadow:none;border:0;place-content:center;display:grid}.brand-panel__arch>p{color:var(--primary);letter-spacing:.1em;text-transform:uppercase;margin:0 0 1.5rem;font-size:.65rem}.brand-panel__arch h1{color:var(--primary);font:400 clamp(3.2rem, 5.2vw, 5rem)/.9 var(--display);letter-spacing:-.055em;margin:0}.brand-panel__arch h1 span{color:var(--accent);margin:.65rem 0 .5rem;font-size:.35em;font-style:italic;display:block}.brand-panel__lotus{justify-content:center;align-items:flex-end;height:30px;margin-top:2rem;display:flex}.brand-panel__lotus i{border:1px solid #a47d25d1;border-radius:100% 0;width:19px;height:28px;display:block;transform:rotate(-28deg)}.brand-panel__lotus i:nth-child(2){transform:translateY(-7px)rotate(45deg)}.brand-panel__lotus i:nth-child(3){transform:rotate(118deg)}.brand-panel__footer{color:#fff3cf;text-shadow:0 1px 12px #0f4826cc;letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;font-size:.62rem;display:flex;position:absolute;bottom:1.8rem;left:2rem;right:2rem}.lookup-stage{background:linear-gradient(#fffaf0f0,#fff6e3fa),repeating-linear-gradient(0deg,#0000 0 4px,#55482206 4px 5px);border-left:1px solid #a47d2561;place-items:center;min-width:0;height:100%;padding:clamp(2rem,7vw,7rem);display:grid;overflow:auto}.lookup-stage__inner{width:min(100%,430px)}.lookup-stage h2,.flow-section h1,.confirmation h1{color:var(--primary);font:400 clamp(2.65rem, 5vw, 4.5rem)/.98 var(--display);letter-spacing:-.045em;margin:0}.lede,.flow-section__lede,.confirmation__lede{max-width:38rem;color:var(--muted);margin:1rem 0 1.75rem;font-size:.88rem;line-height:1.62}.lookup-form{border-top:1px solid var(--line);gap:1.15rem;padding-top:1.5rem;display:grid}.privacy-note{color:var(--muted);text-align:center;margin:.85rem 0 0;font-size:.66rem;line-height:1.5}.rsvp-shell,.confirmation-shell{grid-template-columns:minmax(280px,31vw) 1fr;height:100dvh;min-height:560px;display:grid;overflow:hidden}.rsvp-brand{background-position:50%;padding:2rem}.rsvp-brand__arch{aspect-ratio:.76;text-align:center;border:0;place-content:center;width:min(73%,340px);display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-54%)}.rsvp-brand__arch span{color:var(--primary);font:400 clamp(2.2rem, 3.5vw, 3.6rem)/.95 var(--display);letter-spacing:-.045em}.rsvp-brand__arch i{color:var(--accent);font:italic 1.1rem/1 var(--display);margin:.45rem 0}.rsvp-stage{background:linear-gradient(#fffaf0f0,#fff6e3fa),repeating-linear-gradient(0deg,#0000 0 4px,#55482206 4px 5px);grid-template-rows:62px 3px minmax(0,1fr);min-width:0;height:100dvh;display:grid;position:relative}.site-header{border-bottom:1px solid var(--line);background:#fffaf0f5;justify-content:space-between;align-items:center;gap:1rem;padding:0 clamp(1.25rem,4vw,3.5rem);display:flex}.site-header strong,.site-header span{display:block}.site-header strong{color:var(--ink);font-size:.76rem;font-weight:700}.site-header div>span,.site-header__guest-count{color:var(--muted);margin-top:.16rem;font-size:.63rem}.flow-progress{background:var(--surface-soft)}.flow-progress span{background:linear-gradient(90deg, var(--primary), var(--accent));transform-origin:0;width:100%;height:100%;display:block}.flow-viewport{overscroll-behavior:contain;outline:none;min-height:0;overflow:auto}.flow-frame{place-items:center;min-height:100%;padding:clamp(1.6rem,4vh,3.25rem) clamp(1.25rem,5vw,4.5rem) clamp(6rem,13vh,8rem);display:grid}.flow-step-stack{width:min(100%,850px);display:grid}.flow-step-motion{will-change:opacity, transform;grid-area:1/1;width:100%}.flow-step-motion>.flow-section{margin-inline:auto}.flow-section{width:min(100%,800px)}.event-heading{justify-content:space-between;align-items:flex-start;gap:2rem;display:flex}.event-meta{color:var(--muted);margin:.85rem 0 0;font-size:.76rem;line-height:1.55}.date-tile{border-left:1px solid var(--line-strong);width:64px;color:var(--accent);flex:none;padding-left:.9rem}.date-tile strong,.date-tile span{display:block}.date-tile strong{font:400 2.3rem/.95 var(--display)}.date-tile span{letter-spacing:.1em;text-transform:uppercase;margin-top:.25rem;font-size:.62rem;font-weight:700}.guest-responses{border-top:1px solid var(--line);margin-top:1.45rem}.guest-response{border:0;border-bottom:1px solid var(--line);grid-template-columns:minmax(150px,.75fr) minmax(250px,1fr);align-items:center;gap:1.2rem;min-width:0;margin:0;padding:.85rem 0;display:grid}.guest-response legend{color:var(--ink);font-size:.82rem;font-weight:700;display:contents}.attendance-options{grid-template-columns:1fr 1fr;gap:.45rem;display:grid}.attendance-option{border:1px solid var(--line-strong);background:var(--surface);min-height:46px;color:var(--muted);cursor:pointer;border-radius:12px;place-items:center;font-size:.72rem;font-weight:700;transition:background .16s,border-color .16s,color .16s,transform .16s;display:grid;position:relative}.attendance-option:hover{border-color:var(--primary)}.attendance-option:active{transform:scale(.98)}.attendance-option input{opacity:0;width:1px;height:1px;position:absolute}.attendance-option:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.attendance-option.is-selected{border-color:var(--primary);background:var(--primary);color:var(--primary-ink)}.details-step{max-width:720px}.details-fields{border-top:1px solid var(--line);padding-top:1.35rem}.field-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.song-field{margin-top:1rem}.review-step{max-width:850px}.review-sheet{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 2rem;display:grid}.review-block{border-top:1px solid var(--line-strong);padding-top:.8rem}.review-block__heading{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.45rem;display:flex}.review-block__heading span,.review-block__heading h2{display:block}.review-block__heading span{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.18rem;font-size:.6rem;font-weight:700}.review-block__heading h2{color:var(--ink);font-family:var(--display);margin:0;font-size:1.08rem;font-weight:400}.review-block__heading button{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:.2rem;font-size:.66rem;font-weight:700}.review-response-list p{color:var(--muted);grid-template-columns:minmax(90px,1fr) minmax(80px,auto);gap:.8rem;margin:0;padding:.27rem 0;font-size:.67rem;display:grid}.review-response-list p strong{overflow-wrap:anywhere;max-width:180px;color:var(--ink);text-align:right;font-weight:700}.review-response-list .status--yes{color:var(--primary)}.review-response-list .status--no{color:var(--danger)}.action-dock{z-index:3;pointer-events:none;background:0 0;position:absolute;bottom:0;left:0;right:0}.form-error--dock{margin:.6rem clamp(1.25rem,5vw,4.5rem) 0}.flow-actions{min-height:76px;padding:.75rem clamp(1.25rem, 5vw, 4.5rem) max(.75rem, env(safe-area-inset-bottom));grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:.75rem;display:grid}.flow-actions--single{grid-template-columns:minmax(0,1fr)}.flow-actions .button{pointer-events:auto;width:100%;box-shadow:0 12px 28px #1c432a2e}.flow-actions .button--secondary{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffaf0e6}.confirmation-brand{padding:2rem}.confirmation-brand__message{width:75%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.confirmation-brand__message span,.confirmation-brand__message strong{display:block}.confirmation-brand__message span{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin-bottom:1rem;font-size:.68rem;font-weight:700}.confirmation-brand__message strong{color:var(--primary);font:400 clamp(3rem, 5vw, 5.2rem)/.9 var(--display);letter-spacing:-.05em}.confirmation-stage{background:linear-gradient(#fffaf0f0,#fff6e3fa),repeating-linear-gradient(0deg,#0000 0 4px,#55482206 4px 5px);border-left:1px solid #a47d2561;min-width:0;height:100dvh;overflow:auto}.confirmation{place-content:center;width:min(100% - 2.5rem,760px);min-height:100%;margin:0 auto;padding:2.5rem 0;display:grid}.confirmation__mark{border:1px solid var(--accent);width:48px;height:48px;color:var(--accent);border-radius:50%;place-items:center;margin-bottom:1.3rem;font-size:.9rem;display:grid}.itinerary{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 2rem;margin:.5rem 0 1.4rem;display:grid}.itinerary__event{border-top:1px solid var(--line-strong);grid-template-columns:48px 1fr;gap:.9rem;padding-top:.9rem;display:grid}.itinerary__event time{border-right:1px solid var(--line);color:var(--accent)}.itinerary__event time strong,.itinerary__event time span{display:block}.itinerary__event time strong{font:400 1.7rem/.95 var(--display)}.itinerary__event time span{letter-spacing:.08em;text-transform:uppercase;margin-top:.2rem;font-size:.57rem;font-weight:700}.itinerary__event h2{color:var(--ink);font-family:var(--display);margin:0;font-size:1rem;font-weight:400}.itinerary__event p{color:var(--muted);margin:.25rem 0 .55rem;font-size:.64rem;line-height:1.5}.itinerary__links{flex-wrap:wrap;gap:.75rem;display:flex}.itinerary__links a{color:var(--primary);align-items:center;gap:.28rem;font-size:.62rem;font-weight:700;text-decoration:none;display:inline-flex}.itinerary__links svg{flex:none}.itinerary__links a:hover{text-decoration:underline}.confirmation__footer{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:1rem;padding-top:1rem;display:flex}.confirmation__footer p{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:.62rem}@media (width<=760px){.lookup-layout{grid-template-rows:minmax(180px,30dvh) minmax(0,1fr);grid-template-columns:1fr;min-height:100dvh}.brand-panel{background-position:top;background-size:100%;padding:3rem 1rem 1rem}.brand-panel__topline{top:1rem;left:1rem;right:1rem}.brand-panel__footer{display:none}.brand-panel__arch{aspect-ratio:auto;width:100%;height:auto;box-shadow:none;border:0}.brand-panel__arch>p,.brand-panel__lotus{display:none}.brand-panel__arch h1{white-space:nowrap;font-size:clamp(2rem,9vw,3rem)}.brand-panel__arch h1 span{margin:0 .35rem;font-size:.55em;display:inline}.lookup-stage{padding:clamp(1.35rem, 4vh, 2rem) 1.25rem max(1.25rem, env(safe-area-inset-bottom));align-items:start}.lookup-stage h2{font-size:clamp(2.25rem,10vw,3.1rem)}.lede{margin:.7rem 0 1.15rem}.lookup-form{gap:.85rem;padding-top:1rem}.field input{min-height:49px}.rsvp-shell,.confirmation-shell{grid-template-rows:76px minmax(0,1fr);grid-template-columns:1fr;min-height:100dvh}.rsvp-brand,.confirmation-brand{background-position:top;background-size:100%;justify-content:space-between;align-items:center;padding:0 1rem;display:flex}.rsvp-brand__pattern{opacity:.1}.rsvp-brand__arch{display:none}.rsvp-stage{grid-template-rows:48px 3px minmax(0,1fr);height:calc(100dvh - 76px)}.site-header{padding:0 1rem}.site-header strong{text-overflow:ellipsis;white-space:nowrap;max-width:210px;overflow:hidden}.site-header div>span{display:none}.site-header__guest-count{white-space:nowrap;margin:0}.flow-frame{align-items:start;padding:1.35rem 1rem 6rem}.flow-section h1,.confirmation h1{font-size:clamp(2.2rem,10.5vw,3rem)}.flow-section__lede{margin:.65rem 0 1.2rem}.event-heading{gap:1rem}.event-meta{margin-top:.55rem}.date-tile{width:54px;padding-left:.7rem}.date-tile strong{font-size:1.85rem}.guest-responses{margin-top:1rem}.guest-response{grid-template-columns:minmax(105px,.75fr) minmax(190px,1.25fr);gap:.65rem;padding:.62rem 0}.guest-response legend{font-size:.74rem}.attendance-option{min-height:42px;font-size:.67rem}.field-grid{grid-template-columns:1fr;gap:.85rem}.song-field{margin-top:.85rem}.review-sheet{grid-template-columns:1fr;gap:1rem}.review-step .flow-section__lede{margin-bottom:1rem}.review-step .section-label{margin-bottom:.45rem}.review-step .review-sheet{gap:.7rem}.review-step .review-block{padding-top:.55rem}.review-step .review-block__heading{margin-bottom:.25rem}.review-step .review-response-list p{padding:.18rem 0}.form-error--dock{margin:.45rem 1rem 0}.flow-actions{min-height:70px;padding:.65rem 1rem max(.65rem, env(safe-area-inset-bottom))}.flow-actions .button{min-height:46px}.confirmation-brand__message,.confirmation-brand .brand-panel__footer{display:none}.confirmation-stage{height:calc(100dvh - 76px)}.confirmation{align-content:start;width:min(100% - 2rem,760px);padding:1.5rem 0}.confirmation__mark{width:42px;height:42px;margin-bottom:1rem}.itinerary{grid-template-columns:1fr;gap:1rem}.confirmation__footer{align-items:flex-end}}@media (width<=380px){.guest-response{grid-template-columns:1fr;gap:.45rem}.attendance-option{min-height:40px}.flow-actions .button{padding-left:1rem;padding-right:1rem}}@media (height<=680px) and (width>=761px){.flow-frame{padding-top:1.4rem;padding-bottom:1.4rem}.flow-section h1{font-size:clamp(2.3rem,4.6vw,3.7rem)}.guest-response{padding:.6rem 0}.attendance-option{min-height:42px}.flow-actions{min-height:66px}}
