@import "https://fonts.googleapis.com/css2?family=Katibeh&display=swap";
@font-face{font-family:DiwaniLetter;src:url(/fonts/DiwaniLetter.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}.dc-root{--dc-black:#fbf7ef;--dc-panel:#f6efde;--dc-panel-deep:#efe5cc;--dc-cream:#2a2419;--dc-cream-soft:#6b5e45;--dc-gold:#a9853c;--dc-gold-deep:#8e6a2e;--dc-gold-bright:#8e6a2e;--font-display:var(--font-alexbrush), "Alex Brush", cursive;--font-deco:var(--font-cinzel), "Cinzel", serif;--font-body:var(--font-serif), "Cormorant Garamond", Georgia, serif;--font-arabic:var(--font-amiri), "Amiri", serif;color:var(--dc-cream);font-family:var(--font-body);-webkit-tap-highlight-color:transparent;background:radial-gradient(120% 90% at 50% 10%,#faf3e4 0%,#efe3c9 45%,#d9c7a2 82%,#b99f73 100%);justify-content:center;align-items:center;width:100%;height:100dvh;padding:24px 16px;display:flex;position:relative;overflow:hidden}.dc-root:before{content:"";pointer-events:none;opacity:.9;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' seed='7'/><feColorMatrix values='0 0 0 0 0.83  0 0 0 0 0.69  0 0 0 0 0.37  0 0 0 0.05 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:absolute;inset:0}.dc-frame{z-index:25;pointer-events:none;border:1px solid #a9853c8c;transition:opacity .8s;position:fixed;inset:16px}.dc-frame:before{content:"";border:1px solid #a9853c40;position:absolute;inset:5px}.dc-frame:after{content:"";background:linear-gradient(var(--dc-gold), var(--dc-gold)) top left / 22px 1px, linear-gradient(var(--dc-gold), var(--dc-gold)) top left / 1px 22px, linear-gradient(var(--dc-gold), var(--dc-gold)) top right / 22px 1px, linear-gradient(var(--dc-gold), var(--dc-gold)) top right / 1px 22px, linear-gradient(var(--dc-gold), var(--dc-gold)) bottom left / 22px 1px, linear-gradient(var(--dc-gold), var(--dc-gold)) bottom left / 1px 22px, linear-gradient(var(--dc-gold), var(--dc-gold)) bottom right / 22px 1px, linear-gradient(var(--dc-gold), var(--dc-gold)) bottom right / 1px 22px;background-repeat:no-repeat;position:absolute;inset:-6px}.dc-root[data-open=true] .dc-frame{opacity:0}.dc-stage{z-index:2;flex-direction:column;align-items:center;transition:opacity .6s .4s,transform .6s .4s;display:flex;position:relative}.dc-root[data-open=true] .dc-stage{opacity:0;pointer-events:none;transition-delay:.9s;transform:scale(.97)}.dc-head{text-align:center;margin-bottom:32px;padding:0 24px}.dc-head-label{font-family:var(--font-deco);letter-spacing:.56em;text-transform:uppercase;color:var(--dc-gold);margin:0 0 12px;font-size:11px;font-weight:400}.dc-head-names{font-family:var(--font-display);color:var(--dc-gold-deep);margin:0 0 12px;font-size:clamp(44px,11vw,56px);font-weight:400;line-height:1.12}.dc-name-gold{background:linear-gradient(160deg,#e8c96a 0%,#c9a84c 30%,#f5e08a 55%,#b8892e 80%,#d4aa50 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 1px 2px #64460a2e);-webkit-background-clip:text;background-clip:text;display:block}.dc-head-names .amp{-webkit-text-fill-color:var(--dc-gold-deep);color:var(--dc-gold-deep);background:0 0;margin:-2px 0;font-size:.62em;line-height:1;display:block}.dc-head-date{font-family:var(--font-deco);letter-spacing:.44em;text-transform:uppercase;color:var(--dc-cream-soft);margin:0;font-size:11px;font-weight:300}.dc-head-venue{font-family:var(--font-body);letter-spacing:.03em;color:var(--dc-cream-soft);margin:10px 0 0;font-size:16px;font-style:italic;font-weight:300}.dc-gate-wrap{perspective:1500px;cursor:pointer}.dc-gate{width:min(320px,84vw);height:400px;transform-style:preserve-3d;position:relative}.dc-interior{text-align:center;background:radial-gradient(90% 70% at 50% 30%,#fff8e2 0%,#faf0d6 50%,#efe1bc 100%);flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0;overflow:hidden;box-shadow:inset 0 0 0 1px #a9853c80,inset 0 0 60px #c8a05040,0 18px 46px #462d0a59}.dc-interior:before{content:"";opacity:0;pointer-events:none;background:repeating-conic-gradient(from -90deg at 50% 100%,#a9853c29 0deg 3deg,#0000 3deg 12deg);transition:opacity 1s .5s;position:absolute;inset:-10%}.dc-root[data-open=true] .dc-interior:before{opacity:1}.dc-int-welcome{font-family:var(--font-deco);letter-spacing:.5em;text-indent:.5em;text-transform:uppercase;color:var(--dc-gold);margin-bottom:12px;font-size:10px;font-weight:400}.dc-int-names{font-family:var(--font-display);color:var(--dc-gold-deep);font-size:34px;line-height:1.35}.dc-door{z-index:5;background:linear-gradient(180deg, #f8f1e1 0%, var(--dc-panel) 50%, #ede1c5 100%);backface-visibility:hidden;justify-content:center;align-items:center;width:50%;transition:transform 1.05s cubic-bezier(.45,.05,.25,1);display:flex;position:absolute;top:0;bottom:0;overflow:hidden;box-shadow:inset 0 0 0 1px #a9853c80,0 10px 30px #462d0a4d}.dc-door-l{transform-origin:0;left:0}.dc-door-r{transform-origin:100%;right:0}.dc-root[data-open=true] .dc-door-l{transform:rotateY(-86deg)}.dc-root[data-open=true] .dc-door-r{transform:rotateY(86deg)}.dc-door-l:before,.dc-door-r:before{content:"";pointer-events:none;opacity:.5;position:absolute;inset:0}.dc-door-l:before{background:repeating-conic-gradient(from 90deg at 100%,#a9853c80 0deg 1.6deg,#0000 1.6deg 14deg)}.dc-door-r:before{background:repeating-conic-gradient(from 180deg at 0%,#a9853c80 0deg 1.6deg,#0000 1.6deg 14deg)}.dc-door-l:after,.dc-door-r:after{content:"";pointer-events:none;background:radial-gradient(circle,#0000 34px,#a9853ce6 34px 35px,#0000 35px 44px,#a9853c8c 44px 45px,#0000 45px 54px,#a9853c59 54px 55px,#0000 55px);border-radius:50%;width:120px;height:120px;position:absolute;top:50%;transform:translateY(-50%)}.dc-door-l:after{right:-60px}.dc-door-r:after{left:-60px}.dc-door-mono{font-family:var(--font-display);color:var(--dc-gold-deep);text-shadow:0 1px #fffcf0b3;-webkit-user-select:none;user-select:none;z-index:2;font-size:84px;line-height:1;position:relative}.dc-door-band{background:repeating-linear-gradient(45deg, var(--dc-gold) 0 1px, transparent 1px 8px), repeating-linear-gradient(-45deg, var(--dc-gold) 0 1px, transparent 1px 8px);opacity:.6;height:10px;position:absolute;left:12px;right:12px}.dc-door-band.top{top:14px}.dc-door-band.bot{bottom:14px}.dc-hint{font-family:var(--font-deco);letter-spacing:.44em;text-transform:uppercase;color:#a9853cbf;margin:30px 0 0;font-size:10px;font-weight:300;animation:2.4s ease-in-out infinite dc-hint-fade}@keyframes dc-hint-fade{0%,to{opacity:.5}50%{opacity:1}}.dc-letter{z-index:30;background:radial-gradient(120% 60% at 50% 0%, #fdfaf2 0%, var(--dc-panel) 55%, var(--dc-panel-deep) 100%);opacity:0;pointer-events:none;transition:opacity .6s,transform .6s;display:flex;position:fixed;inset:16px;overflow:hidden;transform:translateY(26px)scale(.98);box-shadow:0 24px 60px #462d0a66,inset 0 0 0 1px #a9853c80}.dc-root[data-open=true] .dc-letter{opacity:1;pointer-events:auto;transition-delay:1.2s;transform:translateY(0)scale(1)}.dc-letter:before{content:"";pointer-events:none;z-index:3;border:1px solid #a9853c4d;position:absolute;inset:10px}.dc-letter-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:none;text-align:center;flex:1;padding:54px 34px 56px;overflow-y:auto}.dc-letter-scroll::-webkit-scrollbar{display:none}.dc-preamble{letter-spacing:.03em;color:var(--dc-cream-soft);margin:0 0 18px;font-size:16px;font-style:italic;font-weight:300;line-height:1.6}.dc-request{letter-spacing:.24em;text-transform:uppercase;color:var(--dc-cream-soft);margin:0 0 10px;font-size:12px;font-weight:300;line-height:1.9}.dc-names{font-family:var(--font-display);margin:12px 0 14px;font-size:clamp(48px,11vw,62px);line-height:1.08}.dc-names-line{background:linear-gradient(160deg,#e8c96a 0%,#c9a84c 30%,#f5e08a 55%,#b8892e 80%,#d4aa50 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 1px 2px #64460a2e);-webkit-background-clip:text;background-clip:text;display:block}.dc-amp{-webkit-text-fill-color:var(--dc-gold-deep);color:var(--dc-gold-deep);background:0 0;margin:-2px 0;font-size:.62em;line-height:1;display:block}.dc-arabic{background:linear-gradient(160deg,#e8c96a 0%,#c9a84c 30%,#f5e08a 55%,#b8892e 80%,#d4aa50 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 1px 2px #64460a2e);direction:rtl;-webkit-background-clip:text;background-clip:text;margin:2px 0 10px;font-family:DiwaniLetter,serif;font-size:42px;line-height:1.8}.dc-verse{letter-spacing:.03em;color:var(--dc-cream-soft);margin:8px 6px 4px;font-size:16px;font-style:italic;font-weight:300;line-height:1.7}.dc-rule{width:74%;color:var(--dc-gold);justify-content:center;align-items:center;gap:10px;margin:24px auto;display:flex}.dc-rule:before,.dc-rule:after{content:"";border-top:1px solid #a9853cb3;border-bottom:1px solid #a9853c4d;flex:1;height:3px}.dc-rule-mark{font-size:9px;display:inline-block;transform:rotate(45deg)}.dc-date{font-family:var(--font-deco);letter-spacing:.4em;text-transform:uppercase;color:var(--dc-cream);margin:6px 0 4px;font-size:12.5px;font-weight:400}.dc-event{margin:14px auto}.dc-event-label{letter-spacing:.5em;text-indent:.5em;text-transform:uppercase;color:var(--dc-gold);margin-bottom:6px;font-size:10px;font-weight:400}.dc-event-venue{letter-spacing:.03em;color:var(--dc-cream);margin:2px 0;font-size:17px;font-weight:300;line-height:1.4}.dc-event-time{letter-spacing:.34em;color:var(--dc-cream-soft);margin-top:3px;font-size:11.5px;font-weight:300}.dc-btn{font-family:var(--font-deco);letter-spacing:.4em;text-indent:.4em;text-transform:uppercase;color:var(--dc-gold);border:1px solid var(--dc-gold);cursor:pointer;background:0 0;margin-top:16px;padding:12px 24px;font-size:10.5px;font-weight:400;text-decoration:none;transition:background .25s,color .25s;display:inline-block}.dc-btn:hover{background:var(--dc-gold);color:var(--dc-black)}.dc-rsvp{text-align:left;max-width:340px;margin:18px auto 0}.dc-rsvp-title{text-align:center;letter-spacing:.5em;text-indent:.5em;text-transform:uppercase;color:var(--dc-gold);margin-bottom:14px;font-size:10px;font-weight:400}.dc-field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.dc-field label{letter-spacing:.3em;text-transform:uppercase;color:var(--dc-cream-soft);font-size:9.5px;font-weight:300}.dc-field input,.dc-field textarea{font-family:var(--font-body);color:var(--dc-cream);background:0 0;border:0;border-bottom:1px solid #a9853c66;outline:none;padding:6px 2px;font-size:14px;font-weight:300}.dc-field input:focus,.dc-field textarea:focus{border-color:var(--dc-gold)}.dc-field textarea{resize:none;min-height:44px}.dc-choices{gap:8px;display:flex}.dc-choice{font-family:var(--font-body);letter-spacing:.32em;text-transform:uppercase;color:var(--dc-cream-soft);cursor:pointer;background:0 0;border:1px solid #a9853c66;flex:1;padding:10px 14px;font-size:10px;font-weight:400}.dc-choice.on{background:var(--dc-gold);color:var(--dc-black);border-color:var(--dc-gold)}.dc-stepper{align-items:center;gap:14px;display:flex}.dc-stepper button{border:1px solid var(--dc-gold);width:30px;height:30px;color:var(--dc-gold);cursor:pointer;background:0 0;font-size:15px}.dc-gcount{text-align:center;min-width:20px;color:var(--dc-cream);font-size:15px}.dc-rsvp-done{text-align:center;padding:12px 0}.dc-check{border:1px solid var(--dc-gold);width:44px;height:44px;color:var(--dc-gold);justify-content:center;align-items:center;margin-bottom:10px;font-size:20px;display:inline-flex;transform:rotate(45deg)}.dc-check span{transform:rotate(-45deg)}.dc-close{font-family:var(--font-deco);letter-spacing:.44em;color:#a9853c8c;cursor:pointer;text-transform:uppercase;background:0 0;border:0;margin-top:28px;font-size:9.5px;font-weight:300}.dc-brand{letter-spacing:.44em;color:#3c280a80;text-transform:uppercase;margin-top:20px;font-size:9px;font-weight:300}.dc-music-btn{z-index:40;border:1px solid var(--dc-gold);background:radial-gradient(circle at 32% 28%, #fdfaf2, var(--dc-panel-deep));width:46px;height:46px;color:var(--dc-gold);cursor:pointer;border-radius:50%;font-size:16px;position:fixed;bottom:26px;right:26px;box-shadow:0 4px 14px #50370f40}@media (max-width:380px){.dc-letter-scroll{padding:46px 24px 50px}.dc-gate{height:360px}.dc-door-mono{font-size:54px}}
