/*! tailwindcss v4.3.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-border-style:solid}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-5xl:3rem;--text-5xl--line-height:1;--animate-spin:spin 1s linear infinite;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.static{position:static}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-8{margin-top:calc(var(--spacing) * 8)}.hidden{display:none}.inline-flex{display:inline-flex}.min-h-screen{min-height:100vh}.animate-spin{animation:var(--animate-spin)}.border{border-style:var(--tw-border-style);border-width:1px}.bg-background{background-color:var(--background)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-24{padding-block:calc(var(--spacing) * 24)}.text-center{text-align:center}.font-display{font-family:var(--display)}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-foreground{color:var(--foreground)}.text-muted-foreground{color:var(--muted-foreground)}}:root{--background:#f9f5ed;--foreground:#402e2b;--card:#fffdf9;--card-foreground:#402e2b;--primary:#8d6558;--primary-foreground:#fffdf9;--secondary:#ead5cc;--secondary-foreground:#402e2b;--muted:#f0e8df;--muted-foreground:#7a6761;--accent:#e9d6c1;--accent-foreground:#402e2b;--border:#dfd1c4;--ring:#b98a70;--destructive:#9d4b4b;--display:"Amiri", serif;--body:"Noto Naskh Arabic", serif;--english:"Cormorant Garamond", serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--background);min-width:320px;color:var(--foreground);font-family:var(--body);margin:0;overflow-x:hidden}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,[role=slider]:focus-visible{outline:2px solid var(--ring);outline-offset:4px}.app-shell{background:var(--background);overflow:hidden}.english-label,.eyebrow{color:var(--primary);font-family:var(--english);letter-spacing:.19em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:600}.eyebrow{letter-spacing:.16em}.music-control{z-index:40;border:1px solid var(--border);align-items:center;gap:.5rem;display:inline-flex;position:fixed;top:1.25rem;left:1.25rem}@supports (color:color-mix(in lab, red, red)){.music-control{border:1px solid color-mix(in srgb, var(--border), transparent 20%)}}.music-control{background:var(--card);border-radius:999px}@supports (color:color-mix(in lab, red, red)){.music-control{background:color-mix(in srgb, var(--card), transparent 16%)}}.music-control{color:var(--foreground);box-shadow:0 8px 24px var(--foreground);padding:.58rem .85rem}@supports (color:color-mix(in lab, red, red)){.music-control{box-shadow:0 8px 24px color-mix(in srgb, var(--foreground), transparent 88%)}}.music-control{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:.78rem;transition:transform .18s,box-shadow .18s}.music-control:hover{box-shadow:0 12px 28px var(--foreground);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.music-control:hover{box-shadow:0 12px 28px color-mix(in srgb, var(--foreground), transparent 84%)}}.opening-scene{isolation:isolate;background:linear-gradient(130deg,#fcfaf5 0%,#f7eee8 48%,#fffdf8 100%);place-items:center;min-height:100svh;display:grid;position:relative;overflow:hidden}.mansion-wall{background:repeating-linear-gradient(92deg, transparent 0 7%, var(--card) 7.3% 7.6%, transparent 7.8% 15%), radial-gradient(circle at 50% 15%, var(--accent), transparent 28%);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.mansion-wall{background:repeating-linear-gradient(92deg, transparent 0 7%, color-mix(in srgb, var(--card), transparent 30%) 7.3% 7.6%, transparent 7.8% 15%), radial-gradient(circle at 50% 15%, color-mix(in srgb, var(--accent), transparent 45%), transparent 28%)}}.mansion-wall{opacity:.55}.ceiling-molding{border-top:1px solid var(--border);border-bottom:1px solid var(--border);height:2.6rem;position:absolute;inset:2.2rem 5% auto}@supports (color:color-mix(in lab, red, red)){.ceiling-molding{border-bottom:1px solid color-mix(in srgb, var(--border), transparent 12%)}}.ceiling-molding{box-shadow:0 8px 0 -7px var(--border);border-radius:50%}.wall-ornament{color:var(--primary);position:absolute;top:18%}@supports (color:color-mix(in lab, red, red)){.wall-ornament{color:color-mix(in srgb, var(--primary), transparent 40%)}}.wall-ornament{font-size:clamp(3.5rem,8vw,7rem);font-family:var(--display);opacity:.4}.ornament-left{left:7%;transform:scaleX(-1)}.ornament-right{right:7%}.sunlight{z-index:-1;filter:blur(16px);opacity:.7;background:linear-gradient(105deg,#0000 0 20%,#fff6ce8c 39%,#0000 58%);width:70vw;height:100vh;position:absolute;top:11%;right:-22%;transform:rotate(11deg)}.window-ensemble{aspect-ratio:.72;perspective:1450px;width:min(82vw,650px);max-height:83svh;filter:drop-shadow(0 28px 32px var(--foreground));margin-top:1.4rem;position:relative}@supports (color:color-mix(in lab, red, red)){.window-ensemble{filter:drop-shadow(0 28px 32px color-mix(in srgb, var(--foreground), transparent 85%))}}.arch-molding{z-index:12;border:18px solid var(--card);box-shadow:inset 0 0 0 1px var(--border), 0 0 0 5px var(--card);border-bottom-width:24px;border-radius:50% 50% 1.2rem 1.2rem/12% 12% 1.2rem 1.2rem;position:absolute;inset:-1.1% -3% -2.2%}@supports (color:color-mix(in lab, red, red)){.arch-molding{box-shadow:inset 0 0 0 1px var(--border), 0 0 0 5px color-mix(in srgb, var(--card), transparent 15%)}}.arch-molding{pointer-events:none}.arch-molding:before{content:"";border:1px solid var(--border);position:absolute;inset:1rem}@supports (color:color-mix(in lab, red, red)){.arch-molding:before{border:1px solid color-mix(in srgb, var(--border), transparent 20%)}}.arch-molding:before{border-radius:inherit}.arch-molding span{color:var(--primary);font-size:1.2rem;position:absolute;top:-1.05rem;right:50%;transform:translate(50%)}.garden-view{background:linear-gradient(#f3c9ac 0%,#ffdbb3 24%,#d6c5a4 46%,#779171 47%,#536e55 100%);border-radius:49% 49% .25rem .25rem/10% 10% .25rem .25rem;position:absolute;inset:2.2% 2.1% 2.3%;overflow:hidden}.sky-haze{background:radial-gradient(at 65% 28%,#fff2d1 0 4%,#0000 30%),linear-gradient(#f7cfbb,#f6d6b6 70%,#0000);position:absolute;inset:0 0 50%}.distant-trees{opacity:.85;filter:blur(1px);background:radial-gradient(circle at 30% 30%,#93a782 0 8%,#0000 9%),radial-gradient(circle at 58% 20%,#788d70 0 13%,#0000 14%),radial-gradient(circle at 72% 43%,#89a07b 0 18%,#0000 19%),#61795f;border-radius:50% 50% 12% 12%;width:55%;height:39%;animation:8s ease-in-out infinite alternate tree-breathe;position:absolute;bottom:29%}.tree-a{left:-21%}.tree-b{animation-delay:-3s;right:-28%;transform:scale(1.18)}.tree-c{opacity:.65;width:38%;height:27%;bottom:34%;left:28%}.garden-path{transform-origin:bottom;opacity:.64;background:linear-gradient(90deg,#0000 0 9%,#d9c4a1 10% 13%,#cfb893 14% 18%,#e0caaa 19% 24%,#c4ae8d 25% 28%,#dec6a4 29% 34%,#0000 35% 100%);width:56%;height:63%;position:absolute;bottom:-7%;right:22%;transform:perspective(300px)rotateX(52deg)}.fountain{z-index:4;width:28%;height:35%;filter:drop-shadow(0 9px 6px var(--foreground));position:absolute;bottom:19%;right:50%;transform:translate(50%)}@supports (color:color-mix(in lab, red, red)){.fountain{filter:drop-shadow(0 9px 6px color-mix(in srgb, var(--foreground), transparent 78%))}}.fountain-top{background:#ddd2be;border-radius:50%;width:18%;height:16%;position:absolute;top:2%;right:41%;box-shadow:0 7px 0 3px #b5a995}.fountain-water{opacity:.75;border-top:2px solid #eaf7f4f2;border-bottom:0;border-left:0;border-right:2px solid #eaf7f4f2;border-radius:0 100% 0 0;width:32%;height:30%;animation:2s linear infinite water-flow;position:absolute;top:12%}.water-left{right:40%;transform:scaleX(-1)rotate(15deg)}.water-right{animation-delay:-1s;left:39%;transform:rotate(15deg)}.fountain-bowl{background:linear-gradient(#e7decb,#afa28f);border-top:5px solid #eee5d3;border-radius:0 0 50% 50%;width:68%;height:18%;position:absolute;bottom:21%;right:16%}.fountain-base{background:linear-gradient(90deg,#b6a996,#e0d6c3 48%,#a69986);border-radius:5px 5px 28% 28%;width:31%;height:31%;position:absolute;bottom:0;right:35%}.rose-bank{z-index:5;background:radial-gradient(circle at 8% 56%,#eab2ac 0 3%,#0000 3.5%),radial-gradient(circle at 19% 29%,#fbf6e8 0 3.6%,#0000 4%),radial-gradient(circle at 33% 68%,#e6a4a0 0 3%,#0000 3.5%),radial-gradient(circle at 49% 23%,#fcf7eb 0 3.7%,#0000 4.2%),radial-gradient(circle at 72% 62%,#e7aba6 0 3.5%,#0000 4%),radial-gradient(circle at 88% 36%,#fff8e9 0 3.3%,#0000 3.8%),radial-gradient(at 50% 100%,#48684e 0 53%,#0000 54%);width:50%;height:33%;animation:5s ease-in-out infinite alternate leaf-stir;position:absolute;bottom:0}.rose-bank-left{left:-5%}.rose-bank-right{animation-delay:-2s;right:-5%;transform:scaleX(-1)}.birds{color:#fff6e7;font-family:var(--english);letter-spacing:1rem;text-shadow:0 1px 2px var(--foreground);font-size:2rem;animation:11s linear infinite birds-fly;position:absolute;top:24%;left:24%}@supports (color:color-mix(in lab, red, red)){.birds{text-shadow:0 1px 2px color-mix(in srgb, var(--foreground), transparent 80%)}}.birds span:nth-child(2){font-size:1.3rem}.birds span:nth-child(3){font-size:1.7rem}.curtain{z-index:9;opacity:.62;background:linear-gradient(90deg, var(--card), var(--card) 48%, var(--card));width:23%;position:absolute;top:1.6%;bottom:3%}@supports (color:color-mix(in lab, red, red)){.curtain{background:linear-gradient(90deg, color-mix(in srgb, var(--card), transparent 18%), color-mix(in srgb, var(--card), transparent 56%) 48%, color-mix(in srgb, var(--card), transparent 12%))}}.curtain{box-shadow:inset -10px 0 20px var(--foreground)}@supports (color:color-mix(in lab, red, red)){.curtain{box-shadow:inset -10px 0 20px color-mix(in srgb, var(--foreground), transparent 92%)}}.curtain{filter:blur(.1px);animation:7s ease-in-out infinite alternate curtain-sway}.curtain-left{transform-origin:100% 0;border-radius:75% 10% 15% 55%;right:1.8%}.curtain-right{transform-origin:0 0;animation-delay:-3s;left:1.8%;transform:scaleX(-1)}.door{z-index:10;width:50%;box-shadow:inset 0 0 0 1px #cfc0b1, inset 0 0 0 15px var(--card), inset 0 0 0 17px #cfc0b1;background:linear-gradient(105deg,#f4eee5 0%,#fffdf9 48%,#e9e0d5 100%);border:7px solid #fdfaf5;position:absolute;top:1.5%;bottom:2.9%}@supports (color:color-mix(in lab, red, red)){.door{box-shadow:inset 0 0 0 1px #cfc0b1, inset 0 0 0 15px color-mix(in srgb, var(--card), transparent 35%), inset 0 0 0 17px #cfc0b1}}.door{backface-visibility:hidden;transition:transform 2.1s cubic-bezier(.2,.78,.16,1),opacity 1.8s}.door-left{transform-origin:100%;border-radius:0 46% 0 0/0 8% 0 0;right:1.8%}.door-right{transform-origin:0;border-radius:46% 0 0/8% 0 0;left:1.8%}.door.door-opening{opacity:.74}.door-left.door-opening{transform:rotateY(109deg)}.door-right.door-opening{transform:rotateY(-109deg)}.door-panel{background:linear-gradient(120deg, var(--card), var(--accent));border:2px solid #cfbfb0;position:absolute;left:13%;right:13%}@supports (color:color-mix(in lab, red, red)){.door-panel{background:linear-gradient(120deg, color-mix(in srgb, var(--card), transparent 15%), color-mix(in srgb, var(--accent), transparent 65%))}}.door-panel{box-shadow:inset 0 0 0 7px var(--card)}@supports (color:color-mix(in lab, red, red)){.door-panel{box-shadow:inset 0 0 0 7px color-mix(in srgb, var(--card), transparent 40%)}}.panel-top{height:40%;top:12%}.panel-bottom{height:27%;bottom:12%}.door-handle{background:linear-gradient(135deg,#d8b47b,#f8e9be,#b8884d);border-radius:50%;width:11px;height:11px;position:absolute;top:53%;box-shadow:0 0 0 2px #c39d63}.door-left .door-handle{left:6%}.door-right .door-handle{right:6%}.date-discovery{z-index:16;text-align:center;place-items:center;width:min(77%,390px);min-height:11rem;transition:opacity .65s,transform .65s;display:grid;position:absolute;top:50%;right:50%;transform:translate(50%,-50%)}.date-discovery.is-opening{opacity:0;pointer-events:none;transform:translate(50%,-54%)scale(.96)}.date-copy{z-index:2;position:relative}.date-copy h1{color:var(--foreground);font-family:var(--display);letter-spacing:.025em;text-shadow:0 2px 0 var(--card);margin:.4rem 0 .8rem;font-size:clamp(2.45rem,7vw,4.2rem);font-weight:400}.discovery-instruction{color:var(--muted-foreground);letter-spacing:.07em;margin:0;font-size:1rem}.ivory-veil{border:1px solid var(--border);flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;display:flex;position:absolute;inset:-1.7rem -2rem}@supports (color:color-mix(in lab, red, red)){.ivory-veil{border:1px solid color-mix(in srgb, var(--border), transparent 35%)}}.ivory-veil{background:repeating-linear-gradient(110deg, var(--card) 0 11px, var(--secondary) 12px 13px, var(--card) 14px 25px), var(--card);border-radius:50% 50% 18% 18%}@supports (color:color-mix(in lab, red, red)){.ivory-veil{background:repeating-linear-gradient(110deg, color-mix(in srgb, var(--card), transparent 18%) 0 11px, color-mix(in srgb, var(--secondary), transparent 75%) 12px 13px, color-mix(in srgb, var(--card), transparent 18%) 14px 25px), color-mix(in srgb, var(--card), transparent 14%)}}.ivory-veil{box-shadow:0 20px 32px var(--foreground), inset 0 0 40px var(--card)}@supports (color:color-mix(in lab, red, red)){.ivory-veil{box-shadow:0 20px 32px color-mix(in srgb, var(--foreground), transparent 88%), inset 0 0 40px color-mix(in srgb, var(--card), transparent 6%)}}.ivory-veil{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);touch-action:none;-webkit-user-select:none;user-select:none}.ivory-veil:before{content:"";border:1px solid var(--primary);position:absolute;inset:.5rem}@supports (color:color-mix(in lab, red, red)){.ivory-veil:before{border:1px solid color-mix(in srgb, var(--primary), transparent 62%)}}.ivory-veil:before{border-radius:inherit}.veil-mark{color:var(--primary);font-family:var(--display);font-size:2.5rem;position:relative}.lace-line{border-top:1px solid var(--primary);width:55%;position:relative}@supports (color:color-mix(in lab, red, red)){.lace-line{border-top:1px solid color-mix(in srgb, var(--primary), transparent 38%)}}.lace-line:after{content:"✦  ✧  ✦";background:var(--card);width:7rem;position:absolute;bottom:-.7rem;right:50%;transform:translate(50%)}@supports (color:color-mix(in lab, red, red)){.lace-line:after{background:color-mix(in srgb, var(--card), transparent 5%)}}.lace-line:after{color:var(--primary);letter-spacing:.35rem;font-size:.65rem}.open-door-button,.luxury-button{border:1px solid var(--primary);justify-content:center;align-items:center;gap:.6rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.open-door-button,.luxury-button{border:1px solid color-mix(in srgb, var(--primary), transparent 20%)}}.open-door-button,.luxury-button{background:var(--card);border-radius:999px}@supports (color:color-mix(in lab, red, red)){.open-door-button,.luxury-button{background:color-mix(in srgb, var(--card), transparent 10%)}}.open-door-button,.luxury-button{color:var(--foreground);box-shadow:0 8px 20px var(--foreground);padding:.8rem 1.25rem}@supports (color:color-mix(in lab, red, red)){.open-door-button,.luxury-button{box-shadow:0 8px 20px color-mix(in srgb, var(--foreground), transparent 88%)}}.open-door-button,.luxury-button{font-size:.92rem;transition:transform .18s,box-shadow .18s,background .18s}.open-door-button:hover,.luxury-button:hover{background:var(--primary);color:var(--primary-foreground);box-shadow:0 14px 28px var(--foreground);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.open-door-button:hover,.luxury-button:hover{box-shadow:0 14px 28px color-mix(in srgb, var(--foreground), transparent 82%)}}.open-door-button:active,.luxury-button:active{transform:scale(.98)}.open-door-button:disabled,.luxury-button:disabled{pointer-events:none;cursor:not-allowed;opacity:.5}.scene-scroll-cue{z-index:18;color:var(--primary);opacity:0;flex-direction:column;align-items:center;font-size:.86rem;transition:opacity .6s 1s,transform .6s 1s;display:flex;position:absolute;bottom:1.25rem;transform:translateY(8px)}.scene-scroll-cue.visible{opacity:1;transform:translateY(0)}.scene-scroll-cue svg{animation:1.6s ease-in-out infinite cue-bob}.floating-specks{pointer-events:none;position:absolute;inset:0}.speck{opacity:.7;background:#fff5d7;border-radius:50%;width:3px;height:3px;animation:8s linear infinite speck-drift;position:absolute;box-shadow:0 0 9px #fff5d7}.speck-1{top:15%;left:12%}.speck-2{animation-delay:-2s;top:20%;left:80%}.speck-3{animation-delay:-5s;top:65%;left:5%}.speck-4{animation-delay:-4s;top:70%;left:83%}.speck-5{animation-delay:-3s;top:38%;left:19%}.speck-6{animation-delay:-6s;top:48%;left:87%}.speck-7{animation-delay:-1s;top:80%;left:36%}.speck-8{animation-delay:-7s;top:26%;left:49%}.speck-9{animation-delay:-4s;top:59%;left:30%}.speck-10{animation-delay:-2s;top:12%;left:61%}.speck-11{animation-delay:-6s;top:87%;left:72%}.speck-12{animation-delay:-5s;top:33%;left:4%}.speck-13{animation-delay:-3s;top:45%;left:68%}.speck-14{animation-delay:-7s;top:74%;left:61%}.speck-15{animation-delay:-1s;top:16%;left:33%}.invitation-content{background:linear-gradient(#fffdf9 0%,#f9f3ec 28%,#f7ede8 100%);position:relative}.section-shell{text-align:center;width:min(92vw,820px);margin-inline:auto}.garden-entrance{padding:clamp(5rem,11vw,9rem) 0 clamp(4.5rem,9vw,7rem);position:relative;overflow:hidden}.garden-entrance:before{content:"";z-index:0;background:radial-gradient(ellipse at 50% 0, var(--accent), transparent 45%), repeating-linear-gradient(100deg, transparent 0 18px, var(--border) 19px 20px);position:absolute;inset:0 -20vw}@supports (color:color-mix(in lab, red, red)){.garden-entrance:before{background:radial-gradient(ellipse at 50% 0, color-mix(in srgb, var(--accent), transparent 40%), transparent 45%), repeating-linear-gradient(100deg, transparent 0 18px, color-mix(in srgb, var(--border), transparent 88%) 19px 20px)}}.garden-entrance>:not(.petal-field){z-index:1;position:relative}.ring-stage{aspect-ratio:1.35;perspective:850px;cursor:default;width:min(74vw,430px);margin:1.4rem auto 1.2rem;position:relative}.diamond-ring{width:180px;height:110px;transform-style:preserve-3d;transform:translate(50%, -50%) rotateX(var(--tilt-y)) rotateY(var(--tilt-x));transition:transform .18s ease-out;animation:5.4s cubic-bezier(.3,.1,.2,1) both ring-turn;position:absolute;top:37%;right:50%}.ring-band{width:180px;height:83px;box-shadow:inset 4px -3px 8px var(--foreground), 0 5px 8px var(--foreground);border:15px solid #d9c29a;border-color:#d9c29a #d9c29a #987c55 #f8efd8;border-radius:50%;position:absolute;top:22px;right:0;transform:rotateX(65deg)}@supports (color:color-mix(in lab, red, red)){.ring-band{box-shadow:inset 4px -3px 8px color-mix(in srgb, var(--foreground), transparent 65%), 0 5px 8px color-mix(in srgb, var(--foreground), transparent 78%)}}.ring-crown{clip-path:polygon(15% 30%,35% 0,65% 0,85% 30%,75% 100%,25% 100%);background:linear-gradient(135deg,#aa895e,#fcf0cf 40%,#9b7b54);width:42px;height:33px;position:absolute;top:18px;right:50%;transform:translate(50%)translateZ(12px)}.diamond{clip-path:polygon(50% 0,95% 30%,76% 91%,50% 100%,24% 91%,5% 30%);background:linear-gradient(125deg,#fff 0 19%,#a7c3cf 28%,#fff 40%,#bed9e1 54%,#fff 66%,#b3c7ce 81%,#fff 100%);width:68px;height:61px;position:absolute;top:-12px;right:50%;transform:translate(50%)translateZ(36px);box-shadow:0 0 26px #fff9e7}.diamond i,.diamond b,.diamond em{opacity:.88;border-style:solid;display:block;position:absolute}.diamond i{border-width:17px 24px 0 0;border-color:#fff #0000 #0000;top:22%;right:10%}.diamond b{border-width:0 15px 31px;border-color:#0000 #0000 #d4edf2;top:0;right:37%}.diamond em{border-width:15px 15px 0;border-color:#8cb1c0 #0000 #0000;bottom:0;right:20%}.ring-shadow{background:radial-gradient(ellipse, var(--foreground), transparent 68%);border-radius:50%;width:220px;height:28px;position:absolute;top:67%;right:50%;transform:translate(50%)}@supports (color:color-mix(in lab, red, red)){.ring-shadow{background:radial-gradient(ellipse, color-mix(in srgb, var(--foreground), transparent 55%), transparent 68%)}}.ring-shadow{filter:blur(7px);opacity:.35}.ring-spark{z-index:2;color:#dcbf8e;text-shadow:0 0 12px #fff7d3;animation:2.4s ease-in-out infinite sparkle;position:absolute}.spark-one{top:14%;right:21%}.spark-two{font-size:1.45rem;animation-delay:-1.1s;top:38%;left:18%}.spark-three{font-size:.9rem;animation-delay:-1.7s;top:58%;right:15%}.monogram-intro{opacity:0;transition:opacity .9s,transform .9s;transform:translateY(10px)}.monogram-intro.visible{opacity:1;transform:translateY(0)}.monogram{color:#b18b5a;font-family:var(--display);letter-spacing:-.07em;text-shadow:0 1px 0 var(--card);font-size:clamp(3rem,8vw,5.1rem);font-weight:400;line-height:1}.monogram span{font-family:var(--english);font-size:.65em;display:inline-block;transform:translateY(-.05em)}.monogram-intro h1{font-family:var(--display);margin:.6rem 0 .4rem;font-size:clamp(2.6rem,6vw,4rem);font-weight:400}.monogram-intro h1 i{color:var(--primary);font-family:var(--english);font-weight:400}.monogram-intro p{color:var(--muted-foreground);margin:0;font-size:1.1rem}.petal-field{z-index:3;pointer-events:none;position:absolute;inset:0;overflow:hidden}.petal{opacity:0;background:#f1c8c6;border-radius:80% 0;width:11px;height:16px;animation:7s cubic-bezier(.23,.7,.3,1) infinite petal-fall;position:absolute;top:-8%}.petal:nth-child(3n){background:#fff9ed}.petal:nth-child(4n){width:8px;height:12px}.petal-1{animation-delay:-1s;right:3%}.petal-2{animation-delay:-4.7s;right:9%}.petal-3{animation-delay:-2.5s;right:16%}.petal-4{animation-delay:-5.8s;right:23%}.petal-5{animation-delay:-3.1s;right:31%}.petal-6{animation-delay:-.5s;right:38%}.petal-7{animation-delay:-6.2s;right:43%}.petal-8{animation-delay:-4.1s;right:49%}.petal-9{animation-delay:-1.9s;right:54%}.petal-10{animation-delay:-6.6s;right:59%}.petal-11{animation-delay:-3.7s;right:65%}.petal-12{animation-delay:-5.1s;right:70%}.petal-13{animation-delay:-2.1s;right:74%}.petal-14{animation-delay:-6.9s;right:78%}.petal-15{animation-delay:-.9s;right:82%}.petal-16{animation-delay:-3.4s;right:86%}.petal-17{animation-delay:-5.3s;right:90%}.petal-18{animation-delay:-1.4s;right:95%}.petal-19{animation-delay:-6.3s;right:12%}.petal-20{animation-delay:-4.5s;right:52%}.petal-21{animation-delay:-2.9s;right:33%}.petal-22{animation-delay:-5.5s;right:68%}.petal-23{animation-delay:-3.8s;right:41%}.petal-24{animation-delay:-1.8s;right:80%}.petal-25{animation-delay:-5.9s;right:27%}.invitation-paper{border:1px solid var(--border);max-width:650px;margin-bottom:4rem;padding:clamp(3.5rem,7vw,5.5rem) clamp(1.5rem,8vw,5.2rem);position:relative}@supports (color:color-mix(in lab, red, red)){.invitation-paper{border:1px solid color-mix(in srgb, var(--border), transparent 8%)}}.invitation-paper{background:linear-gradient(120deg, var(--card), #fff9f0)}@supports (color:color-mix(in lab, red, red)){.invitation-paper{background:linear-gradient(120deg, color-mix(in srgb, var(--card), transparent 3%), #fff9f0)}}.invitation-paper{box-shadow:0 20px 50px var(--foreground), inset 0 0 60px var(--accent)}@supports (color:color-mix(in lab, red, red)){.invitation-paper{box-shadow:0 20px 50px color-mix(in srgb, var(--foreground), transparent 89%), inset 0 0 60px color-mix(in srgb, var(--accent), transparent 65%)}}.invitation-paper:before{content:"";border:1px solid var(--primary);position:absolute;inset:.65rem}@supports (color:color-mix(in lab, red, red)){.invitation-paper:before{border:1px solid color-mix(in srgb, var(--primary), transparent 52%)}}.invitation-paper:before{pointer-events:none}.invitation-paper:after{content:"";border:1px solid var(--border);position:absolute;inset:1.08rem}@supports (color:color-mix(in lab, red, red)){.invitation-paper:after{border:1px solid color-mix(in srgb, var(--border), transparent 20%)}}.invitation-paper:after{pointer-events:none}.paper-flourish{z-index:1;color:var(--primary);font-family:var(--display);font-size:2.5rem;position:absolute;right:50%;transform:translate(50%)}.paper-flourish.top{top:.65rem}.paper-flourish.bottom{bottom:.55rem;transform:translate(50%)scaleY(-1)}.bismillah{z-index:1;color:var(--primary);font-family:var(--display);margin:0 0 1.5rem;font-size:1.45rem;position:relative}.invitation-paper h2{z-index:1;font-family:var(--display);margin:0;font-size:clamp(1.7rem,4vw,2.3rem);font-weight:400;line-height:1.65;position:relative}.couple-type{z-index:1;color:var(--primary);font-family:var(--display);flex-direction:column;align-items:center;margin:1.45rem 0 .45rem;font-size:clamp(2.3rem,6vw,3.4rem);line-height:.93;display:flex;position:relative}.couple-type span{color:var(--muted-foreground);padding:.15rem 0;font-size:1.3rem}.paper-subtitle{z-index:1;color:var(--muted-foreground);margin:0;font-size:1.05rem;position:relative}.paper-rule{z-index:1;border-top:1px solid var(--border);width:4.5rem;margin:1.45rem auto;position:relative}.paper-event{z-index:1;color:var(--foreground);justify-content:center;align-items:flex-start;gap:.55rem;margin:.85rem 0;font-size:1.1rem;display:flex;position:relative}.paper-event svg{color:var(--primary);margin-top:.3rem}.paper-event p{margin:0;line-height:1.55}.paper-event span{color:var(--muted-foreground);font-size:.95rem}.event-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:5rem;display:grid}.meta-card,.location-card{border:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.meta-card,.location-card{border:1px solid color-mix(in srgb, var(--border), transparent 14%)}}.meta-card,.location-card{background:var(--card)}@supports (color:color-mix(in lab, red, red)){.meta-card,.location-card{background:color-mix(in srgb, var(--card), transparent 20%)}}.meta-card,.location-card{box-shadow:0 13px 34px var(--foreground)}@supports (color:color-mix(in lab, red, red)){.meta-card,.location-card{box-shadow:0 13px 34px color-mix(in srgb, var(--foreground), transparent 92%)}}.meta-card{padding:1.5rem 1rem}.meta-card h2{font-family:var(--display);margin:.25rem 0;font-size:1.75rem;font-weight:400}.meta-card span{color:var(--muted-foreground);font-size:.82rem}.location-card{text-align:right;grid-column:1/-1;grid-template-columns:.93fr 1.07fr;min-height:200px;display:grid;overflow:hidden}.map-art{background:linear-gradient(135deg,#e5ddc4,#c8d3b8);position:relative;overflow:hidden}.map-art:before,.map-art:after{content:"";background:var(--card);position:absolute}@supports (color:color-mix(in lab, red, red)){.map-art:before,.map-art:after{background:color-mix(in srgb, var(--card), transparent 20%)}}.map-art:before,.map-art:after{transform:rotate(-32deg)}.map-art:before{width:150%;height:11px;top:35%;right:-32%}.map-art:after{width:12px;height:150%;top:-33%;right:52%}.map-route{z-index:1;border-top:2px dashed #9f8367;border-bottom:0;border-left:0;border-right:2px dashed #9f8367;border-radius:0 100% 0 0;width:57%;height:42%;position:absolute;top:26%;right:20%;transform:rotate(23deg)}.map-pin{z-index:2;background:var(--primary);width:30px;height:30px;color:var(--primary-foreground);box-shadow:0 5px 8px var(--foreground);border-radius:50% 50% 50% 0;place-items:center;display:grid;position:absolute;top:37%;right:45%;transform:rotate(-45deg)}@supports (color:color-mix(in lab, red, red)){.map-pin{box-shadow:0 5px 8px color-mix(in srgb, var(--foreground), transparent 75%)}}.map-pin:first-letter{transform:rotate(45deg)}.map-rose{color:#d49e9f;font-size:1.6rem;position:absolute}.rose-one{bottom:10%;right:12%}.rose-two{color:#f8f1df;top:12%;left:15%}.location-copy{flex-direction:column;justify-content:center;padding:1.6rem;display:flex}.location-copy h2{font-family:var(--display);margin:.3rem 0 0;font-size:1.75rem;font-weight:400}.location-copy>p:not(.english-label){color:var(--muted-foreground);margin:0}.location-copy button{border:0;border-bottom:1px solid var(--primary);color:var(--primary);background:0 0;align-self:flex-start;align-items:center;gap:.45rem;margin-top:1rem;padding:0 .05rem .22rem;font-size:.9rem;transition:color .18s,transform .18s;display:inline-flex}.location-copy button:hover{color:var(--foreground);transform:translate(-2px)}.countdown-section{border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:5rem;padding:clamp(2.6rem,6vw,4rem) 1rem}.countdown-section>svg{color:var(--primary)}.countdown-section h2,.timeline-section h2,.rsvp-section h2,.dress-intro h2{font-family:var(--display);margin:.4rem 0 1.4rem;font-size:clamp(2rem,5vw,3rem);font-weight:400}.countdown-grid{grid-template-columns:repeat(4,1fr);max-width:560px;margin:auto;display:grid}.time-unit{gap:.1rem;display:grid;position:relative}.time-unit+.time-unit:before{content:"";border-right:1px solid var(--border);height:55%;position:absolute;top:16%;right:0}.time-unit strong{font-family:var(--english);letter-spacing:.04em;font-size:clamp(2rem,7vw,3.2rem);font-weight:500;line-height:1}.time-unit span{color:var(--muted-foreground);font-size:.83rem}.dress-code{border:1px solid var(--border);margin-bottom:5rem;padding:3rem 1.25rem}@supports (color:color-mix(in lab, red, red)){.dress-code{border:1px solid color-mix(in srgb, var(--border), transparent 14%)}}.dress-code{background:linear-gradient(135deg, var(--secondary), var(--card))}@supports (color:color-mix(in lab, red, red)){.dress-code{background:linear-gradient(135deg, color-mix(in srgb, var(--secondary), transparent 62%), color-mix(in srgb, var(--card), transparent 5%))}}.dress-intro svg{color:var(--primary)}.dress-intro h2{margin-bottom:0}.dress-intro>p:last-child{color:var(--primary);font-family:var(--english);margin:0;font-size:1.35rem;font-style:italic}.swatches{justify-content:center;gap:.7rem;margin:1.8rem 0 1.25rem;display:flex}.swatch{border:3px solid var(--card);width:2.25rem;height:2.25rem}@supports (color:color-mix(in lab, red, red)){.swatch{border:3px solid color-mix(in srgb, var(--card), transparent 5%)}}.swatch{box-shadow:0 0 0 1px var(--border);border-radius:999px}.swatch.ivory{background:#f9f3e7}.swatch.blush{background:#e9c8c6}.swatch.champagne{background:#dbbf8a}.swatch.rose{background:#cfa4a0}.swatch.sage{background:#afbcaa}.dress-note{max-width:470px;color:var(--muted-foreground);margin:auto;font-size:1rem}.timeline-section{margin-bottom:5rem}.timeline{text-align:right;max-width:560px;margin:2rem auto 0;padding:0;list-style:none;position:relative}.timeline:before{content:"";border-right:1px solid var(--border);position:absolute;top:1.2rem;bottom:1.2rem;right:1.1rem}.timeline li{grid-template-columns:2.4rem 1fr;align-items:center;gap:1rem;min-height:5rem;display:grid;position:relative}.timeline li span{z-index:1;border:1px solid var(--border);background:var(--card);width:2.25rem;height:2.25rem;color:var(--primary);font-family:var(--english);border-radius:50%;place-items:center;font-size:.85rem;display:grid;position:relative}.timeline li p{margin:0;font-size:1.2rem}.rsvp-section{border:1px solid var(--border);margin-bottom:4rem;padding:clamp(3.7rem,8vw,5.5rem) 1.25rem;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.rsvp-section{border:1px solid color-mix(in srgb, var(--border), transparent 12%)}}.rsvp-section{background:linear-gradient(135deg,#f1dfd7,#fffaf2 52%,#ead8c9)}.rsvp-section:before{content:"";border:1px solid var(--primary);position:absolute;inset:.65rem}@supports (color:color-mix(in lab, red, red)){.rsvp-section:before{border:1px solid color-mix(in srgb, var(--primary), transparent 60%)}}.rsvp-section>*{z-index:1;position:relative}.rsvp-section>p:not(.english-label){color:var(--muted-foreground);margin:-.7rem 0 1.65rem;font-size:1.16rem}.rsvp-bloom{color:var(--primary);position:absolute;top:-1.8rem;left:-1rem}@supports (color:color-mix(in lab, red, red)){.rsvp-bloom{color:color-mix(in srgb, var(--primary), transparent 68%)}}.rsvp-bloom{font-family:var(--display);font-size:8rem;transform:rotate(-22deg)}.rsvp-section .luxury-button{background:var(--primary);color:var(--primary-foreground)}.finale{padding:2rem 1rem 4.5rem}.finale h2{max-width:520px;font-family:var(--display);margin:1rem auto .5rem;font-size:clamp(1.9rem,4vw,2.8rem);font-weight:400;line-height:1.45}.finale p{color:var(--muted-foreground);font-family:var(--english);letter-spacing:.03em;margin:0;font-size:1.1rem}.invitation-toast{z-index:70;border:1px solid var(--border);width:min(92vw,430px);position:fixed;bottom:1.25rem;right:50%;transform:translate(50%)}@supports (color:color-mix(in lab, red, red)){.invitation-toast{border:1px solid color-mix(in srgb, var(--border), transparent 10%)}}.invitation-toast{background:var(--card);color:var(--foreground);box-shadow:0 14px 35px var(--foreground);border-radius:.45rem;padding:.85rem 1.1rem}@supports (color:color-mix(in lab, red, red)){.invitation-toast{box-shadow:0 14px 35px color-mix(in srgb, var(--foreground), transparent 78%)}}.invitation-toast{text-align:center;font-size:.98rem;animation:.22s both toast-in}.dialog-layer{z-index:80;background:var(--foreground);place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.dialog-layer{background:color-mix(in srgb, var(--foreground), transparent 45%)}}.dialog-layer{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:.18s both dialog-fade}.rsvp-dialog{border:1px solid var(--border);background:var(--card);width:min(100%,480px);max-height:min(740px,92svh);box-shadow:0 24px 70px var(--foreground);padding:3rem clamp(1.35rem,6vw,3rem) 2rem;position:relative;overflow-y:auto}@supports (color:color-mix(in lab, red, red)){.rsvp-dialog{box-shadow:0 24px 70px color-mix(in srgb, var(--foreground), transparent 55%)}}.rsvp-dialog{text-align:center;animation:.22s both dialog-in}.dialog-close{border:1px solid var(--border);width:2.25rem;height:2.25rem;color:var(--foreground);background:0 0;border-radius:50%;place-items:center;transition:background .18s,transform .18s;display:grid;position:absolute;top:.85rem;left:.85rem}.dialog-close:hover{background:var(--muted);transform:rotate(4deg)}.dialog-flourish{color:var(--primary);font-family:var(--display);font-size:2rem}.rsvp-dialog h2{font-family:var(--display);margin:.3rem 0;font-size:2.2rem;font-weight:400}.dialog-lead{color:var(--muted-foreground);margin:0 0 1.65rem}.rsvp-form{text-align:right;gap:1rem;display:grid}.form-field{gap:.38rem;display:grid}.form-field label,.attendance-choice legend{color:var(--foreground);font-size:.95rem}.form-field input,.form-field select{border:1px solid var(--border);background:var(--background);width:100%;color:var(--foreground);border-radius:.35rem;padding:.7rem .75rem;transition:border-color .18s,box-shadow .18s}.form-field input:focus,.form-field select:focus{border-color:var(--ring);box-shadow:0 0 0 3px var(--ring)}@supports (color:color-mix(in lab, red, red)){.form-field input:focus,.form-field select:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--ring), transparent 80%)}}.form-field input:focus,.form-field select:focus{outline:0}.attendance-choice{border:0;gap:.5rem;margin:.2rem 0 0;padding:0;display:grid}.attendance-choice label{color:var(--muted-foreground);align-items:center;gap:.5rem;font-size:.95rem;display:flex}.attendance-choice input{accent-color:var(--primary)}.form-error{color:var(--destructive);margin:0;font-size:.9rem}.submit-rsvp{background:var(--primary);width:100%;color:var(--primary-foreground);margin-top:.55rem}@keyframes curtain-sway{to{transform:skewY(1deg)scaleX(1.04)}}@keyframes tree-breathe{to{transform:translateY(-3px)scale(1.025)}}@keyframes leaf-stir{to{transform:translateY(-4px)rotate(.6deg)}}@keyframes water-flow{50%{opacity:.4;transform:translateY(5px)scaleY(1.1)}}@keyframes birds-fly{0%{opacity:0;transform:translate(-10vw,4px)}12%{opacity:.9}85%{opacity:.8}to{opacity:0;transform:translate(68vw,-32px)}}@keyframes speck-drift{0%{transform:translate(0)}to{opacity:.1;transform:translate(25px,-68px)}}@keyframes cue-bob{50%{transform:translateY(5px)}}@keyframes ring-turn{0%{opacity:0;transform:translate(50%,-50%)rotateY(-36deg)scale(.82)}18%{opacity:1}70%{transform:translate(50%,-50%)rotateY(330deg)scale(1)}to{opacity:1;transform:translate(50%,-50%)rotateY(360deg)scale(1)}}@keyframes sparkle{0%,to{opacity:.25;transform:scale(.65)rotate(0)}50%{opacity:1;transform:scale(1.15)rotate(18deg)}}@keyframes petal-fall{0%{opacity:0;transform:translateY(-8vh)rotate(0)}12%{opacity:.82}90%{opacity:.7}to{opacity:0;transform:translate(120px,112vh)rotate(420deg)}}@keyframes dialog-fade{0%{opacity:0}to{opacity:1}}@keyframes dialog-in{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toast-in{0%{opacity:0;transform:translate(50%,8px)}to{opacity:1;transform:translate(50%)}}@media (width<=520px){.music-control span{display:none}.music-control{padding:.65rem}.window-ensemble{width:min(92vw,500px)}.arch-molding{border-width:13px 13px 18px}.door{box-shadow:inset 0 0 0 1px #cfc0b1, inset 0 0 0 10px var(--card), inset 0 0 0 11px #cfc0b1;border-width:5px}@supports (color:color-mix(in lab, red, red)){.door{box-shadow:inset 0 0 0 1px #cfc0b1, inset 0 0 0 10px color-mix(in srgb, var(--card), transparent 35%), inset 0 0 0 11px #cfc0b1}}.date-discovery{width:84%}.ivory-veil{inset:-1.25rem -1rem}.date-copy h1{font-size:2.55rem}.open-door-button{padding:.7rem .9rem;font-size:.82rem}.event-meta{grid-template-columns:1fr}.location-card{grid-column:auto;grid-template-columns:1fr}.map-art{min-height:145px}.location-copy{text-align:center}.location-copy button{align-self:center}.timeline{padding-right:.1rem}.ring-stage{width:100%}.countdown-grid{gap:0}.time-unit strong{font-size:2rem}.dress-code{padding-inline:.85rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@keyframes spin{to{transform:rotate(360deg)}}
