/*! tailwindcss v4.3.3 | 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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--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;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@layer theme{:root,:host{--font-sans:"Montserrat", system-ui, sans-serif;--font-serif:"Cormorant Garamond", Georgia, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--text-7xl:4.5rem;--text-7xl--line-height:1;--font-weight-light:300;--font-weight-medium:500;--font-weight-semibold:600;--tracking-normal:0em;--radius-sm:.25rem;--animate-spin:spin 1s linear infinite;--blur-xl:24px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-script:"Great Vibes", "Italianno", cursive;--font-display:"Cinzel", "Cormorant Garamond", serif;--font-body:"Cormorant Garamond", Georgia, serif;--color-ivory:#f8f7f2;--color-olive:#5e6849;--color-sage:#a5aa91;--color-gold:#b18a4d;--color-champagne:#e7dac3;--color-forest:#263222;--color-ink:#263025;--color-muted:#697063}}@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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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:where(:not(iframe)){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}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:0}.inset-x-0{inset-inline:0}.top-0{top:0}.right-0{right:0}.-bottom-2{bottom:calc(var(--spacing) * -2)}.bottom-0{bottom:0}.left-0{left:0}.z-40{z-index:40}.z-50{z-index:50}.order-first{order:-9999}.mx-auto{margin-inline:auto}.my-4{margin-block:calc(var(--spacing) * 4)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-14{margin-top:calc(var(--spacing) * 14)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-16{height:calc(var(--spacing) * 16)}.h-px{height:1px}.min-h-svh{min-height:100svh}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-16{width:calc(var(--spacing) * 16)}.w-full{width:100%}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[12rem\]{max-width:12rem}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.min-w-\[72px\]{min-width:72px}.shrink-0{flex-shrink:0}.rotate-45{rotate:45deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.scroll-mt-24{scroll-margin-top:calc(var(--spacing) * 24)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.content-start{align-content:flex-start}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-x-8{column-gap:calc(var(--spacing) * 8)}.gap-y-1{row-gap:var(--spacing)}.self-start{align-self:flex-start}.overflow-hidden{overflow:hidden}.rounded-full{border-radius:2147483647px}.rounded-sm{border-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-gold{border-color:var(--color-gold)}.border-ivory\/40{border-color:#f8f7f266}@supports (color:color-mix(in lab, red, red)){.border-ivory\/40{border-color:color-mix(in oklab, var(--color-ivory) 40%, transparent)}}.border-olive\/10{border-color:#5e68491a}@supports (color:color-mix(in lab, red, red)){.border-olive\/10{border-color:color-mix(in oklab, var(--color-olive) 10%, transparent)}}.border-olive\/15{border-color:#5e684926}@supports (color:color-mix(in lab, red, red)){.border-olive\/15{border-color:color-mix(in oklab, var(--color-olive) 15%, transparent)}}.border-olive\/25{border-color:#5e684940}@supports (color:color-mix(in lab, red, red)){.border-olive\/25{border-color:color-mix(in oklab, var(--color-olive) 25%, transparent)}}.bg-\[\#f8f7f2\]\/90{background-color:oklab(97.5522% -.000856847 .00664163/.9)}.bg-ivory{background-color:var(--color-ivory)}.bg-olive{background-color:var(--color-olive)}.bg-white{background-color:var(--color-white)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-6{padding:calc(var(--spacing) * 6)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-8{padding-inline:calc(var(--spacing) * 8)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-14{padding-block:calc(var(--spacing) * 14)}.py-20{padding-block:calc(var(--spacing) * 20)}.pt-\[57px\]{padding-top:57px}.pb-20{padding-bottom:calc(var(--spacing) * 20)}.text-center{text-align:center}.text-left{text-align:left}.font-body{font-family:var(--font-body)}.font-display{font-family:var(--font-display)}.font-sans{font-family:var(--font-sans)}.font-serif{font-family:var(--font-serif)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[8px\]{font-size:8px}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.leading-8{--tw-leading:calc(var(--spacing) * 8);line-height:calc(var(--spacing) * 8)}.leading-none{--tw-leading:1;line-height:1}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.1em\]{--tw-tracking:.1em;letter-spacing:.1em}.tracking-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-\[0\.3em\]{--tw-tracking:.3em;letter-spacing:.3em}.tracking-\[0\.16em\]{--tw-tracking:.16em;letter-spacing:.16em}.tracking-\[0\.18em\]{--tw-tracking:.18em;letter-spacing:.18em}.tracking-\[0\.22em\]{--tw-tracking:.22em;letter-spacing:.22em}.tracking-\[0\.24em\]{--tw-tracking:.24em;letter-spacing:.24em}.tracking-\[0\.25em\]{--tw-tracking:.25em;letter-spacing:.25em}.tracking-\[0\.28em\]{--tw-tracking:.28em;letter-spacing:.28em}.tracking-normal{--tw-tracking:var(--tracking-normal);letter-spacing:var(--tracking-normal)}.text-champagne{color:var(--color-champagne)}.text-gold{color:var(--color-gold)}.text-ink{color:var(--color-ink)}.text-ivory{color:var(--color-ivory)}.text-ivory\/50{color:#f8f7f280}@supports (color:color-mix(in lab, red, red)){.text-ivory\/50{color:color-mix(in oklab, var(--color-ivory) 50%, transparent)}}.text-ivory\/70{color:#f8f7f2b3}@supports (color:color-mix(in lab, red, red)){.text-ivory\/70{color:color-mix(in oklab, var(--color-ivory) 70%, transparent)}}.text-ivory\/75{color:#f8f7f2bf}@supports (color:color-mix(in lab, red, red)){.text-ivory\/75{color:color-mix(in oklab, var(--color-ivory) 75%, transparent)}}.text-muted{color:var(--color-muted)}.text-olive{color:var(--color-olive)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.decoration-gold\/40{text-decoration-color:#b18a4d66}@supports (color:color-mix(in lab, red, red)){.decoration-gold\/40{-webkit-text-decoration-color:color-mix(in oklab, var(--color-gold) 40%, transparent);-webkit-text-decoration-color:color-mix(in oklab, var(--color-gold) 40%, transparent);-webkit-text-decoration-color:color-mix(in oklab, var(--color-gold) 40%, transparent);text-decoration-color:color-mix(in oklab, var(--color-gold) 40%, transparent)}}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.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,)}.backdrop-blur-xl{--tw-backdrop-blur:blur(var(--blur-xl));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.outline-none{--tw-outline-style:none;outline-style:none}@media (hover:hover){.hover\:-translate-y-1:hover{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:bg-forest:hover{background-color:var(--color-forest)}.hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.hover\:bg-white\/10:hover{background-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.hover\:text-olive:hover{color:var(--color-olive)}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.focus\:border-gold:focus{border-color:var(--color-gold)}.disabled\:opacity-60:disabled{opacity:.6}@media (prefers-reduced-motion:reduce){.motion-reduce\:animate-none{animation:none}}@media (width>=40rem){.sm\:order-none{order:0}.sm\:min-w-\[84px\]{min-width:84px}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:gap-3{gap:calc(var(--spacing) * 3)}.sm\:gap-x-6{column-gap:calc(var(--spacing) * 6)}.sm\:p-10{padding:calc(var(--spacing) * 10)}.sm\:px-8{padding-inline:calc(var(--spacing) * 8)}.sm\:px-12{padding-inline:calc(var(--spacing) * 12)}.sm\:py-28{padding-block:calc(var(--spacing) * 28)}.sm\:text-left{text-align:left}.sm\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.sm\:text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}}}html{scroll-behavior:smooth}body{min-height:100svh;color:var(--color-ink);font-family:var(--font-sans);letter-spacing:.025em;background:#f5f4ef;margin:0;font-weight:400}body:before{content:"";z-index:-1;pointer-events:none;opacity:.035;background:url(/floral.jpg) 50%/440px;position:fixed;inset:0}body:after{content:"";z-index:-1;pointer-events:none;opacity:.2;background:radial-gradient(circle at 50% -20%,#0000 0 40%,#b18a4d12 70%,#0000 72%);position:fixed;inset:0}#root{min-height:100svh}::selection{color:#263222;background:#d9c29b}.kicker,.stationery-kicker{font-family:var(--font-sans);letter-spacing:.24em;text-transform:uppercase;color:var(--color-olive);font-size:9px;font-weight:600}.script-title{font-family:var(--font-script);color:var(--color-sage);font-weight:400;line-height:.92}.hero-title{color:var(--color-olive);text-shadow:0 2px 15px #ffffffb8}.hero-copy{text-shadow:0 2px 14px #ffffffb8}.paper-panel{background:#fffffceb;border:1px solid #5e684924;box-shadow:0 18px 50px #2a332112}.stationery-frame:before,.invitation-frame:before{content:"";pointer-events:none;border:1px solid #b18a4d8f;position:absolute;inset:9px}.stationery-frame:after,.invitation-frame:after{content:"";pointer-events:none;border:1px solid #b18a4d33;position:absolute;inset:14px}.frame-corner{z-index:1;border-top:3px solid #b18a4dd1;border-left:3px solid #b18a4dd1;width:58px;height:58px;position:absolute}.invitation-frame{background:#fffffce6;overflow:hidden;box-shadow:0 30px 70px #2a332121}.hero-glow{background:radial-gradient(circle at 82% 45%,#e7dac361,#0000 28%),radial-gradient(circle at 8% 88%,#b18a4d38,#0000 30%)}.hero-leaf{aspect-ratio:1;opacity:.32;filter:sepia(.35)saturate(.7);background:url(/floral.jpg) 50%/cover;width:min(30vw,360px);animation:14s ease-in-out infinite alternate botanical-drift;position:absolute}.hero-leaf-left{bottom:-10vw;left:-12vw;transform:rotate(25deg)}.hero-leaf-right{animation-delay:-7s;top:5vw;right:-13vw;transform:rotate(205deg)}.countdown-tile{background:#ffffff8c;border:1px solid #5e68492e;box-shadow:0 8px 22px #2a33210d}@keyframes botanical-drift{0%{translate:0}to{translate:15px -20px}}.botanical-surface{background-color:#e9ece2;background-image:linear-gradient(#e9ece2e0,#e9ece2e0),url(/floral.jpg);background-repeat:repeat;background-size:auto,370px}.ink-surface{color:var(--color-ivory);background-color:var(--color-forest);background-image:linear-gradient(#263222ed,#263222ed),url(/floral.jpg);background-repeat:repeat;background-size:auto,420px}@media (width>=768px){.botanical-surface,.ink-surface{background-attachment:fixed}}.image-shadow{transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .5s;box-shadow:20px 22px #b18a4d24,0 20px 55px #2a332126}.image-shadow:hover{transform:translateY(-6px);box-shadow:24px 28px #b18a4d2e,0 28px 65px #2a33212e}.soft-rule{background:var(--color-gold);width:72px;height:1px}@media print{nav,.no-print{display:none!important}body{background:#fff}}.wedding-home{background:#f8f7f2}.site-container{width:min(1120px,100% - 64px);margin-inline:auto}.section-space{padding-block:clamp(80px,9vw,140px);scroll-margin-top:80px}.editorial-title{font-family:var(--font-serif);letter-spacing:-.035em;margin-top:22px;font-size:clamp(40px,4.6vw,66px);font-weight:400;line-height:1.08}.editorial-title em{color:#82865f;font-weight:400}.section-copy{letter-spacing:0;max-width:490px;color:var(--color-muted);margin-top:24px;font-size:13px;line-height:1.95}.kicker{letter-spacing:.22em;font-size:10px}.wedding-button{background:var(--color-olive);color:var(--color-ivory);text-transform:uppercase;letter-spacing:.16em;border-radius:2px;justify-content:center;align-items:center;gap:26px;padding:19px 27px;font-size:10px;font-weight:500;transition:background .3s,transform .3s;display:inline-flex}.wedding-button:hover{background:var(--color-forest);transform:translateY(-3px)}.text-link{letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid #b18a4d66;align-items:center;gap:14px;padding-block:10px;font-size:10px;transition:color .25s;display:inline-flex}.text-link:hover{color:var(--color-gold)}.text-link svg,.wedding-button svg{transition:transform .3s}.text-link:hover svg,.wedding-button:hover svg{transform:translate(2px,-2px)}a:focus-visible,button:focus-visible{outline:2px solid var(--color-gold);outline-offset:5px}.wedding-hero{background:#f0efe7;flex-direction:column;justify-content:center;min-height:max(860px,100svh);padding:140px 32px 0;display:flex;position:relative;overflow:hidden}.hero-botanical{opacity:.35;pointer-events:none;background:linear-gradient(90deg,#f0efe700,#f0efe7 30% 70%,#f0efe700),linear-gradient(#f0efe700 70%,#f0efe7 100%),url(/floral.jpg) 50%/660px;position:absolute;inset:-100px -40px 0}.hero-content{text-align:center;padding-bottom:65px;position:relative}.couple-title{font-family:var(--font-script);color:var(--color-olive);flex-direction:column;align-items:center;margin:45px 0 32px;font-size:clamp(72px,9.4vw,138px);font-weight:400;line-height:.88;display:flex}.couple-and{font-family:var(--font-serif);color:var(--color-gold);margin:12px 0 8px;font-size:25px;font-style:italic}.hero-subtitle{font-family:var(--font-serif);color:var(--color-muted);font-size:23px;font-style:italic}.hero-date{text-transform:uppercase;letter-spacing:.15em;flex-wrap:wrap;justify-content:center;align-items:center;gap:24px;margin-top:28px;font-size:9px;display:flex}.hero-date strong{text-transform:none;letter-spacing:.02em;white-space:nowrap;font-family:var(--font-serif);border-inline:1px solid #858b6855;padding-inline:24px;font-size:24px;font-weight:500}.hero-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:28px;margin-top:34px;display:flex}.hero-side-note{writing-mode:vertical-rl;letter-spacing:.24em;text-transform:uppercase;color:var(--color-olive);font-size:8px;position:absolute;top:40%;left:30px}.hero-bottom{border-top:1px solid #82865f33;justify-content:space-between;align-items:center;gap:24px;width:min(1120px,100%);margin:auto auto 0;padding:25px 0;display:flex;position:relative}.hero-bottom-copy{font:italic 22px var(--font-serif);color:var(--color-olive)}.hero-bottom>div{text-align:center;margin-top:0}.hero-bottom .countdown-tile{box-shadow:none;background:0 0;border:0;min-width:65px;padding:5px 20px}.hero-bottom .countdown-tile+.countdown-tile{border-left:1px solid #82865f33}.scroll-cue{border:1px solid #82865f55;border-radius:50%;place-items:center;width:46px;height:46px;display:grid}.scroll-cue svg{animation:2.5s ease-in-out infinite scroll-hint}@keyframes scroll-hint{0%,to{transform:translateY(-3px)}50%{transform:translateY(3px)}}.section-intro{text-align:center}.section-intro .section-copy{margin-inline:auto}.venue-grid{grid-template-columns:1fr 1fr;gap:70px;margin-top:65px;display:grid}.venue-block{border-top:1px solid #b18a4d88;padding-top:28px}.venue-topline{color:var(--color-gold);justify-content:space-between;align-items:center;margin-bottom:40px;display:flex}.venue-topline span{text-transform:uppercase;letter-spacing:.12em;font-size:10px}.venue-block h3{font:34px/1.2 var(--font-serif);max-width:450px;margin-top:16px}.venue-block .text-link{margin-top:25px}.party-section{background:#eeeee4}.party-section li{font-size:17px;line-height:1.8}.party-section .font-display{color:#776237;font-size:10px}.party-section .soft-rule{background:#b18a4d66}.attire-section{color:#f8f7f2;background:#293525}.attire-layout{grid-template-columns:.9fr 1fr;align-items:center;gap:100px;display:grid}.attire-section .kicker,.attire-section .editorial-title em{color:#cfbf96}.attire-section .section-copy{color:#e0e0d3bb}.attire-art{background:#fff;border-radius:50% 50% 2px 2px;overflow:hidden}.attire-art img{width:100%;height:auto;transition:transform 1s}.attire-art:hover img{transform:scale(1.025)}.palette{gap:clamp(10px,2vw,26px);margin-top:38px;display:flex}.palette span{border:1px solid #fff3;border-radius:50%;width:42px;height:42px;transition:transform .3s;display:block}.palette div:hover span{transform:translateY(-5px)}.palette p{letter-spacing:.04em;color:#e0e0d3;margin-top:10px;font-size:8px}.attire-guidance{border-top:1px solid #ffffff25;grid-template-columns:1fr 1fr;gap:28px;margin-top:36px;padding-top:28px;display:grid}.attire-guidance h3{font:italic 27px var(--font-serif);color:#cfbf96}.attire-guidance p{color:#e0e0d3bb;margin-top:9px;font-size:12px;line-height:1.9}.formal-note{text-transform:uppercase;letter-spacing:.2em;margin-top:32px;font-size:9px}.notes-layout{grid-template-columns:1fr 1fr;gap:100px;display:grid}.notes-copy>div{padding:0 0 35px 35px;position:relative}.notes-copy>div+div{border-top:1px solid #82865f33;padding-top:35px}.note-number{color:var(--color-gold);padding-top:7px;font-size:10px;position:absolute;left:0}.notes-copy h3{font:29px var(--font-serif)}.notes-copy .section-copy{margin-top:14px}.directions-section{background:#eeeee4}.album-section{background:#f8f7f2;position:relative}.rsvp-banner{background:#e7e7dc;position:relative;overflow:hidden}.rsvp-banner:before{content:"";opacity:.08;pointer-events:none;background:url(/floral.jpg) 50%/500px;position:absolute;inset:0}.wedding-footer{background:#f8f7f2}.original-monogram{mix-blend-mode:multiply;width:108px;height:105px}.original-monogram svg{display:block;overflow:hidden}.original-monogram.hero-monogram{width:88px;height:86px;margin-bottom:24px}.original-monogram.nav-monogram{width:36px;height:35px}.couple-title>.gold-text{margin-block:-.15em;padding:.2em .22em .18em;line-height:1.15}.couple-title>.couple-and{margin-block:0;padding-block:.15em;line-height:1.2}.album-title{padding-block:.18em;line-height:1.25}.guest-bubbles{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:32px 20px;margin-top:42px;display:grid}.guest-bubble-item{text-align:center;flex-direction:column;align-items:center;min-width:0;display:flex}.guest-bubble{color:#68704c;width:88px;height:88px;font-family:var(--font-serif);background:#eeece2;border:1px solid #82865f55;border-radius:50%;place-items:center;font-size:30px;transition:border-color .3s,box-shadow .3s;display:grid;position:relative}.guest-bubble-shared{border:2px solid #82865f;box-shadow:0 0 0 4px #f8f7f2,0 0 0 5px #b89b5770}.guest-camera-status{color:#fff;background:#68704c;border:3px solid #f8f7f2;border-radius:50%;place-items:center;width:30px;height:30px;display:grid;position:absolute;bottom:-2px;right:-3px}.guest-bubble-name{color:#4c573b;overflow-wrap:anywhere;margin-top:16px;font-size:15px}.guest-bubble-status{color:#777b69;margin-top:4px;font-size:11px}.couple-full-names{font-family:var(--font-script);flex-direction:column;align-items:center;margin:30px auto;font-size:clamp(31px,6.9vw,98px);font-weight:400;line-height:1.3;display:flex}.couple-full-names>span{white-space:nowrap;margin-block:-.1em;padding:.16em .12em .2em;display:block}.couple-full-names>.couple-name-and{font-family:var(--font-serif);margin-block:0;font-size:clamp(18px,2vw,25px);font-style:italic;line-height:1.3}.wedding-home .editorial-title em{-webkit-text-fill-color:transparent;background:linear-gradient(115deg,#795a28,#b58f49 30%,#d2b575 47%,#987032 65%,#b99553);-webkit-background-clip:text;background-clip:text}.wedding-home .attire-section .editorial-title em{background-image:linear-gradient(115deg,#c3a46c,#f0dca5 45%,#c3a46c)}.monogram-light{mix-blend-mode:normal;background:#f8f7f2;border-radius:50%}.gold-text{color:#ab8746;-webkit-text-fill-color:transparent;background:linear-gradient(115deg,#795a28 0%,#b58f49 22%,#e6ce8c 40%,#aa8038 56%,#e0c784 73%,#86632d 100%);-webkit-background-clip:text;background-clip:text}.invitation-experience{background:#f3f1e8}.envelope-scroll-scene{height:220svh;position:relative}.envelope-sticky{isolation:isolate;flex-direction:column;justify-content:space-between;align-items:center;height:100svh;min-height:700px;padding:110px 24px 28px;display:flex;position:sticky;top:0;overflow:hidden}.envelope-sticky:before{content:"";opacity:.055;z-index:-1;background:url(/floral.jpg) 50%/580px;position:absolute;inset:0}.envelope-heading{z-index:8;text-align:center;position:relative}.envelope-heading .editorial-title{margin-top:15px;font-size:clamp(34px,4vw,55px)}.envelope-heading .section-copy{margin-top:12px}.envelope{aspect-ratio:1.5;perspective:1400px;flex-shrink:0;width:min(470px,78vw,55svh);margin-top:100px;position:relative}.envelope-back{z-index:0;background:#1d2c20;border-radius:6px;position:absolute;inset:0;box-shadow:0 25px 50px #18261e40}.envelope-preview{z-index:2;transform-origin:bottom;background:#fff;width:64%;height:94%;position:absolute;bottom:4%;left:18%;overflow:hidden;box-shadow:0 0 16px #3333}.envelope-preview img{width:100%;height:auto;display:block}.envelope-front{z-index:3;clip-path:polygon(0 0,50% 63%,100% 0,100% 100%,0 100%);pointer-events:none;background:linear-gradient(90deg,#304b36 50%,#293e2e 50%);border-radius:3px 3px 6px 6px;position:absolute;inset:0}.envelope-front:after{content:"";clip-path:polygon(0 100%,50% 37%,100% 100%);background:linear-gradient(150deg,#3b5540,#263d2c);border-radius:0 0 6px 6px;position:absolute;inset:0}.envelope-flap{clip-path:polygon(0 0,100% 0,50% 64%);transform-origin:top;backface-visibility:visible;pointer-events:none;background:linear-gradient(165deg,#3c5841,#263d2c);position:absolute;inset:0}.envelope-seal{z-index:6;cursor:pointer;background:#efe2ba;border:3px double #b89b57;border-radius:50%;place-items:center;width:65px;height:65px;display:grid;position:absolute;top:49%;left:50%;transform:translate(-50%,-50%);box-shadow:0 3px 9px #4b3f2733}.envelope-seal .original-monogram{pointer-events:none;width:43px;height:43px}.envelope-prompt{z-index:8;flex-shrink:0;margin-top:45px;position:relative}.envelope-reduced{height:auto}.envelope-reduced .envelope-sticky{position:relative}.envelope-reduced .envelope-seal{pointer-events:none}.invitation-collection{background:#f8f7f2;scroll-margin-top:75px}.invitation-card-nav{flex-wrap:wrap;justify-content:center;gap:12px 24px;margin-top:35px;display:flex}.invitation-card-nav a{color:var(--color-olive);border-bottom:1px solid #b18a4d55;padding:8px 0;font-size:10px}.invitation-card-nav a:hover{color:var(--color-gold)}.invitation-card-list{margin-top:90px}.invitation-card-row{grid-template-columns:.8fr 1.2fr;align-items:center;gap:80px;padding-block:55px;scroll-margin-top:80px;display:grid}.invitation-card-row:nth-child(2n){grid-template-columns:1.2fr .8fr}.invitation-card-row:nth-child(2n) .invitation-card-caption{order:2}.invitation-card-caption .editorial-title{font-size:clamp(35px,4vw,52px)}.original-invitation-card{background:#fff;width:100%;max-width:560px;margin-inline:auto;box-shadow:0 22px 60px #343d231c}.original-invitation-card img{width:100%;height:auto;display:block}.card-download{width:fit-content;color:var(--color-muted);align-items:center;gap:8px;margin-top:22px;font-size:10px;display:flex}.card-download:hover{color:var(--color-gold)}.invitation-end{padding-top:85px}@media (width<=767px){.envelope-sticky{min-height:650px;padding-top:100px}.envelope{margin-top:100px}.envelope-seal{width:52px;height:52px}.envelope-seal .original-monogram{width:34px;height:34px}.invitation-card-row,.invitation-card-row:nth-child(2n){grid-template-columns:1fr;gap:30px;padding-block:35px}.invitation-card-row:nth-child(2n) .invitation-card-caption{order:0}.invitation-card-list{margin-top:35px}}@media (height<=740px) and (width>=768px){.envelope-sticky{min-height:600px;padding-top:90px}.envelope-heading .editorial-title{font-size:34px}.envelope{width:320px;margin-top:65px}}@media print{.invitation-experience .envelope-scroll-scene,.invitation-collection>div:first-child,.invitation-card-caption,.invitation-end{display:none!important}.invitation-collection,.invitation-card-list{width:100%;margin:0;padding:0}.invitation-card-row,.invitation-card-row:nth-child(2n){break-after:page;padding:0;display:block}.original-invitation-card{box-shadow:none;max-width:100%;opacity:1!important;transform:none!important}.original-invitation-card img{object-fit:contain;width:auto;max-width:100%;height:95vh;margin:auto}}.rsvp-form-surface{background:var(--color-ivory);padding:clamp(24px,5vw,48px)}.gold-text-light{background-image:linear-gradient(115deg,#c3a46c,#f0dca5 40%,#bd9856 60%,#ecd596);padding-block:.12em}.envelope-scroll-scene{z-index:0;height:500svh}.invitation-collection{z-index:1;border-radius:32px 32px 0 0;margin-top:-100svh;position:relative}.envelope-scroll-scene.envelope-reduced{height:auto}.envelope-reduced+.invitation-collection{box-shadow:none;border-radius:0;margin-top:0}@media print{.invitation-collection{box-shadow:none;border-radius:0;margin-top:0}}.envelope-sticky{min-height:0;padding-top:95px}.invitation-parallax-stage{--envelope-width:min(84vw, 58svh);--envelope-height:calc(var(--envelope-width) / 1.5);place-items:center;display:grid;position:absolute;inset:88px 0 24px}.invitation-parallax-stage .envelope{width:var(--envelope-width);pointer-events:none;grid-area:1/1;margin:0}.envelope-card-mask{z-index:2;place-items:center;display:grid;position:absolute;inset:0}.envelope-shell-back{z-index:1}.envelope-shell-front{z-index:3}.envelope-shell-seal{z-index:6}.envelope-shell-seal .envelope-seal{pointer-events:auto}.envelope-full-card{z-index:2;transform-origin:50%;background:#fff;grid-area:1/1;width:min(90vw,70.9svh - 88.625px);box-shadow:0 20px 55px #26322230}.envelope-full-card img{opacity:1;filter:none;mix-blend-mode:normal;background:#fff;width:100%;height:auto;display:block}.envelope-prompt{margin-top:auto}.rsvp-form-surface input,.rsvp-form-surface select,.rsvp-form-surface textarea{font-size:16px}.wedding-nav{padding-block:19px}@media (width<=767px){.site-container{width:calc(100% - 40px)}.wedding-hero{min-height:850px;padding:130px 20px 0}.hero-side-note{display:none}.hero-botanical{opacity:.2;background-size:auto,auto,470px}.hero-content{padding-bottom:45px}.hero-date{letter-spacing:.05em;gap:10px;font-size:8px}.hero-date strong{padding-inline:12px;font-size:22px}.hero-subtitle{font-size:20px}.hero-bottom{justify-content:center}.hero-bottom-copy,.scroll-cue{display:none}.venue-grid,.attire-layout,.notes-layout{grid-template-columns:1fr;gap:48px}.venue-grid{margin-top:40px}.venue-topline{margin-bottom:25px}.attire-art{max-width:340px;margin-inline:auto}.attire-layout>:last-child{order:-1}.party-section{padding-inline:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.admin-page{padding-top:120px;padding-bottom:70px}.admin-login{max-width:420px;margin-top:32px;padding:28px}.admin-login label{font-size:14px;display:block}.admin-login input{border:1px solid #82865f66;width:100%;margin:12px 0 20px;padding:12px}.admin-toolbar{flex-wrap:wrap;align-items:center;gap:20px;margin:28px 0;font-size:12px;display:flex}.admin-toolbar p{margin-right:auto}.admin-stats{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.admin-stat{color:#68704c;flex-direction:column;gap:12px;padding:24px;display:flex}.admin-stat strong{overflow-wrap:anywhere;font-size:clamp(20px,3vw,32px)}.admin-stat span,.admin-help{font-size:12px}.admin-columns{grid-template-columns:1fr 1fr;gap:20px;margin-top:24px;display:grid}.admin-panel{min-width:0;margin-bottom:24px;padding:24px}.admin-panel h2{font-family:var(--font-serif);margin-bottom:18px;font-size:27px}.admin-panel dt{color:#777b69;text-transform:uppercase;letter-spacing:.08em;margin-top:16px;font-size:11px}.admin-panel dd{overflow-wrap:anywhere;margin-top:4px;font-size:14px}.admin-activity li{border-bottom:1px solid #82865f22;justify-content:space-between;gap:16px;padding:14px 0;font-size:13px;display:flex}.admin-activity small{color:#777b69;margin-top:5px;display:block}.admin-activity span{white-space:nowrap;align-items:center;gap:6px;display:flex}.admin-error{color:#9c392d;padding:16px 0;font-size:14px}@media (width<=700px){.admin-stats{grid-template-columns:1fr 1fr}.admin-columns{grid-template-columns:1fr}}.admin-actions{flex-wrap:wrap;align-items:center;gap:10px;margin:16px 0;display:flex}.admin-actions button{background:#f8f7f2;border:1px solid #82865f66;border-radius:6px;padding:8px 12px;font-size:12px}.admin-actions button[aria-pressed=true]{color:#fff;background:#68704c}.admin-actions button:disabled{opacity:.4;cursor:not-allowed}.admin-actions input,.admin-actions select{border:1px solid #82865f66;border-radius:4px;max-width:100%;padding:8px;font-size:13px}.admin-service{border-bottom:1px solid #82865f22;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-commands{white-space:pre-wrap;overflow-wrap:anywhere;background:#eeece2;margin:14px 0;padding:16px;font-size:12px}.admin-photo-list li{border-bottom:1px solid #82865f22;padding:18px 0}.admin-photo-list small{color:#777b69;margin-top:6px;display:block}.admin-danger{color:#9c392d}.admin-preview{z-index:70;color:#fff;background:#182019f5;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px;display:flex;position:fixed;inset:0}.admin-preview img{object-fit:contain;max-width:100%;max-height:75svh}.admin-preview button{border:1px solid #fff;border-radius:20px;padding:10px 24px}.admin-preview p{font-size:12px}.admin-photo-count{font-family:var(--font-body);color:#777b69;margin-left:8px;font-size:14px}.admin-selection-bar{background:#eeece2;border-radius:6px;flex-wrap:wrap;align-items:center;gap:16px;padding:12px;font-size:12px;display:flex}.admin-selection-bar label{cursor:pointer;align-items:center;gap:9px;display:flex}.admin-selection-bar .admin-actions{margin:0 0 0 auto}.admin-selection-bar input,.admin-compact-photos input{accent-color:#68704c;flex-shrink:0;width:17px;height:17px}.admin-compact-photos li{border-bottom:1px solid #82865f22;align-items:center;gap:14px;padding:12px;display:flex}.admin-compact-photos li.is-selected{background:#82865f0e}.admin-photo-title{text-align:left;cursor:pointer;flex:1;min-width:0}.admin-photo-title strong{overflow-wrap:anywhere;font-size:14px;display:block}.admin-photo-title small{color:#777b69;margin-top:4px;font-size:11px;display:block}.admin-photo-download{flex-shrink:0;font-size:11px}@media (width<=600px){.admin-selection-bar .admin-actions{width:100%;margin-left:0}.admin-compact-photos li{gap:10px;padding-inline:4px}}.admin-table-scroll{margin-top:20px;overflow-x:auto}.admin-guest-table{border-collapse:collapse;text-align:left;width:100%;font-size:13px}.admin-guest-table th{color:#68704c;text-transform:uppercase;letter-spacing:.08em;background:#eeece2;font-size:11px;font-weight:600}.admin-guest-table th,.admin-guest-table td{vertical-align:middle;border-bottom:1px solid #82865f22;padding:12px 14px}.admin-guest-table td:first-child{min-width:150px}.admin-guest-table small{color:#777b69;margin-top:4px;font-size:11px;display:block}.admin-guest-table .admin-actions{flex-wrap:nowrap;margin:0}.admin-guest-status{color:#68704c;background:#82865f15;border-radius:20px;padding:4px 8px;font-size:11px;display:inline-block}.admin-guest-status.is-deleted{color:#9c392d;background:#9c392d0d}.camera-save-status,.camera-save-success{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;gap:10px;margin:10px 20px 0;padding:12px 16px;font-size:13px;display:flex}.camera-save-status{background:#ffffff12}.camera-save-success{color:#354b29;background:#e7efd9}.camera-save-success svg{flex-shrink:0}.camera-save-success button{margin-left:auto;padding:5px}.camera-save-error{flex-shrink:0;max-height:110px;overflow-y:auto}.camera-saving-overlay{z-index:2;background:#18201980;border-radius:4px;place-items:center;display:grid;position:absolute;inset:0}.camera-saving-indicator{text-align:center;color:#fff;flex-direction:column;align-items:center;gap:14px;padding:24px;font-size:14px;display:flex}.camera-capture-button{transition:background-color .2s,border-color .2s,opacity .2s}.camera-capture-button:disabled{opacity:.65;cursor:not-allowed;background:#8b8b8b;border-color:#626262}.camera-modal{height:100dvh;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);background:#182019;overflow-y:auto}.camera-alert-slot{flex-shrink:0;justify-content:center;align-items:center;width:min(100%,520px);min-height:70px;margin:0 auto;padding:0 16px 10px;display:flex}.camera-alert-slot .camera-save-success{width:100%;margin:0;padding:10px 12px}.camera-alert-slot .camera-save-error{max-height:60px;margin:0;padding:8px 12px}.camera-stage{flex:1;place-items:center;min-height:120px;padding:0 16px;display:grid}.camera-frame{aspect-ratio:3/4;background:#000;border-radius:12px;width:min(100%,480px,max(160px,100dvh - 300px)/1.33333);position:relative;overflow:hidden}.camera-frame video,.camera-frozen-frame{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.camera-frozen-frame{z-index:1}.camera-frame-mirrored video{transform:scaleX(-1)}.admin-visibility-control{align-items:center;gap:12px;min-height:44px;margin-top:16px;display:flex}.admin-visibility-switch{cursor:pointer;background:#787880;border:0;border-radius:999px;flex-shrink:0;width:58px;height:36px;padding:3px;transition:background-color .18s;position:relative}.admin-visibility-switch[aria-checked=true]{background:#248a3d}.admin-visibility-switch>span{background:#fff;border-radius:50%;width:30px;height:30px;transition:transform .18s;display:block;box-shadow:0 2px 4px #0003}.admin-visibility-switch[aria-checked=true]>span{transform:translate(22px)}.admin-visibility-switch:disabled{opacity:.55;cursor:wait}@media (prefers-reduced-motion:reduce){.admin-visibility-switch,.admin-visibility-switch>span{transition:none}}.camera-session-note{flex-shrink:0;padding:0 20px 16px}.admin-rsvp-totals{grid-template-columns:repeat(4,1fr);gap:12px;margin:20px 0;display:grid}.admin-rsvp-totals div{background:#eeece2;border-radius:8px;padding:16px}.admin-rsvp-totals strong{color:#68704c;font-size:25px;display:block}.admin-rsvp-totals span{margin-top:5px;font-size:11px;display:block}.admin-rsvp-form{border:1px solid #82865f44;border-radius:8px;margin:16px 0;padding:18px}.admin-rsvp-form label{margin-top:12px;font-size:12px;display:block}.admin-rsvp-form input,.admin-rsvp-form select,.admin-rsvp-form textarea{border:1px solid #82865f55;border-radius:4px;width:100%;margin-top:5px;padding:9px;display:block}.admin-rsvp-note{overflow-wrap:anywhere;white-space:pre-wrap;min-width:140px;max-width:260px}@media (width<=600px){.admin-rsvp-totals{grid-template-columns:1fr 1fr}}.album-gallery-link{color:#68704c;border:1px solid #82865f55;border-radius:999px;justify-content:center;align-items:center;gap:10px;margin-top:12px;padding:12px;font-size:12px;display:flex}.album-qr{justify-content:center;align-items:center;gap:18px;display:flex}.album-qr p{text-align:left;max-width:150px}.guest-box-shell{background:#f4f2e9;border:1px solid #82865f33;border-radius:24px;max-width:960px;margin:30px auto 0;overflow:hidden;box-shadow:0 15px 50px #34402708}.guest-box-top,.guest-box-bottom{color:#68704c;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:16px 22px;font-size:12px;display:flex}.guest-box-top{border-bottom:1px solid #82865f22}.guest-floating-box{background:radial-gradient(at 35% 25%,#fffdf7,#eceede);height:420px;position:relative}.floating-guest{color:#566342;font-family:var(--font-serif);cursor:pointer;background:radial-gradient(circle at 30% 25%,#fffef8,#dce0c5);border:1px solid #a9ad8d;border-radius:50%;place-items:center;display:grid;position:absolute;box-shadow:inset 0 2px 5px #fff9,0 5px 12px #56634215}.floating-guest.has-photos{border-color:#909768}.floating-guest[aria-pressed=true]{outline-offset:2px;outline:2px solid #9d8144}.floating-guest:focus-visible{outline-offset:2px;outline:3px solid #566342}.floating-camera{color:#fff;background:#68704c;border:2px solid #f4f2e9;border-radius:50%;place-items:center;width:28%;min-width:17px;height:28%;min-height:17px;display:grid;position:absolute;bottom:0;right:-1px}.guest-box-empty{text-align:center;color:#777b69;font-family:var(--font-serif);place-items:center;padding:30px;font-size:24px;display:grid;position:absolute;inset:0}.guest-box-paging{align-items:center;gap:14px;display:flex}.guest-box-paging button:disabled{opacity:.35}.photos-page{padding-top:120px;padding-bottom:80px}.photos-page>.text-center{margin:35px auto}.gallery-tabs{justify-content:center;gap:8px;display:flex}.gallery-tabs button{color:#68704c;border:1px solid #82865f55;border-radius:30px;padding:12px 24px;font-size:13px}.gallery-tabs button[aria-pressed=true]{color:#fff;background:#68704c}.gallery-scope-note{text-align:center;color:#777b69;margin-top:14px;font-size:12px}.gallery-summary{color:#68704c;justify-content:space-between;margin:28px 0 18px;font-size:12px;display:flex}.photo-masonry{columns:3;column-gap:18px}.gallery-photo{break-inside:avoid;background:#fffdf8;border:1px solid #82865f22;border-radius:12px;margin:0 0 18px;overflow:hidden}.gallery-photo img{width:100%;height:auto;display:block}.gallery-photo figcaption{justify-content:space-between;align-items:baseline;gap:10px;padding:12px;font-size:12px;display:flex}.gallery-photo time{color:#777b69;font-size:10px}.gallery-photo-fallback{text-align:center;color:#68704c;background:#eeece2;padding:60px 16px;font-size:12px}.gallery-empty{text-align:center;color:#777b69;flex-direction:column;align-items:center;gap:20px;padding:70px 20px;display:flex}.gallery-loading{justify-content:center;align-items:center;gap:10px;padding:30px;display:flex}.gallery-more{margin:28px auto 0;display:flex}@media (width<=850px){.photo-masonry{columns:2}}@media (width<=480px){.photo-masonry{columns:1}}.album-intro{padding-top:115px;padding-bottom:40px}.nav-logo-png{object-fit:contain;filter:url(#nav-logo-remove-white);width:46px;height:45px;display:block}.guest-name-dialog{color:#344027;background:#f8f7f2;border:1px solid #b89b5744;border-radius:18px;width:min(420px,100vw - 32px);max-height:calc(100dvh - 40px);margin:auto;padding:30px;position:fixed;inset:0;overflow-y:auto;box-shadow:0 25px 90px #18201940}.guest-name-dialog::backdrop{background:#182019aa}.guest-name-dialog h2{font-family:var(--font-serif);margin-top:14px;font-size:36px}.guest-name-dialog p:not(.kicker){color:#777b69;margin-top:10px;font-size:14px}.guest-name-dialog label{margin-top:24px;font-size:12px;display:block}.guest-name-dialog input{border:1px solid #82865f66;border-radius:6px;width:100%;margin:8px 0 20px;padding:12px}.guest-name-dialog .wedding-button{width:100%}.guest-name-dialog .wedding-button:disabled{opacity:.4}.guest-name-dialog .text-link{margin:18px auto 0;display:block}.album-qr-caption{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.album-qr-expand{color:#68704c;border:1px solid #82865f66;border-radius:20px;padding:8px 14px;font-size:12px}.album-qr-dialog{text-align:center;color:#344027;background:#f8f7f2;border:1px solid #b89b5744;border-radius:20px;width:min(440px,100vw - 32px);max-height:calc(100dvh - 40px);margin:auto;padding:36px 24px 24px;position:fixed;inset:0;overflow-y:auto;box-shadow:0 25px 90px #18201940}.album-qr-dialog::backdrop{background:#182019aa}.album-qr-close{border-radius:50%;padding:8px;position:absolute;top:10px;right:10px}.album-qr-dialog h2{font-family:var(--font-serif);margin:16px 0;font-size:30px}.album-qr-large{background:#fff;border-radius:10px;max-width:340px;margin:0 auto 18px;padding:8px}.album-qr-large svg{width:100%;height:auto;display:block}.album-qr-dialog>p:last-child{color:#777b69;font-size:13px;line-height:1.7}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@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}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@keyframes spin{to{transform:rotate(360deg)}}
