/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--spacing:.25rem;--default-font-family:"Trebuchet MS", Arial, Helvetica, sans-serif;--default-mono-font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}}@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{.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.block{display:block}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.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,)}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;--cream:#fffaf6;--paper:#fffefd;--ink:#2f252a;--muted:#76656d;--pink:#f6c7d6;--soft-pink:#fff0f5;--rose:#e45b82;--cherry:#b92d53;--gold:#c99b4e;--line:#ead8df;--shadow:0 24px 70px #742f4624}*{box-sizing:border-box}html{scroll-behavior:smooth;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only}body{background:var(--cream);color:var(--ink);margin:0;font-family:Trebuchet MS,Arial,Helvetica,sans-serif}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%}.eyebrow,.admin-eyebrow{color:var(--cherry);letter-spacing:.18em;text-transform:uppercase;margin:0 0 12px;font-size:12px;font-weight:800}.primary-button,.outline-button,.admin-primary,.admin-secondary,.link-button{border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:0 22px;font-weight:800;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex}.primary-button,.admin-primary{border:1px solid var(--cherry);background:var(--cherry);color:#fff;box-shadow:0 10px 26px #b92d5338}.primary-button:hover,.admin-primary:hover{transform:translateY(-2px);box-shadow:0 14px 30px #b92d5347}.primary-button:disabled,.admin-primary:disabled{opacity:.55;cursor:not-allowed;transform:none}.outline-button,.admin-secondary{border:1px solid var(--line);color:var(--ink);background:#fff}.outline-button:hover,.admin-secondary:hover{border-color:var(--pink);background:var(--soft-pink)}.compact{min-height:42px;padding:0 18px;font-size:13px}.site-home,.invite-cover{background:radial-gradient(circle at 12% 18%,#fffffff2 0 4px,#0000 5px),radial-gradient(circle at 86% 22%,#fffc 0 7px,#0000 8px),linear-gradient(145deg,#ffdce8,#fff5ef 48%,#f7cad9);place-items:center;min-height:100vh;padding:40px 20px;display:grid}.home-card,.envelope-card{text-align:center;background:var(--paper);width:min(620px,100%);box-shadow:var(--shadow), inset 0 0 0 1px var(--line);border:2px solid #fff;border-radius:42px;padding:58px 64px 52px;position:relative;overflow:hidden}.home-card:before,.envelope-card:before{content:"";pointer-events:none;border:2px dashed var(--pink);border-radius:32px;position:absolute;inset:12px}.home-card img{object-fit:contain;width:auto;height:280px;margin:-30px auto -18px}.home-card h1{max-width:470px;color:var(--cherry);margin:0 auto 18px;font:700 clamp(34px,7vw,56px)/1.04 Georgia,serif}.home-card>p:not(.eyebrow){max-width:460px;color:var(--muted);margin:0 auto;line-height:1.75}.home-actions{justify-content:center;gap:12px;margin-top:28px;display:flex;position:relative}.bow-mark{z-index:2;justify-content:center;align-items:flex-start;gap:0;width:96px;height:48px;margin:0 auto 10px;display:flex;position:relative}.bow-mark i{z-index:2;background:linear-gradient(145deg,#9c2445,#701329);border:1px solid #70132938;width:38px;height:29px;display:block;position:relative;box-shadow:inset 0 3px 5px #ffffff21,0 5px 10px #5e182d1f}.bow-mark i:first-child{clip-path:polygon(100% 48%,72% 7%,3% 18%,10% 80%,74% 93%);transform:rotate(-5deg)translate(2px)}.bow-mark i:last-child{clip-path:polygon(0 48%,28% 7%,97% 18%,90% 80%,26% 93%);transform:rotate(5deg)translate(-2px)}.bow-mark b{z-index:4;background:linear-gradient(145deg,#efc1ce,#d991a5);border:2px solid #701329;border-radius:48% 48% 42% 42%;flex:0 0 23px;width:23px;height:25px;margin:1px -3px 0;position:relative;box-shadow:inset 0 0 0 3px #ffffff38,0 4px 8px #5e182d24}.bow-mark:before,.bow-mark:after{content:"";z-index:1;background:linear-gradient(160deg,#8d1e3d,#641026);width:22px;height:24px;position:absolute;top:21px}.bow-mark:before{clip-path:polygon(10% 0,100% 0,74% 100%,43% 76%,10% 100%);left:29px;transform:rotate(10deg)}.bow-mark:after{clip-path:polygon(0 0,90% 0,90% 100%,57% 76%,26% 100%);right:29px;transform:rotate(-10deg)}.invite-cover{overflow:hidden}.envelope-card{width:min(500px,100%);padding-top:42px}.cover-ornament{z-index:2;color:var(--pink);letter-spacing:.35em;font:700 16px Georgia,serif;position:relative}.cover-ornament.top{margin:2px 0 12px}.cover-ornament.bottom{color:var(--rose);margin:24px 0 -8px}.envelope-card h1{color:var(--cherry);margin:4px 0 10px;font:700 clamp(34px,8vw,48px)/1.1 Georgia,serif;position:relative}.envelope-card>p:not(.eyebrow,.dear-label){color:var(--muted);position:relative}.envelope-card small{color:#a28e97;margin-top:12px;display:block;position:relative}.envelope-card .primary-button{margin-top:22px;position:relative}.cover-cats{z-index:1;object-fit:contain;width:190px;height:220px;margin:-18px auto;position:relative}.guest-avatar{z-index:1;width:154px;height:154px;box-shadow:0 0 0 2px var(--pink), 0 14px 34px #712e442e;object-fit:cover;border:8px solid #fff;border-radius:50%;margin:18px auto 24px;position:relative}.dear-label{color:var(--gold);margin:2px 0 0;font:italic 17px Georgia,serif}.floating-hearts span{color:#b92d5359;animation:7s ease-in-out infinite floatHeart;position:fixed}.floating-hearts span:first-child{font-size:30px;top:16%;left:8%}.floating-hearts span:nth-child(2){font-size:20px;animation-delay:-2s;top:22%;right:10%}.floating-hearts span:nth-child(3){font-size:16px;animation-delay:-4s;bottom:12%;left:16%}.floating-hearts span:nth-child(4){font-size:34px;animation-delay:-1s;bottom:16%;right:14%}.floating-hearts span:nth-child(5){font-size:23px;animation-delay:-5s;top:54%;left:4%}.floating-hearts span:nth-child(6){font-size:26px;animation-delay:-3s;top:55%;right:5%}.floating-hearts span:nth-child(7){font-size:18px;animation-delay:-6s;top:8%;left:28%}.floating-hearts span:nth-child(8){font-size:25px;animation-delay:-2.5s;bottom:7%;right:28%}@keyframes floatHeart{0%,to{transform:translateY(0)rotate(-8deg)}50%{transform:translateY(-20px)rotate(8deg)}}.invitation-page{background-color:var(--cream);background-image:radial-gradient(circle at 10px 10px,#e45b8212 1.5px,#0000 1.7px);background-size:34px 34px;min-height:100vh;overflow:hidden}.page-sparkles{z-index:0;pointer-events:none;color:#b92d5333;position:fixed;inset:0;overflow:hidden}.page-sparkles span{filter:drop-shadow(0 4px 8px #b92d5314);animation:15s linear infinite inviteHeartRise;position:absolute;bottom:-12vh}.page-sparkles span:first-child{font-size:28px;animation-duration:16s;animation-delay:-2s;left:4%}.page-sparkles span:nth-child(2){font-size:20px;animation-duration:19s;animation-delay:-10s;left:17%}.page-sparkles span:nth-child(3){font-size:34px;animation-duration:17s;animation-delay:-6s;left:31%}.page-sparkles span:nth-child(4){font-size:23px;animation-duration:21s;animation-delay:-14s;left:45%}.page-sparkles span:nth-child(5){font-size:30px;animation-duration:18s;animation-delay:-4s;left:59%}.page-sparkles span:nth-child(6){font-size:19px;animation-duration:20s;animation-delay:-12s;left:72%}.page-sparkles span:nth-child(7){font-size:32px;animation-duration:16s;animation-delay:-8s;left:85%}.page-sparkles span:nth-child(8){font-size:22px;animation-duration:22s;animation-delay:-16s;left:95%}@keyframes inviteHeartRise{0%{opacity:0;transform:translate(0)rotate(-12deg)scale(.85)}10%{opacity:.72}50%{opacity:1;transform:translate(18px,-58vh)rotate(10deg)scale(1.08)}90%{opacity:.65}to{opacity:0;transform:translate(-10px,-120vh)rotate(-8deg)scale(.92)}}.section-shell{width:min(1120px,100% - 40px);margin:0 auto}.section-shell.narrow{width:min(1120px,100% - 40px)}.music-button{z-index:40;border:1px solid var(--pink);min-height:46px;color:var(--cherry);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;border-radius:999px;align-items:center;gap:9px;padding:0 16px;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 12px 30px #5a22362e}.music-button>span{font-size:12px;font-weight:800}.wedding-hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:32px;min-height:720px;padding:80px 60px;display:grid;position:relative;overflow:hidden}.wedding-hero:before{content:"";z-index:0;border:1px solid var(--pink);outline-offset:-14px;background:radial-gradient(circle at 14px 14px,#e45b821a 2px,#0000 2.5px) 0 0/28px 28px,linear-gradient(130deg,#fff 0%,#fff7fa 56%,#ffd7e4 100%);border-radius:64px 20px;outline:5px double #f6c7d68c;position:absolute;inset:28px 0;box-shadow:inset 0 0 0 1px #ffffff7a}.wedding-hero:after{content:"♥  ·  ♥  ·  ♥";color:var(--pink);letter-spacing:.8em;position:absolute;top:45px;left:55px}.hero-copy,.hero-visual{z-index:1;position:relative}.hero-copy h1{letter-spacing:-.05em;color:var(--cherry);margin:0 0 18px;font:700 clamp(64px,8vw,110px)/.88 Georgia,serif}.couple-names{white-space:nowrap;grid-template-columns:auto auto auto;justify-content:start;align-items:baseline;gap:clamp(12px,1.6vw,22px);max-width:100%;margin:0 0 22px;font:italic clamp(28px,3.1vw,42px)/1.18 Georgia,serif;display:inline-grid}.couple-names span:first-child,.couple-names span:last-child{text-align:left}.couple-names b{color:var(--rose);font-size:.9em;font-style:normal;line-height:1;transform:translateY(-.03em)}.hero-subtitle{max-width:520px;color:var(--muted);margin:0;font-size:18px;line-height:1.7}@media (width>=801px) and (width<=1080px){.couple-names{gap:10px;font-size:clamp(27px,3vw,34px)}}.guest-invitation-card{outline-offset:-11px;color:#fff;text-align:center;background:radial-gradient(circle at 12px 12px,#ffffff14 1.5px,#0000 2px) 0 0/24px 24px,linear-gradient(145deg,#801a38,#4e1325);border:1px solid #d996a9;border-radius:42px 18px;outline:4px double #73162d40;width:min(1120px,100% - 40px);margin:34px auto 28px;padding:46px 54px 42px;position:relative;overflow:hidden;box-shadow:0 18px 48px #4b122333}.guest-invitation-card:before,.guest-invitation-card:after{content:"✦";color:#ffcadb6b;font-size:22px;position:absolute}.guest-invitation-card:before{top:28px;left:34px}.guest-invitation-card:after{bottom:28px;right:34px}.guest-invitation-mark{color:#ffd0de;background:#ffffff1a;border:1px solid #ffffff80;border-radius:50%;place-items:center;width:58px;height:58px;margin:0 auto 16px;font-size:30px;display:grid}.guest-invitation-card>p{color:#f7b5c9;letter-spacing:.18em;text-transform:uppercase;margin:0 0 10px;font-size:12px;font-weight:900}.guest-invitation-card h2{color:#fff;overflow-wrap:anywhere;text-wrap:balance;max-width:920px;margin:0 auto;font:700 clamp(42px,5.4vw,68px)/1.02 Georgia,serif}.guest-invitation-divider{color:#f6abc2;align-items:center;gap:12px;width:min(330px,70%);margin:22px auto 17px;display:flex}.guest-invitation-divider i{background:linear-gradient(90deg,#0000,#ffceddbf);flex:1;height:1px}.guest-invitation-divider i:last-child{background:linear-gradient(90deg,#ffceddbf,#0000)}.guest-invitation-divider b{font-size:18px}.guest-invitation-card strong{color:#ffd7e3;font:italic 700 26px/1.25 Georgia,serif;display:block}.guest-invitation-card small{color:#fffc;max-width:520px;margin:10px auto 0;font-size:15px;line-height:1.5;display:block}.hero-visual{place-items:center;height:610px;display:grid;position:relative}.hero-ornaments{z-index:2;pointer-events:none;color:var(--rose);position:absolute;inset:50px 26px}.hero-ornaments span{background:#ffffffbf;border:1px solid #e45b8240;border-radius:50%;place-items:center;width:42px;height:42px;display:grid;position:absolute;box-shadow:0 8px 24px #63263917}.hero-ornaments span:first-child{top:8%;left:1%}.hero-ornaments span:nth-child(2){top:6%;right:1%}.hero-ornaments span:nth-child(3){bottom:7%;left:2%}.hero-ornaments span:nth-child(4){bottom:8%;right:2%}.hero-date-seal{z-index:4;outline:2px dashed var(--rose);outline-offset:-8px;background:var(--cherry);color:#fff;text-align:center;border:2px solid #fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:112px;height:112px;display:flex;position:absolute;top:42px;right:2px;transform:rotate(7deg);box-shadow:0 12px 25px #75223c38}.hero-date-seal b{font:700 36px/.9 Georgia,serif}.hero-date-seal span{text-transform:uppercase;font-size:12px;font-weight:900}.hero-date-seal small{color:#ffdce7;margin-top:3px;font-size:10px}.hero-cats{object-fit:contain;filter:drop-shadow(0 24px 20px #5626331f);width:390px;height:590px}.couple-photo{aspect-ratio:4/5;border:2px solid var(--pink);object-fit:cover;background:#fff;border-radius:48% 48% 22px 22px;width:min(420px,100%);padding:12px;box-shadow:16px 18px #f4b8cb}.welcome-section,.contact-section{text-align:center;padding:110px 0}.welcome-section{background:#ffffff94;border-radius:70px 18px;padding-inline:44px;position:relative;box-shadow:inset 0 0 0 1px #f6c7d68c}.welcome-section:before,.welcome-section:after{color:#e45b8240;font:700 54px Georgia,serif;position:absolute}.welcome-section:before{content:"♡";top:24px;left:22px}.welcome-section:after{content:"୨୧";bottom:24px;right:22px}.kawaii-symbol{color:var(--rose);margin:0;font-size:32px}.welcome-section h2,.contact-section h2,.section-heading h2,.location-section h2,.detail-card h2,.rsvp-card h2{color:var(--cherry);margin:12px 0 20px;font:700 clamp(36px,5vw,58px)/1.05 Georgia,serif}.welcome-section>p:not(.kawaii-symbol),.contact-section>p:not(.kawaii-symbol){color:var(--muted);font-size:18px;line-height:1.85}.countdown{grid-template-columns:repeat(4,1fr);gap:12px;margin-top:44px;display:grid}.countdown div{border:1px solid var(--line);background:#fff;border-radius:20px;padding:20px 10px;box-shadow:0 10px 28px #70384914}.countdown b{color:var(--cherry);font:700 36px Georgia,serif;display:block}.countdown span{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:800}.ornament-divider{z-index:2;width:min(620px,100% - 50px);color:var(--rose);justify-content:center;align-items:center;gap:14px;margin:12px auto 36px;display:flex;position:relative}.ornament-divider i{background:linear-gradient(90deg,transparent,var(--pink));flex:1;height:1px}.ornament-divider i:last-child{background:linear-gradient(90deg,var(--pink),transparent)}.ornament-divider b{border:1px solid var(--pink);background:#fff;border-radius:50%;place-items:center;width:42px;height:42px;font-size:19px;display:grid;box-shadow:0 8px 20px #5d273814}.ornament-divider span{color:var(--gold);font-size:14px}.schedule-section{padding:80px 0 110px;position:relative}.schedule-section:before{content:"";z-index:-1;background:linear-gradient(#ffffffbf,#fff0f5b8);border-top:1px solid #f6c7d6a6;border-bottom:1px solid #f6c7d6a6;position:absolute;inset:20px -100vw}.section-heading{text-align:center;margin-bottom:44px}.section-heading p{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:13px;font-weight:800}.section-heading span{color:var(--rose);font-size:28px}.section-heading:after{content:"✦  ·  ୨୧  ·  ✦";color:var(--gold);letter-spacing:.3em;margin-top:8px;font:700 11px Georgia,serif;display:block}.schedule-day{border:1px solid var(--line);outline-offset:-9px;background:#fff;border-radius:32px;outline:3px double #f6c7d659;grid-template-columns:300px 1fr;gap:40px;margin-bottom:28px;padding:40px;transition:transform .25s,box-shadow .25s;display:grid;box-shadow:0 16px 42px #6b344614}.schedule-day:hover{transform:translateY(-3px);box-shadow:0 22px 52px #6b34461f}.schedule-day>header{background:var(--soft-pink);border-radius:24px;min-width:0;padding:26px;overflow:hidden}.schedule-day.dark>header{color:#fff;background:#282326}.schedule-day.pink>header{background:#f6bfd0}.schedule-day>header p{color:inherit;opacity:.72;text-transform:uppercase;margin:0;font-size:13px;font-weight:800}.schedule-day>header h3{max-width:100%;color:var(--cherry);overflow-wrap:break-word;margin:12px 0 0;font:700 clamp(27px,2.4vw,32px)/1.08 Georgia,serif}.schedule-day.dark>header h3{color:#fff}.timeline-row{grid-template-columns:58px 18px 1fr;align-items:start;gap:18px;padding:12px 0 22px;display:grid}.timeline-row time{color:var(--cherry);font-weight:900}.timeline-row i{color:var(--rose);text-align:center;font-size:11px;font-style:normal;position:relative}.timeline-row i:after{content:"";background:var(--line);width:1px;height:60px;position:absolute;top:16px;left:50%}.timeline-row:last-child i:after{display:none}.timeline-row h4{margin:-4px 0 6px;font:700 22px Georgia,serif}.timeline-row p{color:var(--muted);margin:0;line-height:1.55}.location-section{background:radial-gradient(circle at 12px 12px,#ffffff17 2px,transparent 2.5px) 0 0/24px 24px,var(--cherry);color:#fff;border:4px double #ffffff73;border-radius:34px;grid-template-columns:.75fr 1.25fr;align-items:center;gap:60px;margin-bottom:70px;padding:64px;display:grid;box-shadow:0 18px 50px #75223c29}.location-section .eyebrow{color:#ffd2df}.location-section h2{color:#fff}.location-section p:not(.eyebrow){opacity:.85;font-size:18px;line-height:1.6}.location-section .outline-button{margin-top:16px}.location-art{color:#fff;border:2px dashed #f5a5bb;border-radius:38px 38px 16px 16px;place-items:center;min-height:240px;font:700 110px Georgia,serif;display:grid;position:relative;overflow:hidden}.location-art.has-photo{background:#3a1924;border-style:solid;box-shadow:inset 0 0 0 6px #ffffff1f}.location-art img{object-fit:cover;width:100%;height:100%;min-height:240px;display:block}.location-placeholder{line-height:1}.location-art .location-heart{z-index:2;color:#ffd2df;background:#4b1223b8;border:1px solid #ffffff8c;border-radius:50%;place-items:center;width:48px;height:48px;font-size:27px;display:grid;position:absolute;top:20px;right:20px;box-shadow:0 8px 20px #2c0a1438}.details-grid{grid-template-columns:1fr 1fr;gap:24px;padding-bottom:100px;display:grid}.detail-card{border:1px solid var(--line);outline-offset:-12px;text-align:center;border-radius:36px;outline:4px double #f6c7d673;min-height:390px;padding:52px;position:relative;overflow:hidden}.detail-card:before,.detail-card:after{content:"♡";color:#e45b8229;font:700 50px Georgia,serif;position:absolute}.detail-card:before{top:12px;left:18px;transform:rotate(-16deg)}.detail-card:after{bottom:10px;right:18px;transform:rotate(18deg)}.gift-card{background:#fff}.dress-card{background:var(--soft-pink)}.card-icon{color:var(--rose);font-size:34px}.detail-card h2{font-size:44px}.detail-card p{color:var(--muted);line-height:1.8}.color-palette{isolation:isolate;forced-color-adjust:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;justify-content:center;margin-top:28px;display:flex}.color-palette i{mix-blend-mode:normal;forced-color-adjust:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;border-radius:50%;width:52px;height:52px;margin-left:-8px;display:block;box-shadow:0 4px 14px #462d351f;filter:none!important}.color-palette img{forced-color-adjust:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;border-radius:50%;width:100%;max-width:none;height:100%;display:block;opacity:1!important;filter:none!important}.wishlist-section{z-index:2;border:1px solid var(--line);outline-offset:-12px;background:#ffffffc7;border-radius:38px 18px;outline:4px double #f6c7d66b;margin-bottom:90px;padding:72px 48px 54px;position:relative;box-shadow:0 18px 48px #602b3c14}.wishlist-lead{max-width:720px;color:var(--muted);text-align:center;margin:-20px auto 38px;font-size:17px;line-height:1.7}.wishlist-selection{background:linear-gradient(135deg,#fff2f6,#fff);border:1px solid #e6a2b6;border-radius:20px;align-items:center;gap:14px;max-width:760px;margin:0 auto 22px;padding:16px 18px;display:flex;box-shadow:0 9px 24px #6d273e17}.wishlist-selection>span{background:var(--cherry);color:#fff;border-radius:50%;flex:none;place-items:center;width:42px;height:42px;font-size:22px;display:grid}.wishlist-selection div{flex:1;min-width:0}.wishlist-selection small,.wishlist-selection b{display:block}.wishlist-selection small{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-bottom:3px;font-size:10px;font-weight:900}.wishlist-selection b{color:var(--cherry);font:700 20px Georgia,serif}.wishlist-selection button{border:1px solid var(--line);color:var(--cherry);background:#fff;border-radius:999px;padding:10px 14px;font-weight:800}.wishlist-notice{color:#27693c;text-align:center;background:#eff8f1;border-radius:12px;max-width:760px;margin:0 auto 18px;padding:11px 14px;font-weight:700}.wishlist-notice.error{color:#9a203d;background:#fff0f2}.wishlist-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.wishlist-card{border:1px solid var(--line);background:#fff;border-radius:24px;flex-direction:column;min-width:0;transition:transform .25s,box-shadow .25s,opacity .25s;display:flex;overflow:hidden;box-shadow:0 11px 28px #57233414}.wishlist-card:hover{transform:translateY(-5px);box-shadow:0 18px 36px #57233421}.wishlist-card.reserved{opacity:.62}.wishlist-card.selected{border-color:var(--rose);box-shadow:0 0 0 3px #b92d531c,0 15px 34px #5723341f}.wishlist-photo{aspect-ratio:4/3;color:var(--rose);background:linear-gradient(145deg,#fff3f7,#f7d8e2);place-items:center;font:700 54px Georgia,serif;display:grid;position:relative;overflow:hidden}.wishlist-photo img{object-fit:cover;width:100%;height:100%}.wishlist-photo em{color:#fff;text-align:center;background:#411b26db;border-radius:999px;padding:7px 10px;font-size:10px;font-style:normal;font-weight:900;position:absolute;inset:auto 10px 10px}.wishlist-copy{flex:1;padding:20px 20px 12px}.wishlist-copy h3{color:var(--cherry);overflow-wrap:anywhere;margin:0 0 9px;font:700 25px/1.12 Georgia,serif}.wishlist-copy p{color:var(--muted);white-space:pre-wrap;margin:0 0 12px;font-size:14px;line-height:1.55}.wishlist-copy a{color:var(--cherry);font-size:13px;font-weight:800}.wishlist-choice{border:1px solid var(--cherry);background:var(--cherry);color:#fff;border-radius:999px;min-height:46px;margin:8px 18px 18px;padding:0 14px;font-weight:900}.wishlist-choice:disabled{cursor:not-allowed;color:#78696e;background:#dfd4d8;border-color:#cabcc1}.wishlist-choice.selected{color:var(--cherry);background:#fff0f5;border-color:#a93c5c}.contact-section a{color:var(--cherry);margin-top:12px;font:700 28px Georgia,serif;text-decoration:none;display:inline-block}.rsvp-section{background:radial-gradient(circle at 12px 12px,#b92d5314 2px,#0000 2.5px) 0 0/30px 30px,linear-gradient(135deg,#f8bfd0,#fff0f5 58%,#ffd9e4);padding:100px 20px;position:relative}.rsvp-card{outline-offset:-14px;width:min(1120px,100%);box-shadow:var(--shadow);text-align:center;background:#fffffff2;border:2px solid #fff;border-radius:42px;outline:4px double #b92d532e;margin:0 auto;padding:66px 58px 58px;position:relative}.rsvp-ornament{background:var(--cherry);color:#fff;border:4px solid #fff;border-radius:18px;place-items:center;width:58px;height:58px;font-size:26px;display:grid;position:absolute;top:-28px;left:50%;transform:translate(-50%)rotate(-4deg);box-shadow:0 9px 24px #69203633}.rsvp-card>p:not(.eyebrow){color:var(--muted)}.rsvp-options{grid-template-columns:1fr 1fr;gap:14px;margin:32px 0 22px;display:grid}.rsvp-options label{border:1px solid var(--line);text-align:left;cursor:pointer;border-radius:22px;padding:22px 18px}.rsvp-options label.selected{border-color:var(--rose);background:var(--soft-pink);box-shadow:0 0 0 2px #e45b821f}.rsvp-options input{accent-color:var(--cherry)}.rsvp-options b,.rsvp-options span{margin-left:24px;display:block}.rsvp-options span{color:var(--muted);margin-top:6px;font-size:13px}.field-label{color:var(--ink);text-align:left;margin:16px 0;font-size:13px;font-weight:800;display:block}.field-label>small{color:var(--muted);margin-left:5px;font-size:10px;font-weight:500}.field-label input,.field-label select,.field-label textarea{border:1px solid var(--line);background:#fff;border-radius:14px;outline:none;width:100%;margin-top:8px;padding:14px 16px}.field-label input:focus,.field-label textarea:focus,.field-label select:focus{border-color:var(--rose);box-shadow:0 0 0 3px #e45b821a}.drink-question{text-align:left;background:linear-gradient(145deg,#fff6f9,#fff);border:1px solid #edc0cd;border-radius:24px;margin:24px 0 18px;padding:22px;box-shadow:inset 0 0 0 4px #f9e0e873}.drink-question-heading{align-items:center;gap:13px;margin-bottom:16px;display:flex}.drink-question-heading>span{background:var(--cherry);color:#fff;border-radius:14px;flex:0 0 42px;place-items:center;width:42px;height:42px;font-size:20px;display:grid}.drink-question-heading h3{color:var(--cherry);margin:0 0 4px;font:700 22px Georgia,serif}.drink-question-heading p{color:var(--muted);margin:0;font-size:12px}.drink-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.drink-options label{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:14px;align-items:center;gap:9px;min-height:48px;padding:10px 13px;transition:border-color .2s,background .2s,transform .2s;display:flex}.drink-options label:hover{border-color:#dc9caf;transform:translateY(-2px)}.drink-options label.selected{border-color:var(--rose);background:var(--soft-pink);box-shadow:0 0 0 2px #e45b821a}.drink-options input{width:17px;height:17px;accent-color:var(--cherry);margin:0}.drink-options span{color:var(--ink);font-size:13px;font-weight:800}.drink-other{margin-bottom:7px}.drink-required{font-size:10px;font-weight:700;color:#9a5d6c!important;margin:6px 0 0!important}.rsvp-card form>.primary-button{width:100%;margin-top:10px}.rsvp-confirmation{border:1px solid var(--line);background:linear-gradient(145deg,#fff9fb,#fff);border-radius:28px;margin-top:34px;padding:38px 30px 32px;box-shadow:inset 0 0 0 5px #f6c7d62e}.rsvp-confirmation>span{background:var(--cherry);color:#fff;border-radius:50%;place-items:center;width:58px;height:58px;margin:0 auto 14px;font-size:28px;display:grid;box-shadow:0 10px 24px #6920362e}.rsvp-confirmation.no>span{background:#7c6670}.rsvp-confirmation .confirmation-kicker{letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:900;color:var(--rose)!important;margin:0 0 7px!important}.rsvp-confirmation h3{color:var(--cherry);margin:0 0 12px;font:700 clamp(28px,4vw,42px)/1.08 Georgia,serif}.rsvp-confirmation>p:not(.confirmation-kicker){max-width:620px;color:var(--muted);margin:0 auto;line-height:1.7}.rsvp-confirmation blockquote{background:var(--soft-pink);color:#59464e;white-space:pre-wrap;border:0;border-radius:15px;max-width:620px;margin:22px auto;padding:16px 18px;line-height:1.6}.rsvp-confirmation blockquote b{color:var(--cherry);letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-size:10px;display:block}.rsvp-confirmation .outline-button{margin-top:24px}.form-error,.admin-error{font-size:13px;color:#bd234b!important}.wedding-footer{text-align:center;background:linear-gradient(#fff,#fff7fa) padding-box,repeating-linear-gradient(90deg,var(--pink) 0 18px,#fff 18px 36px) border-box;border-top:10px solid #0000;flex-direction:column;align-items:center;padding:70px 20px 90px;display:flex;position:relative}.footer-ornament{color:var(--gold);letter-spacing:.45em;margin-bottom:12px}.wedding-footer img{object-fit:contain;object-position:center;width:150px;height:170px;margin:0 auto 18px;display:block}.wedding-footer p{max-width:720px;color:var(--muted);margin:0 auto}.wedding-footer h2{color:var(--cherry);margin:8px 0;font:italic 38px Georgia,serif}.wedding-footer h2 b{color:var(--rose);font-weight:400}.wedding-footer .footer-names{justify-items:center;gap:2px;line-height:1.08;display:grid}.wedding-footer .footer-names span{display:block}.wedding-footer .footer-names b{line-height:1;display:block}.wedding-footer>span{color:var(--rose);font-size:22px}.admin-gate{background:linear-gradient(135deg,#fff0f5,#fbfaf7);place-items:center;min-height:100vh;padding:30px;display:grid}.admin-gate section{border:1px solid var(--line);width:min(500px,100%);box-shadow:var(--shadow);text-align:center;background:#fff;border-radius:28px;padding:52px}.admin-logo{background:var(--cherry);color:#fff;border-radius:18px;place-items:center;width:58px;height:58px;margin:0 auto 18px;font-size:30px;display:grid;transform:rotate(-4deg)}.admin-kicker{letter-spacing:.15em;text-transform:uppercase;font-size:12px;font-weight:900;color:var(--cherry)!important}.admin-gate h1{margin:8px 0 14px;font:700 42px/1 Georgia,serif}.admin-gate p{color:var(--muted);line-height:1.7}.admin-gate .admin-primary{margin-top:18px}.admin-app{background:#f8f7f5;grid-template-columns:250px 1fr;min-height:100vh;display:grid}.admin-sidebar{background:#fff;border-right:1px solid #eadfe3;flex-direction:column;height:100vh;padding:28px 18px 18px;display:flex;position:sticky;top:0}.admin-brand{align-items:center;gap:12px;padding:0 8px 26px;display:flex}.admin-brand>span{background:var(--cherry);color:#fff;border-radius:13px;place-items:center;width:42px;height:42px;font-size:22px;display:grid}.admin-brand b,.admin-brand small{display:block}.admin-brand b{color:var(--cherry);font:700 22px Georgia,serif}.admin-brand small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px}.admin-sidebar nav{gap:6px;display:grid}.admin-sidebar nav button{color:#675b61;text-align:left;background:0 0;border:0;border-radius:13px;align-items:center;gap:11px;width:100%;min-height:46px;padding:0 13px;font-weight:700;display:flex}.admin-sidebar nav button>span{color:#aa929d;width:22px;font-size:19px}.admin-sidebar nav button.active{background:var(--soft-pink);color:var(--cherry)}.admin-sidebar nav button.active>span{color:var(--cherry)}.admin-sidebar nav em{background:#f4e7ec;border-radius:99px;margin-left:auto;padding:3px 8px;font-size:11px;font-style:normal}.admin-account{background:#faf7f8;border-radius:14px;align-items:center;gap:10px;margin-top:auto;padding:12px;display:flex;overflow:hidden}.admin-account>span{background:var(--pink);width:36px;height:36px;color:var(--cherry);border-radius:50%;flex:none;place-items:center;font-weight:900;display:grid}.admin-account b,.admin-account small{text-overflow:ellipsis;white-space:nowrap;max-width:150px;display:block;overflow:hidden}.admin-account b{font-size:12px}.admin-account small{color:var(--muted);font-size:9px}.admin-main{min-width:0}.admin-topbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffe0;border-bottom:1px solid #eadfe3;justify-content:space-between;align-items:center;gap:20px;min-height:96px;padding:20px 38px;display:flex}.admin-topbar p{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin:0 0 3px;font-size:11px;font-weight:800}.admin-topbar h1{margin:0;font:700 30px Georgia,serif}.top-actions{gap:10px;display:flex}.admin-content{padding:30px 38px 50px}.welcome-banner{color:#fff;background:linear-gradient(120deg,#b92d53,#d95a80);border-radius:24px;align-items:center;min-height:210px;padding:36px 220px 36px 38px;display:flex;position:relative;overflow:hidden;box-shadow:0 14px 36px #84244326}.welcome-banner p{color:#ffdce7;letter-spacing:.14em;text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:900}.welcome-banner h2{margin:0 0 10px;font:700 clamp(28px,4vw,42px) Georgia,serif}.welcome-banner span{opacity:.82}.welcome-banner img{object-fit:contain;filter:drop-shadow(0 10px 14px #360a1824);width:200px;height:300px;position:absolute;bottom:-75px;right:38px}.stats-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin:22px 0;display:grid}.stat-card{background:#fff;border:1px solid #eadfe3;border-radius:18px;align-items:center;gap:14px;padding:22px;display:flex}.stat-card>span{border-radius:14px;place-items:center;width:44px;height:44px;font-size:21px;display:grid}.stat-card>span.pink{color:#bd335b;background:#ffe8f0}.stat-card>span.green{color:#257a54;background:#e6f5ee}.stat-card>span.red{color:#b34b4b;background:#fff0f0}.stat-card>span.yellow{color:#a4760b;background:#fff5db}.stat-card b{font-size:28px}.stat-card p{color:var(--muted);margin:2px 0 0;font-size:12px}.admin-card{background:#fff;border:1px solid #eadfe3;border-radius:20px;box-shadow:0 8px 26px #5b38440a}.admin-card>header{justify-content:space-between;align-items:center;gap:18px;padding:24px 26px 18px;display:flex}.admin-card>header h2{margin:0;font:700 24px Georgia,serif}.admin-card>header .admin-eyebrow{margin-bottom:5px;font-size:9px}.mini-table{padding:0 26px 20px}.mini-table>div{border-top:1px solid #f1e8eb;justify-content:space-between;align-items:center;padding:13px 0;display:flex}.guest-identity{align-items:center;gap:11px;min-width:0;display:flex}.guest-identity>span,.guest-identity>img{object-fit:cover;border-radius:50%;flex:none;width:38px;height:38px}.guest-identity>span{background:var(--soft-pink);color:var(--cherry);place-items:center;font-size:11px;font-weight:900;display:grid}.guest-identity b,.guest-identity small{display:block}.guest-identity b{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.guest-identity small{color:var(--muted);margin-top:2px;font-size:10px}.status-pill,.party-pill{white-space:nowrap;border-radius:999px;align-items:center;min-height:26px;padding:0 9px;font-size:10px;font-weight:900;display:inline-flex}.status-pill.pending{color:#8d6a17;background:#fff3d8}.status-pill.yes{color:#277353;background:#e6f5ee}.status-pill.no{color:#a84444;background:#fff0f0}.party-pill{color:#75636b;background:#f4edf0}.guests-layout{grid-template-columns:330px minmax(0,1fr);align-items:start;gap:20px;display:grid}.guest-form{padding-bottom:26px;position:sticky;top:115px}.guest-form>label,.guest-form fieldset{border:0;margin:0 26px 18px;padding:0;font-size:12px;font-weight:900;display:block}.guest-form label>span,.admin-field>span{color:var(--muted);margin:3px 0 7px;font-size:10px;font-weight:400;display:block}.guest-form input[type=text],.guest-form input:not([type]),.guest-form input[type=file]{border:1px solid var(--line);border-radius:11px;width:100%;margin-top:7px;padding:12px;font-weight:400}.guest-form input[type=file]{font-size:11px}.guest-form legend{margin-bottom:10px}.guest-form .radio-line{align-items:center;gap:8px;margin:8px 0;font-size:12px;font-weight:600;display:flex}.radio-line input{accent-color:var(--cherry)}.guest-form>.admin-primary{width:calc(100% - 52px);margin:6px 26px 0}.upload-preview{background:var(--soft-pink);color:var(--muted);border-radius:10px;justify-content:space-between;gap:8px;margin:-8px 26px 18px;padding:10px;font-size:10px;display:flex}.upload-preview button,.text-button{color:var(--cherry);background:0 0;border:0;font-weight:900}.guest-form .admin-error{margin:12px 26px 0}.guest-list-card{min-width:0;overflow:hidden}.list-tools{grid-template-columns:1fr 170px;gap:10px;padding:0 26px 16px;display:grid}.list-tools input,.list-tools select{border:1px solid var(--line);background:#fff;border-radius:11px;outline:0;min-width:0;padding:11px 13px}.guest-table{min-width:0;padding:0 26px 24px}.guest-row{border-top:1px solid #f1e8eb;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px 12px;min-width:0;padding:14px 0;display:grid}.guest-row>*,.guest-identity>div{min-width:0}.row-actions{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;gap:6px;display:flex}.row-actions button{border:1px solid var(--line);color:#62535a;white-space:nowrap;background:#fff;border-radius:8px;min-width:72px;padding:8px 10px;font-size:9px;font-weight:800}.row-actions button:hover{background:var(--soft-pink)}.row-actions .danger{color:#b03250}.empty-guests{text-align:center;color:var(--muted);padding:54px 20px}.empty-guests>span{color:var(--pink);font-size:38px}.empty-guests h3{color:var(--ink);margin:8px 0;font:700 22px Georgia,serif}.empty-guests p{font-size:12px}.editor-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px;display:grid}.form-section{padding-bottom:24px}.form-section>.admin-field,.form-section>.two-columns{margin:0 26px 16px}.two-columns{grid-template-columns:1fr 1fr;gap:12px;display:grid}.two-columns .admin-field{margin:0}.admin-field{font-size:11px;font-weight:900;display:block}.admin-field input:not([type=color]),.admin-field textarea{border:1px solid var(--line);resize:vertical;background:#fff;border-radius:10px;outline:0;width:100%;margin-top:7px;padding:11px 12px;font-size:12px;font-weight:400}.admin-field input:focus,.admin-field textarea:focus{border-color:var(--rose);box-shadow:0 0 0 3px #e45b8214}.color-inputs{gap:8px;margin-top:9px;display:flex}.color-inputs input{width:44px;height:44px;box-shadow:0 0 0 1px var(--line);border:3px solid #fff;border-radius:50%;padding:0;overflow:hidden}.file-line{align-items:center;gap:10px;margin-top:7px;display:flex}.file-line input{flex:1;margin:0!important;padding:9px!important}.file-line button{color:var(--cherry);background:0 0;border:0;font-size:10px;font-weight:900}.schedule-editors{gap:20px;display:grid}.editor-note{color:#745e67;background:#fff4f7;border:1px solid #f0d7df;border-radius:14px;margin:0;padding:14px 18px;font-size:12px}.schedule-editor{padding-bottom:24px}.schedule-editor>.admin-field{max-width:280px;margin:0 26px 18px}.schedule-edit-row{grid-template-columns:110px 1fr 1.5fr 36px;gap:9px;padding:8px 26px;display:grid}.schedule-edit-row input{border:1px solid var(--line);border-radius:9px;outline:0;min-width:0;padding:10px 11px;font-size:12px}.schedule-edit-row button{color:var(--cherry);background:#fff5f7;border:1px solid #f1d5dd;border-radius:9px;font-size:18px}.preview-backdrop{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#2b1d2394;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.preview-modal{background:#fff;border-radius:24px;flex-direction:column;width:min(980px,100%);max-height:calc(100vh - 40px);display:flex;overflow:hidden;box-shadow:0 28px 90px #1e0c1347}.preview-modal>header,.preview-modal>footer{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:20px 24px;display:flex}.preview-modal>header h2{margin:0;font:700 26px Georgia,serif}.preview-modal>header button{color:var(--muted);background:0 0;border:0;font-size:28px}.generated-link{background:#faf7f8;padding:14px 24px;display:flex}.generated-link input{border:1px solid var(--line);min-width:0;color:var(--muted);border-radius:10px 0 0 10px;flex:1;padding:11px}.generated-link button{background:var(--cherry);color:#fff;border:0;border-radius:0 10px 10px 0;padding:0 16px;font-weight:900}.phone-frame{aspect-ratio:9/16;background:#fff;border:8px solid #2f292c;border-radius:30px;flex:1;min-height:420px;margin:0 auto;padding:12px;overflow:hidden}.phone-frame iframe{border:0;border-radius:16px;width:100%;height:100%}.preview-modal>footer{border-top:1px solid var(--line);border-bottom:0;justify-content:flex-end}.admin-toast{box-shadow:var(--shadow);background:#fff;border-radius:12px;padding:13px 18px;position:fixed;bottom:24px;right:24px}.admin-toast.error{color:#b13451}@media (width<=1050px){.admin-app{grid-template-columns:84px 1fr}.admin-sidebar{padding-inline:12px}.admin-brand{justify-content:center}.admin-brand div,.admin-sidebar nav button:not(.active) em,.admin-sidebar nav button{font-size:0}.admin-sidebar nav button{justify-content:center;padding:0}.admin-sidebar nav button>span{width:auto;font-size:21px}.admin-account div{display:none}.admin-account{justify-content:center}.guests-layout{grid-template-columns:290px minmax(0,1fr)}.guest-row{grid-template-columns:1fr auto}.guest-row .party-pill{justify-self:start}.row-actions{grid-column:1/-1;justify-self:end}}@media (width<=800px){.wedding-hero{text-align:center;grid-template-columns:1fr;min-height:auto;padding:90px 28px 40px}.wedding-hero:before{inset:18px 0}.hero-copy h1{font-size:clamp(58px,18vw,92px)}.couple-names,.hero-subtitle{margin-inline:auto}.hero-visual{height:420px}.hero-cats{width:300px;height:430px}.couple-photo{max-width:330px}.hero-date-seal{top:12px;right:8%}.schedule-day{grid-template-columns:1fr;gap:24px;padding:24px}.location-section{grid-template-columns:1fr;padding:38px}.location-art{min-height:190px}.details-grid,.rsvp-options{grid-template-columns:1fr}.admin-topbar{flex-direction:column;align-items:flex-start;padding:18px 22px}.top-actions{width:100%}.top-actions>*{flex:1}.admin-content{padding:22px}.stats-grid{grid-template-columns:1fr 1fr}.guests-layout,.editor-grid{grid-template-columns:1fr}.guest-form{position:static}.guest-row{grid-template-columns:1fr auto}.schedule-edit-row{grid-template-columns:90px 1fr 36px}.schedule-edit-row input:nth-child(3){grid-column:1/3}.preview-modal{height:calc(100vh - 30px)}.phone-frame{min-height:0}}@media (width<=560px){.site-home,.invite-cover{padding:14px}.home-card,.envelope-card{border-radius:30px;padding:40px 24px 34px}.home-card:before,.envelope-card:before{border-radius:23px;inset:8px}.home-card img{height:220px}.home-actions{flex-direction:column}.section-shell,.section-shell.narrow{width:min(100% - 24px,1120px)}.wedding-hero{width:calc(100% - 16px)}.wedding-hero:after{letter-spacing:.38em;left:28px}.hero-copy h1{font-size:58px}.couple-names{grid-template-columns:1fr;gap:4px;font-size:27px}.couple-names span:first-child,.couple-names span:last-child{text-align:left}.couple-names b{text-align:center;line-height:.8}.hero-date-seal{width:92px;height:92px;top:20px;right:2%}.hero-date-seal b{font-size:29px}.hero-ornaments{inset:40px 4px}.hero-ornaments span{width:34px;height:34px}.welcome-section,.contact-section{padding:76px 8px}.welcome-section{padding-inline:24px}.welcome-section:before,.welcome-section:after{font-size:36px}.countdown{gap:6px}.countdown div{border-radius:14px;padding:14px 4px}.countdown b{font-size:26px}.countdown span{font-size:8px}.schedule-section{padding-top:54px}.schedule-day{border-radius:24px;padding:16px}.schedule-day>header{padding:20px}.timeline-row{grid-template-columns:52px 12px 1fr;gap:9px}.location-section{padding:30px 22px}.details-grid{padding-bottom:70px}.detail-card{min-height:auto;padding:38px 24px}.rsvp-section{padding:70px 12px}.rsvp-card{border-radius:30px;padding:48px 18px 38px}.music-button{bottom:12px;right:12px}.music-button>span{display:none}.admin-app{padding-bottom:76px;display:block}.admin-sidebar{z-index:50;border-top:1px solid var(--line);border-right:0;flex-direction:row;align-items:center;width:100%;height:70px;padding:8px;position:fixed;inset:auto 0 0}.admin-brand,.admin-account{display:none}.admin-sidebar nav{grid-template-columns:repeat(6,1fr);gap:2px;width:100%;display:grid}.admin-sidebar nav button{flex-direction:column;gap:2px;min-height:52px;display:flex;font-size:9px!important}.admin-sidebar nav button>span{font-size:18px}.admin-sidebar nav em{display:none}.admin-topbar{position:static}.admin-topbar h1{font-size:25px}.top-actions{flex-direction:column}.admin-content{padding:16px 12px 26px}.welcome-banner{min-height:250px;padding:30px 24px 100px}.welcome-banner img{width:180px;bottom:-120px;right:-8px}.stats-grid{gap:8px}.stat-card{gap:8px;padding:14px}.stat-card>span{width:36px;height:36px}.stat-card b{font-size:22px}.list-tools{grid-template-columns:1fr}.guest-row{grid-template-columns:1fr auto}.guest-row .party-pill{grid-column:1/-1}.row-actions{width:100%;overflow:visible}.row-actions button{flex:82px;min-width:0}.two-columns{grid-template-columns:1fr}.schedule-edit-row{grid-template-columns:75px 1fr 34px;padding-inline:16px}.preview-backdrop{padding:0}.preview-modal{border-radius:0;width:100%;height:100vh;max-height:none}.preview-modal>header{padding:14px 16px}.generated-link{padding:10px 14px}.phone-frame{border-width:5px;border-radius:22px}.preview-modal>footer{padding:10px 14px}}.guest-avatar-overlay{z-index:5;border-width:5px;width:82px;height:82px;margin:0;position:absolute;top:145px;right:36px}.couple-photo-section{border:1px solid var(--line);text-align:center;background:#ffffffeb;border-radius:34px;width:100%;margin:42px auto 0;padding:18px;position:relative;overflow:hidden;box-shadow:0 18px 46px #5b2a3a21,inset 0 0 0 7px #f6c7d633}.couple-photo-frame{background:var(--soft-pink);border:6px solid #fff;border-radius:24px;overflow:hidden;box-shadow:0 9px 26px #5b2a3a24}.couple-photo-section img{aspect-ratio:4/3;object-fit:cover;object-position:center;border-radius:17px;width:100%;display:block}.couple-photo-section .eyebrow{margin:9px 0 16px}.couple-photo-section>span{background:var(--cherry);color:#fff;border:4px solid #fff;border-radius:50%;place-items:center;width:54px;height:54px;font-size:24px;display:grid;position:absolute;bottom:28px;right:28px;box-shadow:0 8px 22px #5b2a3a33}.timeline-content{min-width:0}.schedule-photo{float:right;aspect-ratio:4/3;object-fit:cover;border:5px solid #fff;border-radius:16px;width:150px;margin:-5px 0 12px 18px;box-shadow:0 8px 20px #5b2a3a21}.schedule-address{background:var(--soft-pink);color:var(--cherry);border-radius:10px;align-items:center;gap:5px;margin-top:10px;padding:8px 11px;font-size:12px;font-weight:800;text-decoration:none;display:inline-flex}.schedule-address:hover{background:var(--pink)}.theme-wild{--cream:#fff3f6;--paper:#fffafb;--ink:#35242a;--muted:#765d65;--pink:#efc4cf;--soft-pink:#fbe6eb;--rose:#b94762;--cherry:#73162d;--gold:#b58d61;--line:#e7c8d0;--shadow:0 24px 70px #68142b29}.invite-cover.theme-wild{background:radial-gradient(circle at 14% 20%,#ffffffe6 0 4px,#0000 5px),radial-gradient(circle at 84% 76%,#74172e17 0 8px,#0000 9px),linear-gradient(145deg,#f5cfd8,#fff5f7 48%,#eab2c0)}.theme-wild .envelope-card{background:linear-gradient(155deg,#fffafb,#fae7ec);box-shadow:0 30px 85px #5b12252e,inset 0 0 0 1px #ddbac4}.theme-wild .envelope-card:before{border-style:solid;border-color:#c98b9a}.theme-wild .cover-cats{object-position:center;filter:drop-shadow(0 16px 16px #480e1d24);width:225px;height:245px;margin:-18px auto 8px;display:block}.theme-wild .bow-mark i{background:linear-gradient(145deg,#9a2847,#641026)}.theme-wild .bow-mark b{background:linear-gradient(145deg,#f0c2ce,#d991a5);box-shadow:inset 0 0 0 3px #fff3,0 4px 8px #5e182d24}.theme-wild.invitation-page{background-color:#fff3f6;background-image:radial-gradient(circle at 10px 10px,#71162d12 1.5px,#0000 1.7px)}.theme-wild .wedding-hero:before{background:radial-gradient(circle at 14px 14px,#73162d14 2px,#0000 2.5px) 0 0/28px 28px,linear-gradient(130deg,#fffafb 0%,#fbe8ed 58%,#efbdc9 100%);border-color:#d9a2af;outline-color:#73162d38}.theme-wild .hero-theme-art{object-position:center;filter:drop-shadow(0 22px 18px #3e0a182e);justify-self:center;width:445px;height:600px;margin-inline:auto;display:block}.theme-wild .hero-date-seal{background:linear-gradient(145deg,#8b1f3a,#5f1025)}.theme-wild .welcome-section{background:#fff9fbc2;box-shadow:inset 0 0 0 1px #74172e29}.theme-wild .schedule-section:before{background:linear-gradient(#fffafbe6,#f9dee5bf);border-color:#e3bac4}.theme-wild .schedule-day{background:#fffafb;outline-color:#73162d29}.theme-wild .schedule-day.dark>header{background:linear-gradient(145deg,#32151e,#71172e)}.theme-wild .schedule-day.pink>header{background:#ecc0ca}.theme-wild .location-section{background:radial-gradient(circle at 12px 12px,#ffffff17 2px,#0000 2.5px) 0 0/24px 24px,linear-gradient(140deg,#701329,#9a2d49)}.theme-wild .gift-card{background:#fffafb}.theme-wild .dress-card{background:#f9e2e8}.theme-wild .rsvp-section{background:radial-gradient(circle at 12px 12px,#73162d14 2px,#0000 2.5px) 0 0/30px 30px,linear-gradient(135deg,#e8b1bf,#fff0f4 58%,#f2cbd4)}.theme-wild .rsvp-card{background:#fffafbf5}.theme-wild .wedding-footer{background:linear-gradient(#fffafb,#f9e4e9) padding-box padding-box,repeating-linear-gradient(90deg,#7a1830 0 18px,#efc3ce 18px 36px) border-box}.theme-wild .wedding-footer img{width:185px;height:205px}.design-fieldset{margin-bottom:20px!important}.design-options{grid-template-columns:1fr 1fr;gap:8px;display:grid}.design-option{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:13px;grid-template-rows:82px auto;display:grid;position:relative;overflow:hidden}.design-option.selected{border-color:var(--cherry);box-shadow:0 0 0 2px #b92d531f}.design-option input{z-index:2;accent-color:var(--cherry);position:absolute;top:8px;left:8px}.design-option img{object-fit:contain;background:linear-gradient(145deg,#fff2f6,#f4d4dc);width:100%;height:82px;padding:4px}.design-option>span{padding:8px}.design-option b,.design-option small{display:block}.design-option b{font-size:10px}.design-option small{color:var(--muted);margin-top:3px;font-size:8px;font-weight:400}.guest-pills{justify-items:start;gap:4px;display:grid}.design-pill{color:#7c2940;white-space:nowrap;background:#f9e2e8;border-radius:999px;padding:4px 8px;font-size:8px;font-weight:900;display:inline-flex}.row-actions .response-action{color:var(--cherry);background:#fff0f5;border-color:#e7adc0}.row-actions button.copy-success,.generated-link button.copy-success{color:#277353;background:#e6f5ee;border-color:#9fd6bf;animation:.48s both copy-confirm}@keyframes copy-confirm{0%{transform:scale(.92)}55%{transform:scale(1.06)}to{transform:scale(1)}}.responses-card{overflow:hidden}.responses-live{color:#277353;font-size:10px;font-weight:800}.responses-tools{grid-template-columns:minmax(0,1fr) 220px;gap:10px;padding:0 26px 20px;display:grid}.responses-tools input,.responses-tools select{border:1px solid var(--line);background:#fff;border-radius:11px;outline:0;min-width:0;padding:11px 13px}.drink-results-summary{background:linear-gradient(135deg,#fff1f5,#fff);border:1px solid #e8bcc9;border-radius:16px;grid-template-columns:190px minmax(0,1fr);align-items:center;gap:18px;margin:0 26px 20px;padding:16px 18px;display:grid}.drink-results-summary>div:first-child b,.drink-results-summary>div:first-child small{display:block}.drink-results-summary>div:first-child b{color:var(--cherry);font:700 18px Georgia,serif}.drink-results-summary>div:first-child small{color:var(--muted);margin-top:4px;font-size:9px}.drink-results-summary>div:last-child{flex-wrap:wrap;gap:7px;display:flex}.drink-results-summary span{color:#68525a;background:#fff;border-radius:999px;align-items:center;gap:7px;padding:7px 9px 7px 11px;font-size:10px;font-weight:800;display:inline-flex;box-shadow:inset 0 0 0 1px #ecdce1}.drink-results-summary span b{background:var(--cherry);color:#fff;border-radius:50%;place-items:center;min-width:21px;height:21px;padding:0 5px;font-size:10px;display:grid}.responses-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 26px 26px;display:grid}.response-card{background:linear-gradient(145deg,#fff,#fff8fa);border:1px solid #eadfe3;border-radius:18px;min-width:0;padding:18px}.response-card>header{border-bottom:1px solid #f1e8eb;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:14px;display:flex}.response-card>header>div:last-child{justify-items:end;gap:6px;display:grid}.response-card time{color:var(--muted);font-size:9px}.response-card section{background:#fff;border-radius:13px;margin-top:14px;padding:13px 14px;box-shadow:inset 0 0 0 1px #f2e5e9}.response-card section.response-drinks{background:#fff3f7;box-shadow:inset 0 0 0 1px #ecc7d2}.response-card h3{color:var(--cherry);letter-spacing:.07em;text-transform:uppercase;margin:0 0 7px;font-size:10px}.response-card p{color:#584950;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.6}.empty-responses{text-align:center;padding:70px 24px 80px}.empty-responses>span{color:var(--pink);font-size:40px}.empty-responses h3{margin:10px 0 6px;font:700 24px Georgia,serif}.empty-responses p{color:var(--muted);margin:0}.response-modal{background:#fff;border-radius:24px;width:min(600px,100%);overflow:hidden;box-shadow:0 28px 90px #1e0c1347}.response-modal>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:24px 26px 18px;display:flex}.response-modal h2{margin:0;font:700 28px Georgia,serif}.response-modal>header button{color:var(--muted);background:0 0;border:0;font-size:28px}.response-status{align-items:center;gap:12px;padding:18px 26px 2px;display:flex}.response-status small{color:var(--muted)}.response-modal article{border:1px solid var(--line);background:#fff9fb;border-radius:15px;margin:18px 26px;padding:18px}.response-modal article h3{color:var(--cherry);text-transform:uppercase;letter-spacing:.08em;margin:0 0 8px;font-size:12px}.response-modal article p{color:#54444b;white-space:pre-wrap;margin:0;line-height:1.65}.response-modal>footer{justify-content:flex-end;padding:4px 26px 24px;display:flex}.file-upload{position:relative}.location-upload-callout{background:linear-gradient(135deg,#fff2f6,#fff);border:1px solid #e7a7ba;border-radius:16px;margin:0 26px 20px;padding:16px;box-shadow:0 8px 24px #742f4614}.location-upload-callout .admin-field{margin:12px 0 0}.location-upload-copy{align-items:center;gap:11px;display:flex}.location-upload-copy>span{background:var(--cherry);color:#fff;border-radius:12px;flex:0 0 38px;place-items:center;width:38px;height:38px;font-size:18px;display:grid}.location-upload-copy b,.location-upload-copy small{display:block}.location-upload-copy b{color:var(--cherry);font-size:13px}.location-upload-copy small{color:var(--muted);margin-top:3px;font-size:10px}.admin-image-preview{border:1px solid var(--line);object-fit:cover;border-radius:12px;width:100%;max-height:230px;margin-top:10px;display:block}.upload-state{color:var(--muted);margin-top:7px;font-weight:700;display:block}.upload-state.success{color:#277353}.upload-state.error{color:#b03250}.drink-options-editor>small{color:var(--muted);margin:4px 0 10px;font-size:10px;font-weight:500;line-height:1.5;display:block}.drink-options-editor>div{gap:8px;margin-bottom:10px;display:grid}.drink-options-editor label{grid-template-columns:minmax(0,1fr) 38px;gap:7px;display:grid}.drink-options-editor label input{margin:0}.drink-options-editor label button{color:var(--cherry);cursor:pointer;background:#fff4f7;border:1px solid #f0ccd6;border-radius:10px;font-size:20px}.drink-options-editor>button{width:max-content}.schedule-edit-list{gap:12px;padding:0 26px;display:grid}.schedule-edit-card{cursor:grab;background:#fffafb;border:1px solid #eee1e5;border-radius:16px;grid-template-columns:minmax(0,1fr) minmax(190px,.42fr) 40px;align-items:start;gap:12px;padding:16px;transition:border-color .2s,box-shadow .2s,transform .2s,opacity .2s;display:grid;position:relative}.schedule-edit-card:hover{border-color:#e2bac6;box-shadow:0 8px 20px #5b2a3a0f}.schedule-edit-card:active{cursor:grabbing}.schedule-edit-card :is(input,textarea,select){cursor:text}.schedule-edit-card :is(button,label,a){cursor:pointer}.schedule-edit-card.dragging{opacity:.48}.schedule-edit-card.drag-over{border-color:var(--rose);transform:translateY(2px);box-shadow:0 0 0 3px #b92d531c,0 12px 26px #5b2a3a14}.schedule-edit-fields{grid-template-columns:110px minmax(150px,.8fr) minmax(180px,1.2fr);gap:9px;display:grid}.schedule-edit-fields input{border:1px solid var(--line);border-radius:9px;outline:0;min-width:0;padding:10px 11px;font-size:12px}.schedule-address-input{grid-column:1/-1}.compact-upload{margin:0!important}.compact-upload .file-line{display:grid}.compact-upload .file-line button{text-align:left}.compact-upload .admin-image-preview{max-height:120px}.schedule-delete{width:36px;height:36px;color:var(--cherry);cursor:pointer;background:#fff5f7;border:1px solid #f1d5dd;border-radius:9px;font-size:18px;font-weight:900}.schedule-delete:hover{border-color:var(--rose);background:#fff0f5;transform:translateY(-1px)}.wishlist-intro{background:linear-gradient(135deg,#fff,#fff1f5);justify-content:space-between;align-items:center;gap:30px;padding:34px 38px;display:flex}.wishlist-intro h2{margin-bottom:8px}.wishlist-intro p:last-child{max-width:760px;color:var(--muted);margin:0;line-height:1.6}.wishlist-intro>span{background:var(--cherry);color:#fff;border-radius:24px;flex:none;place-items:center;width:76px;height:76px;font:700 36px Georgia,serif;display:grid;transform:rotate(5deg)}.wishlist-admin-layout{grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);align-items:start;gap:18px;margin-top:18px;display:grid}.wishlist-create{position:sticky;top:106px}.wishlist-create>.admin-primary{width:100%;margin-top:16px}.wishlist-admin-items{gap:14px;padding:0 24px 28px;display:grid}.wishlist-admin-item{background:#fffafb;border:1px solid #eadce1;border-radius:18px;grid-template-columns:120px minmax(0,1fr) 145px;gap:16px;padding:15px;display:grid}.wishlist-admin-photo{min-height:120px;color:var(--rose);background:#f9e4eb;border-radius:14px;place-items:center;font-size:36px;display:grid;overflow:hidden}.wishlist-admin-photo img{object-fit:cover;width:100%;height:100%;min-height:120px}.wishlist-admin-fields{gap:8px;min-width:0;display:grid}.wishlist-admin-fields input,.wishlist-admin-fields textarea{resize:vertical;background:#fff;border:1px solid #dfd1d6;border-radius:10px;outline:0;width:100%;min-width:0;padding:10px 11px}.wishlist-admin-fields input:first-child{color:var(--cherry);font-weight:900}.wishlist-photo-action{width:max-content;color:var(--cherry);cursor:pointer;font-size:12px;font-weight:900;position:relative}.wishlist-photo-action input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.wishlist-admin-actions{flex-direction:column;align-items:stretch;gap:8px;display:flex}.wishlist-reserved-admin,.wishlist-free-admin{border-radius:10px;padding:9px 10px;font-size:11px;line-height:1.35}.wishlist-reserved-admin{color:#8f2240;background:#fff0f4}.wishlist-reserved-admin b{margin-top:3px;display:block}.wishlist-free-admin{color:#2c6c3e;background:#eef8f0;font-weight:900}.wishlist-admin-actions .danger{color:#a21f3f}.wishlist-empty-admin{color:var(--muted);text-align:center;padding:54px 26px 64px}.wishlist-empty-admin>span{color:var(--rose);font-size:44px}.wishlist-empty-admin h3{color:var(--cherry);margin:10px 0 8px;font:700 25px Georgia,serif}.wishlist-empty-admin p{max-width:480px;margin:0 auto;line-height:1.6}.interactive-demo-cover .envelope-card{transform:perspective(1000px) rotateX(var(--demo-rotate-x,0deg)) rotateY(var(--demo-rotate-y,0deg));transform-style:preserve-3d;transition:transform .18s ease-out;animation:.9s cubic-bezier(.2,.8,.2,1) both demoEnvelopeEnter}.interactive-demo-cover .envelope-card:after{content:"";z-index:10;pointer-events:none;background:linear-gradient(110deg,#0000 42%,#ffffffb8 49%,#0000 56%);animation:5.8s ease-in-out 1.2s infinite demoEnvelopeShine;position:absolute;inset:-45% -85%;transform:translate(-45%)rotate(8deg)}.interactive-demo-cover .cover-cats{animation:4.6s ease-in-out infinite demoCrestBreathe}.interactive-demo-cover .primary-button{animation:2.8s ease-in-out infinite demoButtonPulse;position:relative;overflow:hidden}.interactive-demo-cover .primary-button:after{content:"";background:linear-gradient(110deg,#0000 30%,#ffffff52,#0000 70%);animation:3.4s ease-in-out 1s infinite demoButtonGlint;position:absolute;inset:0;transform:translate(-130%)}.interactive-demo .hero-visual{transform:perspective(900px) rotateX(var(--demo-rotate-x,0deg)) rotateY(var(--demo-rotate-y,0deg)) translate3d(var(--demo-shift-x,0px),var(--demo-shift-y,0px),0);transform-style:preserve-3d;transition:transform .22s ease-out}.interactive-demo .hero-theme-art{cursor:pointer;-webkit-user-select:none;user-select:none;transition:filter .3s;animation:5.2s ease-in-out infinite demoCrestBreathe}.interactive-demo .hero-theme-art:hover{filter:drop-shadow(0 34px 28px #56122a47)}.interactive-demo .hero-date-seal{animation:4s ease-in-out infinite demoSealFloat}.interactive-demo .hero-theme-art.demo-tapped{animation:1.05s cubic-bezier(.18,.8,.3,1) demoCrestAwake}.interactive-demo .card-icon,.interactive-demo .kawaii-symbol,.interactive-demo .section-heading span,.interactive-demo .guest-invitation-mark,.interactive-demo .wedding-footer>span{cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .25s,filter .25s}.interactive-demo .card-icon:hover,.interactive-demo .kawaii-symbol:hover,.interactive-demo .section-heading span:hover,.interactive-demo .guest-invitation-mark:hover,.interactive-demo .wedding-footer>span:hover{filter:drop-shadow(0 7px 8px #73162d2e);transform:scale(1.22)rotate(8deg)}.interactive-demo .detail-card,.interactive-demo .schedule-day,.interactive-demo .location-section,.interactive-demo .guest-invitation-card,.interactive-demo .welcome-section,.interactive-demo .contact-section{transition:transform .3s cubic-bezier(.2,.75,.2,1),box-shadow .3s}.interactive-demo .detail-card:hover,.interactive-demo .schedule-day:hover,.interactive-demo .guest-invitation-card:hover,.interactive-demo .welcome-section:hover,.interactive-demo .contact-section:hover{transform:translateY(-6px)scale(1.006);box-shadow:0 26px 58px #5b233626}.interactive-demo .location-section:hover{transform:translateY(-5px)scale(1.006);box-shadow:0 28px 62px #5b23363d}.interactive-demo .demo-reveal{opacity:0;transition:opacity .78s,transform .78s cubic-bezier(.2,.75,.2,1)}.interactive-demo .demo-reveal.demo-from-left{transform:translate(-42px,24px)scale(.985)}.interactive-demo .demo-reveal.demo-from-right{transform:translate(42px,24px)scale(.985)}.interactive-demo .demo-reveal.demo-visible{opacity:1;transform:translate(0)scale(1)}.interactive-demo .wedding-hero.demo-visible .hero-copy>*{animation:.72s both demoTextRise}.interactive-demo .wedding-hero.demo-visible .hero-copy>:nth-child(2){animation-delay:90ms}.interactive-demo .wedding-hero.demo-visible .hero-copy>:nth-child(3){animation-delay:.18s}.interactive-demo .wedding-hero.demo-visible .hero-copy>:nth-child(4){animation-delay:.27s}.interactive-demo .schedule-section.demo-visible .timeline-row{opacity:0;animation:.62s cubic-bezier(.2,.8,.2,1) forwards demoTimelineIn}.interactive-demo .schedule-section.demo-visible .timeline-row:nth-child(2){animation-delay:.1s}.interactive-demo .schedule-section.demo-visible .timeline-row:nth-child(3){animation-delay:.2s}.interactive-demo .schedule-section.demo-visible .timeline-row:nth-child(4){animation-delay:.3s}.interactive-demo .schedule-section.demo-visible .timeline-row i:after{transform-origin:top;animation:.8s ease-out .25s both demoLineGrow}.interactive-demo .demo-countdown b{animation:.52s cubic-bezier(.2,.8,.2,1) demoNumberFlip}.interactive-demo .wedding-footer img{animation:5s ease-in-out infinite demoFooterCrest}.demo-opening-curtain{z-index:96;pointer-events:none;position:fixed;inset:0;overflow:hidden}.demo-opening-curtain i{background:radial-gradient(circle,#ffffff0f 1.5px,#0000 2px) 0 0/26px 26px,linear-gradient(150deg,#47101f,#7a1933);width:51%;position:absolute;top:0;bottom:0;box-shadow:inset 0 0 0 1px #ffc5d733}.demo-opening-curtain i:first-child{animation:1.35s cubic-bezier(.7,0,.2,1) .35s forwards demoCurtainLeft;left:0}.demo-opening-curtain i:nth-child(2){animation:1.35s cubic-bezier(.7,0,.2,1) .35s forwards demoCurtainRight;right:0}.demo-opening-curtain b{z-index:2;color:#ffd2df;white-space:nowrap;font:italic 700 clamp(25px,4vw,46px) Georgia,serif;animation:1.35s .15s forwards demoCurtainTitle;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.demo-opening-curtain b span{color:#ff8db0}.demo-scroll-progress{z-index:82;pointer-events:none;background:#ffffff40;height:4px;position:fixed;top:0;left:0;right:0}.demo-scroll-progress>div{width:100%;height:100%;transform:scaleX(var(--demo-progress,0));transform-origin:0;background:linear-gradient(90deg,#b92d53,#ff9ab8);position:relative;box-shadow:0 1px 9px #73162d59}.demo-scroll-progress span{color:#b92d53;filter:drop-shadow(0 2px 3px #fff);font-size:16px;position:absolute;top:-8px;right:-8px}.demo-interaction-hint{z-index:61;color:#fff1f5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);text-align:center;background:#3d121fe0;border:1px solid #ffbed280;border-radius:999px;max-width:calc(100% - 190px);padding:11px 16px;font-size:12px;font-weight:800;animation:.55s 1.8s both demoHintIn;position:fixed;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 12px 32px #320c1842}.demo-interaction-hint span{color:#ff9ab8}.interactive-demo .demo-tapped:not(.hero-theme-art){animation:.85s cubic-bezier(.18,.8,.3,1) demoHeartTap}.demo-heart-layer{z-index:100;pointer-events:none;position:fixed;inset:0}.demo-heart-layer span{color:#d83f70;text-shadow:0 5px 14px #72183440;font-size:24px;animation:1.08s cubic-bezier(.17,.67,.25,1) forwards demoHeartBurst;position:absolute}@keyframes demoEnvelopeEnter{0%{opacity:0;transform:perspective(1000px)translateY(45px)scale(.94)rotateX(5deg)}to{opacity:1}}@keyframes demoEnvelopeShine{0%,58%{opacity:0;transform:translate(-45%)rotate(8deg)}70%{opacity:.9}88%,to{opacity:0;transform:translate(45%)rotate(8deg)}}@keyframes demoButtonPulse{0%,to{box-shadow:0 9px 24px #73162d29}50%{box-shadow:0 12px 34px #b92d5352}}@keyframes demoButtonGlint{0%,55%{transform:translate(-130%)}82%,to{transform:translate(130%)}}@keyframes demoCrestBreathe{0%,to{transform:translateY(0)scale(1)rotate(-.35deg)}50%{transform:translateY(-8px)scale(1.025)rotate(.45deg)}}@keyframes demoCrestAwake{0%{transform:scale(1)rotate(0)}28%{transform:scale(1.08)rotate(-3deg)}52%{transform:scale(.98)rotate(2deg)}76%{transform:scale(1.045)rotate(-1deg)}to{transform:scale(1)rotate(0)}}@keyframes demoSealFloat{0%,to{transform:rotate(7deg)translateY(0)}50%{transform:rotate(3deg)translateY(-7px)}}@keyframes demoTextRise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes demoTimelineIn{0%{opacity:0;transform:translate(22px)}to{opacity:1;transform:translate(0)}}@keyframes demoLineGrow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes demoNumberFlip{0%{opacity:.35;transform:translateY(-9px)rotateX(-50deg)}to{opacity:1;transform:translateY(0)rotateX(0)}}@keyframes demoFooterCrest{0%,to{filter:drop-shadow(0 12px 14px #3e0a181f);transform:translateY(0)rotate(-.5deg)}50%{filter:drop-shadow(0 20px 18px #3e0a1838);transform:translateY(-9px)rotate(.6deg)}}@keyframes demoCurtainLeft{to{transform:translate(-104%)}}@keyframes demoCurtainRight{to{transform:translate(104%)}}@keyframes demoCurtainTitle{0%,42%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(1.08)}}@keyframes demoHintIn{0%{opacity:0;transform:translate(-50%,18px)}to{opacity:1;transform:translate(-50%)}}@keyframes demoHeartTap{0%{transform:scale(1)}35%{transform:scale(1.28)rotate(-7deg)}65%{transform:scale(.94)rotate(4deg)}to{transform:scale(1)}}@keyframes demoHeartBurst{0%{opacity:0;transform:translate(-50%,-50%)scale(.35)rotate(-8deg)}20%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--demo-dx)),calc(-50% + var(--demo-dy))) scale(1.3) rotate(18deg)}}@media (width<=1050px){.schedule-edit-card{grid-template-columns:minmax(0,1fr) 180px 40px}.schedule-edit-fields{grid-template-columns:90px 1fr}.schedule-edit-fields input:nth-child(3),.schedule-address-input{grid-column:1/-1}.wishlist-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wishlist-admin-layout{grid-template-columns:1fr}.wishlist-create{position:static}.wishlist-admin-item{grid-template-columns:110px minmax(0,1fr) 135px}}@media (width<=800px){.guest-avatar-overlay{top:140px;right:24px}.theme-wild .hero-theme-art{width:320px;height:430px}.responses-list{grid-template-columns:1fr}.schedule-edit-card{grid-template-columns:minmax(0,1fr) 40px}.compact-upload{grid-area:2/1/auto/-1}.schedule-delete{grid-area:1/2}.wishlist-section{padding-inline:28px}.wishlist-admin-item{grid-template-columns:100px minmax(0,1fr)}.wishlist-admin-actions{flex-flow:wrap;grid-column:1/-1}.wishlist-admin-actions>*{flex:1}}@media (width<=560px){.invite-cover{min-height:100svh;padding:8px}.invite-cover .envelope-card{border-radius:28px;flex-direction:column;justify-content:space-between;align-items:center;width:100%;min-height:calc(100svh - 16px);max-height:calc(100svh - 16px);padding:18px 22px 14px;display:flex}.invite-cover .envelope-card:before{border-radius:22px;inset:7px}.invite-cover .cover-ornament.top{margin:0;font-size:12px}.invite-cover .bow-mark{transform-origin:50%;width:82px;height:38px;margin-bottom:0;transform:scale(.82)}.invite-cover .envelope-card .eyebrow{letter-spacing:.14em;margin:0;font-size:10px}.invite-cover .theme-wild .cover-cats,.invite-cover.theme-wild .cover-cats{width:min(170px,48vw);height:min(185px,24svh);margin:-4px auto 0}.invite-cover .dear-label{margin:0;font-size:15px}.invite-cover .envelope-card h1{overflow-wrap:break-word;max-width:100%;margin:0;font-size:clamp(26px,8vw,34px);line-height:1.02}.invite-cover .envelope-card>p:not(.eyebrow,.dear-label){margin:0;font-size:13px;line-height:1.35}.invite-cover .envelope-card .primary-button{width:min(100%,310px);min-height:48px;margin:0;padding:0 16px;font-size:14px}.invite-cover .envelope-card small{margin:0;font-size:10px}.invite-cover .cover-ornament.bottom{margin:0;font-size:12px}.invitation-page{overflow:hidden visible}.invitation-page .wedding-hero{grid-template-rows:auto minmax(250px,31svh);align-content:start;gap:8px;min-height:auto;margin-bottom:18px;padding:34px 22px 20px}.invitation-page .wedding-hero:before{border-radius:34px 14px;inset:8px 0}.invitation-page .wedding-hero:after{font-size:11px;top:18px;left:24px}.invitation-page .hero-copy h1{margin-bottom:10px;font-size:clamp(42px,14vw,54px);line-height:.88}.invitation-page .couple-names{white-space:normal;grid-template-columns:1fr;justify-items:center;gap:2px;margin:0 auto 12px;font-size:clamp(25px,7vw,32px);line-height:1.05;display:grid}.invitation-page .couple-names span:first-child,.invitation-page .couple-names span:last-child{text-align:center}.invitation-page .couple-names b{line-height:.72;transform:none}.invitation-page .hero-subtitle{text-align:center;max-width:330px;margin-inline:auto;font-size:14px;line-height:1.4}.invitation-page .hero-visual{align-self:end;height:min(300px,33svh);min-height:245px;padding:6px 0 10px;overflow:hidden}.invitation-page.theme-wild .hero-theme-art{object-fit:contain;object-position:center;width:min(225px,62vw);height:100%;max-height:276px}.invitation-page .hero-date-seal{width:72px;height:72px;top:5px;right:5%}.invitation-page .hero-date-seal b{font-size:23px}.invitation-page .hero-date-seal span{font-size:9px}.invitation-page .hero-date-seal small{font-size:8px}.guest-invitation-card{border-radius:28px 12px;width:calc(100% - 24px);margin:14px auto 18px;padding:34px 22px 30px}.guest-invitation-card:before,.guest-invitation-card:after{font-size:18px}.guest-invitation-card:before{top:20px;left:22px}.guest-invitation-card:after{bottom:20px;right:22px}.guest-invitation-mark{width:48px;height:48px;margin-bottom:14px;font-size:25px}.guest-invitation-card>p{letter-spacing:.16em;margin-bottom:9px;font-size:10px}.guest-invitation-card h2{max-width:100%;font-size:clamp(30px,9vw,42px);line-height:1.05}.guest-invitation-divider{gap:9px;width:min(230px,80%);margin:18px auto 15px}.guest-invitation-divider b{font-size:15px}.guest-invitation-card strong{font-size:21px}.guest-invitation-card small{max-width:280px;margin-top:9px;font-size:13px}.wedding-footer{padding:46px 18px 58px}.theme-wild .wedding-footer img,.wedding-footer img{width:135px;height:150px;margin-bottom:16px}.wedding-footer p{max-width:310px;font-size:14px;line-height:1.45}.wedding-footer h2{max-width:330px;margin:14px auto 8px;font-size:30px;line-height:1.15}.location-art,.location-art img{min-height:210px}.location-art .location-heart{width:42px;height:42px;font-size:23px;top:14px;right:14px}.admin-sidebar nav{grid-template-columns:repeat(6,1fr)}.responses-tools{grid-template-columns:1fr;padding-inline:14px}.responses-list{padding-inline:14px}.responses-live{display:none}.guest-avatar-overlay{width:66px;height:66px;top:125px;right:17px}.couple-photo-section{border-radius:24px;margin-top:30px;padding:10px}.couple-photo-frame{border-width:4px;border-radius:18px}.couple-photo-section img{aspect-ratio:4/5;border-radius:13px}.couple-photo-section>span{width:44px;height:44px;font-size:20px;bottom:18px;right:18px}.schedule-photo{float:none;width:100%;margin:4px 0 14px}.design-options{grid-template-columns:1fr}.design-option{grid-template-rows:88px;grid-template-columns:100px 1fr}.design-option img{height:88px}.design-option>span{align-self:center}.schedule-edit-list{padding-inline:14px}.schedule-edit-card{padding:12px}.schedule-edit-fields{grid-template-columns:76px 1fr}.schedule-edit-fields input:nth-child(3),.schedule-address-input{grid-column:1/-1}.response-modal{border-radius:0;height:100vh}.wishlist-section{border-radius:28px 12px;width:calc(100% - 24px);margin-bottom:70px;padding:52px 18px 34px}.wishlist-lead{margin-top:-12px;font-size:14px}.wishlist-grid{grid-template-columns:1fr}.wishlist-selection{flex-wrap:wrap;align-items:flex-start}.wishlist-selection button{width:100%}.wishlist-intro{padding:25px}.wishlist-intro>span{border-radius:18px;width:56px;height:56px;font-size:28px}.wishlist-admin-item{grid-template-columns:82px minmax(0,1fr);gap:10px;padding:10px}.wishlist-admin-photo,.wishlist-admin-photo img{min-height:90px}.wishlist-admin-actions{grid-column:1/-1}.wishlist-admin-items{padding-inline:10px}.drink-question{border-radius:19px;padding:17px 14px}.drink-question-heading{align-items:flex-start}.drink-question-heading h3{font-size:19px}.drink-options{grid-template-columns:1fr}.drink-results-summary{grid-template-columns:1fr;margin-inline:14px}.demo-interaction-hint{width:max-content;max-width:calc(100% - 34px);font-size:10px;bottom:82px}.demo-opening-curtain b{font-size:24px}.interactive-demo .demo-reveal.demo-from-left{transform:translate(-24px,18px)scale(.99)}.interactive-demo .demo-reveal.demo-from-right{transform:translate(24px,18px)scale(.99)}.interactive-demo .demo-reveal.demo-visible{transform:translate(0)scale(1)}}@media (prefers-reduced-motion:reduce){.interactive-demo .demo-reveal{opacity:1;transition:none;transform:none}.interactive-demo .hero-theme-art,.interactive-demo .hero-date-seal,.interactive-demo .wedding-footer img,.interactive-demo .demo-countdown b,.interactive-demo .card-icon,.interactive-demo .kawaii-symbol,.interactive-demo .section-heading span,.interactive-demo .guest-invitation-mark,.interactive-demo .wedding-footer>span,.interactive-demo-cover .cover-cats,.interactive-demo-cover .primary-button,.interactive-demo-cover .primary-button:after,.interactive-demo-cover .envelope-card,.interactive-demo-cover .envelope-card:after{transition:none;animation:none}.interactive-demo .schedule-section.demo-visible .timeline-row,.interactive-demo .schedule-section.demo-visible .timeline-row i:after,.interactive-demo .wedding-hero.demo-visible .hero-copy>*{opacity:1;animation:none;transform:none}.demo-heart-layer,.demo-opening-curtain,.demo-interaction-hint{display:none}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
