@import url('https://fonts.googleapis.com/css2?family=Aref+Ruqaa:wght@400;700&family=Amiri:wght@400;700&family=Noto+Naskh+Arabic:wght@400;500&display=swap');
:root{color-scheme:light;--ink:#795444;--gold:#b8906c;--pink:#d89e9f}*{box-sizing:border-box}body{margin:0;background:#fcf5f3;color:var(--ink);font-family:'Noto Naskh Arabic',serif}.invitation{min-height:100svh;position:relative;isolation:isolate;overflow:hidden;display:grid;place-items:center;padding:64px 34px;background:radial-gradient(ellipse at 6% 10%,#edc8ca66,transparent 48%),radial-gradient(ellipse at 100% 90%,#f2d3cc88,transparent 45%),#fffaf6}.frame{position:absolute;inset:22px;border:1px solid #b8906c65;pointer-events:none;z-index:-1}.frame:after{content:'';position:absolute;inset:6px;border:1px solid #b8906c25}.light{position:absolute;width:80vmax;height:80vmax;border:1px solid #dcae9b28;border-radius:50%;top:-48vmax;left:calc(50% - 40vmax);pointer-events:none;z-index:-1;box-shadow:0 0 0 36px #f1d2c514,0 0 0 80px #f1d2c50e}.cover{width:min(100%,650px);display:flex;flex-direction:column;align-items:center;text-align:center;transition:opacity .7s ease,transform 1.1s cubic-bezier(.2,.7,.2,1),filter .8s}.blessing{position:relative;width:min(100%,590px);aspect-ratio:5;overflow:hidden;margin-bottom:34px}.blessing img{position:absolute;width:127.8%;height:auto;max-width:none;left:-13.46%;top:-44.4%}.monogram{position:relative;width:86px;height:220px;overflow:hidden}.monogram img{position:absolute;width:666.67%;height:147.54%;max-width:none;left:-283.33%;top:-23.77%;filter:invert(43%) sepia(22%) saturate(673%) hue-rotate(335deg) brightness(91%) contrast(85%)}.rule{width:150px;display:flex;align-items:center;gap:12px;margin:25px 0 15px;color:var(--gold)}.rule:before,.rule:after{content:'';height:1px;flex:1;background:linear-gradient(90deg,transparent,#b8906c90)}.rule:after{transform:rotate(180deg)}.rule span{font-size:21px}.rings{display:block;opacity:.9;object-fit:contain;margin:0 auto 20px}.open-button{font:500 20px 'Noto Naskh Arabic',serif;color:var(--ink);border:1px solid #b8906c7a;background:#fffaf680;border-radius:99px;padding:11px 34px;min-height:56px;cursor:pointer;display:flex;align-items:center;gap:18px;box-shadow:0 5px 28px #ab6a5310;transition:background .3s,transform .3s}.open-button:hover{background:#f9e6de;transform:translateY(-3px)}button:focus-visible{outline:2px solid #98623f;outline-offset:6px}.button-glint{color:var(--gold);font-size:24px}.opening .cover{opacity:0;transform:scale(1.12);filter:blur(7px);pointer-events:none}.inside{width:min(100%,760px);text-align:center;min-height:650px;display:flex;flex-direction:column;align-items:center;justify-content:center}.inside[hidden],.cover[hidden]{display:none}.small-monogram{width:48px;height:123px;margin-bottom:46px}.message{display:flex;align-items:center;flex-direction:column;width:100%}.line{font-family:'Amiri',serif;line-height:2.1;margin:0;font-size:clamp(22px,3.5vw,31px)}h1{font-family:'Amiri',serif;font-size:clamp(62px,12vw,108px);font-weight:400;margin:17px 0 0;line-height:1.8;color:#b0786f;outline:none}.inside .rule{margin-top:0}.back{font:16px 'Noto Naskh Arabic',serif;border:0;border-bottom:1px solid #ba947755;background:none;color:#92796b;cursor:pointer;padding:8px 12px;margin-top:36px}.revealed .small-monogram,.revealed .message>* ,.revealed .back{animation:reveal 1.6s both}.revealed .first{animation-delay:.15s}.revealed .second{animation-delay:.4s}.revealed h1{animation-delay:.7s}.revealed .rule,.revealed .rings{animation-delay:1s}.revealed .back{animation-delay:1.3s}.sparkles{position:absolute;inset:0;pointer-events:none;z-index:-1}.sparkles i{position:absolute;width:3px;height:3px;background:#caa785;border-radius:50%;opacity:0;animation:twinkle 6s infinite ease-in-out}@keyframes reveal{from{opacity:0;transform:translateY(22px);filter:blur(4px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes twinkle{50%{opacity:.55;transform:translateY(-15px)}}@media(max-width:600px){.invitation{padding:55px 29px}.frame{inset:13px}.blessing{margin-bottom:38px}.monogram{width:70px;height:179px}.small-monogram{width:45px;height:115px;margin-bottom:35px}.inside{min-height:600px}.line{font-size:22px}.second{max-width:310px}h1{font-size:68px}.rule{margin-top:24px}.open-button{font-size:19px}.back{margin-top:30px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.rings{width:90px;height:64px}
.inside{padding:12px 0 20px}.inside .small-monogram{margin-bottom:30px}.countdown{display:flex;align-items:flex-start;justify-content:center;gap:18px;width:100%;margin:30px 0 44px;font-family:'Noto Naskh Arabic',serif}.countdown>div{min-width:75px;display:flex;flex-direction:column;align-items:center}.countdown span{font-size:48px;line-height:1.3;font-variant-numeric:tabular-nums;color:#a06f61}.countdown small{font-size:16px;margin-top:8px}.countdown b{font-size:27px;font-weight:400;color:#c9a58c;padding-top:7px}.event-details{width:100%;display:grid;grid-template-columns:1fr 1fr;column-gap:35px;row-gap:28px;border-top:1px solid #b8906c45;padding-top:30px}.detail h2{font:500 23px 'Noto Naskh Arabic',serif;margin:0 0 8px;display:flex;align-items:center;justify-content:center;gap:10px}.detail h2 svg{width:23px;height:23px;color:#ae845f}.detail p{font-size:21px;line-height:1.8;margin:0}.location{grid-column:1/-1;padding-top:10px}.map-link{display:inline-block;color:#795444;text-underline-offset:5px;font-size:18px;padding:12px 5px}.map-link:hover{color:#a47760}.closing-image{display:block;width:100%;max-width:740px;height:auto;margin:55px auto 0}.revealed .countdown,.revealed .event-details,.revealed .closing-image{animation:reveal 1.4s both;animation-delay:1.1s}.inside .back{margin-top:34px}@media(max-width:600px){.countdown{gap:7px;margin:25px 0 32px}.countdown>div{min-width:49px;flex:1}.countdown span{font-size:36px}.countdown b{font-size:21px;padding-top:3px}.countdown small{font-size:15px}.event-details{column-gap:15px;row-gap:22px}.detail h2{font-size:22px}.detail p{font-size:19px}.closing-image{width:calc(100% + 10px);max-width:none;margin-top:42px}.map-link{font-size:17px}}
/* Geometric opening and a gentle journey through interlocking rings. */
.cover{width:min(100%,680px);position:relative;z-index:1;transition:opacity 1.6s ease,transform 2.6s ease,filter 2s ease}.geometric-panel{width:100%;position:relative;display:flex;flex-direction:column;align-items:center;padding:52px 40px 45px;isolation:isolate;filter:drop-shadow(0 18px 24px #97645914)}.geometric-panel:before,.geometric-panel:after{content:'';position:absolute;inset:0;z-index:-2;clip-path:polygon(16% 0,84% 0,100% 12%,100% 88%,84% 100%,16% 100%,0 88%,0 12%);background:linear-gradient(135deg,#e9d1b2,#b99168 30%,#f9e5d5 50%,#bd939a 80%,#e9cbb2)}.geometric-panel:after{inset:2px;z-index:-1;background:linear-gradient(160deg,#fffdf9f5,#fff4f1f7 60%,#fcf0e7f7)}.cover .blessing{margin-bottom:30px}.cover .monogram{width:65px;height:166px}.cover-name{font-family:'Aref Ruqaa','Amiri',serif;font-size:34px;line-height:1.6;margin:12px 0 0;color:#a47367}.cover .rule{margin:8px 0}.cover .rings{margin-bottom:20px}.sparkles{z-index:0;position:absolute;inset:0;overflow:hidden;transition:opacity 1.8s}.sparkles span{position:absolute;top:-40px;left:var(--x);font-size:var(--size);color:var(--star-color);text-shadow:0 0 8px currentColor,0 0 18px currentColor;animation:starfall var(--duration) linear var(--delay) infinite;will-change:transform;opacity:0}.revealed .sparkles{display:none}@keyframes starfall{0%{transform:translate3d(0,-20px,0) rotate(0);opacity:0}12%{opacity:.85}80%{opacity:.65}100%{transform:translate3d(var(--drift),110svh,0) rotate(150deg);opacity:0}}.opening .cover{transform:scale(.93);opacity:0;filter:blur(8px)}.ring-transition{position:fixed;inset:0;pointer-events:none;z-index:10;visibility:hidden;overflow:hidden}.opening .ring-transition{visibility:visible}.portal-ring{position:absolute;top:50%;width:min(60vw,420px);aspect-ratio:1;border:3px solid #c59c6b;border-radius:50%;box-shadow:inset 0 0 0 6px #f7e4c3bb,0 0 0 1px #fff9e9,0 0 24px #d5ad7780;opacity:0;transform:translate(-50%,-50%) scale(.4)}.ring-one{left:42%}.ring-two{left:58%;border-color:#c49395;box-shadow:inset 0 0 0 6px #f5d9d8bb,0 0 0 1px #fff7ee,0 0 24px #c9939780}.opening .ring-one{animation:ring-entry 3.8s cubic-bezier(.25,.46,.35,1) both}.opening .ring-two{animation:ring-entry 3.8s .12s cubic-bezier(.25,.46,.35,1) both}.portal-glow{position:absolute;inset:0;background:#fff9f3;opacity:0}.opening .portal-glow{animation:soft-veil 3.8s both}.transition-done .ring-transition{display:none}@keyframes ring-entry{0%{opacity:0;transform:translate(-50%,-50%) scale(.4)}25%{opacity:1;transform:translate(-50%,-50%) scale(1)}52%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) scale(12)}}@keyframes soft-veil{0%,25%{opacity:0}52%{opacity:.96}100%{opacity:0}}.identity-row{display:flex;align-items:center;justify-content:center;gap:28px;margin:12px 0 34px;flex-direction:row}.identity-row .small-monogram{margin:0}.identity-row .rings{width:84px;height:84px;margin:0}.identity-divider{height:62px;width:1px;background:linear-gradient(transparent,#c9a68190,transparent)}.name-ornament{display:flex;align-items:center;justify-content:center;gap:18px;margin:15px 0 12px;width:100%}.name-ornament h1{font-family:'Aref Ruqaa','Amiri',serif;font-weight:700;font-size:clamp(72px,12vw,116px);line-height:1.8;margin:0;background:linear-gradient(150deg,#ab7565 10%,#c18d66 40%,#895c6e 70%,#b48469);background-clip:text;-webkit-background-clip:text;color:transparent;text-shadow:0 8px 24px #a7716412}.name-ornament>span{font-family:serif;font-size:38px;color:#ba9678}.name-ornament>span:last-child{transform:scaleX(-1)}.adults-note{display:flex;align-items:center;justify-content:center;gap:12px;font-size:20px;color:#8a6263;margin:38px 0 0}.adults-note img{width:36px;height:36px}.closing-image{filter:brightness(0) saturate(100%) invert(49%) sepia(20%) saturate(683%) hue-rotate(333deg) brightness(95%) contrast(88%)}.signature{font-family:'Aref Ruqaa','Amiri',serif;font-size:28px;margin-top:40px;color:#94695d;display:flex;gap:12px;align-items:center;justify-content:center}.signature span{font:23px serif;color:#bc868b}.revealed .identity-row,.revealed .adults-note,.revealed .signature{animation:reveal 1.8s both}.revealed .name-ornament{animation-delay:.7s}.revealed .adults-note,.revealed .signature{animation-delay:1.4s}@media(max-width:600px){.invitation{padding:38px 25px}.geometric-panel{padding:45px 18px 40px}.cover .blessing{width:100%;margin-bottom:24px}.cover .monogram{width:59px;height:151px}.cover-name{font-size:32px}.cover .open-button{padding:10px 22px;font-size:18px}.name-ornament{gap:10px}.name-ornament h1{font-size:clamp(65px,18vw,92px)}.name-ornament>span{font-size:27px}.identity-row{gap:23px;margin-bottom:30px}.identity-row .rings{width:72px;height:72px}.signature{font-size:27px}.adults-note{font-size:19px}}@media(prefers-reduced-motion:reduce){.sparkles span{display:none}.ring-transition{display:none!important}.name-ornament h1{color:#996b60;background:none}}

.audio-toggle{position:fixed;bottom:20px;left:20px;z-index:20;width:44px;height:44px;border-radius:50%;border:1px solid #bd9979;background:#fff9f3eb;color:#94695d;font-size:24px;cursor:pointer;box-shadow:0 4px 14px #79544412}.audio-toggle[hidden]{display:none}.audio-toggle.paused:after{content:'';position:absolute;width:26px;height:1.5px;background:currentColor;left:8px;top:21px;transform:rotate(-45deg)}

.name-ornament h1{font-size:clamp(28px,7vw,70px);white-space:nowrap;flex-shrink:0}.name-ornament>span{flex-shrink:0}.cover .rule{margin-top:20px}

.name-ornament h1{font-family:'Noto Naskh Arabic','Amiri',serif;font-weight:700;font-style:normal;color:#a47367;background:none;text-shadow:none;line-height:1.8;letter-spacing:0}.name-ornament>span{display:none}.name-ornament{gap:0}

.name-ornament{gap:14px}.name-ornament>.name-flower{display:flex;align-items:center;justify-content:center;width:48px;flex:0 0 48px}.name-flower img{width:100%;height:auto;display:block}@media(max-width:600px){.name-ornament{gap:10px}.name-ornament>.name-flower{width:36px;flex-basis:36px}}

.name-ornament h1{flex:1 1 0;min-width:0;line-height:1;margin:28px 0}.fixed-name{display:block;width:100%;height:auto}.name-ornament{max-width:760px;margin:25px 0 20px}

.name-ornament h1{flex:0 0 auto;margin:15px 0}.saeed-logo-viewport{display:block;position:relative;overflow:hidden;width:125px;aspect-ratio:178 / 488;mix-blend-mode:multiply}.saeed-logo-viewport img{display:block;position:absolute;max-width:none;width:485.3933%;height:auto;left:-200.5618%;top:-21.3115%}.name-ornament{gap:24px}@media(max-width:600px){.saeed-logo-viewport{width:105px}.name-ornament{gap:18px}}

.saeed-logo-viewport{mix-blend-mode:normal}.name-ornament{gap:0;justify-content:center}

.revealed .sparkles{display:block;position:fixed;inset:0;z-index:0;opacity:.38;pointer-events:none}.revealed .sparkles span{animation-duration:calc(var(--duration) * 1.45);text-shadow:0 0 6px currentColor,0 0 12px currentColor}.inside{position:relative;z-index:1}.scroll-cue{position:fixed;bottom:calc(18px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:15;border:1px solid #c6a28855;border-radius:28px;background:#fff9f2ee;color:#94695d;padding:8px 22px;display:flex;flex-direction:column;align-items:center;gap:2px;font:17px 'Noto Naskh Arabic',serif;box-shadow:0 4px 22px #97644b12;cursor:pointer;white-space:nowrap;min-height:66px}.scroll-cue[hidden]{display:none}.scroll-cue svg{animation:scroll-arrow 2.4s ease-in-out infinite}@keyframes scroll-arrow{0%,100%{transform:translateY(-2px)}50%{transform:translateY(4px)}}@media(prefers-reduced-motion:reduce){.revealed .sparkles{display:none}.scroll-cue svg{animation:none}}

.countdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;width:min(100%,580px);margin:34px auto 46px}.countdown>.count-unit{min-width:0;display:flex;flex-direction:column;align-items:center;gap:12px}.countdown .count-unit small{margin:0;font:500 19px 'Noto Naskh Arabic',serif;color:#94695d}.countdown .count-gem{display:grid;place-items:center;position:relative;isolation:isolate;width:100%;aspect-ratio:1;line-height:1;font-size:42px;font-weight:500;font-variant-numeric:tabular-nums;color:#a06f61;filter:drop-shadow(0 6px 9px #ad786615)}.count-gem:before,.count-gem:after{content:'';position:absolute;inset:0;z-index:-2;clip-path:polygon(22% 0,78% 0,100% 22%,100% 78%,78% 100%,22% 100%,0 78%,0 22%);background:linear-gradient(135deg,#ddc1a0,#c19682 45%,#d9aab0 75%,#e8cfb5)}.count-gem:after{inset:1.5px;z-index:-1;background:linear-gradient(145deg,#fffdf9,#fff0e9)}@media(max-width:600px){.countdown{gap:9px;margin:28px auto 36px}.countdown>.count-unit{gap:9px}.countdown .count-unit small{font-size:16px}.countdown .count-gem{font-size:clamp(25px,7vw,36px)}}
/* Independent butterfly edition */
.invitation{animation:scene-arrival 3s cubic-bezier(.16,1,.3,1) both}.cover{animation:cover-arrival 2.8s cubic-bezier(.16,1,.3,1) both}.cover .blessing{animation:detail-arrival 2s .4s both}.cover .monogram-scene{animation:detail-arrival 2s .85s both}.cover .open-button{animation:detail-arrival 1.8s 1.3s both}.opening .cover{animation:none}.opening .cover .open-button{animation:none}.monogram-scene{position:relative;width:230px;height:190px;display:grid;place-items:center;overflow:visible}.butterflies{position:absolute;inset:0;pointer-events:none;perspective:700px}.butterfly{position:absolute;left:50%;top:50%;width:38px;height:38px;filter:drop-shadow(0 3px 5px #aa6a8033);animation:butterfly-orbit 10s ease-in-out infinite;--bx:50px;--by:-45px;--tilt:18deg;--exit-x:60vw;--exit-y:-70vh}.butterfly img{display:block;width:100%;height:100%;animation:wingbeat .55s ease-in-out infinite alternate;transform-origin:50% 50%}.butterfly-1{--bx:44px;--by:-60px;--tilt:18deg;animation-delay:-1s}.butterfly-2{--bx:-77px;--by:10px;--tilt:-22deg;--exit-x:-65vw;animation-delay:-4s;width:31px;filter:sepia(.25) drop-shadow(0 2px 4px #aa6a8022)}.butterfly-3{--bx:54px;--by:57px;--tilt:28deg;--exit-x:70vw;--exit-y:-35vh;animation-delay:-6s;width:29px}.butterfly-4{--bx:-58px;--by:-66px;--tilt:-18deg;--exit-x:-45vw;animation-delay:-8s;width:25px;filter:hue-rotate(25deg)}.butterfly-5{--bx:0px;--by:-95px;--tilt:12deg;--exit-x:10vw;--exit-y:-100vh;animation-delay:-3s;width:23px}.butterfly:nth-child(even) img{animation-duration:.7s}.opening .butterfly{animation:butterfly-departure 1.5s cubic-bezier(.45,.05,.75,.45) forwards}.opening .butterfly img{animation-duration:.18s}@keyframes scene-arrival{from{opacity:0;filter:brightness(1.15)}to{opacity:1;filter:none}}@keyframes cover-arrival{from{opacity:0;transform:translateY(28px) scale(1.1);filter:blur(12px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes detail-arrival{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes butterfly-orbit{0%,100%{transform:translate(var(--bx),var(--by)) rotate(var(--tilt))}30%{transform:translate(calc(var(--bx) - 18px),calc(var(--by) + 16px)) rotate(calc(var(--tilt) - 12deg))}65%{transform:translate(calc(var(--bx) + 12px),calc(var(--by) - 10px)) rotate(calc(var(--tilt) + 18deg))}}@keyframes wingbeat{from{transform:rotateY(-58deg) scaleX(.7)}to{transform:rotateY(20deg) scaleX(1)}}@keyframes butterfly-departure{0%{opacity:1;transform:translate(var(--bx),var(--by)) rotate(var(--tilt))}100%{opacity:0;transform:translate(var(--exit-x),var(--exit-y)) rotate(35deg) scale(.45)}}
.countdown{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;max-width:570px;direction:rtl}.countdown .count-gem{border:1px solid #c7a28b7a;border-radius:16px;background:linear-gradient(#fffdf8 0%,#fff9f4 49.5%,#f6e7dd 50%,#fff4ed 51%,#fff9f5 100%);filter:none;box-shadow:0 8px 20px #aa785c10,inset 0 1px 0 #fff;overflow:hidden;perspective:450px}.count-gem:before{clip-path:none;inset:50% 0 auto;height:1px;background:#bb927d45;z-index:0}.count-gem:after{display:none}.countdown .count-digit{display:block;position:relative;z-index:1;font:500 clamp(30px,6vw,48px)/1 'Noto Naskh Arabic',serif;font-variant-numeric:tabular-nums;color:#a06f61;transform-origin:center;backface-visibility:hidden}.countdown>.count-unit{gap:10px}@media(max-width:600px){.monogram-scene{width:195px;height:174px}.butterfly{width:31px;height:31px}.countdown{gap:8px}.countdown .count-gem{border-radius:11px}.countdown .count-digit{font-size:clamp(27px,7.5vw,37px)}}@media(prefers-reduced-motion:reduce){.butterfly{transform:translate(var(--bx),var(--by))}.opening .butterflies{display:none}}
/* Butterflies enter from both screen edges before gathering at the monogram. */
.butterfly{--entry-x:-75vw;--entry-y:35px;--arrival-delay:1s;animation:butterfly-arrive 4.8s var(--arrival-delay) cubic-bezier(.22,.61,.36,1) both,butterfly-orbit 10s calc(4.8s + var(--arrival-delay)) ease-in-out infinite}.butterfly-1{--entry-x:75vw;--entry-y:-45px;--arrival-delay:1s}.butterfly-2{--entry-x:-75vw;--entry-y:35px;--arrival-delay:1.3s}.butterfly-3{--entry-x:80vw;--entry-y:95px;--arrival-delay:1.8s}.butterfly-4{--entry-x:-80vw;--entry-y:-80px;--arrival-delay:2.1s}.butterfly-5{--entry-x:75vw;--entry-y:-120px;--arrival-delay:2.5s}@keyframes butterfly-arrive{0%{opacity:0;transform:translate(var(--entry-x),var(--entry-y)) rotate(-12deg) scale(.75)}12%{opacity:1}45%{transform:translate(calc(var(--entry-x) * .35),calc(var(--by) - 35px)) rotate(15deg) scale(.9)}75%{transform:translate(calc(var(--bx) + 14px),calc(var(--by) + 14px)) rotate(-10deg)}100%{opacity:1;transform:translate(var(--bx),var(--by)) rotate(var(--tilt))}}.opening .butterfly{animation:butterfly-departure 1.5s cubic-bezier(.45,.05,.75,.45) forwards}
/* Pearl medallions with fine double rings replace the split flip cards. */
.countdown{gap:20px;max-width:600px;margin:38px auto 50px}.countdown>.count-unit{gap:15px}.countdown .count-unit small{font-family:'Amiri',serif;font-size:22px;font-weight:400;color:#926a5b}.countdown .count-gem{border-radius:50%;border:1px solid #ba987470;background:radial-gradient(circle at 35% 22%,#fffefb 0%,#fffaf4 45%,#f4e2d9 100%);box-shadow:0 9px 22px #a8796010,inset 0 0 20px #fff9f0;overflow:visible;filter:none;perspective:none}.count-gem:before{display:block;inset:6px;height:auto;border-radius:50%;border:1px solid #d6b38b70;background:none;clip-path:none;z-index:0}.count-gem:after{display:block;inset:11px;height:auto;border-radius:50%;border:1px solid #fff9ef;background:none;clip-path:none;z-index:0}.countdown .count-digit{font-family:'Noto Naskh Arabic',serif;font-weight:500;font-size:clamp(32px,6vw,51px);color:#956c56;text-shadow:0 1px 0 #fff}.countdown .count-unit:nth-child(even) .count-gem{background:radial-gradient(circle at 35% 22%,#fffefd,#fff7f3 50%,#f2dfe0);border-color:#c2979b70}.countdown .count-unit:nth-child(even) .count-gem:before{border-color:#d1abb16b}@media(max-width:600px){.countdown{gap:10px;margin:32px auto 40px}.countdown>.count-unit{gap:11px}.countdown .count-unit small{font-size:18px}.countdown .count-gem{border-radius:50%}.count-gem:before{inset:4px}.count-gem:after{inset:7px}.countdown .count-digit{font-size:clamp(26px,7.5vw,37px)}}@media(prefers-reduced-motion:reduce){.butterfly{opacity:1;transform:translate(var(--bx),var(--by))}}

/* Slow cinematic opening, synchronized with the new audio. */
.opening .cover{animation:cinematic-cover-exit 3.2s cubic-bezier(.3,.05,.25,1) both;transition:none;transform-origin:center 44%;will-change:transform,opacity,filter}.opening .butterfly{animation-duration:2.1s}.opening .ring-one{animation:ring-entry 5.2s .35s cubic-bezier(.25,.46,.35,1) both}.opening .ring-two{animation:ring-entry 5.2s .5s cubic-bezier(.25,.46,.35,1) both}.opening .portal-glow{animation:cinematic-veil 5.8s both}.revealed .inside{animation:inside-cinematic-reveal 2.3s cubic-bezier(.16,1,.3,1) both}@keyframes cinematic-cover-exit{0%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}30%{opacity:.97;transform:translateY(-3px) scale(1.015);filter:blur(.2px)}65%{opacity:.6;transform:translateY(-10px) scale(1.06);filter:blur(3px)}100%{opacity:0;transform:translateY(-20px) scale(1.14);filter:blur(12px)}}@keyframes cinematic-veil{0%,25%{opacity:0}52%,59%{opacity:.97}100%{opacity:0}}@keyframes inside-cinematic-reveal{from{opacity:0;transform:translateY(15px);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}

/* Alternating groom bands and diamond bridal rings. */
.countdown{gap:12px;max-width:620px}.countdown>.count-unit{gap:0}.countdown .count-gem,.countdown .count-unit:nth-child(even) .count-gem{aspect-ratio:100 / 112;border:0;border-radius:0;background:transparent url('assets/countdown-groom.svg') center/100% 100% no-repeat;box-shadow:none;filter:drop-shadow(0 3px 4px #a47b4812)}.countdown .count-unit:nth-child(even) .count-gem{background-image:url('assets/countdown-bride.svg')}.countdown .count-gem:before,.countdown .count-gem:after{display:none}.countdown .count-digit{position:absolute;top:calc(59.82% - .5em);left:0;width:100%;text-align:center;font-size:clamp(27px,5vw,42px);line-height:1;color:#9b754d}.countdown .count-unit small{margin-bottom:0}@media(max-width:600px){.countdown{gap:4px}.countdown .count-digit{font-size:clamp(22px,6.4vw,31px)}.countdown .count-unit small{font-size:17px}}
